← Files Zuora Coding AgentARCHIVED FILE

skills/zuora-uat-build/SKILL.md

2.88 KB · Oct 3, 2026 · 06:32 UTC

↓ Download file

---
name: zuora-uat-build
description: Build test plan, API scripts, and UI docs for scoped features; optional verify segment
argument-hint: "[features_input=all] [force_overwrite=false] [verify=false] [environment=mcp] [max_fix_retries=3]"
allowed-tools: [Read, Write, Edit, Glob, Grep, Bash, Agent, Task, mcp__zuora-mcp__zuora_codegen, mcp__zuora-mcp__ask_zuora]
---

Codex-only path resolution: When an instruction refers to `${CLAUDE_PLUGIN_ROOT}`, treat it as the root of this installed plugin.

Orchestrator: discover scope → one worker per feature → aggregate. **Does not run pytest by default** (`verify=false`).

## Input

$ARGUMENTS

## Workflow

### Step 1: Resolve paths and scaffold

```bash
GIT_ROOT=$(git rev-parse --show-toplevel)
UAT_ROOT=$(python3 "${CLAUDE_PLUGIN_ROOT}/references/uat-test/execution/scripts/resolve_uat_root.py" \
  --git-root "$GIT_ROOT" | python3 -c "import sys,json; print(json.load(sys.stdin)['uat_root'])")
```

If `$UAT_ROOT/design` missing, scaffold per `zuora-uat-design` Step 2.

### Step 2: Discover scope

```bash
python3 "${CLAUDE_PLUGIN_ROOT}/references/uat-test/execution/scripts/discover_groups.py" \
  --git-root "$GIT_ROOT" \
  --features-input "<features_input>"
```

### Step 3: Delegate per feature

Pass workers: feature stem, `tr_filter`, flags, `UAT_ROOT`, and `${CLAUDE_PLUGIN_ROOT}/skills/zuora-uat/generate-feature/SKILL.md`.

**Multiple features:** sequential sub-agents. **Single feature:** inline OK.

Collect **compact JSON summary only** from workers.

### Step 3b: Finalize verification marks (required)

After each feature worker completes, **always** run (do not skip even if the worker JSON already lists verification):

```bash
python3 "${CLAUDE_PLUGIN_ROOT}/references/uat-test/execution/scripts/uat_verification.py" finalize-generate \
  --git-root "$GIT_ROOT" \
  --feature "<feature_stem>" \
  --verify "<verify>"
# When the worker had tr_filter, append --tr N for each TR in scope
```

When `verify=false`, this writes `{"verified": false}` for every TR in scope to `.uat-verification.json`. When `verify=true`, this is a no-op (the verify segment sets marks on pass/fail).

Validate the manifest (must pass before continuing):

```bash
python3 "${CLAUDE_PLUGIN_ROOT}/references/uat-test/execution/scripts/uat_verification.py" validate \
  --scenario-dir "$UAT_ROOT/execution/tests/test_scenarios/<scenario_folder>"
```

If validate fails, re-run `ensure-manifest` for that feature and report the failure in the roll-up.

### Step 4: Aggregate

Roll-up table per feature. One failure does not abort siblings.

## MCP

Use `mcp__zuora-mcp__zuora_codegen` during generation. Call `mcp__zuora-mcp__ask_zuora` only when verify/fix needs unresolved product-behavior answers.

## References

- `${CLAUDE_PLUGIN_ROOT}/references/uat-test/execution/docs/E2E_TEST_IMPLEMENTATION_GUIDELINE.md`
- `${CLAUDE_PLUGIN_ROOT}/references/uat-test/execution/docs/UI_TEST_DOC_FORMAT.md`

SHA-256: 5214d409661a1499550edc5c14edbbe95acb7d828cc90a96b4385892870bf37d