codex-orchestrator 2.0.3 → 2.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (131) hide show
  1. package/CHANGELOG.md +28 -427
  2. package/README.md +135 -37
  3. package/dist/src/index.d.ts +1 -1
  4. package/dist/src/index.d.ts.map +1 -1
  5. package/dist/src/v2/adapters/gh-issue-adapter.d.ts.map +1 -1
  6. package/dist/src/v2/adapters/gh-issue-adapter.js +6 -7
  7. package/dist/src/v2/adapters/gh-issue-adapter.js.map +1 -1
  8. package/dist/src/v2/cli-contract.d.ts +3 -3
  9. package/dist/src/v2/cli-contract.d.ts.map +1 -1
  10. package/dist/src/v2/cli-contract.js +1 -3
  11. package/dist/src/v2/cli-contract.js.map +1 -1
  12. package/dist/src/v2/cli.d.ts +24 -0
  13. package/dist/src/v2/cli.d.ts.map +1 -0
  14. package/dist/src/v2/{candidate-cli.js → cli.js} +18 -29
  15. package/dist/src/v2/cli.js.map +1 -0
  16. package/dist/src/v2/code-review-report.d.ts +1 -1
  17. package/dist/src/v2/code-review-report.d.ts.map +1 -1
  18. package/dist/src/v2/code-review-report.js +2 -2
  19. package/dist/src/v2/code-review-report.js.map +1 -1
  20. package/dist/src/v2/codex-process.d.ts.map +1 -1
  21. package/dist/src/v2/codex-process.js +12 -1
  22. package/dist/src/v2/codex-process.js.map +1 -1
  23. package/dist/src/v2/config.d.ts +2 -2
  24. package/dist/src/v2/config.d.ts.map +1 -1
  25. package/dist/src/v2/config.js.map +1 -1
  26. package/dist/src/v2/contained-report-operation.d.ts +2 -2
  27. package/dist/src/v2/contained-report-operation.d.ts.map +1 -1
  28. package/dist/src/v2/contained-report-operation.js +1 -1
  29. package/dist/src/v2/contained-report-operation.js.map +1 -1
  30. package/dist/src/v2/containment.d.ts +4 -0
  31. package/dist/src/v2/containment.d.ts.map +1 -1
  32. package/dist/src/v2/containment.js +9 -0
  33. package/dist/src/v2/containment.js.map +1 -1
  34. package/dist/src/v2/direct-delivery.d.ts +5 -10
  35. package/dist/src/v2/direct-delivery.d.ts.map +1 -1
  36. package/dist/src/v2/direct-delivery.js +25 -90
  37. package/dist/src/v2/direct-delivery.js.map +1 -1
  38. package/dist/src/v2/proof-report.d.ts.map +1 -1
  39. package/dist/src/v2/proof-report.js +55 -29
  40. package/dist/src/v2/proof-report.js.map +1 -1
  41. package/dist/src/v2/run-issue.d.ts +6 -9
  42. package/dist/src/v2/run-issue.d.ts.map +1 -1
  43. package/dist/src/v2/run-issue.js +98 -43
  44. package/dist/src/v2/run-issue.js.map +1 -1
  45. package/dist/src/v2/run-store.d.ts +4 -4
  46. package/dist/src/v2/run-store.d.ts.map +1 -1
  47. package/dist/src/v2/run-store.js +25 -40
  48. package/dist/src/v2/run-store.js.map +1 -1
  49. package/dist/src/v2/runtime.d.ts +3 -3
  50. package/dist/src/v2/runtime.d.ts.map +1 -1
  51. package/dist/src/v2/runtime.js +125 -47
  52. package/dist/src/v2/runtime.js.map +1 -1
  53. package/dist/src/v2/setup-cli.d.ts.map +1 -1
  54. package/dist/src/v2/setup-cli.js +4 -11
  55. package/dist/src/v2/setup-cli.js.map +1 -1
  56. package/dist/src/v2/setup-runtime.d.ts.map +1 -1
  57. package/dist/src/v2/setup-runtime.js +1 -61
  58. package/dist/src/v2/setup-runtime.js.map +1 -1
  59. package/dist/src/v2/setup-store.d.ts +0 -5
  60. package/dist/src/v2/setup-store.d.ts.map +1 -1
  61. package/dist/src/v2/setup-store.js +3 -106
  62. package/dist/src/v2/setup-store.js.map +1 -1
  63. package/dist/src/v2/setup.d.ts +6 -46
  64. package/dist/src/v2/setup.d.ts.map +1 -1
  65. package/dist/src/v2/setup.js +11 -293
  66. package/dist/src/v2/setup.js.map +1 -1
  67. package/dist/src/v2/workflow-assets.d.ts +19 -11
  68. package/dist/src/v2/workflow-assets.d.ts.map +1 -1
  69. package/dist/src/v2/workflow-assets.js +132 -40
  70. package/dist/src/v2/workflow-assets.js.map +1 -1
  71. package/docs/deep-dive.md +272 -56
  72. package/internal-workflow/docs/agents/bugfix-quality-gate.md +11 -0
  73. package/internal-workflow/docs/agents/coding-skill-routing.md +116 -196
  74. package/internal-workflow/docs/agents/review-gates.md +32 -39
  75. package/internal-workflow/docs/agents/review-protocol.md +75 -147
  76. package/internal-workflow/evals/coding-skill-evals.json +66 -0
  77. package/internal-workflow/manifest.json +1 -1
  78. package/internal-workflow/operations/acceptance-proof/SKILL.md +7 -1
  79. package/internal-workflow/operations/ambiguity-review/SKILL.md +2 -0
  80. package/internal-workflow/operations/code-review/SKILL.md +21 -1
  81. package/internal-workflow/operations/implementation/SKILL.md +22 -1
  82. package/internal-workflow/operations/spec-author/SKILL.md +10 -1
  83. package/internal-workflow/operations/spec-review/SKILL.md +10 -1
  84. package/internal-workflow/operations/triage/SKILL.md +10 -1
  85. package/internal-workflow/schemas/code-review-v1.json +1 -1
  86. package/internal-workflow/schemas/proof-report-v1.json +1 -1
  87. package/internal-workflow/skills/agent-auto/SKILL.md +6 -1
  88. package/internal-workflow/skills/code-debugger/SKILL.md +122 -0
  89. package/internal-workflow/skills/code-debugger/agents/openai.yaml +7 -0
  90. package/internal-workflow/skills/code-review/SKILL.md +33 -11
  91. package/internal-workflow/skills/code-review/references/cleanup-lens.md +52 -0
  92. package/internal-workflow/skills/implementation-spec-maker/SKILL.md +15 -6
  93. package/internal-workflow/skills/implementation-spec-maker/references/spec-template.md +2 -2
  94. package/internal-workflow/skills/implementation-spec-review/SKILL.md +108 -204
  95. package/internal-workflow/skills/implementation-spec-review/evals/evals.json +24 -0
  96. package/internal-workflow/skills/implementation-spec-review/references/review-loop.md +93 -0
  97. package/internal-workflow/skills/small-task-implementer/SKILL.md +15 -8
  98. package/internal-workflow/skills/spec-implementer/SKILL.md +101 -172
  99. package/internal-workflow/skills/spec-implementer/evals/evals.json +30 -0
  100. package/internal-workflow/skills/spec-implementer/references/review-loop.md +94 -0
  101. package/internal-workflow/skills/tdd/SKILL.md +15 -2
  102. package/internal-workflow/skills/tdd/agents/openai.yaml +2 -2
  103. package/package.json +9 -6
  104. package/dist/src/v2/adapters/target-activity-fence.d.ts +0 -23
  105. package/dist/src/v2/adapters/target-activity-fence.d.ts.map +0 -1
  106. package/dist/src/v2/adapters/target-activity-fence.js +0 -249
  107. package/dist/src/v2/adapters/target-activity-fence.js.map +0 -1
  108. package/dist/src/v2/candidate-cli.d.ts +0 -26
  109. package/dist/src/v2/candidate-cli.d.ts.map +0 -1
  110. package/dist/src/v2/candidate-cli.js.map +0 -1
  111. package/dist/src/v2/legacy-cutover.d.ts +0 -52
  112. package/dist/src/v2/legacy-cutover.d.ts.map +0 -1
  113. package/dist/src/v2/legacy-cutover.js +0 -87
  114. package/dist/src/v2/legacy-cutover.js.map +0 -1
  115. package/internal-workflow/docs/agents/artifact-review-loop.md +0 -267
  116. package/internal-workflow/docs/agents/implementation-review-loop.md +0 -302
  117. package/internal-workflow/operations/cleanup-review/SKILL.md +0 -3
  118. package/internal-workflow/operations/spec-implementation/SKILL.md +0 -3
  119. package/internal-workflow/profiles/implementer_deep.toml +0 -9
  120. package/internal-workflow/profiles/researcher_standard.toml +0 -9
  121. package/internal-workflow/profiles/reviewer_fast.toml +0 -9
  122. package/internal-workflow/skills/cleanup-review/SKILL.md +0 -84
  123. package/internal-workflow/skills/cleanup-review/agents/openai.yaml +0 -6
  124. package/internal-workflow/skills/codebase-design/DEEPENING.md +0 -35
  125. package/internal-workflow/skills/codebase-design/DESIGN-IT-TWICE.md +0 -50
  126. package/internal-workflow/skills/codebase-design/SKILL.md +0 -82
  127. package/internal-workflow/skills/codebase-design/agents/openai.yaml +0 -6
  128. package/internal-workflow/skills/research/SKILL.md +0 -107
  129. package/internal-workflow/skills/research/agents/openai.yaml +0 -6
  130. package/internal-workflow/skills/ui-evidence-proof/SKILL.md +0 -123
  131. package/internal-workflow/skills/ui-evidence-proof/agents/openai.yaml +0 -6
@@ -1,170 +1,98 @@
1
1
  # Review Protocol
2
2
 
3
- This Module owns review mechanics shared by artifact and implementation review:
4
- capsules, Full/Closure, reviewer lineage, the canonical Defect Ledger, no-progress,
5
- stop/waiver semantics, and the result envelope. Target Modules own authority,
6
- risk/profile selection, topology, durable orchestration, gate order, and final
7
- outcome mapping. Callers select a target Module and never copy this protocol.
3
+ This file owns mechanics shared by artifact and implementation review: bounded
4
+ capsules, Full/Closure, defect lifecycle, no-progress, waiver, and the result
5
+ envelope. Target Modules own authority, profile, topology, durable state, and
6
+ outcome mapping.
8
7
 
9
- ## Interface
8
+ ## Capsule
10
9
 
11
- ```text
12
- apply_review_protocol(
13
- review_capsule,
14
- reviewer_lineages
15
- ) -> protocol_result
16
- ```
10
+ Every reviewer receives only:
11
+
12
+ - target kind/path and pinned revision;
13
+ - one unanswered review question and assigned lenses;
14
+ - authority, approved scope, and relevant evidence;
15
+ - compact affected validation and current defect records;
16
+ - for Closure, the repair diff and mapping from changed targets to defects and
17
+ affected contracts.
18
+
19
+ Do not pass raw parent history, old revisions, repeated logs, or unrelated
20
+ inventories. Reuse valid coverage for the same revision, question, and lenses.
21
+
22
+ ## Modes
23
+
24
+ **Full** covers the complete assigned scope once. It is bounded to the settled
25
+ target, changed owners, authority, and plausible affected contracts. It is not
26
+ a repository-wide audit and does not activate unrelated lenses.
27
+
28
+ **Closure** verifies a repair only when the finding is critical/high, affects a
29
+ trust boundary, durable data, concurrency/idempotency, shared API/DTO/schema, or
30
+ invalidates mandatory coverage. Closure stays with affected reviewer lineages
31
+ and targets. Do not launch it merely because Full found an ordinary defect.
32
+
33
+ A repair starts another Full only when mandatory-lens coverage became invalid.
34
+ A live reviewer poll timeout is non-terminal and does not authorize duplicate
35
+ review or cancellation; reconcile the recorded session first.
36
+
37
+ ## Defects
17
38
 
18
- `review_capsule` is the normalized Full/Closure capsule defined below. The result
19
- contains `state: clear | repair-required | stopped | waived`, pass
20
- mode/revision/lineage/session/lenses, mandatory coverage, ledger transitions, and any
21
- stop or waiver record. The capsule's canonical Defect Ledger is the only ledger
22
- input. `clear` requires assigned-scope coverage and every non-superseded blocker
23
- or execution risk to be `verified`, except an explicitly `accepted-risk`
24
- execution risk. A superseded record counts as resolved only when `superseded_by`
25
- resolves through an acyclic chain of distinct same-ledger IDs to one
26
- non-superseded canonical replacement; that terminal replacement controls
27
- clearance. A missing, self-referential, or cyclic replacement chain prevents
28
- `clear`. The target Module decides whether `clear` is enough for `Approved`. A
29
- reviewer lineage binds one activation, profile/lenses, Full coverage, and defect
30
- IDs; physical sessions may rotate without creating a new activation or Full.
31
-
32
- ## Review Capsule
33
-
34
- Every fresh reviewer receives a bounded self-contained capsule:
35
-
36
- - target kind/path, pinned revision, profile, mode, and assigned lenses
37
- - one review question and why existing valid coverage does not answer it
38
- - goal, authority, approved scope, and relevant source references
39
- - required Evidence Index entries, compact validation, and verification gaps
40
- - canonical Defect Ledger
41
- - for Closure: repair diff, affected contracts, and Revision Map
42
- `changed target -> defect IDs -> affected invariants/contracts`
43
-
44
- Exclude raw parent history, old targets, prior reviewer prose, repeated logs,
45
- unrelated output, and broad inventories. Reviewers may inspect extra evidence
46
- needed for a finding. Reuse unchanged evidence; invalidate only entries affected
47
- by changed targets/contracts or stale external sources. External evidence keeps
48
- its direct source and retrieval date.
49
-
50
- Before launch, reuse clear coverage for the same target revision, question, and
51
- lenses. Do not launch a reviewer whose question is already answered; a changed
52
- target or a distinct artifact-versus-implementation question is new coverage.
53
-
54
- ## Review Modes
55
-
56
- **Full:** read the complete pinned target required by assigned lenses and return
57
- all visible evidence-backed blockers/execution risks as one batch.
58
-
59
- **Closure:** use only affected reviewer lineages to verify repaired IDs, the
60
- repair diff, and contract fan-out. Do not re-audit unchanged areas. The first
61
- Closure normally reuses the Full session. If it reopens a defect and another
62
- repair follows, run the next Closure in a fresh session of the same lineage.
63
- Before a Closure launch, rotate earlier after compaction/interruption or when
64
- observable context usage reaches 40%. The fresh session receives the bounded
65
- capsule, remains Closure, and preserves Full coverage and defect authority. One
66
- coordinated launch over affected lineages is one Closure wave.
67
-
68
- Closure admits a new defect only when it names the repair target/contract that
69
- introduced or materially widened the trigger, or a high-confidence
70
- `blocker`/`execution-risk` violates a source-required invariant in the assigned
71
- lens. Each newly admitted blocker or execution risk starts as `status: open`
72
- and `disposition: repair-now`, then moves `open -> fixed -> verified` only
73
- through repair and independent affected-lens verification. Pre-existing
74
- adjacent issues are improvements. Verification stays with an affected session
75
- or an already planned covering Full reviewer. Start a new Full only when the
76
- repair invalidated mandatory-lens coverage.
77
-
78
- ## Canonical Defect Ledger
79
-
80
- Root assigns stable IDs and deduplicates only when invariant and failure
81
- mechanics both match. Wording changes do not create defects.
39
+ Use one canonical record per distinct invariant and failure mechanism:
82
40
 
83
41
  ```yaml
84
42
  id: REVIEW-CONC-003
85
43
  class: blocker | execution-risk | improvement
86
- disposition: repair-now | planned-final-verification | follow-up-improvement | accepted-risk
87
- status: open | fixed | verified | blocked | reopened | accepted-risk | superseded
44
+ status: open | fixed | verified | blocked | accepted-risk | superseded
88
45
  severity: critical | high | medium | low
89
46
  confidence: high | medium | low
90
47
  invariant: "<observable rule>"
91
- failure: "<concrete failure mechanics>"
92
- evidence: ["<target/repo/source reference>"]
48
+ failure: "<concrete trigger and impact>"
49
+ evidence: ["<target or source>"]
93
50
  repair: "<smallest sufficient change>"
94
51
  affected_targets: ["<path, section, contract, or lens>"]
95
- introduced_in_review: 2
96
- transition_history: []
97
- reopen_count: 0
98
- acceptance: null | { authority, reason, scope, target_revision }
99
- superseded_by: null | "<canonical replacement defect ID>"
100
- fixed_in_revision: null
101
- verified_in_review: null
102
52
  ```
103
53
 
104
- Reviewers reuse supplied IDs; new candidates use `NEW-<LENS>-NN` until root
105
- deduplicates them. Root may mark a duplicate `superseded` only after recording
106
- its canonical replacement in `superseded_by`. The chain must be acyclic and end
107
- at a distinct non-superseded record; a superseded record never hides the
108
- terminal replacement's lifecycle. Disposition and lifecycle are separate.
109
- `fixed` requires a later affected-lens Closure or planned Full to become
110
- `verified`; tests alone do not independently verify review findings.
111
-
112
- Improvements use `follow-up-improvement` and do not block. Only an execution
113
- risk may become `accepted-risk`, after explicit authority, reason, scope, and
114
- target revision are recorded. A blocker cannot be accepted or downgraded.
115
- Target Modules decide where `planned-final-verification` is legal; it remains
116
- open until the scheduled lens verifies it.
117
-
118
- ## Repair, Stop, And Waiver
119
-
120
- Root repairs compatible findings in one batch. Before another Closure, target
121
- revision/strategy, relevant evidence, defect state, or source decision must
122
- change materially. Otherwise root must change the repair, prove the finding
123
- invalid, or surface the decision preventing convergence.
124
-
125
- Pass counts and elapsed time are audit signals, never approval, waiver,
126
- downgrade, or blocking conditions. Target Modules may define audit epochs while
127
- preserving this rule.
128
-
129
- A bounded poll timeout while the reviewer session remains live is non-terminal:
130
- report that the reviewer has not completed within the polling window, not that
131
- it is stuck, failed, or unavailable. Root may send at most one conclude request
132
- for that reviewer turn. Further empty polls neither authorize another conclude
133
- request nor replacement/cancellation. Replace or cancel only after the reviewer
134
- session or transport explicitly reports `failed`, `lost`, or unavailable; a
135
- late usable result from the original live session remains authoritative. Persist
136
- session `live|timed-out` state and `conclude_requested_at` so resume preserves
137
- the limit.
138
-
139
- Return `stopped` without another review when repair needs a product/scope/owner
140
- decision, mandatory evidence or reviewer is unavailable, no substantive repair
141
- exists, or the same defect repeats without progress.
142
-
143
- Return `waived` only after explicit user instruction. Record skipped coverage
144
- and open defects. Waiver never means approval, verifies/accepts no defect, and
145
- skips no separate downstream gate. The target Module maps it to `Waived` or
146
- `Blocked` using its authority rules.
147
-
148
- ## Result Envelope
54
+ Root assigns stable IDs and deduplicates only when both invariant and failure
55
+ match. A superseded record must point to a distinct canonical replacement.
56
+ Improvements never block. Only an execution risk may become `accepted-risk`,
57
+ and only with explicit authority, reason, scope, and target revision. A blocker
58
+ cannot be accepted or downgraded.
59
+
60
+ Move blocking defects `open -> fixed -> verified`. For ordinary medium/low
61
+ behavior-preserving repairs, root may verify after checking the cited failure
62
+ path and affected validation. Closure-triggering defects require affected
63
+ independent verification.
64
+
65
+ In Closure, copy each supplied canonical defect's `id`, `class`, `invariant`,
66
+ `failure`, and introduced target revision byte-for-byte. Never paraphrase those
67
+ immutable fields while describing verification. Record the Closure decision in
68
+ the status, status target revision, evidence, and repair-finding outcome fields.
69
+
70
+ ## Repair And Stop
71
+
72
+ Repair compatible findings in one consolidated batch. Before repeating review,
73
+ the target, evidence, repair, or source decision must change materially.
74
+ Review count and elapsed time are audit signals, never approval or blocking
75
+ conditions.
76
+
77
+ Stop when repair requires a product/scope/owner decision, mandatory evidence or
78
+ reviewer is unavailable, no substantive repair exists, or the same failure
79
+ repeats without progress. Do not create micro-cycles for ordinary medium/low
80
+ findings.
81
+
82
+ Waive review only after explicit user instruction. Record skipped coverage and
83
+ open defects. Waiver is not approval and accepts no defect automatically.
84
+
85
+ ## Result
149
86
 
150
87
  ```text
151
- Review Passes: <total; Full; Closure; fresh sessions when tracked>
88
+ Review Mode: <Full | Closure>
152
89
  Mandatory Coverage: <covered lenses or gaps>
153
90
  Verified Defects: <IDs or None>
154
- Accepted Risks: <IDs, authority, and reason or None>
91
+ Accepted Risks: <IDs, authority, reason or None>
155
92
  Open Defects: <IDs or None>
156
93
  ```
157
94
 
158
- Target Modules add profile, mapped outcome, authority, Adapter verdict,
159
- checkpoint, status, or performance fields without redefining common fields.
160
-
161
- ## Contract Test Ledger
162
-
163
- | Invariant | Risk It Prevents | First Test / Proof | Status |
164
- | --- | --- | --- | --- |
165
- | Full/Closure stay causal and affected-lens-only within reviewer lineage | Broad review restarts, stale context, or lost defect authority | Evals 11, 16 | green |
166
- | Every launch answers an uncovered question on its pinned target | Duplicate reviewers repeat valid coverage without new evidence | Eval 23 | green |
167
- | Both consumers use one defect schema and lifecycle | Artifact and implementation defects drift | Eval 12 | green |
168
- | No-progress requires material change | Unchanged Closure repeats or numeric limits become terminal | Eval 12 | green |
169
- | A live reviewer poll timeout stays non-terminal and permits at most one conclude request | Root falsely reports a hang, cancels useful work, or launches a duplicate reviewer | Eval 12 | green |
170
- | Waiver skips coverage without accepting defects | Skipped review is reported as approval or risk acceptance | Eval 12 | green |
95
+ Target Modules add profile, authority, outcome, and checkpoint without
96
+ redefining these fields. For a normal medium flow, do not report internal
97
+ session accounting unless interruption, Closure, accepted risk, or another
98
+ exception makes it relevant.
@@ -0,0 +1,66 @@
1
+ {
2
+ "schema_version": 1,
3
+ "purpose": "Cross-skill routing and handoff regressions only; skill-local behavior belongs in each owner's evals directory.",
4
+ "cases": [
5
+ {
6
+ "id": "route-feature-tdd",
7
+ "prompt": "Implement a behavior-changing feature in this repository.",
8
+ "expected": ["read local evidence", "activate tdd before behavior edits", "run affected validation"],
9
+ "forbidden": ["invent repository commands", "create planning artifacts without an execution gap"]
10
+ },
11
+ {
12
+ "id": "route-diagnosis-only",
13
+ "prompt": "Explain the root cause and do not fix it yet.",
14
+ "expected": ["use bug-root-cause-explainer", "cite concrete evidence", "stop before edits"],
15
+ "forbidden": ["edit files", "present an inference as proven"]
16
+ },
17
+ {
18
+ "id": "route-flaky-bug",
19
+ "prompt": "Debug a failure that only happens intermittently.",
20
+ "expected": ["use diagnosing-bugs", "improve reproduction or signal before repair"],
21
+ "forbidden": ["jump directly to a fix"]
22
+ },
23
+ {
24
+ "id": "profile-medium-default",
25
+ "prompt": "Implement one clear stateful feature touching an API, persistence, and several files.",
26
+ "expected": ["select medium", "implement directly when authority and proof are clear"],
27
+ "forbidden": ["select high from statefulness or file count", "manufacture a PRD, tickets, or spec"]
28
+ },
29
+ {
30
+ "id": "profile-high-threshold",
31
+ "prompt": "Classify one broad ordinary refactor and one change with irreversible data loss plus unclear recovery ownership.",
32
+ "expected": ["keep the broad ordinary refactor medium", "select high only for material consequence plus uncertainty"],
33
+ "forbidden": ["accumulate generic risk labels into high"]
34
+ },
35
+ {
36
+ "id": "planning-does-not-deliver",
37
+ "prompt": "Use wayfinder to resolve the decision frontier and publish the resulting tickets.",
38
+ "expected": ["stop after the planning package", "require separate delivery authorization"],
39
+ "forbidden": ["start implementation from publication or labels"]
40
+ },
41
+ {
42
+ "id": "spec-only-for-gap",
43
+ "prompt": "Choose the route for a clear implementation request and for the same request with an unresolved execution contract.",
44
+ "expected": ["route the clear request directly", "use implementation-spec-maker for the unresolved execution delta"],
45
+ "forbidden": ["require a spec for every medium change"]
46
+ },
47
+ {
48
+ "id": "ticket-direct-vs-graph",
49
+ "prompt": "Choose delivery for one deterministic approved ticket and for an approved dependency graph.",
50
+ "expected": ["allow direct execution for the single ticket", "use tickets-orchestrator for the graph"],
51
+ "forbidden": ["manufacture a wave-level spec"]
52
+ },
53
+ {
54
+ "id": "review-topology",
55
+ "prompt": "Choose reviewer topology for simple, medium, and high profiles.",
56
+ "expected": ["simple uses one reviewer_fast when gated", "medium uses one reviewer_standard", "high uses two disjoint reviewer_deep tracks"],
57
+ "forbidden": ["root self-review", "two reviewers for ordinary medium"]
58
+ },
59
+ {
60
+ "id": "review-closure-bounded",
61
+ "prompt": "A medium Full review reports one low cleanup issue and one high shared DTO contract defect.",
62
+ "expected": ["repair findings in one batch", "coordinator verifies the low repair", "Closure covers only the high affected contract"],
63
+ "forbidden": ["restart broad Full review", "launch a separate cleanup gate"]
64
+ }
65
+ ]
66
+ }
@@ -1 +1 @@
1
- {"files":[{"mode":420,"path":"docs/agents/artifact-review-loop.md","sha256":"3b580da704595fa031998fb08caaf54eba3402695b9dc29952575d62d4d86e61","size":12420},{"mode":420,"path":"docs/agents/bug-workflow-routing.md","sha256":"a37c59676bcb8b938a7c82bce8a6ea5becf58ba367866d2712cd469391aea931","size":1603},{"mode":420,"path":"docs/agents/coding-skill-routing.md","sha256":"cb90ba59c007a9438a3ea9f03953e707d8a22fa23e040a3e6072eb8036d7b703","size":13909},{"mode":420,"path":"docs/agents/confidence-rubric.md","sha256":"42c947db2775380867e7adcfbdbe0f67b8f511b9ddf33a6eef8e1b0e995912c2","size":1883},{"mode":420,"path":"docs/agents/contract-test-ledger.md","sha256":"6f2327a40f218fbc746193c6440a69be08450938688b401f05163a3bb438a7f3","size":3779},{"mode":420,"path":"docs/agents/implementation-review-loop.md","sha256":"afbc1430fa6ea9f6edf0cc8c0d5f8079047411e5269f43fdb5c9533be71ce9ad","size":15270},{"mode":420,"path":"docs/agents/review-gates.md","sha256":"15d2265dbdccd1040a77c11e7b95fe66fc1139e657e6765ce1cc151e5d4b868b","size":2410},{"mode":420,"path":"docs/agents/review-protocol.md","sha256":"daab893e86841737892366a6da1df5226b2b666fcaf667b8479900f529ba7d55","size":8918},{"mode":420,"path":"docs/agents/tool-usage.md","sha256":"b6ade11865a46a5a28d4823c1b70318453f4d350cfc62d2969aa06d73c47be4b","size":4321},{"mode":420,"path":"operations/acceptance-proof/SKILL.md","sha256":"19445e1810ff3e5782ac27c17ad5f35a85a05a77ecc384624821f8298af6a7db","size":166},{"mode":420,"path":"operations/ambiguity-review/SKILL.md","sha256":"3b7506473b4d5ddcd9f827350d6da9216291e6dc62a6636c5f773d756053b086","size":346},{"mode":420,"path":"operations/cleanup-review/SKILL.md","sha256":"6d01e8a4ddf1b3363ff8b7793e496f6933ede4ff629b1a7b2474bd8a20697a7e","size":162},{"mode":420,"path":"operations/code-review/SKILL.md","sha256":"627e786c9489305a8431c564e9342f0e040c4ced29289aa21dade268fe370e39","size":156},{"mode":420,"path":"operations/implementation/SKILL.md","sha256":"0791d4593f0b8a6465f9916bfd23116097cf2eefed0c715c506e450e1eac62d4","size":165},{"mode":420,"path":"operations/spec-author/SKILL.md","sha256":"7750a639a0b8db0cd93be4057c91ee508dc72502b90ac57a363c655ba08a62ca","size":206},{"mode":420,"path":"operations/spec-implementation/SKILL.md","sha256":"46e42f702514b25d2935d251ca7748a083f28c60353fb19058c03f8826aaa6ea","size":196},{"mode":420,"path":"operations/spec-review/SKILL.md","sha256":"dde1323508b5024074f2f0e052bcf69fbebebe7bb1f46708b6b484720342f56a","size":161},{"mode":420,"path":"operations/triage/SKILL.md","sha256":"6e7aca4b35b3532a4bcda3dca8b69149bd0bf5527217093b6dfe0fb89fa4a409","size":182},{"mode":420,"path":"profiles/analyst_deep.toml","sha256":"06335e3a13b07ef3d7deb9b546a6dad5d765edfa6dbf21c1c4d516e843a4352f","size":380},{"mode":420,"path":"profiles/implementer_deep.toml","sha256":"f6b306fec4de431029dde01ae4236797ff200c8c8b24dd52ebe33bbd7d5f1ed9","size":849},{"mode":420,"path":"profiles/implementer_standard.toml","sha256":"4074f45ea6fb615382de7ddf04e4ab824185e01932290b95764ff63a3711824e","size":750},{"mode":420,"path":"profiles/proof_agent.toml","sha256":"2fbaf1145a11cb5c574bf1ed7333187d284ed0c3c3d6260c628f82057b8b04e7","size":446},{"mode":420,"path":"profiles/researcher_standard.toml","sha256":"ff9d47e27f3a8673e44798ffab0ec28f5fa6ed4eb5b2b5b052ce90151aecb36b","size":929},{"mode":420,"path":"profiles/reviewer_deep.toml","sha256":"15ef121b641265a85d0647c46f6dd93d4a9abd8c09bcc746c41e4ca6b4c9af41","size":648},{"mode":420,"path":"profiles/reviewer_fast.toml","sha256":"85562db714eca4dabaf64a6a989797ec54ccd3032a04392963aac8ac100d5d81","size":581},{"mode":420,"path":"profiles/reviewer_standard.toml","sha256":"0a26b24f98b7e8d0ec049cb6fbe623d5da838b2fe71b5accd59bf364a9c97e5c","size":585},{"mode":420,"path":"schemas/ambiguity-review-v1.json","sha256":"48d946ad8e91bd1908d8993ef631b1701ad3cd7a79f34368a07942d7774afeff","size":524},{"mode":420,"path":"schemas/code-review-v1.json","sha256":"8664163c561c98df6842e485a24d12b7857add95aeb75c54eb400536b5f85a19","size":2573},{"mode":420,"path":"schemas/implementation-report-v1.json","sha256":"a1b580dad03af9be74d895d38a2f6aa9398b6d772c944dc398dac5aca0630d2e","size":1573},{"mode":420,"path":"schemas/proof-report-v1.json","sha256":"e02812f0fd882cb29bb634b61a955b8dcd7d42794010201b7e0a1d6260a0f0d5","size":10280},{"mode":420,"path":"schemas/spec-author-v1.json","sha256":"49f945362d1184ad628584b91fbbe75323d13bafa4ca3876093387a9fca06214","size":420},{"mode":420,"path":"schemas/spec-review-v1.json","sha256":"fe9fdd389bcb4c3b7d19609184caf3af4b89e7c1d1e71a7ba0c55c72c5d5562d","size":1386},{"mode":420,"path":"schemas/triage-route-v1.json","sha256":"3ca7ed29237f42e12567797d145d90dd4f1f48fa1e81a7da67434c19747753d8","size":5894},{"mode":420,"path":"skills/acceptance-proof/SKILL.md","sha256":"5a0f2dcd62a43da86a7627c70c86bde86e78c06929675073ee37727e3f06fc65","size":1683},{"mode":420,"path":"skills/acceptance-proof/agents/openai.yaml","sha256":"d602d9f2e1bf618a71171729c6f354dd137c939cb433bd49afec678360e1189f","size":265},{"mode":420,"path":"skills/acceptance-proof/references/android.md","sha256":"b9396d1327ffc19f91b73c2470222871e403ea1d0f3de58025e689a92691a842","size":3022},{"mode":420,"path":"skills/acceptance-proof/references/browser.md","sha256":"ceefa4fd7db475b6162368511c2742b6d9c6af58d48e7d5d8a773ed5cc3938c4","size":2281},{"mode":420,"path":"skills/acceptance-proof/references/ios.md","sha256":"ae18be2632e1f7c3aa0810a1bafafc7760c807b30b1269408825aa14c224d493","size":2486},{"mode":420,"path":"skills/acceptance-proof/tools/android-lease.mjs","sha256":"982c426dd5b3a90f74e5120783b3a24fa98d8218d0f4140e756187865b48d708","size":11393},{"mode":420,"path":"skills/acceptance-proof/tools/ios-lease.mjs","sha256":"6e1e0d95c6a8b2d42c34de05bd4446eac23e3916bffccb027f236b8a8a1809a3","size":13834},{"mode":420,"path":"skills/agent-auto/SKILL.md","sha256":"5b80918ec9de52fe033dfccc75e3b68b9f1a09c5f1c2664c7d481dd18dc96664","size":1225},{"mode":420,"path":"skills/agent-auto/agents/openai.yaml","sha256":"79a70421300891e3130fc7535c4aa37e01931ff353fbd7b83262c6fcf2032b71","size":266},{"mode":420,"path":"skills/cleanup-review/SKILL.md","sha256":"85019d95a6b89701ca23845c042bc22f0c63b45b304d6589565e3657dabd7c8f","size":5218},{"mode":420,"path":"skills/cleanup-review/agents/openai.yaml","sha256":"9d8f8bba6586bcdf8acf5fc9ee174995c12eece56601ed29198435b5fa3a3665","size":288},{"mode":420,"path":"skills/code-review/SKILL.md","sha256":"af50264fbd83a9eb2038bba1bda327804da2f5a8dabf17b30f86765549272ebf","size":14344},{"mode":420,"path":"skills/code-review/agents/openai.yaml","sha256":"c2697212427a5e119d9127e2f9000594e6c2eb7696e7a40604da7149c79ce478","size":278},{"mode":420,"path":"skills/code-review/references/bug-classes.md","sha256":"1f8648af9914cbd7553d045915f959df0f3b50a88e97c3beefeb955342e7b12d","size":4062},{"mode":420,"path":"skills/code-review/references/framework-lenses.md","sha256":"ca9e7cb09f32f729cec5522e8ff7c7dcc43f76ef986e701e9c0a226514912cd8","size":1820},{"mode":420,"path":"skills/code-review/references/targeted-recipes.md","sha256":"921b422958c97e606637d3fa2d2628239d9176f0316c7e45bbc55b20a22fe3c1","size":2564},{"mode":420,"path":"skills/codebase-design/DEEPENING.md","sha256":"afa68a77f4f3199a22f5d1800a4592034edefc4980367adc91b53d5738ec3dfd","size":1899},{"mode":420,"path":"skills/codebase-design/DESIGN-IT-TWICE.md","sha256":"dff3a61e68b38b82917e397123e2ea545368d827d336a391081bf9bc3cf297ac","size":2656},{"mode":420,"path":"skills/codebase-design/SKILL.md","sha256":"fe6bce73dfd9fc0fedb9ae635c2fcb6a4cdc686be46b9fbd30d5088cf82ae45e","size":4627},{"mode":420,"path":"skills/codebase-design/agents/openai.yaml","sha256":"6e89c19d29ccebd5ab74a133e345fec04a3891eb0ceb5686ea8c0a76ae8d23aa","size":369},{"mode":420,"path":"skills/diagnosing-bugs/SKILL.md","sha256":"9a3457d4f12e3810041def93456a0c020df0842200737bf7ecaf06471991c16c","size":9097},{"mode":420,"path":"skills/diagnosing-bugs/agents/openai.yaml","sha256":"eca84840bc193ce63cc7aad93d9e7b5f2541739b7bf682e5fa9eded3a8060787","size":262},{"mode":420,"path":"skills/diagnosing-bugs/scripts/hitl-loop.template.sh","sha256":"b2932630950e5210075bcd6f850e5accf30c101c5367b29eac3a29b4dd8084c8","size":1164},{"mode":420,"path":"skills/implementation-spec-maker/SKILL.md","sha256":"4be042b3348e74119f9c2857fcdc759e9585605be3aa4ec4196affaf642bc90d","size":7526},{"mode":420,"path":"skills/implementation-spec-maker/agents/openai.yaml","sha256":"a4457f3e2f08cb07694855d362103b6a628c82b262950409268145348e2d91dd","size":363},{"mode":420,"path":"skills/implementation-spec-maker/references/source-modes.md","sha256":"471f0f58668b414438effbf91398022327fcbd43f40cc0801080994fe02bda3b","size":1920},{"mode":420,"path":"skills/implementation-spec-maker/references/spec-template.md","sha256":"46874dcd247a4f5d30b81453ae5a7f6758861b3bc346f30ae3a1d9dec0853bea","size":5308},{"mode":420,"path":"skills/implementation-spec-review/SKILL.md","sha256":"bd5a86063b90aae3b0c381bf7a959b4166d0e9445de03e72df6ae1e617b5d790","size":16135},{"mode":420,"path":"skills/implementation-spec-review/agents/openai.yaml","sha256":"600f9cc4e4f42596e3bf48601a508ddf055efcc396478d5e339d024973f4fb05","size":277},{"mode":420,"path":"skills/research/SKILL.md","sha256":"04ff21cf57c1044ff1ce98cfa5c5baf9d4ffa7dd32f06be833e38af94d02e7eb","size":4593},{"mode":420,"path":"skills/research/agents/openai.yaml","sha256":"4475cf777225f81a1c45937389d55f2b485b039b36e8378ef6b001e24f3fd1fe","size":254},{"mode":420,"path":"skills/small-task-implementer/SKILL.md","sha256":"137436142da6abe5565f4d24a94e515e4a239decd0710264872b25b30375e71d","size":4105},{"mode":420,"path":"skills/small-task-implementer/agents/openai.yaml","sha256":"81569b6dfd97de60b53f092528140a5e5043f9adcc9262debff7bc912e278958","size":261},{"mode":420,"path":"skills/spec-implementer/SKILL.md","sha256":"7095c732407a12e5f2fb25418df57ebe8ec8de7833e4091d3d87f44e1513beca","size":14590},{"mode":420,"path":"skills/spec-implementer/agents/openai.yaml","sha256":"84ef664ae3538e264fe6746917f081d34eac0738dc28764ddf27d7a448b3615d","size":341},{"mode":420,"path":"skills/tdd/SKILL.md","sha256":"ce19907ebfa2f1f8688359fbbee334a069def61e5341967527c8eebb8d996373","size":3461},{"mode":420,"path":"skills/tdd/agents/openai.yaml","sha256":"29e15aec650cf5ab74ae44485d2eef820d2c384b575c14957adda8f3dae9f66d","size":275},{"mode":420,"path":"skills/tdd/interface-design.md","sha256":"764c5ff0e3fa6b4ab7095eb65ccc7201e090baf19fa16051dfdb72c06d27417d","size":653},{"mode":420,"path":"skills/tdd/mocking.md","sha256":"3ceb807fdf4a47d6a93d4d9a891e5ba6d362a6247bd08adc451feebfc17361ef","size":1481},{"mode":420,"path":"skills/tdd/refactoring.md","sha256":"54fced22dd1911b7094c3fe7979b7c1a40d40be307482c4adf7dc0588f27d6cc","size":387},{"mode":420,"path":"skills/tdd/tests.md","sha256":"6773173a074569b2e51653bd7b95c097d602dbb4815d1cf1c87344705c4e0d1c","size":2228},{"mode":420,"path":"skills/triage/AGENT-BRIEF.md","sha256":"053cd013e1c2c9275111aa6e4b5a12e9838f8d6cd888e8ca0ccaaac576fd74df","size":7070},{"mode":420,"path":"skills/triage/OUT-OF-SCOPE.md","sha256":"8ed8cf27833444060c81b3961a83c0e3d8e6cf2fcb2ddf6f8b07c6655cbb0d85","size":4282},{"mode":420,"path":"skills/triage/SKILL.md","sha256":"5c7c84189fd5146ec1ae55a5669c74372ed7bce588fa7b8523417aa55b312a2e","size":8273},{"mode":420,"path":"skills/triage/agents/openai.yaml","sha256":"466bc430f95132bc6b28d077d50865d4b1fd9218307582343c35b0baf66d7894","size":283},{"mode":420,"path":"skills/ui-evidence-proof/SKILL.md","sha256":"06c2087b6b2df5265d1fe47b3f87dce1b5dc581c15c05176377741785572c1ad","size":6235},{"mode":420,"path":"skills/ui-evidence-proof/agents/openai.yaml","sha256":"0835da6b3a0439f515f1691748d6cf810b421fd58b24de8bc6b1f03b0d5e3c2e","size":374}],"generationHash":"df5ba62363dd5dd1eb502b036b34e8d10a2a4b5df59115ca21f40cca29d770e5","operations":{"acceptance-proof":{"entry":"operations/acceptance-proof/SKILL.md","files":["docs/agents/artifact-review-loop.md","docs/agents/bug-workflow-routing.md","docs/agents/coding-skill-routing.md","docs/agents/confidence-rubric.md","docs/agents/contract-test-ledger.md","docs/agents/implementation-review-loop.md","docs/agents/review-gates.md","docs/agents/review-protocol.md","docs/agents/tool-usage.md","operations/acceptance-proof/SKILL.md","profiles/proof_agent.toml","schemas/proof-report-v1.json","skills/acceptance-proof/SKILL.md","skills/acceptance-proof/agents/openai.yaml","skills/acceptance-proof/references/android.md","skills/acceptance-proof/references/browser.md","skills/acceptance-proof/references/ios.md","skills/acceptance-proof/tools/android-lease.mjs","skills/acceptance-proof/tools/ios-lease.mjs"],"id":"acceptance-proof","outputSchema":"schemas/proof-report-v1.json","policy":{"approvalCeiling":"never","cwdClass":"worktree","externalWrite":false,"mcpTools":[],"network":"deny","networkHosts":[],"runnerPostcondition":"proof-only","sandboxMode":"workspace-write","worktreeAccess":"write","writableRootClasses":["worktree"]},"profile":"proof_agent","sourceSkill":"acceptance-proof"},"ambiguity-review":{"entry":"operations/ambiguity-review/SKILL.md","files":["operations/ambiguity-review/SKILL.md","profiles/reviewer_deep.toml","schemas/ambiguity-review-v1.json"],"id":"ambiguity-review","outputSchema":"schemas/ambiguity-review-v1.json","policy":{"approvalCeiling":"never","cwdClass":"worktree","externalWrite":false,"mcpTools":[],"network":"deny","networkHosts":[],"runnerPostcondition":"report-only","sandboxMode":"read-only","worktreeAccess":"read-only","writableRootClasses":[]},"profile":"reviewer_deep","sourceSkill":null},"cleanup-review":{"entry":"operations/cleanup-review/SKILL.md","files":["docs/agents/artifact-review-loop.md","docs/agents/bug-workflow-routing.md","docs/agents/coding-skill-routing.md","docs/agents/confidence-rubric.md","docs/agents/contract-test-ledger.md","docs/agents/implementation-review-loop.md","docs/agents/review-gates.md","docs/agents/review-protocol.md","docs/agents/tool-usage.md","operations/cleanup-review/SKILL.md","profiles/reviewer_standard.toml","schemas/code-review-v1.json","skills/cleanup-review/SKILL.md","skills/cleanup-review/agents/openai.yaml"],"id":"cleanup-review","outputSchema":"schemas/code-review-v1.json","policy":{"approvalCeiling":"never","cwdClass":"worktree","externalWrite":false,"mcpTools":[],"network":"deny","networkHosts":[],"runnerPostcondition":"report-only","sandboxMode":"read-only","worktreeAccess":"read-only","writableRootClasses":[]},"profile":"reviewer_standard","sourceSkill":"cleanup-review"},"code-review":{"entry":"operations/code-review/SKILL.md","files":["docs/agents/artifact-review-loop.md","docs/agents/bug-workflow-routing.md","docs/agents/coding-skill-routing.md","docs/agents/confidence-rubric.md","docs/agents/contract-test-ledger.md","docs/agents/implementation-review-loop.md","docs/agents/review-gates.md","docs/agents/review-protocol.md","docs/agents/tool-usage.md","operations/code-review/SKILL.md","profiles/reviewer_deep.toml","schemas/code-review-v1.json","skills/code-review/SKILL.md","skills/code-review/agents/openai.yaml","skills/code-review/references/bug-classes.md","skills/code-review/references/framework-lenses.md","skills/code-review/references/targeted-recipes.md"],"id":"code-review","outputSchema":"schemas/code-review-v1.json","policy":{"approvalCeiling":"never","cwdClass":"worktree","externalWrite":false,"mcpTools":[],"network":"deny","networkHosts":[],"runnerPostcondition":"report-only","sandboxMode":"read-only","worktreeAccess":"read-only","writableRootClasses":[]},"profile":"reviewer_deep","sourceSkill":"code-review"},"implementation":{"entry":"operations/implementation/SKILL.md","files":["docs/agents/artifact-review-loop.md","docs/agents/bug-workflow-routing.md","docs/agents/coding-skill-routing.md","docs/agents/confidence-rubric.md","docs/agents/contract-test-ledger.md","docs/agents/implementation-review-loop.md","docs/agents/review-gates.md","docs/agents/review-protocol.md","docs/agents/tool-usage.md","operations/implementation/SKILL.md","profiles/implementer_standard.toml","schemas/implementation-report-v1.json","skills/agent-auto/SKILL.md","skills/agent-auto/agents/openai.yaml"],"id":"implementation","outputSchema":"schemas/implementation-report-v1.json","policy":{"approvalCeiling":"never","cwdClass":"worktree","externalWrite":false,"mcpTools":[],"network":"deny","networkHosts":[],"runnerPostcondition":"change-set","sandboxMode":"workspace-write","worktreeAccess":"write","writableRootClasses":["worktree"]},"profile":"implementer_standard","sourceSkill":"agent-auto"},"spec-author":{"entry":"operations/spec-author/SKILL.md","files":["docs/agents/artifact-review-loop.md","docs/agents/bug-workflow-routing.md","docs/agents/coding-skill-routing.md","docs/agents/confidence-rubric.md","docs/agents/contract-test-ledger.md","docs/agents/implementation-review-loop.md","docs/agents/review-gates.md","docs/agents/review-protocol.md","docs/agents/tool-usage.md","operations/spec-author/SKILL.md","profiles/implementer_standard.toml","schemas/spec-author-v1.json","skills/implementation-spec-maker/SKILL.md","skills/implementation-spec-maker/agents/openai.yaml","skills/implementation-spec-maker/references/source-modes.md","skills/implementation-spec-maker/references/spec-template.md"],"id":"spec-author","outputSchema":"schemas/spec-author-v1.json","policy":{"approvalCeiling":"never","cwdClass":"target-state","externalWrite":false,"mcpTools":[],"network":"deny","networkHosts":[],"runnerPostcondition":"spec-only","sandboxMode":"workspace-write","worktreeAccess":"write","writableRootClasses":["target-state"]},"profile":"implementer_standard","sourceSkill":"implementation-spec-maker"},"spec-implementation":{"entry":"operations/spec-implementation/SKILL.md","files":["docs/agents/artifact-review-loop.md","docs/agents/bug-workflow-routing.md","docs/agents/coding-skill-routing.md","docs/agents/confidence-rubric.md","docs/agents/contract-test-ledger.md","docs/agents/implementation-review-loop.md","docs/agents/review-gates.md","docs/agents/review-protocol.md","docs/agents/tool-usage.md","operations/spec-implementation/SKILL.md","profiles/implementer_standard.toml","schemas/implementation-report-v1.json","skills/spec-implementer/SKILL.md","skills/spec-implementer/agents/openai.yaml"],"id":"spec-implementation","outputSchema":"schemas/implementation-report-v1.json","policy":{"approvalCeiling":"never","cwdClass":"worktree","externalWrite":false,"mcpTools":[],"network":"deny","networkHosts":[],"runnerPostcondition":"change-set","sandboxMode":"workspace-write","worktreeAccess":"write","writableRootClasses":["worktree"]},"profile":"implementer_standard","sourceSkill":"spec-implementer"},"spec-review":{"entry":"operations/spec-review/SKILL.md","files":["docs/agents/artifact-review-loop.md","docs/agents/bug-workflow-routing.md","docs/agents/coding-skill-routing.md","docs/agents/confidence-rubric.md","docs/agents/contract-test-ledger.md","docs/agents/implementation-review-loop.md","docs/agents/review-gates.md","docs/agents/review-protocol.md","docs/agents/tool-usage.md","operations/spec-review/SKILL.md","profiles/reviewer_deep.toml","schemas/spec-review-v1.json","skills/implementation-spec-review/SKILL.md","skills/implementation-spec-review/agents/openai.yaml"],"id":"spec-review","outputSchema":"schemas/spec-review-v1.json","policy":{"approvalCeiling":"never","cwdClass":"worktree","externalWrite":false,"mcpTools":[],"network":"deny","networkHosts":[],"runnerPostcondition":"report-only","sandboxMode":"read-only","worktreeAccess":"read-only","writableRootClasses":[]},"profile":"reviewer_deep","sourceSkill":"implementation-spec-review"},"triage":{"entry":"operations/triage/SKILL.md","files":["docs/agents/artifact-review-loop.md","docs/agents/bug-workflow-routing.md","docs/agents/coding-skill-routing.md","docs/agents/confidence-rubric.md","docs/agents/contract-test-ledger.md","docs/agents/implementation-review-loop.md","docs/agents/review-gates.md","docs/agents/review-protocol.md","docs/agents/tool-usage.md","operations/triage/SKILL.md","profiles/analyst_deep.toml","schemas/triage-route-v1.json","skills/triage/AGENT-BRIEF.md","skills/triage/OUT-OF-SCOPE.md","skills/triage/SKILL.md","skills/triage/agents/openai.yaml"],"id":"triage","outputSchema":"schemas/triage-route-v1.json","policy":{"approvalCeiling":"never","cwdClass":"worktree","externalWrite":false,"mcpTools":[],"network":"deny","networkHosts":[],"runnerPostcondition":"report-only","sandboxMode":"read-only","worktreeAccess":"read-only","writableRootClasses":[]},"profile":"analyst_deep","sourceSkill":"triage"}},"profiles":{"analyst_deep":"profiles/analyst_deep.toml","implementer_deep":"profiles/implementer_deep.toml","implementer_standard":"profiles/implementer_standard.toml","proof_agent":"profiles/proof_agent.toml","researcher_standard":"profiles/researcher_standard.toml","reviewer_deep":"profiles/reviewer_deep.toml","reviewer_fast":"profiles/reviewer_fast.toml","reviewer_standard":"profiles/reviewer_standard.toml"},"skills":{"acceptance-proof":{"entry":"skills/acceptance-proof/SKILL.md","files":["docs/agents/artifact-review-loop.md","docs/agents/bug-workflow-routing.md","docs/agents/coding-skill-routing.md","docs/agents/confidence-rubric.md","docs/agents/contract-test-ledger.md","docs/agents/implementation-review-loop.md","docs/agents/review-gates.md","docs/agents/review-protocol.md","docs/agents/tool-usage.md","skills/acceptance-proof/SKILL.md","skills/acceptance-proof/agents/openai.yaml","skills/acceptance-proof/references/android.md","skills/acceptance-proof/references/browser.md","skills/acceptance-proof/references/ios.md","skills/acceptance-proof/tools/android-lease.mjs","skills/acceptance-proof/tools/ios-lease.mjs"],"metadata":"skills/acceptance-proof/agents/openai.yaml"},"agent-auto":{"entry":"skills/agent-auto/SKILL.md","files":["docs/agents/artifact-review-loop.md","docs/agents/bug-workflow-routing.md","docs/agents/coding-skill-routing.md","docs/agents/confidence-rubric.md","docs/agents/contract-test-ledger.md","docs/agents/implementation-review-loop.md","docs/agents/review-gates.md","docs/agents/review-protocol.md","docs/agents/tool-usage.md","skills/agent-auto/SKILL.md","skills/agent-auto/agents/openai.yaml"],"metadata":"skills/agent-auto/agents/openai.yaml"},"cleanup-review":{"entry":"skills/cleanup-review/SKILL.md","files":["docs/agents/artifact-review-loop.md","docs/agents/bug-workflow-routing.md","docs/agents/coding-skill-routing.md","docs/agents/confidence-rubric.md","docs/agents/contract-test-ledger.md","docs/agents/implementation-review-loop.md","docs/agents/review-gates.md","docs/agents/review-protocol.md","docs/agents/tool-usage.md","skills/cleanup-review/SKILL.md","skills/cleanup-review/agents/openai.yaml"],"metadata":"skills/cleanup-review/agents/openai.yaml"},"code-review":{"entry":"skills/code-review/SKILL.md","files":["docs/agents/artifact-review-loop.md","docs/agents/bug-workflow-routing.md","docs/agents/coding-skill-routing.md","docs/agents/confidence-rubric.md","docs/agents/contract-test-ledger.md","docs/agents/implementation-review-loop.md","docs/agents/review-gates.md","docs/agents/review-protocol.md","docs/agents/tool-usage.md","skills/code-review/SKILL.md","skills/code-review/agents/openai.yaml","skills/code-review/references/bug-classes.md","skills/code-review/references/framework-lenses.md","skills/code-review/references/targeted-recipes.md"],"metadata":"skills/code-review/agents/openai.yaml"},"codebase-design":{"entry":"skills/codebase-design/SKILL.md","files":["docs/agents/artifact-review-loop.md","docs/agents/bug-workflow-routing.md","docs/agents/coding-skill-routing.md","docs/agents/confidence-rubric.md","docs/agents/contract-test-ledger.md","docs/agents/implementation-review-loop.md","docs/agents/review-gates.md","docs/agents/review-protocol.md","docs/agents/tool-usage.md","skills/codebase-design/DEEPENING.md","skills/codebase-design/DESIGN-IT-TWICE.md","skills/codebase-design/SKILL.md","skills/codebase-design/agents/openai.yaml"],"metadata":"skills/codebase-design/agents/openai.yaml"},"diagnosing-bugs":{"entry":"skills/diagnosing-bugs/SKILL.md","files":["docs/agents/artifact-review-loop.md","docs/agents/bug-workflow-routing.md","docs/agents/coding-skill-routing.md","docs/agents/confidence-rubric.md","docs/agents/contract-test-ledger.md","docs/agents/implementation-review-loop.md","docs/agents/review-gates.md","docs/agents/review-protocol.md","docs/agents/tool-usage.md","skills/diagnosing-bugs/SKILL.md","skills/diagnosing-bugs/agents/openai.yaml","skills/diagnosing-bugs/scripts/hitl-loop.template.sh"],"metadata":"skills/diagnosing-bugs/agents/openai.yaml"},"implementation-spec-maker":{"entry":"skills/implementation-spec-maker/SKILL.md","files":["docs/agents/artifact-review-loop.md","docs/agents/bug-workflow-routing.md","docs/agents/coding-skill-routing.md","docs/agents/confidence-rubric.md","docs/agents/contract-test-ledger.md","docs/agents/implementation-review-loop.md","docs/agents/review-gates.md","docs/agents/review-protocol.md","docs/agents/tool-usage.md","skills/implementation-spec-maker/SKILL.md","skills/implementation-spec-maker/agents/openai.yaml","skills/implementation-spec-maker/references/source-modes.md","skills/implementation-spec-maker/references/spec-template.md"],"metadata":"skills/implementation-spec-maker/agents/openai.yaml"},"implementation-spec-review":{"entry":"skills/implementation-spec-review/SKILL.md","files":["docs/agents/artifact-review-loop.md","docs/agents/bug-workflow-routing.md","docs/agents/coding-skill-routing.md","docs/agents/confidence-rubric.md","docs/agents/contract-test-ledger.md","docs/agents/implementation-review-loop.md","docs/agents/review-gates.md","docs/agents/review-protocol.md","docs/agents/tool-usage.md","skills/implementation-spec-review/SKILL.md","skills/implementation-spec-review/agents/openai.yaml"],"metadata":"skills/implementation-spec-review/agents/openai.yaml"},"research":{"entry":"skills/research/SKILL.md","files":["docs/agents/artifact-review-loop.md","docs/agents/bug-workflow-routing.md","docs/agents/coding-skill-routing.md","docs/agents/confidence-rubric.md","docs/agents/contract-test-ledger.md","docs/agents/implementation-review-loop.md","docs/agents/review-gates.md","docs/agents/review-protocol.md","docs/agents/tool-usage.md","skills/research/SKILL.md","skills/research/agents/openai.yaml"],"metadata":"skills/research/agents/openai.yaml"},"small-task-implementer":{"entry":"skills/small-task-implementer/SKILL.md","files":["docs/agents/artifact-review-loop.md","docs/agents/bug-workflow-routing.md","docs/agents/coding-skill-routing.md","docs/agents/confidence-rubric.md","docs/agents/contract-test-ledger.md","docs/agents/implementation-review-loop.md","docs/agents/review-gates.md","docs/agents/review-protocol.md","docs/agents/tool-usage.md","skills/small-task-implementer/SKILL.md","skills/small-task-implementer/agents/openai.yaml"],"metadata":"skills/small-task-implementer/agents/openai.yaml"},"spec-implementer":{"entry":"skills/spec-implementer/SKILL.md","files":["docs/agents/artifact-review-loop.md","docs/agents/bug-workflow-routing.md","docs/agents/coding-skill-routing.md","docs/agents/confidence-rubric.md","docs/agents/contract-test-ledger.md","docs/agents/implementation-review-loop.md","docs/agents/review-gates.md","docs/agents/review-protocol.md","docs/agents/tool-usage.md","skills/spec-implementer/SKILL.md","skills/spec-implementer/agents/openai.yaml"],"metadata":"skills/spec-implementer/agents/openai.yaml"},"tdd":{"entry":"skills/tdd/SKILL.md","files":["docs/agents/artifact-review-loop.md","docs/agents/bug-workflow-routing.md","docs/agents/coding-skill-routing.md","docs/agents/confidence-rubric.md","docs/agents/contract-test-ledger.md","docs/agents/implementation-review-loop.md","docs/agents/review-gates.md","docs/agents/review-protocol.md","docs/agents/tool-usage.md","skills/tdd/SKILL.md","skills/tdd/agents/openai.yaml","skills/tdd/interface-design.md","skills/tdd/mocking.md","skills/tdd/refactoring.md","skills/tdd/tests.md"],"metadata":"skills/tdd/agents/openai.yaml"},"triage":{"entry":"skills/triage/SKILL.md","files":["docs/agents/artifact-review-loop.md","docs/agents/bug-workflow-routing.md","docs/agents/coding-skill-routing.md","docs/agents/confidence-rubric.md","docs/agents/contract-test-ledger.md","docs/agents/implementation-review-loop.md","docs/agents/review-gates.md","docs/agents/review-protocol.md","docs/agents/tool-usage.md","skills/triage/AGENT-BRIEF.md","skills/triage/OUT-OF-SCOPE.md","skills/triage/SKILL.md","skills/triage/agents/openai.yaml"],"metadata":"skills/triage/agents/openai.yaml"},"ui-evidence-proof":{"entry":"skills/ui-evidence-proof/SKILL.md","files":["docs/agents/artifact-review-loop.md","docs/agents/bug-workflow-routing.md","docs/agents/coding-skill-routing.md","docs/agents/confidence-rubric.md","docs/agents/contract-test-ledger.md","docs/agents/implementation-review-loop.md","docs/agents/review-gates.md","docs/agents/review-protocol.md","docs/agents/tool-usage.md","skills/ui-evidence-proof/SKILL.md","skills/ui-evidence-proof/agents/openai.yaml"],"metadata":"skills/ui-evidence-proof/agents/openai.yaml"}},"sourceFingerprint":"c7192bf50b93417bc56ab78cb07fc5a5d3b56f80c5b0dce5c55f01944d2a1fd6","version":1}
1
+ {"evals":{"shared/coding-skill-evals":{"owner":null,"path":"evals/coding-skill-evals.json"},"skill/implementation-spec-review":{"owner":"implementation-spec-review","path":"skills/implementation-spec-review/evals/evals.json"},"skill/spec-implementer":{"owner":"spec-implementer","path":"skills/spec-implementer/evals/evals.json"}},"files":[{"mode":420,"path":"docs/agents/bug-workflow-routing.md","sha256":"a37c59676bcb8b938a7c82bce8a6ea5becf58ba367866d2712cd469391aea931","size":1603},{"mode":420,"path":"docs/agents/bugfix-quality-gate.md","sha256":"caaed6c923adfe56f4b6dd89222a83493ef4dd4e8bdd2bad694f8a11f93541ae","size":709},{"mode":420,"path":"docs/agents/coding-skill-routing.md","sha256":"958f4e7c7177c062b2a24fb7db2287be2cfa6e5281f2d156f7eb67b6cb3a0741","size":6434},{"mode":420,"path":"docs/agents/confidence-rubric.md","sha256":"42c947db2775380867e7adcfbdbe0f67b8f511b9ddf33a6eef8e1b0e995912c2","size":1883},{"mode":420,"path":"docs/agents/contract-test-ledger.md","sha256":"6f2327a40f218fbc746193c6440a69be08450938688b401f05163a3bb438a7f3","size":3779},{"mode":420,"path":"docs/agents/review-gates.md","sha256":"5ca48066b263cf869549c383814cfbdbbad711e5c247a8253bc2996d8fdec496","size":1857},{"mode":420,"path":"docs/agents/review-protocol.md","sha256":"9af5b44c545d76f3a048de424a4ccc78aa7e018bd193e4e5a787b2cef47af071","size":4086},{"mode":420,"path":"docs/agents/tool-usage.md","sha256":"b6ade11865a46a5a28d4823c1b70318453f4d350cfc62d2969aa06d73c47be4b","size":4321},{"mode":420,"path":"evals/coding-skill-evals.json","sha256":"22ba3bb4372cde747c3accc899f85dc67f190fd33113deb133392a1695f5ad99","size":3519},{"mode":420,"path":"operations/acceptance-proof/SKILL.md","sha256":"c33a04bf8dfcb59982f60b232633b0e48e9de4ec375cd02f52ec71f9fce30de6","size":440},{"mode":420,"path":"operations/ambiguity-review/SKILL.md","sha256":"20371f30015afef12a2b9dd608d21cc93a93f011873927f7a64e29b36a4fcf99","size":427},{"mode":420,"path":"operations/code-review/SKILL.md","sha256":"c415e4383dd7ddeb4b371a0a141a39c4296d95222b26ca3fcc51a34704e10f25","size":1246},{"mode":420,"path":"operations/implementation/SKILL.md","sha256":"6f0c9b900d252d9a833d7fdac6868d84900787debf2964e22ffbf86851af45d2","size":1461},{"mode":420,"path":"operations/spec-author/SKILL.md","sha256":"5170f275bd7bc346578028d74d5814a5edd36ccd90d0615c4d5e3d6b6f8af049","size":627},{"mode":420,"path":"operations/spec-review/SKILL.md","sha256":"6cb7b8ea245faa2587ebde07ebe3d364eff41d18d5464ccd2749cf2b9b49f701","size":653},{"mode":420,"path":"operations/triage/SKILL.md","sha256":"39e8301b90a59795dc2b93917d4674c22dc3e4380f011a54ade1de4c7cdc18ae","size":647},{"mode":420,"path":"profiles/analyst_deep.toml","sha256":"06335e3a13b07ef3d7deb9b546a6dad5d765edfa6dbf21c1c4d516e843a4352f","size":380},{"mode":420,"path":"profiles/implementer_standard.toml","sha256":"4074f45ea6fb615382de7ddf04e4ab824185e01932290b95764ff63a3711824e","size":750},{"mode":420,"path":"profiles/proof_agent.toml","sha256":"2fbaf1145a11cb5c574bf1ed7333187d284ed0c3c3d6260c628f82057b8b04e7","size":446},{"mode":420,"path":"profiles/reviewer_deep.toml","sha256":"15ef121b641265a85d0647c46f6dd93d4a9abd8c09bcc746c41e4ca6b4c9af41","size":648},{"mode":420,"path":"profiles/reviewer_standard.toml","sha256":"0a26b24f98b7e8d0ec049cb6fbe623d5da838b2fe71b5accd59bf364a9c97e5c","size":585},{"mode":420,"path":"schemas/ambiguity-review-v1.json","sha256":"48d946ad8e91bd1908d8993ef631b1701ad3cd7a79f34368a07942d7774afeff","size":524},{"mode":420,"path":"schemas/code-review-v1.json","sha256":"b11b266e0a7e0aa19eaf90ebf2b5c33f3bc7263e9c697cbf206e9865084e3439","size":2555},{"mode":420,"path":"schemas/implementation-report-v1.json","sha256":"a1b580dad03af9be74d895d38a2f6aa9398b6d772c944dc398dac5aca0630d2e","size":1573},{"mode":420,"path":"schemas/proof-report-v1.json","sha256":"1bf6c5b22b97ab3b659d961e21b0fc06869481405e1048ab9eadeeea212a8cf6","size":21949},{"mode":420,"path":"schemas/spec-author-v1.json","sha256":"49f945362d1184ad628584b91fbbe75323d13bafa4ca3876093387a9fca06214","size":420},{"mode":420,"path":"schemas/spec-review-v1.json","sha256":"fe9fdd389bcb4c3b7d19609184caf3af4b89e7c1d1e71a7ba0c55c72c5d5562d","size":1386},{"mode":420,"path":"schemas/triage-route-v1.json","sha256":"3ca7ed29237f42e12567797d145d90dd4f1f48fa1e81a7da67434c19747753d8","size":5894},{"mode":420,"path":"skills/acceptance-proof/SKILL.md","sha256":"5a0f2dcd62a43da86a7627c70c86bde86e78c06929675073ee37727e3f06fc65","size":1683},{"mode":420,"path":"skills/acceptance-proof/agents/openai.yaml","sha256":"d602d9f2e1bf618a71171729c6f354dd137c939cb433bd49afec678360e1189f","size":265},{"mode":420,"path":"skills/acceptance-proof/references/android.md","sha256":"b9396d1327ffc19f91b73c2470222871e403ea1d0f3de58025e689a92691a842","size":3022},{"mode":420,"path":"skills/acceptance-proof/references/browser.md","sha256":"ceefa4fd7db475b6162368511c2742b6d9c6af58d48e7d5d8a773ed5cc3938c4","size":2281},{"mode":420,"path":"skills/acceptance-proof/references/ios.md","sha256":"ae18be2632e1f7c3aa0810a1bafafc7760c807b30b1269408825aa14c224d493","size":2486},{"mode":420,"path":"skills/acceptance-proof/tools/android-lease.mjs","sha256":"982c426dd5b3a90f74e5120783b3a24fa98d8218d0f4140e756187865b48d708","size":11393},{"mode":420,"path":"skills/acceptance-proof/tools/ios-lease.mjs","sha256":"6e1e0d95c6a8b2d42c34de05bd4446eac23e3916bffccb027f236b8a8a1809a3","size":13834},{"mode":420,"path":"skills/agent-auto/SKILL.md","sha256":"450c28f7a712f881cdf9f3e48555a47022b46f79df875bac35843a1c15135451","size":1415},{"mode":420,"path":"skills/agent-auto/agents/openai.yaml","sha256":"79a70421300891e3130fc7535c4aa37e01931ff353fbd7b83262c6fcf2032b71","size":266},{"mode":420,"path":"skills/code-debugger/SKILL.md","sha256":"56a403b2cd9a3dad4b48d06ab05a9b99fde97261b7380c2cd9ffd82b2c3cbb53","size":7725},{"mode":420,"path":"skills/code-debugger/agents/openai.yaml","sha256":"8dd2f301bee632585371bd6f62dbdcdec95201f553392515342da5d0fc563305","size":322},{"mode":420,"path":"skills/code-review/SKILL.md","sha256":"5cd395731f598d5c88319f74ea4fe83ae7678fa1bd42cd45acc6246b67467289","size":15805},{"mode":420,"path":"skills/code-review/agents/openai.yaml","sha256":"c2697212427a5e119d9127e2f9000594e6c2eb7696e7a40604da7149c79ce478","size":278},{"mode":420,"path":"skills/code-review/references/bug-classes.md","sha256":"1f8648af9914cbd7553d045915f959df0f3b50a88e97c3beefeb955342e7b12d","size":4062},{"mode":420,"path":"skills/code-review/references/cleanup-lens.md","sha256":"6406350bf8ff00f9d2de2d5a8871aa1a9ab0efa33dcc35453eeebe9c96623e69","size":2846},{"mode":420,"path":"skills/code-review/references/framework-lenses.md","sha256":"ca9e7cb09f32f729cec5522e8ff7c7dcc43f76ef986e701e9c0a226514912cd8","size":1820},{"mode":420,"path":"skills/code-review/references/targeted-recipes.md","sha256":"921b422958c97e606637d3fa2d2628239d9176f0316c7e45bbc55b20a22fe3c1","size":2564},{"mode":420,"path":"skills/diagnosing-bugs/SKILL.md","sha256":"9a3457d4f12e3810041def93456a0c020df0842200737bf7ecaf06471991c16c","size":9097},{"mode":420,"path":"skills/diagnosing-bugs/agents/openai.yaml","sha256":"eca84840bc193ce63cc7aad93d9e7b5f2541739b7bf682e5fa9eded3a8060787","size":262},{"mode":420,"path":"skills/diagnosing-bugs/scripts/hitl-loop.template.sh","sha256":"b2932630950e5210075bcd6f850e5accf30c101c5367b29eac3a29b4dd8084c8","size":1164},{"mode":420,"path":"skills/implementation-spec-maker/SKILL.md","sha256":"035cb829574c92c8342ae0a4a6f04866802f3724b6ba16583ae8c5724d6d45f9","size":7751},{"mode":420,"path":"skills/implementation-spec-maker/agents/openai.yaml","sha256":"a4457f3e2f08cb07694855d362103b6a628c82b262950409268145348e2d91dd","size":363},{"mode":420,"path":"skills/implementation-spec-maker/references/source-modes.md","sha256":"471f0f58668b414438effbf91398022327fcbd43f40cc0801080994fe02bda3b","size":1920},{"mode":420,"path":"skills/implementation-spec-maker/references/spec-template.md","sha256":"0ba380125eb2e0c114aed6b0f064ac2643edf75bb78c10de72b741776edee6ff","size":5319},{"mode":420,"path":"skills/implementation-spec-review/SKILL.md","sha256":"d4c32638f0bf93766dda1e9d5eaa072c279d4658d421482da78ccc0cfd2e13c7","size":5270},{"mode":420,"path":"skills/implementation-spec-review/agents/openai.yaml","sha256":"600f9cc4e4f42596e3bf48601a508ddf055efcc396478d5e339d024973f4fb05","size":277},{"mode":420,"path":"skills/implementation-spec-review/evals/evals.json","sha256":"d0f73eba5cb0ce34f50f43f80094a3f0cf3aa1caa1b5eb859906721159aee575","size":1114},{"mode":420,"path":"skills/implementation-spec-review/references/review-loop.md","sha256":"9d9e9c233ba08e256b158a7fe740ffe5ffd1893960c2076254e44e0e49083630","size":3901},{"mode":420,"path":"skills/small-task-implementer/SKILL.md","sha256":"6b81bf9d85b2f6c8253099cfe766f67cad312e3eb38b014ed2bedb007df467fc","size":4279},{"mode":420,"path":"skills/small-task-implementer/agents/openai.yaml","sha256":"81569b6dfd97de60b53f092528140a5e5043f9adcc9262debff7bc912e278958","size":261},{"mode":420,"path":"skills/spec-implementer/SKILL.md","sha256":"70f65edddebc788a21dbb5bc6cb8f60a297e0364c8e4754f3ba80cbf1ba210a0","size":5538},{"mode":420,"path":"skills/spec-implementer/agents/openai.yaml","sha256":"84ef664ae3538e264fe6746917f081d34eac0738dc28764ddf27d7a448b3615d","size":341},{"mode":420,"path":"skills/spec-implementer/evals/evals.json","sha256":"23d73ddd6e2205b601a36cd07a7dd5ee228ae587d5b9cc5adab9b0993a312ba8","size":1361},{"mode":420,"path":"skills/spec-implementer/references/review-loop.md","sha256":"5161c4c586144cdf0aba828c459c57b9e8dc404a06990b3a887b51648fe1fcb9","size":4311},{"mode":420,"path":"skills/tdd/SKILL.md","sha256":"9e046610c341be0c770d4196f98c95cdb673d477bbbbcdfcca499dd5da6071d0","size":4146},{"mode":420,"path":"skills/tdd/agents/openai.yaml","sha256":"cc49a11a2c08733862d1a406123cda7a050d4a70fa92a4b3ec37f318694b1581","size":301},{"mode":420,"path":"skills/tdd/interface-design.md","sha256":"764c5ff0e3fa6b4ab7095eb65ccc7201e090baf19fa16051dfdb72c06d27417d","size":653},{"mode":420,"path":"skills/tdd/mocking.md","sha256":"3ceb807fdf4a47d6a93d4d9a891e5ba6d362a6247bd08adc451feebfc17361ef","size":1481},{"mode":420,"path":"skills/tdd/refactoring.md","sha256":"54fced22dd1911b7094c3fe7979b7c1a40d40be307482c4adf7dc0588f27d6cc","size":387},{"mode":420,"path":"skills/tdd/tests.md","sha256":"6773173a074569b2e51653bd7b95c097d602dbb4815d1cf1c87344705c4e0d1c","size":2228},{"mode":420,"path":"skills/triage/AGENT-BRIEF.md","sha256":"053cd013e1c2c9275111aa6e4b5a12e9838f8d6cd888e8ca0ccaaac576fd74df","size":7070},{"mode":420,"path":"skills/triage/OUT-OF-SCOPE.md","sha256":"8ed8cf27833444060c81b3961a83c0e3d8e6cf2fcb2ddf6f8b07c6655cbb0d85","size":4282},{"mode":420,"path":"skills/triage/SKILL.md","sha256":"5c7c84189fd5146ec1ae55a5669c74372ed7bce588fa7b8523417aa55b312a2e","size":8273},{"mode":420,"path":"skills/triage/agents/openai.yaml","sha256":"466bc430f95132bc6b28d077d50865d4b1fd9218307582343c35b0baf66d7894","size":283}],"generationHash":"a66ee20f05adca0ffc042d75e0121bf0b8a8679c67d6eecb933acd8f2af4ca1d","operations":{"acceptance-proof":{"dependencySkills":[],"entry":"operations/acceptance-proof/SKILL.md","files":["operations/acceptance-proof/SKILL.md","profiles/proof_agent.toml","schemas/proof-report-v1.json","skills/acceptance-proof/SKILL.md","skills/acceptance-proof/agents/openai.yaml","skills/acceptance-proof/references/android.md","skills/acceptance-proof/references/browser.md","skills/acceptance-proof/references/ios.md","skills/acceptance-proof/tools/android-lease.mjs","skills/acceptance-proof/tools/ios-lease.mjs"],"id":"acceptance-proof","outputSchema":"schemas/proof-report-v1.json","policy":{"approvalCeiling":"never","cwdClass":"worktree","externalWrite":false,"mcpTools":[],"network":"deny","networkHosts":[],"runnerPostcondition":"proof-only","sandboxMode":"workspace-write","worktreeAccess":"write","writableRootClasses":["worktree"]},"profile":"proof_agent","resources":[],"sourceSkill":"acceptance-proof"},"ambiguity-review":{"dependencySkills":[],"entry":"operations/ambiguity-review/SKILL.md","files":["docs/agents/confidence-rubric.md","operations/ambiguity-review/SKILL.md","profiles/reviewer_deep.toml","schemas/ambiguity-review-v1.json"],"id":"ambiguity-review","outputSchema":"schemas/ambiguity-review-v1.json","policy":{"approvalCeiling":"never","cwdClass":"worktree","externalWrite":false,"mcpTools":[],"network":"deny","networkHosts":[],"runnerPostcondition":"report-only","sandboxMode":"read-only","worktreeAccess":"read-only","writableRootClasses":[]},"profile":"reviewer_deep","resources":["docs/agents/confidence-rubric.md"],"sourceSkill":null},"code-review":{"dependencySkills":[],"entry":"operations/code-review/SKILL.md","files":["docs/agents/confidence-rubric.md","docs/agents/contract-test-ledger.md","docs/agents/review-gates.md","docs/agents/review-protocol.md","operations/code-review/SKILL.md","profiles/reviewer_standard.toml","schemas/code-review-v1.json","skills/code-review/SKILL.md","skills/code-review/agents/openai.yaml","skills/code-review/references/bug-classes.md","skills/code-review/references/cleanup-lens.md","skills/code-review/references/framework-lenses.md","skills/code-review/references/targeted-recipes.md"],"id":"code-review","outputSchema":"schemas/code-review-v1.json","policy":{"approvalCeiling":"never","cwdClass":"worktree","externalWrite":false,"mcpTools":[],"network":"deny","networkHosts":[],"runnerPostcondition":"report-only","sandboxMode":"read-only","worktreeAccess":"read-only","writableRootClasses":[]},"profile":"reviewer_standard","resources":["docs/agents/confidence-rubric.md","docs/agents/contract-test-ledger.md","docs/agents/review-gates.md","docs/agents/review-protocol.md"],"sourceSkill":"code-review"},"implementation":{"dependencySkills":["code-debugger","diagnosing-bugs","small-task-implementer","tdd"],"entry":"operations/implementation/SKILL.md","files":["docs/agents/bug-workflow-routing.md","docs/agents/coding-skill-routing.md","docs/agents/contract-test-ledger.md","docs/agents/review-gates.md","docs/agents/tool-usage.md","operations/implementation/SKILL.md","profiles/implementer_standard.toml","schemas/implementation-report-v1.json","skills/agent-auto/SKILL.md","skills/agent-auto/agents/openai.yaml","skills/code-debugger/SKILL.md","skills/code-debugger/agents/openai.yaml","skills/diagnosing-bugs/SKILL.md","skills/diagnosing-bugs/agents/openai.yaml","skills/diagnosing-bugs/scripts/hitl-loop.template.sh","skills/small-task-implementer/SKILL.md","skills/small-task-implementer/agents/openai.yaml","skills/tdd/SKILL.md","skills/tdd/agents/openai.yaml","skills/tdd/interface-design.md","skills/tdd/mocking.md","skills/tdd/refactoring.md","skills/tdd/tests.md"],"id":"implementation","outputSchema":"schemas/implementation-report-v1.json","policy":{"approvalCeiling":"never","cwdClass":"worktree","externalWrite":false,"mcpTools":[],"network":"deny","networkHosts":[],"runnerPostcondition":"change-set","sandboxMode":"workspace-write","worktreeAccess":"write","writableRootClasses":["worktree"]},"profile":"implementer_standard","resources":["docs/agents/bug-workflow-routing.md","docs/agents/coding-skill-routing.md","docs/agents/contract-test-ledger.md","docs/agents/review-gates.md","docs/agents/tool-usage.md"],"sourceSkill":"agent-auto"},"spec-author":{"dependencySkills":[],"entry":"operations/spec-author/SKILL.md","files":["docs/agents/confidence-rubric.md","docs/agents/contract-test-ledger.md","operations/spec-author/SKILL.md","profiles/implementer_standard.toml","schemas/spec-author-v1.json","skills/implementation-spec-maker/SKILL.md","skills/implementation-spec-maker/agents/openai.yaml","skills/implementation-spec-maker/references/source-modes.md","skills/implementation-spec-maker/references/spec-template.md"],"id":"spec-author","outputSchema":"schemas/spec-author-v1.json","policy":{"approvalCeiling":"never","cwdClass":"target-state","externalWrite":false,"mcpTools":[],"network":"deny","networkHosts":[],"runnerPostcondition":"spec-only","sandboxMode":"workspace-write","worktreeAccess":"write","writableRootClasses":["target-state"]},"profile":"implementer_standard","resources":["docs/agents/confidence-rubric.md","docs/agents/contract-test-ledger.md"],"sourceSkill":"implementation-spec-maker"},"spec-review":{"dependencySkills":[],"entry":"operations/spec-review/SKILL.md","files":["docs/agents/confidence-rubric.md","docs/agents/contract-test-ledger.md","docs/agents/review-protocol.md","operations/spec-review/SKILL.md","profiles/reviewer_deep.toml","schemas/spec-review-v1.json","skills/implementation-spec-review/SKILL.md","skills/implementation-spec-review/agents/openai.yaml","skills/implementation-spec-review/references/review-loop.md"],"id":"spec-review","outputSchema":"schemas/spec-review-v1.json","policy":{"approvalCeiling":"never","cwdClass":"worktree","externalWrite":false,"mcpTools":[],"network":"deny","networkHosts":[],"runnerPostcondition":"report-only","sandboxMode":"read-only","worktreeAccess":"read-only","writableRootClasses":[]},"profile":"reviewer_deep","resources":["docs/agents/confidence-rubric.md","docs/agents/contract-test-ledger.md","docs/agents/review-protocol.md"],"sourceSkill":"implementation-spec-review"},"triage":{"dependencySkills":[],"entry":"operations/triage/SKILL.md","files":["docs/agents/coding-skill-routing.md","operations/triage/SKILL.md","profiles/analyst_deep.toml","schemas/triage-route-v1.json","skills/triage/AGENT-BRIEF.md","skills/triage/OUT-OF-SCOPE.md","skills/triage/SKILL.md","skills/triage/agents/openai.yaml"],"id":"triage","outputSchema":"schemas/triage-route-v1.json","policy":{"approvalCeiling":"never","cwdClass":"worktree","externalWrite":false,"mcpTools":[],"network":"deny","networkHosts":[],"runnerPostcondition":"report-only","sandboxMode":"read-only","worktreeAccess":"read-only","writableRootClasses":[]},"profile":"analyst_deep","resources":["docs/agents/coding-skill-routing.md"],"sourceSkill":"triage"}},"profiles":{"analyst_deep":"profiles/analyst_deep.toml","implementer_standard":"profiles/implementer_standard.toml","proof_agent":"profiles/proof_agent.toml","reviewer_deep":"profiles/reviewer_deep.toml","reviewer_standard":"profiles/reviewer_standard.toml"},"skills":{"acceptance-proof":{"entry":"skills/acceptance-proof/SKILL.md","files":["skills/acceptance-proof/SKILL.md","skills/acceptance-proof/agents/openai.yaml","skills/acceptance-proof/references/android.md","skills/acceptance-proof/references/browser.md","skills/acceptance-proof/references/ios.md","skills/acceptance-proof/tools/android-lease.mjs","skills/acceptance-proof/tools/ios-lease.mjs"],"metadata":"skills/acceptance-proof/agents/openai.yaml"},"agent-auto":{"entry":"skills/agent-auto/SKILL.md","files":["skills/agent-auto/SKILL.md","skills/agent-auto/agents/openai.yaml"],"metadata":"skills/agent-auto/agents/openai.yaml"},"code-debugger":{"entry":"skills/code-debugger/SKILL.md","files":["skills/code-debugger/SKILL.md","skills/code-debugger/agents/openai.yaml"],"metadata":"skills/code-debugger/agents/openai.yaml"},"code-review":{"entry":"skills/code-review/SKILL.md","files":["skills/code-review/SKILL.md","skills/code-review/agents/openai.yaml","skills/code-review/references/bug-classes.md","skills/code-review/references/cleanup-lens.md","skills/code-review/references/framework-lenses.md","skills/code-review/references/targeted-recipes.md"],"metadata":"skills/code-review/agents/openai.yaml"},"diagnosing-bugs":{"entry":"skills/diagnosing-bugs/SKILL.md","files":["skills/diagnosing-bugs/SKILL.md","skills/diagnosing-bugs/agents/openai.yaml","skills/diagnosing-bugs/scripts/hitl-loop.template.sh"],"metadata":"skills/diagnosing-bugs/agents/openai.yaml"},"implementation-spec-maker":{"entry":"skills/implementation-spec-maker/SKILL.md","files":["skills/implementation-spec-maker/SKILL.md","skills/implementation-spec-maker/agents/openai.yaml","skills/implementation-spec-maker/references/source-modes.md","skills/implementation-spec-maker/references/spec-template.md"],"metadata":"skills/implementation-spec-maker/agents/openai.yaml"},"implementation-spec-review":{"entry":"skills/implementation-spec-review/SKILL.md","files":["skills/implementation-spec-review/SKILL.md","skills/implementation-spec-review/agents/openai.yaml","skills/implementation-spec-review/references/review-loop.md"],"metadata":"skills/implementation-spec-review/agents/openai.yaml"},"small-task-implementer":{"entry":"skills/small-task-implementer/SKILL.md","files":["skills/small-task-implementer/SKILL.md","skills/small-task-implementer/agents/openai.yaml"],"metadata":"skills/small-task-implementer/agents/openai.yaml"},"spec-implementer":{"entry":"skills/spec-implementer/SKILL.md","files":["skills/spec-implementer/SKILL.md","skills/spec-implementer/agents/openai.yaml","skills/spec-implementer/references/review-loop.md"],"metadata":"skills/spec-implementer/agents/openai.yaml"},"tdd":{"entry":"skills/tdd/SKILL.md","files":["skills/tdd/SKILL.md","skills/tdd/agents/openai.yaml","skills/tdd/interface-design.md","skills/tdd/mocking.md","skills/tdd/refactoring.md","skills/tdd/tests.md"],"metadata":"skills/tdd/agents/openai.yaml"},"triage":{"entry":"skills/triage/SKILL.md","files":["skills/triage/AGENT-BRIEF.md","skills/triage/OUT-OF-SCOPE.md","skills/triage/SKILL.md","skills/triage/agents/openai.yaml"],"metadata":"skills/triage/agents/openai.yaml"}},"sourceFingerprint":"a8849a4c47b3adcb10239694bc0404eb89df4dbf8ae1e6ca7be689c141c5e316","version":2}
@@ -1,3 +1,9 @@
1
1
  # Acceptance Proof Operation
2
2
 
3
- Follow `skills/acceptance-proof/SKILL.md`. Never change product behavior or external state. Return only `schemas/proof-report-v1.json`.
3
+ Follow the packaged [Acceptance Proof skill](../../skills/acceptance-proof/SKILL.md).
4
+ Never change product behavior or external state. Return only
5
+ `schemas/proof-report-v1.json`.
6
+
7
+ The Runner already supplied the exact schema through `--output-schema`. Do not
8
+ search for, open, or infer a repository-relative schema file; inspect only the
9
+ frozen criteria, changed targets, checks, and requested proof evidence.
@@ -1,3 +1,5 @@
1
1
  # Fresh Ambiguity Review Operation
2
2
 
3
3
  Independently verify that a supplied waiting candidate contains at least two materially different product outcomes and no source-authorized choice. Technical, architecture, test, and tool choices are never product ambiguity. Do not edit files or external state. Return only `schemas/ambiguity-review-v1.json`.
4
+
5
+ Apply the packaged [confidence rubric](../../docs/agents/confidence-rubric.md).
@@ -1,3 +1,23 @@
1
1
  # Code Review Operation
2
2
 
3
- Follow `skills/code-review/SKILL.md`. Review only; do not edit files or external state. Return only `schemas/code-review-v1.json`.
3
+ You are already the independent reviewer selected by the Runner. Follow the
4
+ packaged [Code Review skill](../../skills/code-review/SKILL.md) inline with
5
+ correctness and spec/standards lenses. Cleanup is its bounded lens, never a
6
+ separate operation. Use the declared resources for
7
+ [confidence](../../docs/agents/confidence-rubric.md),
8
+ [contract tests](../../docs/agents/contract-test-ledger.md),
9
+ [review applicability](../../docs/agents/review-gates.md), and
10
+ [Full/Closure mechanics](../../docs/agents/review-protocol.md). The supplied
11
+ review capsule is the exact target and authority.
12
+
13
+ For Closure, copy every supplied canonical defect's `id`, `class`, `invariant`,
14
+ `failure`, and `introducedTargetRevision` exactly. Do not paraphrase immutable
15
+ defect fields; express verification through the allowed status, revision,
16
+ evidence, and repair-finding outcome fields.
17
+
18
+ Use `needs-work` for concrete defects that the bounded implementation cycle can
19
+ repair. Reserve `rejected` for a target or authority that cannot safely proceed
20
+ through the normal repair lifecycle.
21
+
22
+ Do not launch another reviewer, edit files, repair findings, or mutate external
23
+ state. Return only `schemas/code-review-v1.json` with operation `code-review`.
@@ -1,3 +1,24 @@
1
1
  # Implementation Operation
2
2
 
3
- Follow `skills/agent-auto/SKILL.md`. Never commit, push, publish, or mutate GitHub. Return only `schemas/implementation-report-v1.json`.
3
+ Follow [Agent Auto](../../skills/agent-auto/SKILL.md) as the Runner adapter.
4
+ Use the packaged [coding routing](../../docs/agents/coding-skill-routing.md)
5
+ only for direct implementation, TDD, bug-routing, evidence, and affected
6
+ validation. Read [TDD](../../skills/tdd/SKILL.md) before behavior changes. For
7
+ a confirmed bug use [Code Debugger](../../skills/code-debugger/SKILL.md); use
8
+ [Diagnosing Bugs](../../skills/diagnosing-bugs/SKILL.md) only when a reliable
9
+ failing signal is missing. A tiny task may use
10
+ [Small Task Implementer](../../skills/small-task-implementer/SKILL.md) only
11
+ after its Fit Gate. Apply the declared
12
+ [bug routing](../../docs/agents/bug-workflow-routing.md),
13
+ [contract ledger](../../docs/agents/contract-test-ledger.md),
14
+ [review gate](../../docs/agents/review-gates.md), and
15
+ [tool policy](../../docs/agents/tool-usage.md) only when their branch is active.
16
+
17
+ The issue is already authorized for implementation. Do not start planning,
18
+ ticket publication, implementation-spec authoring, independent review, or
19
+ delivery. The Runner owns review, checks, commits, publication, retries, and
20
+ external state. Never commit, push, publish, mutate GitHub, or expose
21
+ credentials. In the final report, `changedFiles` is the complete current product
22
+ change set across all implementation cycles, not only files touched in this
23
+ attempt; exclude Runner-owned proof artifacts. Return only
24
+ `schemas/implementation-report-v1.json`.
@@ -1,3 +1,12 @@
1
1
  # Spec Author Operation
2
2
 
3
- Follow `skills/implementation-spec-maker/SKILL.md` for the supplied issue authority. Write only the Runner-provided spec artifact location and return `schemas/spec-author-v1.json`.
3
+ Follow the authoring and minimum-solution contract in the packaged
4
+ [Implementation Spec Maker](../../skills/implementation-spec-maker/SKILL.md)
5
+ for the supplied issue authority. Use the declared
6
+ [confidence rubric](../../docs/agents/confidence-rubric.md) and
7
+ [contract ledger](../../docs/agents/contract-test-ledger.md) only when
8
+ applicable.
9
+ The Runner owns artifact review, revision state, and approval, so do not invoke
10
+ the skill's review/save workflow or create reviewer state. Write the complete
11
+ revision only to the Runner-provided spec artifact location and return
12
+ `schemas/spec-author-v1.json`.
@@ -1,3 +1,12 @@
1
1
  # Spec Review Operation
2
2
 
3
- Follow `skills/implementation-spec-review/SKILL.md`. Do not edit the spec or external state. Return only `schemas/spec-review-v1.json`.
3
+ You are already the independent reviewer selected and persisted by the Runner.
4
+ Follow the packaged
5
+ [Implementation Spec Review](../../skills/implementation-spec-review/SKILL.md)
6
+ inline and use its owner-local review loop only for semantics matching the
7
+ supplied mode and immutable state. Apply the declared
8
+ [confidence rubric](../../docs/agents/confidence-rubric.md),
9
+ [contract ledger](../../docs/agents/contract-test-ledger.md), and
10
+ [review protocol](../../docs/agents/review-protocol.md). Do not launch another
11
+ reviewer, edit the spec, change review state, or mutate external state. Return
12
+ only `schemas/spec-review-v1.json`.
@@ -1,3 +1,12 @@
1
1
  # Triage Operation
2
2
 
3
- Follow `skills/triage/SKILL.md`. Inspect the supplied issue and repository evidence without edits or external writes. Return only `schemas/triage-route-v1.json`.
3
+ Inspect the supplied issue and repository evidence without edits or external
4
+ writes. Use the packaged
5
+ [coding routing](../../docs/agents/coding-skill-routing.md) for the distinction
6
+ between a direct deterministic implementation and a real execution gap. Use
7
+ the packaged [Triage skill](../../skills/triage/SKILL.md) only for evidence
8
+ discipline; its labels and tracker mutations are outside this operation.
9
+
10
+ Return exactly one package route in `schemas/triage-route-v1.json`: direct,
11
+ spec-required, awaiting-user for material product ambiguity, or a typed
12
+ blocker. Technical implementation choices never require awaiting-user.