@azure-id/orc 1.9.0 → 1.9.2

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 (134) hide show
  1. package/CHANGELOG.md +202 -0
  2. package/README-id.md +57 -59
  3. package/README.md +53 -54
  4. package/bin/build-agents.js +109 -109
  5. package/bin/cli.js +262 -58
  6. package/bin/graph-audit.js +235 -0
  7. package/bin/graph-extract.js +308 -3
  8. package/bin/graph-gain.js +23 -3
  9. package/bin/graph-map.js +9 -1
  10. package/bin/graph-query.js +152 -10
  11. package/bin/graph-shard.js +6 -1
  12. package/bin/graph-signals.js +287 -4
  13. package/bin/graph.js +717 -658
  14. package/bin/onboarding-content.js +4 -4
  15. package/bin/pricing.json +207 -200
  16. package/bin/verify-contracts.js +117 -2
  17. package/bin/verify-package.js +11 -7
  18. package/bin/webui/css/04-motion.css +162 -152
  19. package/bin/webui/css/panels/knowledge.css +563 -116
  20. package/bin/webui/fixtures/extra.js +2036 -2036
  21. package/bin/webui/fixtures/hookui.js +5 -5
  22. package/bin/webui/fixtures/knowledge.js +21 -4
  23. package/bin/webui/fixtures/settings.js +305 -305
  24. package/bin/webui/i18n/en/knowledge.json +122 -4
  25. package/bin/webui/i18n/id/knowledge.json +122 -4
  26. package/bin/webui/js/panels/knowledge.js +573 -9
  27. package/bin/webui/js/panels/overview.js +13 -4
  28. package/mock-run/context-combiner.md +100 -100
  29. package/mock-run/orc-budget.md +534 -534
  30. package/mock-run/orc-challenge-council.md +262 -262
  31. package/mock-run/orc-ultra.md +103 -103
  32. package/package.json +1 -1
  33. package/templates/agents/MODEL-MAPPING.md +43 -43
  34. package/templates/agents/orc-advisor-opus-5-xhigh.md +56 -56
  35. package/templates/agents/orc-analyze-mini-opus-5-med.md +60 -60
  36. package/templates/agents/orc-analyze-mini-sonnet-5-high.md +58 -58
  37. package/templates/agents/orc-challenge-advisor-opus-5-med.md +75 -75
  38. package/templates/agents/orc-challenge-contrarian-opus-5-high.md +110 -110
  39. package/templates/agents/orc-challenge-executor-opus-5-med.md +114 -114
  40. package/templates/agents/orc-challenge-expansionist-opus-5-med.md +112 -112
  41. package/templates/agents/orc-challenge-judge-opus-5-high.md +132 -132
  42. package/templates/agents/orc-challenge-outsider-opus-5-low.md +109 -109
  43. package/templates/agents/orc-challenge-principles-opus-5-high.md +109 -109
  44. package/templates/agents/orc-challenge-reader-opus-5-low.md +90 -90
  45. package/templates/agents/orc-claude-writer-opus-5-med.md +55 -55
  46. package/templates/agents/orc-context-combiner-opus-5-high.md +88 -88
  47. package/templates/agents/orc-doc-checker-opus-5-low.md +108 -108
  48. package/templates/agents/orc-doc-writer-opus-5-med.md +134 -134
  49. package/templates/agents/orc-executor-haiku-4-5.md +2 -1
  50. package/templates/agents/orc-executor-opus-4-7-high.md +2 -1
  51. package/templates/agents/orc-executor-opus-4-7-med.md +2 -1
  52. package/templates/agents/orc-executor-opus-4-8-high.md +2 -1
  53. package/templates/agents/orc-executor-opus-5-high.md +4 -3
  54. package/templates/agents/orc-executor-opus-5-low.md +4 -3
  55. package/templates/agents/orc-executor-opus-5-med.md +4 -3
  56. package/templates/agents/orc-executor-sonnet-4-6-high.md +2 -1
  57. package/templates/agents/orc-executor-sonnet-4-6-med.md +2 -1
  58. package/templates/agents/orc-executor-sonnet-5-high.md +2 -1
  59. package/templates/agents/orc-graph-noter-sonnet-4-6-med.md +1 -1
  60. package/templates/agents/orc-judge-opus-5-xhigh.md +85 -85
  61. package/templates/agents/orc-learn-writer-opus-5-low.md +73 -73
  62. package/templates/agents/orc-pattern-codifier-opus-5-med.md +65 -65
  63. package/templates/agents/orc-planner-mini-opus-5-med.md +4 -4
  64. package/templates/agents/orc-planner-mini-sonnet-5-high.md +1 -1
  65. package/templates/agents/orc-planner-opus-5-med.md +160 -160
  66. package/templates/agents/orc-recon-opus-5-low.md +18 -8
  67. package/templates/agents/orc-recon-sonnet-4-6-med.md +15 -5
  68. package/templates/agents/orc-retro-opus-5-med.md +3 -3
  69. package/templates/agents/orc-reviewer-opus-5-med.md +60 -60
  70. package/templates/agents/orc-scout-opus-5-low.md +40 -40
  71. package/templates/agents/orc-system-analyst-opus-5-high.md +120 -120
  72. package/templates/agents/orc-test-author-opus-5-med.md +71 -71
  73. package/templates/agents/orc-test-designer-opus-5-high.md +158 -158
  74. package/templates/agents/orc-test-interpreter-opus-5-low.md +130 -130
  75. package/templates/agents/orc-verifier-opus-5-med.md +69 -69
  76. package/templates/agents/orc-wiki-scanner-opus-5-med.md +81 -81
  77. package/templates/commands/orc-ultra.md +17 -17
  78. package/templates/commands/orc-verify.md +11 -11
  79. package/templates/hooks/README.md +13 -3
  80. package/templates/hooks/orc-effort-guard.js +178 -178
  81. package/templates/hooks/orc-graph-hook.js +53 -7
  82. package/templates/hooks/orc-statusline.js +6 -6
  83. package/templates/skills/_shared/code-graph.md +57 -18
  84. package/templates/skills/_shared/config-precedence.md +198 -198
  85. package/templates/skills/_shared/extra-dispatch.md +1346 -1346
  86. package/templates/skills/_shared/opus5-only.md +8 -8
  87. package/templates/skills/_shared/phases/analyst-gates.md +136 -136
  88. package/templates/skills/_shared/phases/execution.md +4 -4
  89. package/templates/skills/_shared/phases/planning.md +3 -3
  90. package/templates/skills/_shared/phases/preflight.md +1 -1
  91. package/templates/skills/_shared/phases/review.md +4 -2
  92. package/templates/skills/_shared/phases/ship.md +1 -1
  93. package/templates/skills/_shared/phases/trace.md +3 -2
  94. package/templates/skills/_shared/read-ladder.md +14 -1
  95. package/templates/skills/_shared/return-validation.md +1 -1
  96. package/templates/skills/context-combiner/SKILL.md +1 -1
  97. package/templates/skills/context-combiner/schemas/combined-report.md +78 -78
  98. package/templates/skills/orc/README.md +2 -2
  99. package/templates/skills/orc/SKILL.md +8 -8
  100. package/templates/skills/orc/config.md +9 -9
  101. package/templates/skills/orc/examples/full-run-mock.md +73 -73
  102. package/templates/skills/orc/references/effort-and-mode.md +222 -222
  103. package/templates/skills/orc/references/preflight-report.md +2 -2
  104. package/templates/skills/orc/references/ultra-mode.md +3 -3
  105. package/templates/skills/orc/subskills/orc-planner/SKILL.md +2 -2
  106. package/templates/skills/orc/subskills/orc-planner-mini/SKILL.md +121 -121
  107. package/templates/skills/orc/subskills/orc-review-verify/SKILL.md +76 -76
  108. package/templates/skills/orc/subskills/orc-testgen/SKILL.md +45 -45
  109. package/templates/skills/orc-analyze/SKILL.md +2 -2
  110. package/templates/skills/orc-analyze/examples/analyze-mock.md +42 -42
  111. package/templates/skills/orc-analyze/schemas/report-audit.md +83 -83
  112. package/templates/skills/orc-analyze/schemas/report-prose.md +63 -63
  113. package/templates/skills/orc-analyze/schemas/report-requirement.md +78 -78
  114. package/templates/skills/orc-challenge/README.md +142 -142
  115. package/templates/skills/orc-challenge/examples/council-full-roster.md +273 -273
  116. package/templates/skills/orc-challenge/references/council.md +315 -315
  117. package/templates/skills/orc-challenge/references/intake.md +171 -171
  118. package/templates/skills/orc-claude/SKILL.md +14 -14
  119. package/templates/skills/orc-diy/README.md +143 -143
  120. package/templates/skills/orc-diy/references/flow-schema.md +1 -1
  121. package/templates/skills/orc-doc/README.md +229 -229
  122. package/templates/skills/orc-doc/examples/orc-doc-prd-run.md +325 -325
  123. package/templates/skills/orc-doc/references/chunking.md +527 -527
  124. package/templates/skills/orc-fast/SKILL.md +4 -4
  125. package/templates/skills/orc-learn/SKILL.md +14 -14
  126. package/templates/skills/orc-learn/examples/learn-run-mock.md +61 -61
  127. package/templates/skills/orc-mini/SKILL.md +16 -20
  128. package/templates/skills/orc-mini/references/complexity.md +25 -11
  129. package/templates/skills/orc-quick/SKILL.md +12 -13
  130. package/templates/skills/orc-quick/references/gh-mode.md +1 -1
  131. package/templates/skills/orc-quick/references/look.md +5 -5
  132. package/templates/skills/orc-verify/SKILL.md +15 -15
  133. package/templates/skills/orc-verify/examples/verify-mock.md +33 -33
  134. package/templates/skills/orc-wiki/references/extra.md +1 -1
@@ -1,121 +1,121 @@
1
- ---
2
- name: orc-planner-mini
3
- description: >
4
- Fast-lane Requirement Planner for ORC-MINI (Sonnet 5, high effort). Turns a
5
- detailed request OR a System Analyst requirement-spec into orc's
6
- planning-output: right-sized tasks, each with grounded declared_files (incl.
7
- tests), explicit depends_on, owns_area, and spec_ref — self-checked for
8
- dependency cycles, same-file collisions, and requirement coverage. Use when
9
- orc-mini needs a fast plan for a well-scoped request — fires on "plan this
10
- quickly", "fast task breakdown", "break this into tasks", or after mini doc
11
- analysis. Distinct from the full orc-planner (Opus 5 medium — pick that one
12
- when the dependency graph is genuinely complex: >8 tasks, deep chains, or
13
- many same-file serializations): single-pass, lighter grounding, deep
14
- dependency tracing trimmed. The orchestrator dispatches this to a subagent —
15
- it never plans itself.
16
- ---
17
-
18
- # orc-planner-mini
19
-
20
- Fast variant of the Requirement Planner, dispatched by orc-mini as a Sonnet 5
21
- high subagent. Produces the SAME artifact (orc's `schemas/planning-output.md`)
22
- and follows the SAME input + grounding + branch rules as `../orc-planner/`, which
23
- is AUTHORITATIVE for the full procedure; the summary below orients.
24
-
25
- ## Procedure (summary)
26
-
27
- 1. **Accept** a detailed request OR an analyst requirement-spec. "Too thin to
28
- plan" is defined, not felt: plannable ⇔ the request states (a) an observable
29
- outcome AND (b) an identifiable repo area it lands in — failing either, do
30
- NOT plan; recommend `orc-analyze-mini` (requirement mode) instead.
31
- 2. **Ground** `declared_files[]` in real paths: standalone → read the repo (+ a
32
- non-empty `wiki/` — select via `wiki/INDEX.md` keywords; pull `Contracts &
33
- shapes` + `Testing map` from the matching docs; code outranks any wiki
34
- claim); from-SA → trust the spec's file map, no repo re-read —
35
- but NEW paths beyond the spec (tests, new modules) still get their own
36
- parent-dir Glob. Fill each task's `grounding[]` attestation (`{path,
37
- disposition: exists|new, evidence}`) — never mark `exists` on a path you
38
- didn't confirm; the orchestrator Globs every `exists` path and bounces
39
- misses back (one retry).
40
- 3. **Draft** right-sized tasks — anchors, not adjectives: normally **1–5
41
- declared files, one `owns_area`** per task; >7 files or two unrelated areas
42
- → split; ≤~10-line dependency-bound change → merge; deviation needs a
43
- one-line reason. Each task carries `depends_on`, `owns_area`, `spec_ref`,
44
- `requirements[]` (the R#/DoD ids it implements — `[]` only for pure-infra
45
- with a stated reason), `spec_invariants[]` (load-bearing Context & invariants
46
- lines copied verbatim — the orchestrator appends them to the executor
47
- slice's constraints[]), a `facets` block (breadth = `len(declared_files)`,
48
- novelty/logic/test_surface/uncertainty, cited `risk[]` — the orchestrator
49
- scores from these; you never compute the score), and a sliced `acceptance[]`
50
- where each line cites its source (`R3` / `DoD#2` — a line with no source is
51
- invented). **When the caller's slice says `tdd: on`** (orc-mini asked its
52
- one intake question and the user said yes), also author each requirement's
53
- `tdd_spec` entry — given/when/then + a runnable skeleton in the project's
54
- test framework, or `tdd: exempt — <reason>` (schema: planning-output.md).
55
- 4. **Self-check (always — cheap, prevents broken waves):**
56
- - **cycle detection** — no `depends_on` chain loops back on itself;
57
- - **same-file collision** — two tasks sharing a `declared_files` entry must be
58
- merged, or serialized with a dependency;
59
- - **coverage** — every in-scope R# / DoD line appears in ≥1 task's
60
- `requirements[]`; an orphan requirement is a MALFORMED plan.
61
- On a failed check, FIX the plan (merge/split/add-dep/add-task) before
62
- presenting — never emit a plan with a cycle, an unserialized collision, or
63
- an orphan. The orchestrator recomputes all three at Phase 1 exit and
64
- bounces failures (one retry). Deep dependency tracing is trimmed here.
65
- 5. **Ask clearly; step back when unclear:** set `plan_confidence: high|medium|low`
66
- (+ reason) and turn every ambiguity into an `open_questions[]` entry
67
- (`{question, proposed_default, blocking}`) — never silently pick a reading.
68
- `plan_confidence: low` OR >3 blocking questions → recommend stepping back to
69
- `orc-analyze-mini` (the user may override).
70
- 6. **Present** the plan once → approve/edit (breakdown/approach only).
71
- 7. **Branch** → take into build (hand back to orc-mini) or save & stop — checkpoint
72
- FIRST either way (never a loose plan file with no checkpoint).
73
-
74
- ## What's trimmed vs the full planner
75
-
76
- - **Lighter grounding:** confirms the main file paths rather than exhaustively
77
- tracing every reference (standalone case). From-SA case is identical — trust
78
- the spec, no repo re-read (new paths still grounded).
79
- - **Lighter self-check:** cycle + same-file-collision + coverage checks always
80
- run (they're cheap and prevent broken waves); deep dependency tracing is
81
- trimmed.
82
- - **Concrete escalation thresholds** (suggest the full `../orc-planner/`, Opus
83
- 4.8 medium, and let the user choose — not self-assessed vibes): >8 tasks, OR
84
- any dependency chain 3+ deep, OR >2 same-file serializations needed.
85
- - **Model:** Sonnet 5, high effort.
86
-
87
- ## Checkpoint + hand-back (same as full)
88
-
89
- Checkpoint the plan into `orc/planner/{name}/` before branching (never a loose
90
- file with no checkpoint). On "take into build", hand back to the orchestrator,
91
- which runs the full Phase 2–8 (scoring, effort table, wave cap, pauses). The
92
- mini planner never builds directly.
93
-
94
- ## Identical
95
-
96
- - Accepts detailed request OR analyst requirement-spec; refuses requests below
97
- the plannable floor.
98
- - Grounding provenance recorded only when standalone.
99
- - Show plan once → approve/edit (breakdown/approach only) → branch
100
- (take into build / save plan-{name}.md and stop).
101
- - Plain-language handoffs, dispatched not self-run.
102
-
103
- ## Return contract (inlined — do not reconstruct from the full planner)
104
-
105
- Produce `../orc-planner/`'s artifact — orc's `schemas/planning-output.md`: every
106
- task with `declared_files` (incl. tests), `grounding[]` (per-file
107
- exists|new attestation with evidence), `acceptance[]` (sliced, source-cited
108
- definition-of-done lines), `requirements[]`, `spec_invariants[]`, `facets`
109
- (breadth/novelty/logic/test_surface/uncertainty + cited `risk[]`), `depends_on`,
110
- `owns_area`, `spec_ref`; and at the top level `plan_head`, `plan_confidence`, and
111
- `open_questions[]`. Checkpoint it into `orc/planner/{name}/` before branching.
112
- Return exactly:
113
-
114
- - the `planning-output` (the plan itself) + a plain-language `summary`.
115
- - `coverage: {requirements: N, tasks: M, orphans: []}` — self-attested; the
116
- orchestrator recomputes it and bounces orphans.
117
- - `actual_model` — quoted verbatim from your system prompt's "The exact model ID
118
- is …" line (`unknown` if absent, never guessed).
119
- - `actual_effort` — `$CLAUDE_EFFORT`.
120
-
121
- Never build or spawn.
1
+ ---
2
+ name: orc-planner-mini
3
+ description: >
4
+ Fast-lane Requirement Planner for ORC-MINI (Sonnet 5, high effort). Turns a
5
+ detailed request OR a System Analyst requirement-spec into orc's
6
+ planning-output: right-sized tasks, each with grounded declared_files (incl.
7
+ tests), explicit depends_on, owns_area, and spec_ref — self-checked for
8
+ dependency cycles, same-file collisions, and requirement coverage. Use when
9
+ orc-mini needs a fast plan for a well-scoped request — fires on "plan this
10
+ quickly", "fast task breakdown", "break this into tasks", or after mini doc
11
+ analysis. Distinct from the full orc-planner (Opus 5.5 medium — pick that one
12
+ when the dependency graph is genuinely complex: >8 tasks, deep chains, or
13
+ many same-file serializations): single-pass, lighter grounding, deep
14
+ dependency tracing trimmed. The orchestrator dispatches this to a subagent —
15
+ it never plans itself.
16
+ ---
17
+
18
+ # orc-planner-mini
19
+
20
+ Fast variant of the Requirement Planner, dispatched by orc-mini as a Sonnet 5
21
+ high subagent. Produces the SAME artifact (orc's `schemas/planning-output.md`)
22
+ and follows the SAME input + grounding + branch rules as `../orc-planner/`, which
23
+ is AUTHORITATIVE for the full procedure; the summary below orients.
24
+
25
+ ## Procedure (summary)
26
+
27
+ 1. **Accept** a detailed request OR an analyst requirement-spec. "Too thin to
28
+ plan" is defined, not felt: plannable ⇔ the request states (a) an observable
29
+ outcome AND (b) an identifiable repo area it lands in — failing either, do
30
+ NOT plan; recommend `orc-analyze-mini` (requirement mode) instead.
31
+ 2. **Ground** `declared_files[]` in real paths: standalone → read the repo (+ a
32
+ non-empty `wiki/` — select via `wiki/INDEX.md` keywords; pull `Contracts &
33
+ shapes` + `Testing map` from the matching docs; code outranks any wiki
34
+ claim); from-SA → trust the spec's file map, no repo re-read —
35
+ but NEW paths beyond the spec (tests, new modules) still get their own
36
+ parent-dir Glob. Fill each task's `grounding[]` attestation (`{path,
37
+ disposition: exists|new, evidence}`) — never mark `exists` on a path you
38
+ didn't confirm; the orchestrator Globs every `exists` path and bounces
39
+ misses back (one retry).
40
+ 3. **Draft** right-sized tasks — anchors, not adjectives: normally **1–5
41
+ declared files, one `owns_area`** per task; >7 files or two unrelated areas
42
+ → split; ≤~10-line dependency-bound change → merge; deviation needs a
43
+ one-line reason. Each task carries `depends_on`, `owns_area`, `spec_ref`,
44
+ `requirements[]` (the R#/DoD ids it implements — `[]` only for pure-infra
45
+ with a stated reason), `spec_invariants[]` (load-bearing Context & invariants
46
+ lines copied verbatim — the orchestrator appends them to the executor
47
+ slice's constraints[]), a `facets` block (breadth = `len(declared_files)`,
48
+ novelty/logic/test_surface/uncertainty, cited `risk[]` — the orchestrator
49
+ scores from these; you never compute the score), and a sliced `acceptance[]`
50
+ where each line cites its source (`R3` / `DoD#2` — a line with no source is
51
+ invented). **When the caller's slice says `tdd: on`** (orc-mini asked its
52
+ one intake question and the user said yes), also author each requirement's
53
+ `tdd_spec` entry — given/when/then + a runnable skeleton in the project's
54
+ test framework, or `tdd: exempt — <reason>` (schema: planning-output.md).
55
+ 4. **Self-check (always — cheap, prevents broken waves):**
56
+ - **cycle detection** — no `depends_on` chain loops back on itself;
57
+ - **same-file collision** — two tasks sharing a `declared_files` entry must be
58
+ merged, or serialized with a dependency;
59
+ - **coverage** — every in-scope R# / DoD line appears in ≥1 task's
60
+ `requirements[]`; an orphan requirement is a MALFORMED plan.
61
+ On a failed check, FIX the plan (merge/split/add-dep/add-task) before
62
+ presenting — never emit a plan with a cycle, an unserialized collision, or
63
+ an orphan. The orchestrator recomputes all three at Phase 1 exit and
64
+ bounces failures (one retry). Deep dependency tracing is trimmed here.
65
+ 5. **Ask clearly; step back when unclear:** set `plan_confidence: high|medium|low`
66
+ (+ reason) and turn every ambiguity into an `open_questions[]` entry
67
+ (`{question, proposed_default, blocking}`) — never silently pick a reading.
68
+ `plan_confidence: low` OR >3 blocking questions → recommend stepping back to
69
+ `orc-analyze-mini` (the user may override).
70
+ 6. **Present** the plan once → approve/edit (breakdown/approach only).
71
+ 7. **Branch** → take into build (hand back to orc-mini) or save & stop — checkpoint
72
+ FIRST either way (never a loose plan file with no checkpoint).
73
+
74
+ ## What's trimmed vs the full planner
75
+
76
+ - **Lighter grounding:** confirms the main file paths rather than exhaustively
77
+ tracing every reference (standalone case). From-SA case is identical — trust
78
+ the spec, no repo re-read (new paths still grounded).
79
+ - **Lighter self-check:** cycle + same-file-collision + coverage checks always
80
+ run (they're cheap and prevent broken waves); deep dependency tracing is
81
+ trimmed.
82
+ - **Concrete escalation thresholds** (suggest the full `../orc-planner/`, Opus
83
+ 4.8 medium, and let the user choose — not self-assessed vibes): >8 tasks, OR
84
+ any dependency chain 3+ deep, OR >2 same-file serializations needed.
85
+ - **Model:** Sonnet 5, high effort.
86
+
87
+ ## Checkpoint + hand-back (same as full)
88
+
89
+ Checkpoint the plan into `orc/planner/{name}/` before branching (never a loose
90
+ file with no checkpoint). On "take into build", hand back to the orchestrator,
91
+ which runs the full Phase 2–8 (scoring, effort table, wave cap, pauses). The
92
+ mini planner never builds directly.
93
+
94
+ ## Identical
95
+
96
+ - Accepts detailed request OR analyst requirement-spec; refuses requests below
97
+ the plannable floor.
98
+ - Grounding provenance recorded only when standalone.
99
+ - Show plan once → approve/edit (breakdown/approach only) → branch
100
+ (take into build / save plan-{name}.md and stop).
101
+ - Plain-language handoffs, dispatched not self-run.
102
+
103
+ ## Return contract (inlined — do not reconstruct from the full planner)
104
+
105
+ Produce `../orc-planner/`'s artifact — orc's `schemas/planning-output.md`: every
106
+ task with `declared_files` (incl. tests), `grounding[]` (per-file
107
+ exists|new attestation with evidence), `acceptance[]` (sliced, source-cited
108
+ definition-of-done lines), `requirements[]`, `spec_invariants[]`, `facets`
109
+ (breadth/novelty/logic/test_surface/uncertainty + cited `risk[]`), `depends_on`,
110
+ `owns_area`, `spec_ref`; and at the top level `plan_head`, `plan_confidence`, and
111
+ `open_questions[]`. Checkpoint it into `orc/planner/{name}/` before branching.
112
+ Return exactly:
113
+
114
+ - the `planning-output` (the plan itself) + a plain-language `summary`.
115
+ - `coverage: {requirements: N, tasks: M, orphans: []}` — self-attested; the
116
+ orchestrator recomputes it and bounces orphans.
117
+ - `actual_model` — quoted verbatim from your system prompt's "The exact model ID
118
+ is …" line (`unknown` if absent, never guessed).
119
+ - `actual_effort` — `$CLAUDE_EFFORT`.
120
+
121
+ Never build or spawn.
@@ -1,76 +1,76 @@
1
- ---
2
- name: orc-review-verify
3
- description: >
4
- Review/verify worker for ORC Phases 5–6 (Opus 5 medium). Two modes: a REVIEW
5
- pass — examine the changed files against the code pattern + constraints,
6
- create/update tests, and classify EVERY finding on the P0–P3 severity
7
- ladder (P0/P1 gate ship, P2/P3 advisory); a VERIFY
8
- pass — run the build + full test suite and check each intent-spec
9
- definition-of-done criterion PLUS the pattern's enforceable validation-gate
10
- lines, reporting pass/fail; or an opt-in SECURITY pass — sweep the changed
11
- files against a supplied OWASP/STRIDE checklist. Returns findings[] with
12
- severity, a tests tally, and a verify result — it reports; the orchestrator
13
- owns the auto-fix-once loop. Dispatched in-pipeline after execution; distinct
14
- from the standalone /orc-verify (which checks only git-modified changes with no
15
- orchestrator). ALWAYS a spawned subagent — not for direct user invocation.
16
- ---
17
-
18
- # orc-review-verify
19
-
20
- One entry point: spawned via the Task tool with `subagent.md` framing + the
21
- slice, which points to `core.md`. `core.md` is the AUTHORITATIVE spec (full input
22
- slice, both procedures, return contract); the summary below orients — on any
23
- conflict, `core.md` wins.
24
-
25
- ## What the worker does (summary)
26
-
27
- - **phase=review:** examine `changed_files[]` against `code_pattern` + `constraints[]`;
28
- create/update tests for the changed surface; independently re-check each
29
- `invariants[]` rule AND each enforceable `validation_gate[]` line against the
30
- diff (a violation is P0), plus any `fe_rules[]` pack rules on FE diffs
31
- (file:line findings, P1–P3 by impact, never auto-P0); classify EVERY
32
- finding on the ladder — **P0** (failing tests/build, unmet acceptance
33
- criteria, runtime errors, invariant violations — caller auto-fixes, no ask),
34
- **P1** (correctness/security risk, constraint violations — caller asks the
35
- user before fixing), **P2** (maintainability — advisory fix-batch offer),
36
- **P3** (cosmetic — advisory, counted). Never fix P2/P3; P0/P1 fixes are the
37
- caller's call. **Evidence-or-advisory:** every P0–P2 finding carries
38
- `file:line` + the offending line(s) quoted VERBATIM; an unanchored finding is
39
- AUTO-P3 (never gates, never triggers a fix) — the caller spot-checks quotes
40
- before acting on P0/P1.
41
- - **phase=verify (two halves, v0.33.0):** FIRST the **TDD gate** — run the
42
- plan's TDD suite (`tdd_suite[]` in the slice) plus the build + full test
43
- suite; green is the definition-of-done for non-exempt requirements, and each
44
- red TDD test is a P0 tied to its requirement (the caller owns the
45
- `tdd_loop_max` repair loop). THEN the **adversarial review** — attack the
46
- green implementation: edge cases the spec missed, error paths, contract
47
- violations, race/ordering, workflow breaks (dead wiring, broken commands) —
48
- findings on the same P0–P3 ladder. Also fold the enforceable
49
- `validation_gate[]` lines into the criteria set, then check EACH criterion
50
- individually (pass/fail, nothing invented; an unmet gate line = unmet
51
- criterion = P0), each with per-criterion `evidence` (the test/output line or
52
- file:line that proves it); report failures precisely. You don't fix — the
53
- caller owns the auto-fix-once loop.
54
- - **phase=security (opt-in):** sweep only `changed_files[]` against the supplied
55
- `security_checklist[]` (wrap Semgrep if installed, never install it); findings
56
- on the same ladder (exploitable-in-diff = P0, hardening gap = P1,
57
- defense-in-depth = P2/P3). Report-only, no `result` verdict.
58
-
59
- ## Return shape (summary — full contract in `core.md`)
60
-
61
- `{ phase, findings[]{severity: P0|P1|P2|P3, location "file:line", quote (verbatim,
62
- required P0–P2; unanchored ⇒ AUTO-P3), description, criterion},
63
- criteria[] (verify only){criterion, result, evidence}, tests{added,updated,passing},
64
- result (verify only): passed|failed, actual_model, actual_effort, failure_reason }`
65
-
66
- **Validation checkpoint before returning:** every finding carries a `severity`
67
- from the P0–P3 ladder; every P0–P2 finding carries `file:line` + a VERBATIM
68
- `quote` (else downgrade it to P3 yourself);
69
- verify sets `result` + per-criterion `evidence`; `actual_model` is quoted
70
- VERBATIM (never inferred). A
71
- malformed return is treated as failure by the caller.
72
-
73
- Fixed models (from `../../references/effort-and-mode.md`): review on the OpenSpec/self
74
- path = Opus 5 medium; review on the Superpowers path is delegated to the
75
- Superpowers review skill instead (Sonnet 4.6 medium). Verify = Opus 5 medium,
76
- always this subskill.
1
+ ---
2
+ name: orc-review-verify
3
+ description: >
4
+ Review/verify worker for ORC Phases 5–6 (Opus 5.5 medium). Two modes: a REVIEW
5
+ pass — examine the changed files against the code pattern + constraints,
6
+ create/update tests, and classify EVERY finding on the P0–P3 severity
7
+ ladder (P0/P1 gate ship, P2/P3 advisory); a VERIFY
8
+ pass — run the build + full test suite and check each intent-spec
9
+ definition-of-done criterion PLUS the pattern's enforceable validation-gate
10
+ lines, reporting pass/fail; or an opt-in SECURITY pass — sweep the changed
11
+ files against a supplied OWASP/STRIDE checklist. Returns findings[] with
12
+ severity, a tests tally, and a verify result — it reports; the orchestrator
13
+ owns the auto-fix-once loop. Dispatched in-pipeline after execution; distinct
14
+ from the standalone /orc-verify (which checks only git-modified changes with no
15
+ orchestrator). ALWAYS a spawned subagent — not for direct user invocation.
16
+ ---
17
+
18
+ # orc-review-verify
19
+
20
+ One entry point: spawned via the Task tool with `subagent.md` framing + the
21
+ slice, which points to `core.md`. `core.md` is the AUTHORITATIVE spec (full input
22
+ slice, both procedures, return contract); the summary below orients — on any
23
+ conflict, `core.md` wins.
24
+
25
+ ## What the worker does (summary)
26
+
27
+ - **phase=review:** examine `changed_files[]` against `code_pattern` + `constraints[]`;
28
+ create/update tests for the changed surface; independently re-check each
29
+ `invariants[]` rule AND each enforceable `validation_gate[]` line against the
30
+ diff (a violation is P0), plus any `fe_rules[]` pack rules on FE diffs
31
+ (file:line findings, P1–P3 by impact, never auto-P0); classify EVERY
32
+ finding on the ladder — **P0** (failing tests/build, unmet acceptance
33
+ criteria, runtime errors, invariant violations — caller auto-fixes, no ask),
34
+ **P1** (correctness/security risk, constraint violations — caller asks the
35
+ user before fixing), **P2** (maintainability — advisory fix-batch offer),
36
+ **P3** (cosmetic — advisory, counted). Never fix P2/P3; P0/P1 fixes are the
37
+ caller's call. **Evidence-or-advisory:** every P0–P2 finding carries
38
+ `file:line` + the offending line(s) quoted VERBATIM; an unanchored finding is
39
+ AUTO-P3 (never gates, never triggers a fix) — the caller spot-checks quotes
40
+ before acting on P0/P1.
41
+ - **phase=verify (two halves, v0.33.0):** FIRST the **TDD gate** — run the
42
+ plan's TDD suite (`tdd_suite[]` in the slice) plus the build + full test
43
+ suite; green is the definition-of-done for non-exempt requirements, and each
44
+ red TDD test is a P0 tied to its requirement (the caller owns the
45
+ `tdd_loop_max` repair loop). THEN the **adversarial review** — attack the
46
+ green implementation: edge cases the spec missed, error paths, contract
47
+ violations, race/ordering, workflow breaks (dead wiring, broken commands) —
48
+ findings on the same P0–P3 ladder. Also fold the enforceable
49
+ `validation_gate[]` lines into the criteria set, then check EACH criterion
50
+ individually (pass/fail, nothing invented; an unmet gate line = unmet
51
+ criterion = P0), each with per-criterion `evidence` (the test/output line or
52
+ file:line that proves it); report failures precisely. You don't fix — the
53
+ caller owns the auto-fix-once loop.
54
+ - **phase=security (opt-in):** sweep only `changed_files[]` against the supplied
55
+ `security_checklist[]` (wrap Semgrep if installed, never install it); findings
56
+ on the same ladder (exploitable-in-diff = P0, hardening gap = P1,
57
+ defense-in-depth = P2/P3). Report-only, no `result` verdict.
58
+
59
+ ## Return shape (summary — full contract in `core.md`)
60
+
61
+ `{ phase, findings[]{severity: P0|P1|P2|P3, location "file:line", quote (verbatim,
62
+ required P0–P2; unanchored ⇒ AUTO-P3), description, criterion},
63
+ criteria[] (verify only){criterion, result, evidence}, tests{added,updated,passing},
64
+ result (verify only): passed|failed, actual_model, actual_effort, failure_reason }`
65
+
66
+ **Validation checkpoint before returning:** every finding carries a `severity`
67
+ from the P0–P3 ladder; every P0–P2 finding carries `file:line` + a VERBATIM
68
+ `quote` (else downgrade it to P3 yourself);
69
+ verify sets `result` + per-criterion `evidence`; `actual_model` is quoted
70
+ VERBATIM (never inferred). A
71
+ malformed return is treated as failure by the caller.
72
+
73
+ Fixed models (from `../../references/effort-and-mode.md`): review on the OpenSpec/self
74
+ path = Opus 5.5 medium; review on the Superpowers path is delegated to the
75
+ Superpowers review skill instead (Sonnet 4.6 medium). Verify = Opus 5.5 medium,
76
+ always this subskill.
@@ -1,45 +1,45 @@
1
- ---
2
- name: orc-testgen
3
- description: >
4
- Worker subskill for ORC's opt-in Phase 6.5 (Test Authoring). Fires when the user
5
- opts into writing tests ("write test cases", "generate tests", "author test
6
- cases for these changes"). Writes test cases as a deliverable — automated test
7
- files, a manual TEST-PLAN.md, and (for HTTP/API backends) a Postman-importable
8
- curl bundle. It NEVER runs tests and NEVER gates the ship; the user tests
9
- manually. ALWAYS invoked as a spawned subagent by the orchestrator. Not for
10
- direct user invocation.
11
- ---
12
-
13
- # orc-testgen
14
-
15
- One entry point: spawned via the Task tool with `subagent.md` framing + the
16
- slice, which points to `core.md` — the AUTHORITATIVE procedure + return contract;
17
- the summary below orients.
18
-
19
- ## What the worker does (summary)
20
-
21
- 1. Take the slice: changed surface (`actual_files`), the intent-spec's
22
- definition-of-done (acceptance criteria), touched flows, constraints, detected stack.
23
- 2. Write **automated test files** in the project's framework, covering the changed surface.
24
- 3. Write a manual **TEST-PLAN.md** with two separated sections — "run the automated
25
- suite" (exact CLI command) and "exercise the real running service" (manual/curl steps).
26
- 4. For an HTTP/API backend, write a Postman-importable **test-cases.http** curl bundle
27
- (env-var placeholders — never real secrets).
28
- 5. Run NOTHING. Advisory `notes[]` may flag a case the code likely won't satisfy.
29
-
30
- The manual deliverables (TEST-PLAN.md + test-cases.http) are pinned to
31
- **`test-generator/<change-slug>/` at the project root** — a visible user
32
- deliverable, never inside `.claude/` or the run folder (see `core.md`).
33
-
34
- **Validation checkpoint before returning:** confirm each promised deliverable
35
- actually exists on disk **at the pinned path** (test files in the project's
36
- conventions; TEST-PLAN.md and — when the stack exposes HTTP — test-cases.http
37
- under `test-generator/<change-slug>/`) before emitting the return contract in `core.md`.
38
-
39
- Fixed model: `orc-test-author-opus-5-med` (Opus 5 medium — authoring good
40
- integration tests is a judgment task). Opt-in: the orchestrator dispatches this
41
- only when the user accepts the offer, defaulted from `config.generate_tests`. The
42
- full lane runs it as Phase 6.5 (after Verify, confirmed at intake); **orc-mini
43
- also offers it** as an end-of-run ask (only on a GREEN smoke gate). Either lane,
44
- it never runs tests and never gates the ship. orc-mini still skips full
45
- review/verify.
1
+ ---
2
+ name: orc-testgen
3
+ description: >
4
+ Worker subskill for ORC's opt-in Phase 6.5 (Test Authoring). Fires when the user
5
+ opts into writing tests ("write test cases", "generate tests", "author test
6
+ cases for these changes"). Writes test cases as a deliverable — automated test
7
+ files, a manual TEST-PLAN.md, and (for HTTP/API backends) a Postman-importable
8
+ curl bundle. It NEVER runs tests and NEVER gates the ship; the user tests
9
+ manually. ALWAYS invoked as a spawned subagent by the orchestrator. Not for
10
+ direct user invocation.
11
+ ---
12
+
13
+ # orc-testgen
14
+
15
+ One entry point: spawned via the Task tool with `subagent.md` framing + the
16
+ slice, which points to `core.md` — the AUTHORITATIVE procedure + return contract;
17
+ the summary below orients.
18
+
19
+ ## What the worker does (summary)
20
+
21
+ 1. Take the slice: changed surface (`actual_files`), the intent-spec's
22
+ definition-of-done (acceptance criteria), touched flows, constraints, detected stack.
23
+ 2. Write **automated test files** in the project's framework, covering the changed surface.
24
+ 3. Write a manual **TEST-PLAN.md** with two separated sections — "run the automated
25
+ suite" (exact CLI command) and "exercise the real running service" (manual/curl steps).
26
+ 4. For an HTTP/API backend, write a Postman-importable **test-cases.http** curl bundle
27
+ (env-var placeholders — never real secrets).
28
+ 5. Run NOTHING. Advisory `notes[]` may flag a case the code likely won't satisfy.
29
+
30
+ The manual deliverables (TEST-PLAN.md + test-cases.http) are pinned to
31
+ **`test-generator/<change-slug>/` at the project root** — a visible user
32
+ deliverable, never inside `.claude/` or the run folder (see `core.md`).
33
+
34
+ **Validation checkpoint before returning:** confirm each promised deliverable
35
+ actually exists on disk **at the pinned path** (test files in the project's
36
+ conventions; TEST-PLAN.md and — when the stack exposes HTTP — test-cases.http
37
+ under `test-generator/<change-slug>/`) before emitting the return contract in `core.md`.
38
+
39
+ Fixed model: `orc-test-author-opus-5-med` (Opus 5.5 medium — authoring good
40
+ integration tests is a judgment task). Opt-in: the orchestrator dispatches this
41
+ only when the user accepts the offer, defaulted from `config.generate_tests`. The
42
+ full lane runs it as Phase 6.5 (after Verify, confirmed at intake); **orc-mini
43
+ also offers it** as an end-of-run ask (only on a GREEN smoke gate). Either lane,
44
+ it never runs tests and never gates the ship. orc-mini still skips full
45
+ review/verify.
@@ -17,7 +17,7 @@ description: >
17
17
  # ORC-ANALYZE (System Analyst)
18
18
 
19
19
  The orchestrator stays on top and **dispatches a System Analyst subagent
20
- (Opus 5, high)** to do this work — it never analyzes itself, keeping its own
20
+ (Opus 5.5, high)** to do this work — it never analyzes itself, keeping its own
21
21
  context lean. This skill defines what that subagent does, how the orchestrator
22
22
  runs the standard/deep gate + scout dispatch, and how it relays challenges and
23
23
  branches on the result.
@@ -33,7 +33,7 @@ the user meant.
33
33
  ## Hard rules
34
34
 
35
35
  1. **Dispatched, not self-run.** The orchestrator coordinates; the Analyst
36
- subagent (Opus 5 high) reads the source, reads the code, and reconciles.
36
+ subagent (Opus 5.5 high) reads the source, reads the code, and reconciles.
37
37
  2. **Evidence-or-mark (never hallucinate) — quote-anchored.** Every
38
38
  requirement interpretation and code claim carries `file:line — "verbatim
39
39
  snippet"` evidence (≤1 line, quoted not paraphrased; no quote →
@@ -1,42 +1,42 @@
1
- # Example — Annotated System Analysis (dry run)
2
-
3
- A: = analyst (Opus 5 high) · U: = user. Nothing real. Bounds the DELIVERABLE to
4
- the asked scope; every claim is grounded with file:line evidence OR marked an
5
- assumption and turned into a question. The orchestrator dispatches this — it never
6
- analyzes itself.
7
-
8
- U: /orc-analyze security-audit.pdf — implement the AUTH findings only
9
-
10
- ## Mode + scope
11
- A: [reads the PDF] Mode: AUDIT (structured findings sheet). Scope X = auth.
12
- Payments and logging findings exist in the doc — recognized only to EXCLUDE them
13
- (they never become tasks). Depth gate: standard or deep? (default standard)
14
- U: standard
15
-
16
- ## Ground against real code (evidence-or-mark)
17
- A: Finding A1 "login lacks rate-limit" → CONFIRMED, auth/login.py:33 has no limiter.
18
- Finding A2 "JWT uses HS256, should be RS256" → auth/token.py:12 uses HS256 ✓ real.
19
- Finding A3 "missing UUID check on /reset" → ⚠ STALE: reset.py:20 renamed that field
20
- to `token_id` and DOES validate it. Marking A3 UNVERIFIED → question.
21
-
22
- ## Challenge (recommended options, one at a time)
23
- A: A3 looks stale against the code. Options:
24
- (a) Drop A3 — code already validates (RECOMMENDED: evidence at reset.py:20).
25
- (b) Keep A3 — you know of a gap the diff doesn't show.
26
- U: (a) drop it
27
-
28
- ## Adjacent context (anchored, do-not-build)
29
- A: A2's RS256 switch depends on the key-loading in config/keys.py — captured as
30
- "Additional context (do not build)", anchored to A2, so the build respects it
31
- without treating it as a task.
32
-
33
- ## Artifacts + branch
34
- A: Writes orc/analyzer/auth-audit/report.md (Evidence column + Assumptions & Open
35
- Questions) + derived requirement-spec.md. handoff_ready: true.
36
- Keep as report, or take into build?
37
- U: take into build → hands both files to /orc, which plans from the spec (no
38
- re-questioning of scope — it's already settled).
39
-
40
- ## (Phase F) Another related doc?
41
- A: You could analyze a related doc in this same scope; once 2+ related analyses
42
- exist I'll offer context-combiner to merge them into one spec. [not needed here]
1
+ # Example — Annotated System Analysis (dry run)
2
+
3
+ A: = analyst (Opus 5.5 high) · U: = user. Nothing real. Bounds the DELIVERABLE to
4
+ the asked scope; every claim is grounded with file:line evidence OR marked an
5
+ assumption and turned into a question. The orchestrator dispatches this — it never
6
+ analyzes itself.
7
+
8
+ U: /orc-analyze security-audit.pdf — implement the AUTH findings only
9
+
10
+ ## Mode + scope
11
+ A: [reads the PDF] Mode: AUDIT (structured findings sheet). Scope X = auth.
12
+ Payments and logging findings exist in the doc — recognized only to EXCLUDE them
13
+ (they never become tasks). Depth gate: standard or deep? (default standard)
14
+ U: standard
15
+
16
+ ## Ground against real code (evidence-or-mark)
17
+ A: Finding A1 "login lacks rate-limit" → CONFIRMED, auth/login.py:33 has no limiter.
18
+ Finding A2 "JWT uses HS256, should be RS256" → auth/token.py:12 uses HS256 ✓ real.
19
+ Finding A3 "missing UUID check on /reset" → ⚠ STALE: reset.py:20 renamed that field
20
+ to `token_id` and DOES validate it. Marking A3 UNVERIFIED → question.
21
+
22
+ ## Challenge (recommended options, one at a time)
23
+ A: A3 looks stale against the code. Options:
24
+ (a) Drop A3 — code already validates (RECOMMENDED: evidence at reset.py:20).
25
+ (b) Keep A3 — you know of a gap the diff doesn't show.
26
+ U: (a) drop it
27
+
28
+ ## Adjacent context (anchored, do-not-build)
29
+ A: A2's RS256 switch depends on the key-loading in config/keys.py — captured as
30
+ "Additional context (do not build)", anchored to A2, so the build respects it
31
+ without treating it as a task.
32
+
33
+ ## Artifacts + branch
34
+ A: Writes orc/analyzer/auth-audit/report.md (Evidence column + Assumptions & Open
35
+ Questions) + derived requirement-spec.md. handoff_ready: true.
36
+ Keep as report, or take into build?
37
+ U: take into build → hands both files to /orc, which plans from the spec (no
38
+ re-questioning of scope — it's already settled).
39
+
40
+ ## (Phase F) Another related doc?
41
+ A: You could analyze a related doc in this same scope; once 2+ related analyses
42
+ exist I'll offer context-combiner to merge them into one spec. [not needed here]