[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6MZ3AX01FYWXV1531551HER":3,"skill-same:01M6MZ3AX01FYWXV1531551HER":74},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":18,"publishedAt":37,"linkOnly":38,"markdownContent":39,"markdownBody":40,"frontMatter":41,"refName":42,"commitSha":43,"skillDirectory":44,"forksCount":45,"repositoryHtmlUrl":46,"repositoryHomepageUrl":6,"ownerHtmlUrl":47,"ownerBlogUrl":6,"ownerDescription":48,"updatedAt":49,"install":50,"resources":63},"01M6MZ3AX01FYWXV1531551HER","plan-verification",null,"Verifies an AA-MA plan from 6 adversarial angles (facts, assumptions, impact, acceptance criteria, implementation barriers, domain risk) and lists its defects. Use when asked to verify, check or review an AA-MA plan, and at aa-ma-plan Phase 4.5.","snewhouse\u002Faa-ma-forge","snewhouse","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F6317143?v=4","01M6MYYWF28C4KBQHHWB9SC6TS","Stephen J Newhouse","01M6MYYWJWQMDN2ZPFMJ584SSM",6,"Apache-2.0","https:\u002F\u002Fgithub.com\u002Fsnewhouse\u002Faa-ma-forge\u002Fblob\u002Fmain\u002Fclaude-code\u002Fskills\u002Fplan-verification\u002FSKILL.md",[],[19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36],"plan verification","verification","plan","acceptance criteria","adversarial","defects","facts","at","impact","plan phase","domain","review","implementation","use","check","verify","risk","acceptance","2026-11-10 10:12:30",false,"---\nname: plan-verification\ndescription: \"Verifies an AA-MA plan from 6 adversarial angles (facts, assumptions, impact, acceptance criteria, implementation barriers, domain risk) and lists its defects. Use when asked to verify, check or review an AA-MA plan, and at aa-ma-plan Phase 4.5.\"\n---\n\n# Plan Verification Skill\n\nVerify AA-MA plans against external reality using 6 structured verification angles before plans reach execution.\n\n\u003CEXTREMELY-IMPORTANT>\nThis skill exists because plans that look internally consistent can contain factual errors, unverified assumptions, and implementation barriers that only surface after 3+ rounds of manual double-checking (L-054, L-058, L-059, L-067, L-069). Every angle catches a categorically different class of error. Do NOT skip angles or reduce scope.\n\u003C\u002FEXTREMELY-IMPORTANT>\n\n## When to Use\n\n- **Automatically:** Invoked by Phase 4.5 of aa-ma-plan workflow\n- **Manually:** Via `\u002Fverify-plan [task-name]` command\n- **Re-run:** After plan revision to verify fixes\n\n## Inputs Required\n\n1. **Plan text** — full plan content (from plan.md or in-memory)\n2. **Project root** — path to the project being planned for\n3. **Mode** — `automated` | `interactive` (set by caller or prompted)\n4. **Previous findings** (optional) — from prior verification runs, to avoid re-flagging\n\n## Severity Classification\n\n| Severity | Definition | Automated Mode | Interactive Mode |\n|----------|-----------|---------------|-----------------|\n| CRITICAL | Plan claim factually wrong, or proposed change would break something | BLOCKS artifact creation | Report only |\n| WARNING | Assumption unverified, criteria vague, or impact unclear | Report only | Report only |\n| INFO | Suggestion for improvement, minor gap | Report only | Report only |\n\n## Execution Protocol\n\n### Step 1: Mode Selection\n\nIf not pre-selected by the calling command, prompt:\n\n```\n━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\nPLAN VERIFICATION\n━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\nRun verification?\n  [A] Automated — CRITICALs block, WARNINGs report\n  [I] Interactive — All findings report-only\n  [S] Skip — No verification\n━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n```\n\nIf user selects **S (Skip)**, set verification status to SKIPPED and return immediately.\n\n### Step 2: Extract Plan Claims\n\nBefore dispatching agents, parse the plan to extract:\n- **File paths** referenced (create\u002Fmodify\u002Fdelete)\n- **Class\u002Ffunction names** referenced\n- **API endpoints\u002FURLs** referenced\n- **Library names and versions** referenced\n- **Config values** referenced\n- **Acceptance criteria** (all of them, with their milestone\u002Fstep IDs)\n- **Assumptions** (explicit and implicit)\n- **Dependencies** listed\n\nFormat these as structured lists to feed into agent prompts.\n\n### Step 3: Wave 1 — Parallel Verification (4 agents)\n\nDispatch all 4 agents simultaneously using the Agent tool. Each agent runs independently.\n\n---\n\n#### Angle 1: Ground-Truth Audit\n\nSee [angles-1-5.md](references\u002Fangles-1-5.md#angle-1-ground-truth-audit) — what each Wave 1 agent (ground truth, assumptions, impact, falsifiability) and the Wave 2 fresh-agent simulation checks, and how it reports.\n\n---\n\n#### Angle 2: Assumption Extraction & Challenge\n\nSee [angles-1-5.md](references\u002Fangles-1-5.md#angle-2-assumption-extraction--challenge) — what each Wave 1 agent (ground truth, assumptions, impact, falsifiability) and the Wave 2 fresh-agent simulation checks, and how it reports.\n\n---\n\n#### Angle 3: Impact Analysis on Proposed Changes\n\nSee [angles-1-5.md](references\u002Fangles-1-5.md#angle-3-impact-analysis-on-proposed-changes) — what each Wave 1 agent (ground truth, assumptions, impact, falsifiability) and the Wave 2 fresh-agent simulation checks, and how it reports. Angle 3 also checks the decision delta of every `PROTOTYPE — … — verdict-changes-plan: YES` provenance entry.\n\n---\n\n#### Angle 4: Acceptance Criteria Falsifiability\n\nSee [angles-1-5.md](references\u002Fangles-1-5.md#angle-4-acceptance-criteria-falsifiability) — what each Wave 1 agent (ground truth, assumptions, impact, falsifiability) and the Wave 2 fresh-agent simulation checks, and how it reports.\n\n---\n\n### Step 4: Consolidate Wave 1 Results\n\nWait for all 4 agents to complete. Collect results and build summary:\n\n```\nwave1_findings = {\n    \"CRITICAL\": [list of all CRITICALs from angles 1-4],\n    \"WARNING\": [list of all WARNINGs from angles 1-4],\n    \"INFO\": [list of all INFOs from angles 1-4],\n    \"angles_completed\": [1, 2, 3, 4]\n}\n```\n\nDisplay interim progress:\n\n```\n━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\nWAVE 1 COMPLETE (4\u002F6 angles)\n━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\nCRITICAL: [N] | WARNING: [N] | INFO: [N]\nProceeding to Wave 2...\n━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n```\n\n### Step 5: Wave 2 — Sequential Verification (2 agents)\n\nWave 2 agents receive Wave 1 findings to avoid re-flagging known issues.\n\n---\n\n#### Angle 5: Fresh-Agent Simulation\n\nSee [angles-1-5.md](references\u002Fangles-1-5.md#angle-5-fresh-agent-simulation) — what each Wave 1 agent (ground truth, assumptions, impact, falsifiability) and the Wave 2 fresh-agent simulation checks, and how it reports.\n\n---\n\n#### Angle 6: Specialist Domain Audit\n\n**What it catches:** Domain-specific risks that generalist reviewers miss (L-068)\n\n**Specialist detection:** Scan the plan text for keywords to determine which specialists to dispatch:\n\n| Plan Contains | Specialist | Focus Areas |\n|---------------|-----------|-------------|\n| `BaseModel`, `Pydantic`, `model_dump`, `schema` | Pydantic v2 Auditor | Discriminators, `extra` config, serialization round-trip, `from __future__ import annotations` risk |\n| `httpx`, `requests`, `API`, `endpoint`, `auth`, `header` | API Contract Auditor | Auth scheme accuracy, base URLs, rate limits, error codes, retry strategy |\n| `schema`, `field`, `column`, `table`, `migration` | Schema Completeness Auditor | Field count vs source, type accuracy, nullable handling, default values |\n| `sqlalchemy`, `alembic`, `migration`, `database` | Migration Auditor | State machine completeness, rollback safety, data loss risk |\n| `auth`, `secret`, `token`, `permission`, `credential` | Security Auditor | OWASP top 10, credential handling, injection risks |\n| (always evaluated — not keyword-driven) | Engineering Standards Auditor | Element #12 declaration present; themes from `claude-code\u002Frules\u002Fengineering-standards.md` claimed-vs-applied; `Critical-Path:`\u002F`Prototype-Required:` flag values valid (canonical enum); Architecture View present or validly waived (`Diagram-Waiver` canonical) Contract block per code milestone, and Contract paths drawn in §13 (checks #6\u002F#7, check #8 WARNING; plans `Created:` ≥ 2026-09-11) |\n\nDispatch 1-3 specialists based on detection. If no domain keywords found, skip the keyword-driven dispatch (report as \"No specialist domains detected\") — but the **Engineering Standards Auditor always runs** regardless of keyword detection (see structural check below).\n\n**Engineering Standards Structural Check (always runs):**\n\nIndependent of the keyword-driven specialist dispatch above, Angle 6 always\nevaluates these structural conditions against the plan:\n\n1. **Element #12 present.** Plan contains an \"Engineering Standards Declaration\"\n   section listing which themes from `claude-code\u002Frules\u002Fengineering-standards.md`\n   apply, with one-sentence rationale per theme.\n2. **Critical-Path values are canonical.** Any `Critical-Path:` field must parse\n   against `CANONICAL_CRITICAL_PATHS`. Novel values are CRITICAL findings — add\n   new values via plan + ADR, not ad-hoc. **Run the parser; do not eyeball the\n   list.** The canonical values live in code and in\n   `claude-code\u002Frules\u002Fengineering-standards.md` §1 — deliberately not repeated\n   here, because a third prose copy is what drifts:\n\n   ```bash\n   # The Python SSoT gate validates every milestone's own fields file-wide\n   # (Critical-Path, Gate, Mode, Prototype-Required, Audit-Profile) on any\n   # call and exits 2 with one `error=` line per refusal. The previous\n   # snippet piped an undefined \"$MILESTONE_BLOCK\" into the parser, which\n   # read an empty block as OK — the check passed vacuously.\n   # TASK_NAME is the `\u002Fverify-plan [task-name]` argument (or the task being\n   # planned). Phase 4.5 of \u002Faa-ma-plan runs BEFORE Phase 5 writes tasks.md,\n   # so on a fresh plan the file does not exist yet — that is a SKIP, not a\n   # CRITICAL; re-run \u002Fverify-plan once the artifacts exist.\n   TASKS_MD=\".claude\u002Fdev\u002Factive\u002F${TASK_NAME}\u002F${TASK_NAME}-tasks.md\"\n   if [ ! -f \"$TASKS_MD\" ]; then\n     echo \"SKIP: $TASKS_MD not yet written (Phase 5) — re-run \u002Fverify-plan after artifacts exist\"\n   else\n   for _cand in \\\n     \"$(git rev-parse --show-toplevel 2>\u002Fdev\u002Fnull)\u002Fclaude-code\u002Fhooks\u002Flib\u002Faa-ma-parse.sh\" \\\n     \"${CLAUDE_HOME:-${HOME}\u002F.claude}\u002Fhooks\u002Flib\u002Faa-ma-parse.sh\"; do\n     [ -f \"${_cand}\" ] && AA_MA_LIB=\"${_cand}\" && break\n   done\n   # shellcheck source=\u002Fdev\u002Fnull\n   . \"${AA_MA_LIB:?aa-ma-parse.sh not found — run scripts\u002Finstall.sh}\"\n   GATE_KV=$(aa_ma_gate \"$TASKS_MD\"); rc=$?\n   case $rc in\n     0|1) echo \"OK\" ;;                       # 1 = no ACTIVE yet, normal pre-execution\n     2)   echo \"CRITICAL: unreadable fields:\"; printf '%s\\n' \"$GATE_KV\" | sed -n 's\u002F^error=\u002F  - \u002Fp' ;;\n     3)   echo \"CRITICAL: ambiguous:\";        printf '%s\\n' \"$GATE_KV\" | sed -n 's\u002F^error=\u002F  - \u002Fp' ;;\n     *)   echo \"CRITICAL: aa-ma-gate did not run (rc $rc) — cannot verify, refusing\" ;;\n   esac\n   fi\n   ```\n3. **Theme claims are not contradictory.** When element #12 declares Theme 2\n   (Development Principles → TDD), tasks producing code must carry test sub-tasks.\n4. **Audit-Profile present per milestone (v0.8.0+).** For plans with\n   `Created:` on-or-after the v0.8.0 release tag commit date, every milestone\n   in `[task]-tasks.md` MUST declare `Audit-Profile:` with one of the 5\n   canonical values: `full` | `code-only` | `docs-only` | `infra` | `custom`.\n   Absent field on a post-v0.8.0 plan is a CRITICAL finding. Novel values are\n   CRITICAL findings — add new values via plan + ADR (per ADR-0005). The\n   field controls Phase 6.8 Post-Impl Adversarial Review trigger logic.\n5. **TDD-Waiver values are canonical when present.** Any `TDD-Waiver:` field\n   uses one of the 5 canonical values: `refactor` | `docs-only` | `prototype` |\n   `hotfix-emergency` | `tooling-config`. Novel values are CRITICAL findings.\n   Field-absence is permitted (most milestones have no waiver). Per ADR-0005.\n6. **Architecture View present or validly waived (v0.12.0+).** For plans `Created:`\n   on-or-after **2026-09-11**: either `## 13. Architecture View` exists with a\n   `### Component view` containing a non-empty ```` ```mermaid ```` fence (plus a\n   `### Flow view` when any milestone carries `Critical-Path:`), or the front-matter\n   carries `**Diagram-Waiver:** \u003Cvalue>` with a canonical value (`none`, `docs-only`,\n   `config-only`, `single-file`). A waiver alongside any milestone whose\n   `Audit-Profile` ∈ {full, code-only, infra} is CRITICAL. Novel waiver value is\n   CRITICAL. Run the lint rather than eyeballing the section:\n   ```bash\n   # Resolve the aa-ma-forge checkout from this skill's own installed symlink\n   # (install.sh symlinks claude-code\u002Fskills\u002F* into ~\u002F.claude\u002Fskills\u002F).\n   AA_MA_ROOT=$(cd \"$(dirname \"$(readlink -f ~\u002F.claude\u002Fskills\u002Fplan-verification\u002FSKILL.md)\")\u002F..\u002F..\u002F..\" && pwd)\n   uv run --project \"$AA_MA_ROOT\" aa-ma-lint-views \u003Cplan.md> --repo-root \u003Cproject-root>\n   ```\n   Exit 1 → one CRITICAL per finding line (`file:line: CODE: message`), including\n   `PHANTOM_EDGE` (an `-->|\"@import\"|` \u002F `-->|\"@call\"|` claim the codemem graph does not\n   hold) and `LABEL_UNKNOWN` (a typo'd `@` sigil); a `file:line: UNKNOWN: reason` line is\n   INFO — an unevaluable sigil claim (`(new)` endpoint, no\u002Fstale index, plugin sigil) that\n   never sets the exit code and is never read as PASS;\n   the `sigils: …` line is a count read by `\u002Fexecute-aa-ma-milestone` §6.7 (ADR-0015) —\n   informational at planning time;\n   `render: FAIL` → CRITICAL (a mermaid parse error); `render: UNKNOWN` → INFO\n   (no working `mmdc`\u002FChromium — never read UNKNOWN as PASS, L-012); exit 2 →\n   CRITICAL (usage: plan path missing or not a file). Before `tasks.md` exists\n   the lint reads `### Milestone` blocks from the plan itself; pass `--tasks`\n   once it does.\n7. **Contract block per code milestone (v0.12.0+).** Every milestone with\n   `Audit-Profile` ∈ {full, code-only, infra} has a `#### Contract` heading followed\n   by at least one fenced block. Missing → CRITICAL; the fresh-agent simulation\n   (Angle 5) treats an unpinned signature as a WARNING at minimum.\n8. **Contract paths drawn in §13 (v0.12.0+).** Every path a milestone's `#### Contract`\n   block creates or modifies — `Create` \u002F `Modify` rows and template `# file: \u003Cpath>`\n   lines — is covered by a §13 node: one naming the path, a directory above it, or the\n   planned `(new)` file. Exempt: `Test` \u002F `Verify` rows, paths under `tests\u002F` and `docs\u002F`,\n   root docs (README, CHANGELOG, SECURITY, CONTEXT), and dependency manifests \u002F lockfiles\n   (`pyproject.toml`, `package.json`, `*.lock`). Planning time only — the same lint as\n   check #6 with its opt-in flag, which nothing at execution time passes:\n   ```bash\n   AA_MA_ROOT=$(cd \"$(dirname \"$(readlink -f ~\u002F.claude\u002Fskills\u002Fplan-verification\u002FSKILL.md)\")\u002F..\u002F..\u002F..\" && pwd)\n   out=$(uv run --project \"$AA_MA_ROOT\" aa-ma-lint-views \u003Cplan.md> --repo-root \u003Cproject-root> --coverage)\n   rc=$?\n   case $rc in\n     0|1) printf '%s\\n' \"$out\" | grep ': UNDRAWN_PATH: ' || echo \"check 8: every Contract path is drawn\" ;;\n     *)   echo \"CRITICAL: check 8 could not run (rc $rc) — never read as clean\"\n          printf '%s\\n' \"$out\" | grep ': UNKNOWN: ' ;;\n   esac\n   ```\n   One WARNING per `file:line: UNDRAWN_PATH: \u003Cpath>: …` line — draw the path (the\n   `\u002Faa-ma-plan` Step 4.2b seed already holds the existing files), or say in the plan why\n   it stays undrawn. Any other exit code (a crash is `UNKNOWN`, exit 2) is CRITICAL: a check\n   that did not run is not a clean one. Other finding lines repeat check #6 and are read there.\n\nParsers for checks #2, #4, #5 and #6 live in `src\u002Faa_ma\u002Fplan_parsers.py`\n(`parse_critical_path`, `parse_audit_profile`, `parse_tdd_waiver`,\n`parse_diagram_waiver`, and their `CANONICAL_*` frozensets); check #6\u002F#7\nstructure is `aa_ma.render.mermaid_lint` (`CODE_AUDIT_PROFILES` decides which\nmilestones need a Contract block). Each parser returns `(value, is_valid, error)`;\nthe audit reports `CRITICAL` when `is_valid is False`.\n\n**Grandfathering (CEO-4):**\n- Checks #1, #2, #3 fire only for plans whose `Created: YYYY-MM-DD`\n  front-matter is on-or-after the v0.5.0 release date.\n- Check #4 (Audit-Profile presence) fires only for plans whose `Created:`\n  is on-or-after the v0.8.0 release tag commit date.\n- Check #5 (TDD-Waiver canonical values) fires for any plan with a\n  `TDD-Waiver:` field, regardless of `Created:` date — validating values\n  that have been written cannot regress an older plan.\n- Pre-v0.5.0 plans emit `[INFO] Pre-v0.5.0 plan — engineering-standards\n  check skipped` and continue. Pre-v0.8.0 plans emit\n  `[INFO] Pre-v0.8.0 plan — Audit-Profile check skipped`.\n- Checks #6, #7 and #8 fire only for plans whose `Created:` is on-or-after the\n  literal date **2026-09-11** (v0.12.0 cutover, written as a date so the check\n  never depends on a release tag); earlier plans emit\n  `[INFO] Pre-2026-09-11 plan — Architecture View check skipped`.\n- Plans missing `Created:` are grandfathered (absence → pre-cutover).\n- Detection logic (regex parse of `Created:` field + comparison to release\n  dates) lives inside the Engineering Standards Auditor agent prompt below.\n\n**Agent dispatch (per specialist):**\n```\nAgent tool:\n  subagent_type: general-purpose\n  description: \"[Specialist type] domain audit\"\n  prompt: |\n    You are a [SPECIALIST TYPE] expert reviewing this plan for\n    domain-specific risks that generalist reviewers typically miss.\n\n    PROJECT ROOT: [project_root]\n\n    FULL PLAN TEXT:\n    [plan_text]\n\n    ALREADY KNOWN ISSUES (do NOT re-flag these):\n    [wave1_findings + angle5_findings summary]\n\n    YOUR DOMAIN FOCUS — [SPECIALIST TYPE]:\n    [domain-specific checklist items from table above]\n\n    Review the plan ONLY through your specialist lens.\n    Read actual project files as needed to verify domain-specific claims.\n\n    OUTPUT FORMAT:\n    - [CRITICAL] [domain] risk: \"[description with evidence]\"\n    - [WARNING] [domain] concern: \"[description]\"\n    - [INFO] [domain] suggestion: \"[description]\"\n\n    Do NOT write any code. Read files and analyze.\n```\n\n---\n\n### Step 6: Consolidate All Findings\n\nMerge all 6 angle reports into a unified findings list:\n\n```\nall_findings = {\n    \"CRITICAL\": [all CRITICALs from angles 1-6],\n    \"WARNING\": [all WARNINGs from angles 1-6],\n    \"INFO\": [all INFOs from angles 1-6]\n}\n```\n\nDe-duplicate findings that appear in multiple angles (keep the most specific version).\n\n### Step 7: Apply Severity Gate\n\n**Automated mode:**\n- If `len(CRITICAL) > 0`: result = **FAIL** — plan must be revised\n- If `len(CRITICAL) == 0 and len(WARNING) > 0`: result = **PASS WITH WARNINGS**\n- If `len(CRITICAL) == 0 and len(WARNING) == 0`: result = **PASS**\n\n**Interactive mode:**\n- Always result = **PASS** (or PASS WITH WARNINGS if any findings)\n- All findings presented as report for user decision\n\n### Step 8: Generate Verification Report\n\nWrite `[task]-verification.md` in the AA-MA task directory (or in-memory if artifacts don't exist yet):\n\n```markdown\n# Verification Report: [task-name]\nGenerated: [ISO-8601 timestamp] | Mode: [automated|interactive] | Revision: [N]\n\n## Summary\n- CRITICAL: [N] findings ([M] resolved)\n- WARNING: [N] findings\n- INFO: [N] findings\n- Overall: [PASS | FAIL | PASS WITH WARNINGS | SKIPPED]\n\n## Angle 1: Ground-Truth Audit\n### Findings\n[findings from angle 1, grouped by severity]\n[or \"No findings — all claims verified.\"]\n\n## Angle 2: Assumption Extraction & Challenge\n### Assumptions Identified\n[numbered list of assumptions with status]\n\n## Angle 3: Impact Analysis on Proposed Changes\n### Files Affected\n[findings per file with risk level]\n\n## Angle 4: Acceptance Criteria Falsifiability\n### Criteria Audit\n[per-criterion findings]\n### Score: [N]\u002F[M] falsifiable ([X]%)\n\n## Angle 5: Fresh-Agent Simulation\n### Implementation Barriers\n[findings from fresh-agent perspective]\n\n## Angle 6: Specialist Domain Audit\n### Specialists Dispatched: [list or \"None — no domain keywords detected\"]\n[per-specialist findings]\n\n## Revision History\n- v[N]: [date] — [summary: N CRITICAL, N WARNING → result]\n```\n\n### Step 9: Display Results\n\n```\n━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\nVERIFICATION COMPLETE\n━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\nMode: [Automated | Interactive]\nAngles: 6\u002F6 complete\nCRITICAL: [N] | WARNING: [N] | INFO: [N]\nResult: [PASS | FAIL | PASS WITH WARNINGS]\n\n[If FAIL in automated mode:]\nPlan has [N] CRITICAL findings. Revision required.\nCRITICALs:\n  1. [brief description]\n  2. [brief description]\n\n[If PASS WITH WARNINGS:]\n[N] warnings noted — review verification report for details.\n\nReport: .claude\u002Fdev\u002Factive\u002F[task]\u002F[task]-verification.md\n━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n```\n\n\n## Reference Files\n\nFor detailed patterns and code examples, see [references\u002Fverification-standards.md](references\u002Fverification-standards.md).\n","# Plan Verification Skill\n\nVerify AA-MA plans against external reality using 6 structured verification angles before plans reach execution.\n\n\u003CEXTREMELY-IMPORTANT>\nThis skill exists because plans that look internally consistent can contain factual errors, unverified assumptions, and implementation barriers that only surface after 3+ rounds of manual double-checking (L-054, L-058, L-059, L-067, L-069). Every angle catches a categorically different class of error. Do NOT skip angles or reduce scope.\n\u003C\u002FEXTREMELY-IMPORTANT>\n\n## When to Use\n\n- **Automatically:** Invoked by Phase 4.5 of aa-ma-plan workflow\n- **Manually:** Via `\u002Fverify-plan [task-name]` command\n- **Re-run:** After plan revision to verify fixes\n\n## Inputs Required\n\n1. **Plan text** — full plan content (from plan.md or in-memory)\n2. **Project root** — path to the project being planned for\n3. **Mode** — `automated` | `interactive` (set by caller or prompted)\n4. **Previous findings** (optional) — from prior verification runs, to avoid re-flagging\n\n## Severity Classification\n\n| Severity | Definition | Automated Mode | Interactive Mode |\n|----------|-----------|---------------|-----------------|\n| CRITICAL | Plan claim factually wrong, or proposed change would break something | BLOCKS artifact creation | Report only |\n| WARNING | Assumption unverified, criteria vague, or impact unclear | Report only | Report only |\n| INFO | Suggestion for improvement, minor gap | Report only | Report only |\n\n## Execution Protocol\n\n### Step 1: Mode Selection\n\nIf not pre-selected by the calling command, prompt:\n\n```\n━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\nPLAN VERIFICATION\n━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\nRun verification?\n  [A] Automated — CRITICALs block, WARNINGs report\n  [I] Interactive — All findings report-only\n  [S] Skip — No verification\n━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n```\n\nIf user selects **S (Skip)**, set verification status to SKIPPED and return immediately.\n\n### Step 2: Extract Plan Claims\n\nBefore dispatching agents, parse the plan to extract:\n- **File paths** referenced (create\u002Fmodify\u002Fdelete)\n- **Class\u002Ffunction names** referenced\n- **API endpoints\u002FURLs** referenced\n- **Library names and versions** referenced\n- **Config values** referenced\n- **Acceptance criteria** (all of them, with their milestone\u002Fstep IDs)\n- **Assumptions** (explicit and implicit)\n- **Dependencies** listed\n\nFormat these as structured lists to feed into agent prompts.\n\n### Step 3: Wave 1 — Parallel Verification (4 agents)\n\nDispatch all 4 agents simultaneously using the Agent tool. Each agent runs independently.\n\n---\n\n#### Angle 1: Ground-Truth Audit\n\nSee [angles-1-5.md](references\u002Fangles-1-5.md#angle-1-ground-truth-audit) — what each Wave 1 agent (ground truth, assumptions, impact, falsifiability) and the Wave 2 fresh-agent simulation checks, and how it reports.\n\n---\n\n#### Angle 2: Assumption Extraction & Challenge\n\nSee [angles-1-5.md](references\u002Fangles-1-5.md#angle-2-assumption-extraction--challenge) — what each Wave 1 agent (ground truth, assumptions, impact, falsifiability) and the Wave 2 fresh-agent simulation checks, and how it reports.\n\n---\n\n#### Angle 3: Impact Analysis on Proposed Changes\n\nSee [angles-1-5.md](references\u002Fangles-1-5.md#angle-3-impact-analysis-on-proposed-changes) — what each Wave 1 agent (ground truth, assumptions, impact, falsifiability) and the Wave 2 fresh-agent simulation checks, and how it reports. Angle 3 also checks the decision delta of every `PROTOTYPE — … — verdict-changes-plan: YES` provenance entry.\n\n---\n\n#### Angle 4: Acceptance Criteria Falsifiability\n\nSee [angles-1-5.md](references\u002Fangles-1-5.md#angle-4-acceptance-criteria-falsifiability) — what each Wave 1 agent (ground truth, assumptions, impact, falsifiability) and the Wave 2 fresh-agent simulation checks, and how it reports.\n\n---\n\n### Step 4: Consolidate Wave 1 Results\n\nWait for all 4 agents to complete. Collect results and build summary:\n\n```\nwave1_findings = {\n    \"CRITICAL\": [list of all CRITICALs from angles 1-4],\n    \"WARNING\": [list of all WARNINGs from angles 1-4],\n    \"INFO\": [list of all INFOs from angles 1-4],\n    \"angles_completed\": [1, 2, 3, 4]\n}\n```\n\nDisplay interim progress:\n\n```\n━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\nWAVE 1 COMPLETE (4\u002F6 angles)\n━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\nCRITICAL: [N] | WARNING: [N] | INFO: [N]\nProceeding to Wave 2...\n━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n```\n\n### Step 5: Wave 2 — Sequential Verification (2 agents)\n\nWave 2 agents receive Wave 1 findings to avoid re-flagging known issues.\n\n---\n\n#### Angle 5: Fresh-Agent Simulation\n\nSee [angles-1-5.md](references\u002Fangles-1-5.md#angle-5-fresh-agent-simulation) — what each Wave 1 agent (ground truth, assumptions, impact, falsifiability) and the Wave 2 fresh-agent simulation checks, and how it reports.\n\n---\n\n#### Angle 6: Specialist Domain Audit\n\n**What it catches:** Domain-specific risks that generalist reviewers miss (L-068)\n\n**Specialist detection:** Scan the plan text for keywords to determine which specialists to dispatch:\n\n| Plan Contains | Specialist | Focus Areas |\n|---------------|-----------|-------------|\n| `BaseModel`, `Pydantic`, `model_dump`, `schema` | Pydantic v2 Auditor | Discriminators, `extra` config, serialization round-trip, `from __future__ import annotations` risk |\n| `httpx`, `requests`, `API`, `endpoint`, `auth`, `header` | API Contract Auditor | Auth scheme accuracy, base URLs, rate limits, error codes, retry strategy |\n| `schema`, `field`, `column`, `table`, `migration` | Schema Completeness Auditor | Field count vs source, type accuracy, nullable handling, default values |\n| `sqlalchemy`, `alembic`, `migration`, `database` | Migration Auditor | State machine completeness, rollback safety, data loss risk |\n| `auth`, `secret`, `token`, `permission`, `credential` | Security Auditor | OWASP top 10, credential handling, injection risks |\n| (always evaluated — not keyword-driven) | Engineering Standards Auditor | Element #12 declaration present; themes from `claude-code\u002Frules\u002Fengineering-standards.md` claimed-vs-applied; `Critical-Path:`\u002F`Prototype-Required:` flag values valid (canonical enum); Architecture View present or validly waived (`Diagram-Waiver` canonical) Contract block per code milestone, and Contract paths drawn in §13 (checks #6\u002F#7, check #8 WARNING; plans `Created:` ≥ 2026-09-11) |\n\nDispatch 1-3 specialists based on detection. If no domain keywords found, skip the keyword-driven dispatch (report as \"No specialist domains detected\") — but the **Engineering Standards Auditor always runs** regardless of keyword detection (see structural check below).\n\n**Engineering Standards Structural Check (always runs):**\n\nIndependent of the keyword-driven specialist dispatch above, Angle 6 always\nevaluates these structural conditions against the plan:\n\n1. **Element #12 present.** Plan contains an \"Engineering Standards Declaration\"\n   section listing which themes from `claude-code\u002Frules\u002Fengineering-standards.md`\n   apply, with one-sentence rationale per theme.\n2. **Critical-Path values are canonical.** Any `Critical-Path:` field must parse\n   against `CANONICAL_CRITICAL_PATHS`. Novel values are CRITICAL findings — add\n   new values via plan + ADR, not ad-hoc. **Run the parser; do not eyeball the\n   list.** The canonical values live in code and in\n   `claude-code\u002Frules\u002Fengineering-standards.md` §1 — deliberately not repeated\n   here, because a third prose copy is what drifts:\n\n   ```bash\n   # The Python SSoT gate validates every milestone's own fields file-wide\n   # (Critical-Path, Gate, Mode, Prototype-Required, Audit-Profile) on any\n   # call and exits 2 with one `error=` line per refusal. The previous\n   # snippet piped an undefined \"$MILESTONE_BLOCK\" into the parser, which\n   # read an empty block as OK — the check passed vacuously.\n   # TASK_NAME is the `\u002Fverify-plan [task-name]` argument (or the task being\n   # planned). Phase 4.5 of \u002Faa-ma-plan runs BEFORE Phase 5 writes tasks.md,\n   # so on a fresh plan the file does not exist yet — that is a SKIP, not a\n   # CRITICAL; re-run \u002Fverify-plan once the artifacts exist.\n   TASKS_MD=\".claude\u002Fdev\u002Factive\u002F${TASK_NAME}\u002F${TASK_NAME}-tasks.md\"\n   if [ ! -f \"$TASKS_MD\" ]; then\n     echo \"SKIP: $TASKS_MD not yet written (Phase 5) — re-run \u002Fverify-plan after artifacts exist\"\n   else\n   for _cand in \\\n     \"$(git rev-parse --show-toplevel 2>\u002Fdev\u002Fnull)\u002Fclaude-code\u002Fhooks\u002Flib\u002Faa-ma-parse.sh\" \\\n     \"${CLAUDE_HOME:-${HOME}\u002F.claude}\u002Fhooks\u002Flib\u002Faa-ma-parse.sh\"; do\n     [ -f \"${_cand}\" ] && AA_MA_LIB=\"${_cand}\" && break\n   done\n   # shellcheck source=\u002Fdev\u002Fnull\n   . \"${AA_MA_LIB:?aa-ma-parse.sh not found — run scripts\u002Finstall.sh}\"\n   GATE_KV=$(aa_ma_gate \"$TASKS_MD\"); rc=$?\n   case $rc in\n     0|1) echo \"OK\" ;;                       # 1 = no ACTIVE yet, normal pre-execution\n     2)   echo \"CRITICAL: unreadable fields:\"; printf '%s\\n' \"$GATE_KV\" | sed -n 's\u002F^error=\u002F  - \u002Fp' ;;\n     3)   echo \"CRITICAL: ambiguous:\";        printf '%s\\n' \"$GATE_KV\" | sed -n 's\u002F^error=\u002F  - \u002Fp' ;;\n     *)   echo \"CRITICAL: aa-ma-gate did not run (rc $rc) — cannot verify, refusing\" ;;\n   esac\n   fi\n   ```\n3. **Theme claims are not contradictory.** When element #12 declares Theme 2\n   (Development Principles → TDD), tasks producing code must carry test sub-tasks.\n4. **Audit-Profile present per milestone (v0.8.0+).** For plans with\n   `Created:` on-or-after the v0.8.0 release tag commit date, every milestone\n   in `[task]-tasks.md` MUST declare `Audit-Profile:` with one of the 5\n   canonical values: `full` | `code-only` | `docs-only` | `infra` | `custom`.\n   Absent field on a post-v0.8.0 plan is a CRITICAL finding. Novel values are\n   CRITICAL findings — add new values via plan + ADR (per ADR-0005). The\n   field controls Phase 6.8 Post-Impl Adversarial Review trigger logic.\n5. **TDD-Waiver values are canonical when present.** Any `TDD-Waiver:` field\n   uses one of the 5 canonical values: `refactor` | `docs-only` | `prototype` |\n   `hotfix-emergency` | `tooling-config`. Novel values are CRITICAL findings.\n   Field-absence is permitted (most milestones have no waiver). Per ADR-0005.\n6. **Architecture View present or validly waived (v0.12.0+).** For plans `Created:`\n   on-or-after **2026-09-11**: either `## 13. Architecture View` exists with a\n   `### Component view` containing a non-empty ```` ```mermaid ```` fence (plus a\n   `### Flow view` when any milestone carries `Critical-Path:`), or the front-matter\n   carries `**Diagram-Waiver:** \u003Cvalue>` with a canonical value (`none`, `docs-only`,\n   `config-only`, `single-file`). A waiver alongside any milestone whose\n   `Audit-Profile` ∈ {full, code-only, infra} is CRITICAL. Novel waiver value is\n   CRITICAL. Run the lint rather than eyeballing the section:\n   ```bash\n   # Resolve the aa-ma-forge checkout from this skill's own installed symlink\n   # (install.sh symlinks claude-code\u002Fskills\u002F* into ~\u002F.claude\u002Fskills\u002F).\n   AA_MA_ROOT=$(cd \"$(dirname \"$(readlink -f ~\u002F.claude\u002Fskills\u002Fplan-verification\u002FSKILL.md)\")\u002F..\u002F..\u002F..\" && pwd)\n   uv run --project \"$AA_MA_ROOT\" aa-ma-lint-views \u003Cplan.md> --repo-root \u003Cproject-root>\n   ```\n   Exit 1 → one CRITICAL per finding line (`file:line: CODE: message`), including\n   `PHANTOM_EDGE` (an `-->|\"@import\"|` \u002F `-->|\"@call\"|` claim the codemem graph does not\n   hold) and `LABEL_UNKNOWN` (a typo'd `@` sigil); a `file:line: UNKNOWN: reason` line is\n   INFO — an unevaluable sigil claim (`(new)` endpoint, no\u002Fstale index, plugin sigil) that\n   never sets the exit code and is never read as PASS;\n   the `sigils: …` line is a count read by `\u002Fexecute-aa-ma-milestone` §6.7 (ADR-0015) —\n   informational at planning time;\n   `render: FAIL` → CRITICAL (a mermaid parse error); `render: UNKNOWN` → INFO\n   (no working `mmdc`\u002FChromium — never read UNKNOWN as PASS, L-012); exit 2 →\n   CRITICAL (usage: plan path missing or not a file). Before `tasks.md` exists\n   the lint reads `### Milestone` blocks from the plan itself; pass `--tasks`\n   once it does.\n7. **Contract block per code milestone (v0.12.0+).** Every milestone with\n   `Audit-Profile` ∈ {full, code-only, infra} has a `#### Contract` heading followed\n   by at least one fenced block. Missing → CRITICAL; the fresh-agent simulation\n   (Angle 5) treats an unpinned signature as a WARNING at minimum.\n8. **Contract paths drawn in §13 (v0.12.0+).** Every path a milestone's `#### Contract`\n   block creates or modifies — `Create` \u002F `Modify` rows and template `# file: \u003Cpath>`\n   lines — is covered by a §13 node: one naming the path, a directory above it, or the\n   planned `(new)` file. Exempt: `Test` \u002F `Verify` rows, paths under `tests\u002F` and `docs\u002F`,\n   root docs (README, CHANGELOG, SECURITY, CONTEXT), and dependency manifests \u002F lockfiles\n   (`pyproject.toml`, `package.json`, `*.lock`). Planning time only — the same lint as\n   check #6 with its opt-in flag, which nothing at execution time passes:\n   ```bash\n   AA_MA_ROOT=$(cd \"$(dirname \"$(readlink -f ~\u002F.claude\u002Fskills\u002Fplan-verification\u002FSKILL.md)\")\u002F..\u002F..\u002F..\" && pwd)\n   out=$(uv run --project \"$AA_MA_ROOT\" aa-ma-lint-views \u003Cplan.md> --repo-root \u003Cproject-root> --coverage)\n   rc=$?\n   case $rc in\n     0|1) printf '%s\\n' \"$out\" | grep ': UNDRAWN_PATH: ' || echo \"check 8: every Contract path is drawn\" ;;\n     *)   echo \"CRITICAL: check 8 could not run (rc $rc) — never read as clean\"\n          printf '%s\\n' \"$out\" | grep ': UNKNOWN: ' ;;\n   esac\n   ```\n   One WARNING per `file:line: UNDRAWN_PATH: \u003Cpath>: …` line — draw the path (the\n   `\u002Faa-ma-plan` Step 4.2b seed already holds the existing files), or say in the plan why\n   it stays undrawn. Any other exit code (a crash is `UNKNOWN`, exit 2) is CRITICAL: a check\n   that did not run is not a clean one. Other finding lines repeat check #6 and are read there.\n\nParsers for checks #2, #4, #5 and #6 live in `src\u002Faa_ma\u002Fplan_parsers.py`\n(`parse_critical_path`, `parse_audit_profile`, `parse_tdd_waiver`,\n`parse_diagram_waiver`, and their `CANONICAL_*` frozensets); check #6\u002F#7\nstructure is `aa_ma.render.mermaid_lint` (`CODE_AUDIT_PROFILES` decides which\nmilestones need a Contract block). Each parser returns `(value, is_valid, error)`;\nthe audit reports `CRITICAL` when `is_valid is False`.\n\n**Grandfathering (CEO-4):**\n- Checks #1, #2, #3 fire only for plans whose `Created: YYYY-MM-DD`\n  front-matter is on-or-after the v0.5.0 release date.\n- Check #4 (Audit-Profile presence) fires only for plans whose `Created:`\n  is on-or-after the v0.8.0 release tag commit date.\n- Check #5 (TDD-Waiver canonical values) fires for any plan with a\n  `TDD-Waiver:` field, regardless of `Created:` date — validating values\n  that have been written cannot regress an older plan.\n- Pre-v0.5.0 plans emit `[INFO] Pre-v0.5.0 plan — engineering-standards\n  check skipped` and continue. Pre-v0.8.0 plans emit\n  `[INFO] Pre-v0.8.0 plan — Audit-Profile check skipped`.\n- Checks #6, #7 and #8 fire only for plans whose `Created:` is on-or-after the\n  literal date **2026-09-11** (v0.12.0 cutover, written as a date so the check\n  never depends on a release tag); earlier plans emit\n  `[INFO] Pre-2026-09-11 plan — Architecture View check skipped`.\n- Plans missing `Created:` are grandfathered (absence → pre-cutover).\n- Detection logic (regex parse of `Created:` field + comparison to release\n  dates) lives inside the Engineering Standards Auditor agent prompt below.\n\n**Agent dispatch (per specialist):**\n```\nAgent tool:\n  subagent_type: general-purpose\n  description: \"[Specialist type] domain audit\"\n  prompt: |\n    You are a [SPECIALIST TYPE] expert reviewing this plan for\n    domain-specific risks that generalist reviewers typically miss.\n\n    PROJECT ROOT: [project_root]\n\n    FULL PLAN TEXT:\n    [plan_text]\n\n    ALREADY KNOWN ISSUES (do NOT re-flag these):\n    [wave1_findings + angle5_findings summary]\n\n    YOUR DOMAIN FOCUS — [SPECIALIST TYPE]:\n    [domain-specific checklist items from table above]\n\n    Review the plan ONLY through your specialist lens.\n    Read actual project files as needed to verify domain-specific claims.\n\n    OUTPUT FORMAT:\n    - [CRITICAL] [domain] risk: \"[description with evidence]\"\n    - [WARNING] [domain] concern: \"[description]\"\n    - [INFO] [domain] suggestion: \"[description]\"\n\n    Do NOT write any code. Read files and analyze.\n```\n\n---\n\n### Step 6: Consolidate All Findings\n\nMerge all 6 angle reports into a unified findings list:\n\n```\nall_findings = {\n    \"CRITICAL\": [all CRITICALs from angles 1-6],\n    \"WARNING\": [all WARNINGs from angles 1-6],\n    \"INFO\": [all INFOs from angles 1-6]\n}\n```\n\nDe-duplicate findings that appear in multiple angles (keep the most specific version).\n\n### Step 7: Apply Severity Gate\n\n**Automated mode:**\n- If `len(CRITICAL) > 0`: result = **FAIL** — plan must be revised\n- If `len(CRITICAL) == 0 and len(WARNING) > 0`: result = **PASS WITH WARNINGS**\n- If `len(CRITICAL) == 0 and len(WARNING) == 0`: result = **PASS**\n\n**Interactive mode:**\n- Always result = **PASS** (or PASS WITH WARNINGS if any findings)\n- All findings presented as report for user decision\n\n### Step 8: Generate Verification Report\n\nWrite `[task]-verification.md` in the AA-MA task directory (or in-memory if artifacts don't exist yet):\n\n```markdown\n# Verification Report: [task-name]\nGenerated: [ISO-8601 timestamp] | Mode: [automated|interactive] | Revision: [N]\n\n## Summary\n- CRITICAL: [N] findings ([M] resolved)\n- WARNING: [N] findings\n- INFO: [N] findings\n- Overall: [PASS | FAIL | PASS WITH WARNINGS | SKIPPED]\n\n## Angle 1: Ground-Truth Audit\n### Findings\n[findings from angle 1, grouped by severity]\n[or \"No findings — all claims verified.\"]\n\n## Angle 2: Assumption Extraction & Challenge\n### Assumptions Identified\n[numbered list of assumptions with status]\n\n## Angle 3: Impact Analysis on Proposed Changes\n### Files Affected\n[findings per file with risk level]\n\n## Angle 4: Acceptance Criteria Falsifiability\n### Criteria Audit\n[per-criterion findings]\n### Score: [N]\u002F[M] falsifiable ([X]%)\n\n## Angle 5: Fresh-Agent Simulation\n### Implementation Barriers\n[findings from fresh-agent perspective]\n\n## Angle 6: Specialist Domain Audit\n### Specialists Dispatched: [list or \"None — no domain keywords detected\"]\n[per-specialist findings]\n\n## Revision History\n- v[N]: [date] — [summary: N CRITICAL, N WARNING → result]\n```\n\n### Step 9: Display Results\n\n```\n━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\nVERIFICATION COMPLETE\n━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\nMode: [Automated | Interactive]\nAngles: 6\u002F6 complete\nCRITICAL: [N] | WARNING: [N] | INFO: [N]\nResult: [PASS | FAIL | PASS WITH WARNINGS]\n\n[If FAIL in automated mode:]\nPlan has [N] CRITICAL findings. Revision required.\nCRITICALs:\n  1. [brief description]\n  2. [brief description]\n\n[If PASS WITH WARNINGS:]\n[N] warnings noted — review verification report for details.\n\nReport: .claude\u002Fdev\u002Factive\u002F[task]\u002F[task]-verification.md\n━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n```\n\n\n## Reference Files\n\nFor detailed patterns and code examples, see [references\u002Fverification-standards.md](references\u002Fverification-standards.md).\n",{"name":5,"description":7},"main","cd9a2962c9a7e0797fe440f7b1ba4ceccc16ae0d","claude-code\u002Fskills\u002Fplan-verification",1,"https:\u002F\u002Fgithub.com\u002Fsnewhouse\u002Faa-ma-forge","https:\u002F\u002Fgithub.com\u002Fsnewhouse","Data Scientist, Bioinformatician, Dad, Husband, MS warrior","2026-11-12 06:45:42",{"source":8,"skillName":5,"commands":51,"prompt":61,"zipAvailable":62},[52,55,58],{"tool":53,"command":54},"npx","npx skills add snewhouse\u002Faa-ma-forge --skill plan-verification",{"tool":56,"command":57},"bunx","bunx skills add snewhouse\u002Faa-ma-forge --skill plan-verification",{"tool":59,"command":60},"pnpm","pnpm dlx skills add snewhouse\u002Faa-ma-forge --skill plan-verification","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fsnewhouse\u002Faa-ma-forge\u002Fblob\u002Fmain\u002Fclaude-code\u002Fskills\u002Fplan-verification\u002FSKILL.md",true,[64,70],{"path":65,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":68,"sourceHtmlUrl":69},"references\u002Fangles-1-5.md","REFERENCE","参考文档",8742,"https:\u002F\u002Fgithub.com\u002Fsnewhouse\u002Faa-ma-forge\u002Fblob\u002Fmain\u002Fclaude-code\u002Fskills\u002Fplan-verification\u002Freferences\u002Fangles-1-5.md",{"path":71,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":72,"sourceHtmlUrl":73},"references\u002Fverification-standards.md",4315,"https:\u002F\u002Fgithub.com\u002Fsnewhouse\u002Faa-ma-forge\u002Fblob\u002Fmain\u002Fclaude-code\u002Fskills\u002Fplan-verification\u002Freferences\u002Fverification-standards.md",[75,99,127,144,167,196],{"skillNo":76,"name":77,"nameZh":6,"description":78,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":79,"categories":80,"keywords":86,"publishedAt":37},"01M6MZ588SD5DDH59H18PRNWEV","deploy-helper","You can use this to help with deploy stuff, deploying, deployments, releases, shipping, pushing to prod, going live, rollouts.","https:\u002F\u002Fgithub.com\u002Fsnewhouse\u002Faa-ma-forge\u002Fblob\u002Fmain\u002Ftests\u002Ffixtures\u002Fevals\u002Fskill-draft\u002Fdraft\u002FSKILL.md",[81],{"categoryNo":82,"categoryName":83,"taxonomyType":84,"taxonomyTypeDesc":85},"01JBSEEDCAT000000000000011","运维与部署","SCENARIO","使用场景",[87,88,89,90,91,92,93,94,95,32,96,97,98],"deploy","deploy helper","helper","you","live","with","can","rollouts","shipping","deployments","releases","help",{"skillNo":100,"name":101,"nameZh":6,"description":102,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":103,"licenseFileUrl":104,"sourceHtmlUrl":105,"categories":106,"keywords":118,"publishedAt":37},"01M6MZ54NEKRYXGMJ1KJWYMKM7","writing-for-agents","Writing documents for agents. Use when creating or editing skills, or modifying AGENTS.md or CLAUDE.md.","MIT","https:\u002F\u002Fgithub.com\u002Fsnewhouse\u002Faa-ma-forge\u002Fblob\u002Fmain\u002Fclaude-code\u002Fskills\u002Fwriting-for-agents\u002FLICENSE","https:\u002F\u002Fgithub.com\u002Fsnewhouse\u002Faa-ma-forge\u002Fblob\u002Fmain\u002Fclaude-code\u002Fskills\u002Fwriting-for-agents\u002FSKILL.md",[107,110,113],{"categoryNo":108,"categoryName":109,"taxonomyType":84,"taxonomyTypeDesc":85},"01JBSEEDCAT000000000000018","写作与文案",{"categoryNo":111,"categoryName":112,"taxonomyType":84,"taxonomyTypeDesc":85},"01JBSEEDCAT000000000000023","Skill与智能体开发",{"categoryNo":114,"categoryName":115,"taxonomyType":116,"taxonomyTypeDesc":117},"01JBSEEDCAT000000000000036","内容创作者","PROFESSION","适用职业",[119,120,121,122,32,123,124,125,126],"writing","writing for agents","for","line","instructions","read","editing","documents",{"skillNo":128,"name":129,"nameZh":6,"description":130,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":131,"categories":132,"keywords":133,"publishedAt":37},"01M6MZ500T0FH1G8TBSQV7G5G2","verify-plan","Slash entry for plan verification: runs plan-verification on an existing AA-MA plan, writes [task]-verification.md, and with --iterate loops until the plan converges. Use when the user types \u002Fverify-plan or wants the verification report saved.","https:\u002F\u002Fgithub.com\u002Fsnewhouse\u002Faa-ma-forge\u002Fblob\u002Fmain\u002Fclaude-code\u002Fskills\u002Fverify-plan\u002FSKILL.md",[],[34,21,134,135,136,32,137,92,20,138,139,19,140,141,142,121,143],"verify plan","loops","task","user","report","types","entry","iterate","Existing","saved",{"skillNo":145,"name":146,"nameZh":6,"description":147,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":148,"categories":149,"keywords":150,"publishedAt":37},"01M6MZ4V9ST4K54NT1SRBGCE7P","verify-impl","Post-impl adversarial review symmetric to \u002Fverify-plan. Dispatches up to 5 parallel audit agents (code-reviewer, security-auditor, tdd-sequence-auditor, context7-evidence-auditor, future-proofing-auditor) based on the milestone's plan-declared Audit-Profile. CRITICAL findings surface via AskUserQuestion accept\u002Fdispute\u002Fdefer panel before §7.3 user authorization. Introduced in v0.8.0 per ADR-0005. Invoked by Phase 6.8 of \u002Fexecute-aa-ma-milestone.","https:\u002F\u002Fgithub.com\u002Fsnewhouse\u002Faa-ma-forge\u002Fblob\u002Fmain\u002Fclaude-code\u002Fskills\u002Fverify-impl\u002FSKILL.md",[],[151,152,34,23,153,154,155,156,30,157,158,159,160,161,162,21,163,164,165,166],"impl","verify impl","post","panel","via","critical","context7","up","evidence","reviewer","parallel","adr","audit","code","tdd","milestone",{"skillNo":168,"name":169,"nameZh":6,"description":170,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":171,"categories":172,"keywords":177,"publishedAt":37},"01M6MZ4K7CC9PMJ1KEY3F53RS1","understand-codebase","Onboard to a new, inherited, or shared codebase. Read it, understand it, map it, and learn its conventions, versioning, tests, tech stack, rules (AGENTS.md \u002F CLAUDE.md \u002F .cursorrules \u002F etc.), build\u002Frun\u002FCI, integrations, security posture, and repo health — then produce an honest pros\u002Fcons verdict, a \"contribute safely\" playbook, and an \"add a feature\" playbook, written to ONBOARDING.md at the repo root plus a .claude\u002Fonboarding\u002F set of deep-dives — and optionally author an AGENTS.md if one is missing, or review and propose improvements to an existing one. Tiered (Quick \u002F Standard \u002F Deep). Reuses codemem (index + diagrams), gsd-map-codebase, system-mapping, code-intelligence, impact-analysis rather than re-implementing them; Deep tier runs a TeamCreate agent-team. Keywords: new codebase, shared codebase, inherited code, onboard, understand this repo, how do I contribute, how do I add a feature, ramp up, get oriented, ONBOARDING.md, AGENTS.md, codebase walkthrough, joining a project.","https:\u002F\u002Fgithub.com\u002Fsnewhouse\u002Faa-ma-forge\u002Fblob\u002Fmain\u002Fclaude-code\u002Fskills\u002Funderstand-codebase\u002FSKILL.md",[173,174],{"categoryNo":111,"categoryName":112,"taxonomyType":84,"taxonomyTypeDesc":85},{"categoryNo":175,"categoryName":176,"taxonomyType":116,"taxonomyTypeDesc":117},"01JBSEEDCAT000000000000038","人力资源",[178,179,180,158,181,182,183,184,185,186,187,188,189,190,27,191,192,193,194,195],"understand codebase","codebase","understand","walkthrough","analysis","SET","ci","learn","diagrams","repo health","implementing","re","quick","get","project","deep","shared","map",{"skillNo":197,"name":198,"nameZh":6,"description":199,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":200,"categories":201,"keywords":202,"publishedAt":37},"01M6MZ4D1ZC8MTW064QXY6WC76","token-compression","Output token compression for AA-MA workflows. Reduces response tokens by 40-75% while preserving full technical accuracy. Three intensity levels mapped to execution modes: lite (HITL), full (general), ultra (AFK). Auto-activates during AA-MA execution based on task Mode field. Manual activation via \u002Fcompress lite|full|ultra.","https:\u002F\u002Fgithub.com\u002Fsnewhouse\u002Faa-ma-forge\u002Fblob\u002Fmain\u002Fclaude-code\u002Fskills\u002Ftoken-compression\u002FSKILL.md",[],[203,204,205,206,207,208,209,121,210,211,155,212,213,214,215,136,216,217,218,219],"compression","token compression","token","workflows","output","modes","accuracy","mode","manual","intensity","tokens","hitl","three","general","auto","technical","execution"]