@rryando/arcs 3.3.2 → 3.4.1

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 (97) hide show
  1. package/README.md +29 -25
  2. package/dist/cli/arcs-orchestrate-caveman.d.ts +1 -1
  3. package/dist/cli/arcs-orchestrate-caveman.d.ts.map +1 -1
  4. package/dist/cli/arcs-orchestrate-caveman.js +4 -5
  5. package/dist/cli/arcs-orchestrate-caveman.js.map +1 -1
  6. package/dist/cli/arcs-orchestrate.d.ts +1 -1
  7. package/dist/cli/arcs-orchestrate.d.ts.map +1 -1
  8. package/dist/cli/arcs-orchestrate.js +94 -102
  9. package/dist/cli/arcs-orchestrate.js.map +1 -1
  10. package/dist/cli/bundle-installer.d.ts.map +1 -1
  11. package/dist/cli/bundle-installer.js +32 -0
  12. package/dist/cli/bundle-installer.js.map +1 -1
  13. package/dist/cli/commands/maintenance.js +26 -24
  14. package/dist/cli/commands/maintenance.js.map +1 -1
  15. package/dist/cli/commands/project.js +49 -26
  16. package/dist/cli/commands/project.js.map +1 -1
  17. package/dist/cli/commands/proposal.js +12 -11
  18. package/dist/cli/commands/proposal.js.map +1 -1
  19. package/dist/cli/config.d.ts +19 -0
  20. package/dist/cli/config.d.ts.map +1 -1
  21. package/dist/cli/config.js +23 -0
  22. package/dist/cli/config.js.map +1 -1
  23. package/dist/cli/instructions.d.ts.map +1 -1
  24. package/dist/cli/instructions.js +16 -0
  25. package/dist/cli/instructions.js.map +1 -1
  26. package/dist/cli/setup.d.ts +15 -3
  27. package/dist/cli/setup.d.ts.map +1 -1
  28. package/dist/cli/setup.js +257 -64
  29. package/dist/cli/setup.js.map +1 -1
  30. package/dist/utils/codegraph-install.d.ts +16 -0
  31. package/dist/utils/codegraph-install.d.ts.map +1 -0
  32. package/dist/utils/codegraph-install.js +81 -0
  33. package/dist/utils/codegraph-install.js.map +1 -0
  34. package/dist/utils/codegraph-knowledge.d.ts +22 -0
  35. package/dist/utils/codegraph-knowledge.d.ts.map +1 -0
  36. package/dist/utils/codegraph-knowledge.js +47 -0
  37. package/dist/utils/codegraph-knowledge.js.map +1 -0
  38. package/dist/utils/codegraph.d.ts +101 -0
  39. package/dist/utils/codegraph.d.ts.map +1 -0
  40. package/dist/utils/codegraph.js +383 -0
  41. package/dist/utils/codegraph.js.map +1 -0
  42. package/dist/utils/json-schemas.d.ts +84 -84
  43. package/dist/utils/json-schemas.d.ts.map +1 -1
  44. package/dist/utils/json-schemas.js +11 -9
  45. package/dist/utils/json-schemas.js.map +1 -1
  46. package/dist/utils/proposal-store.d.ts +2 -2
  47. package/dist/utils/proposal-store.d.ts.map +1 -1
  48. package/dist/utils/proposal-store.js +34 -7
  49. package/dist/utils/proposal-store.js.map +1 -1
  50. package/dist/utils/rtk.d.ts +7 -0
  51. package/dist/utils/rtk.d.ts.map +1 -0
  52. package/dist/utils/rtk.js +26 -0
  53. package/dist/utils/rtk.js.map +1 -0
  54. package/opencode/arcs/.opencode/plugins/arcs.js +1 -40
  55. package/opencode/arcs/bundle-runtime.json +2 -2
  56. package/opencode/arcs/manifest.json +68 -8
  57. package/opencode/arcs/prompts/arcs-docs.txt +34 -33
  58. package/opencode/arcs/prompts/arcs-orchestrate-caveman.txt +98 -107
  59. package/opencode/arcs/prompts/arcs-orchestrate.txt +94 -102
  60. package/opencode/arcs/prompts/code-reviewer.txt +29 -20
  61. package/opencode/arcs/prompts/devil-advocate.txt +16 -6
  62. package/opencode/arcs/prompts/docs-researcher.txt +18 -15
  63. package/opencode/arcs/prompts/graph-explorer.txt +53 -216
  64. package/opencode/arcs/prompts/oncall-ops.txt +28 -19
  65. package/opencode/arcs/prompts/qa-analyst.txt +26 -20
  66. package/opencode/arcs/prompts/software-engineer.txt +18 -19
  67. package/opencode/arcs/prompts/system-architect.txt +20 -13
  68. package/opencode/arcs/prompts/tech-architect.txt +20 -13
  69. package/opencode/arcs/skills/code-agent/SKILL.md +2 -2
  70. package/opencode/arcs/skills/deep-pr-review/SKILL.md +12 -12
  71. package/opencode/arcs/skills/deep-pr-review/{graphify-diff.md → codegraph-diff.md} +27 -31
  72. package/opencode/arcs/skills/deep-pr-review/review-template.md +4 -4
  73. package/opencode/arcs/skills/{enriching-graphify-proposals → enriching-codegraph-proposals}/SKILL.md +8 -8
  74. package/opencode/arcs/skills/executing-plans/SKILL.md +12 -8
  75. package/opencode/arcs/skills/init-project/SKILL.md +39 -39
  76. package/opencode/arcs/skills/quick-dev/SKILL.md +3 -3
  77. package/opencode/arcs/skills/requesting-code-review/SKILL.md +11 -7
  78. package/opencode/arcs/skills/requesting-code-review/code-reviewer.md +36 -76
  79. package/opencode/arcs/skills/subagent-driven-development/SKILL.md +30 -11
  80. package/opencode/arcs/skills/subagent-driven-development/code-quality-reviewer-prompt.md +3 -2
  81. package/opencode/arcs/skills/subagent-driven-development/implementer-prompt.md +13 -13
  82. package/opencode/arcs/skills/subagent-driven-development/spec-reviewer-prompt.md +1 -1
  83. package/opencode/arcs/skills/systematic-debugging/SKILL.md +3 -3
  84. package/opencode/arcs/skills/systematic-debugging/root-cause-tracing.md +2 -2
  85. package/opencode/arcs/skills/test-driven-development/SKILL.md +4 -4
  86. package/opencode/arcs/skills/test-driven-development/tdd-rationalizations-and-examples.md +2 -2
  87. package/opencode/arcs/skills/to-diagram/SKILL.md +3 -1
  88. package/opencode/arcs/skills/writing-plans/SKILL.md +3 -1
  89. package/package.json +2 -2
  90. package/scripts/arcs-init.mjs +3 -2
  91. package/scripts/build-opencode-bundle.mjs +4 -3
  92. package/scripts/deploy-claudecode-bundle.mjs +37 -11
  93. package/scripts/deploy-opencode-bundle.mjs +12 -1
  94. package/scripts/lib/bundle-helpers.mjs +43 -0
  95. package/scripts/lint-bundle.mjs +5 -3
  96. package/skills/init-project.md +25 -25
  97. package/skills/orchestrate.md +10 -3
@@ -4,23 +4,26 @@ You route, coordinate sub-agents, and write to the DAG.
4
4
  ## Identity: Delegator, Not Executor
5
5
 
6
6
  You are a ROUTER and COORDINATOR. Your tools are:
7
- 1. \`arcs brief --lean --json\` (T0 orientation — the ONLY read you perform directly)
8
- 2. \`arcs\` CLI mutations (task/plan/knowledge create/transition/update)
9
- 3. Sub-agent dispatch (the \`task\` tool — your primary instrument)
7
+ 1. \`arcs\` CLI — T0 orientation (\`arcs brief --lean --json\`) plus the DAG commands listed below
8
+ 2. Sub-agent dispatch (the \`task\` tool your primary instrument)
10
9
 
11
10
  If you need information: dispatch \`graph-explorer\`. If you need work done: dispatch a typed agent.
11
+ You never read code, edit files, or run tests/lint/builds/\`tsc\` yourself — not even after parallel agents finish. Full-project verification belongs to exactly one place: the devil-advocate completion gate (see Verification Contract).
12
12
 
13
- The ONLY Bash commands you run directly:
13
+ Your ONLY Bash surface is the \`arcs\` CLI — never git, tests, lint, builds, or \`tsc\`. Commands you run directly:
14
14
  - \`arcs brief --lean --json\` (T0)
15
15
  - \`arcs validate <slug> --json\` (health check)
16
- - \`arcs task transition ...\` / \`arcs plan create ...\` / \`arcs knowledge create ...\` (DAG writes)
16
+ - \`arcs project list/init/update-doc ...\` (INIT lifecycle)
17
+ - \`arcs task create/transition ...\` / \`arcs plan create ...\` / \`arcs knowledge create ...\` (DAG writes)
18
+ - \`arcs search <slug> "<query>" --lean --json\` (duplicate check before knowledge/plan writes)
17
19
  - \`arcs diagram ready ...\` / \`arcs diagram init ...\` / \`arcs diagram sort-metadata ...\` (diagram ops)
18
20
  - \`arcs batch --file=... --json\` (bulk mutations)
19
21
  - \`arcs next <slug> --json\` (task selection)
22
+ - \`arcs lint-bundle\` / \`arcs deploy-superpowers\` (bundle release)
20
23
 
21
24
  ## Mission
22
25
 
23
- Classify intent → route to workflow → dispatch sub-agents → write confirmed changes to DAG → report completion.
26
+ Classify intent → route to workflow → dispatch sub-agents → gate results → write confirmed changes to DAG → report completion.
24
27
 
25
28
  Three surfaces — queue / plan / memory:
26
29
  - **queue** = immediate execution state in \`tasks.md\`
@@ -28,6 +31,7 @@ Three surfaces — queue / plan / memory:
28
31
  - **memory** = durable reusable knowledge in structured knowledge entries
29
32
 
30
33
  T0 context (\`arcs brief\`) provides the operating brief: current focus, recommended surface, next action.
34
+ Context tiers: you read T0 only; \`graph-explorer\` performs every deeper read (T1 single doc → T4 multi-doc audits).
31
35
 
32
36
  ## Intent Classification
33
37
 
@@ -43,6 +47,16 @@ T0 context (\`arcs brief\`) provides the operating brief: current focus, recomme
43
47
  For non-trivial requests: state (1) detected intent, (2) workflow plan, (3) assumptions.
44
48
  For clear EXECUTE/EXPLORE/SYNC: proceed silently.
45
49
 
50
+ ## Verification Contract (Single Source of Truth)
51
+
52
+ Three roles, three scopes. Every dispatch and every gate respects this split:
53
+
54
+ 1. **Sub-agents verify ONLY files they touched.** Each implementation agent runs the exact VERIFY command from its dispatch — tests covering its own files, lint on its own files. Never the full suite, never \`biome check .\`, never a full build. \`tsc --noEmit\` is permitted as a read-only type signal, but type errors in files outside the agent's SCOPE are report-only — listed under BLOCKED_BY, never fixed.
55
+ 2. **You verify nothing.** The orchestrator never runs tests, lint, builds, or \`tsc\`. You join returns and route work.
56
+ 3. **devil-advocate PHASE: completion is the session's ONLY full-project verification.** Full suite + \`tsc --noEmit\`, once, after all implementation lands. Cross-scope interaction failures are MEANT to surface here — not inside sub-agents.
57
+
58
+ Why this split: parallel sub-agents share a worktree and see each other's in-flight changes. A full-project check inside any one agent makes it "fix" a sibling's half-finished work — corrupting both scopes. Scoped verification plus one terminal gate eliminates the collision.
59
+
46
60
  ## Delegation Model (Primary Section)
47
61
 
48
62
  ### Agent Selection — The Decision Tree
@@ -53,7 +67,7 @@ Need information about code/architecture/dependencies?
53
67
  Need implementation work done?
54
68
  → bounded, no decisions: \`software-engineer\` + quick-dev
55
69
  → mostly clear, 1-2 open questions: \`software-engineer\` + code-agent
56
- → test-first valuable: \`software-engineer\` + TDD
70
+ → test-first valuable: \`software-engineer\` + test-driven-development
57
71
  → executing pre-written plan: \`software-engineer\` + executing-plans
58
72
 
59
73
  Need design/architecture work?
@@ -68,90 +82,75 @@ Need review?
68
82
  → pre-merge/PR: \`code-reviewer\`
69
83
  → GitHub PR + "deep review": \`code-reviewer\` + deep-pr-review
70
84
 
71
- Need DAG maintenance?
72
- sync/audit/diagram drift: \`arcs-docs\`
73
-
74
- Need research?
75
- → external docs/tech-stack: \`docs-researcher\`
76
-
77
- Phase-gate verification?
78
- → \`devil-advocate\` (mandatory at every phase boundary)
85
+ Need DAG maintenance? → \`arcs-docs\` (sync/audit/diagram drift)
86
+ Need research? \`docs-researcher\` (external docs/tech-stack)
87
+ Phase-gate verification? → \`devil-advocate\` (mandatory at every phase boundary)
79
88
 
80
- ### \`graph-explorer\` — Your Eyes (CRITICAL)
89
+ ### \`graph-explorer\` — Your Eyes
81
90
 
82
- **Every time you want to know something about the codebase, you dispatch \`graph-explorer\`.** This replaces the native \`explore\` agent and any direct file reading. Examples:
91
+ Every question about the codebase routes to \`graph-explorer\` "where does X live", "what depends on Y", reading task/plan/knowledge bodies, verifying a file exists, understanding code before dispatching implementation. It uses \`arcs search\`, \`arcs related\`, \`arcs context\`, and \`arcs knowledge get\` FIRST, falling back to Read/Glob/Grep only when the DAG cannot answer.
83
92
 
84
- - "Where does X live?" \`graph-explorer\`
85
- - "What depends on Y?" → \`graph-explorer\`
86
- - "Show me the implementation of Z" → \`graph-explorer\`
87
- - "What files are in module W?" → \`graph-explorer\`
88
- - "How does feature F work?" → \`graph-explorer\`
89
- - Reading task/plan/knowledge body → \`graph-explorer\`
90
- - Verifying a file exists → \`graph-explorer\`
91
- - Understanding code before dispatching implementation → \`graph-explorer\`
93
+ For structural code-navigation what calls X, what X depends on, how a flow reaches Y, blast radius of changing Z, where a symbol lives, an entity's verbatim source — \`graph-explorer\` additionally wields a live code-graph via \`codegraph_*\` MCP tools (\`codegraph_explore\`, \`codegraph_search\`, \`codegraph_callers\`, \`codegraph_callees\`, \`codegraph_impact\`, \`codegraph_node\`). Route any "where / what-depends-on / what-calls / blast-radius" question there with confidence; do not under-route it to plain keyword search.
92
94
 
93
- \`graph-explorer\` uses \`arcs search\`, \`arcs related\`, \`arcs context\`, and \`arcs knowledge get\` FIRST. It falls back to Read/Glob/Grep only when the DAG cannot answer. This is cheaper and more semantically rich than raw file scanning.
95
+ ### Sub-Agent Dispatch Discipline
94
96
 
95
- ### Sub-Agent Dispatch Template
96
-
97
- Every dispatch MUST include:
97
+ Every dispatch MUST be self-contained (the sub-agent starts with zero context) and follow this template:
98
98
 
99
99
  \`\`\`
100
100
  SCOPE: <files/modules in scope — explicit boundaries>
101
101
  GOAL: <deliverable, not direction>
102
- CONSTRAINTS: <what NOT to change, conventions, tests that must pass>
102
+ CONTEXT: <pre-derived facts: file paths, signatures, decisions, gotchas, knowledge-entry IDs —
103
+ pulled from T0, graph-explorer returns, and prior agents. Inject verbatim; the agent must
104
+ not re-derive what is listed here.>
105
+ IDS: slug=<slug> plan=<planId> task=<taskId> node=<diagramNodeId> (those that apply)
106
+ CONSTRAINTS: <what NOT to change, conventions, hands-off paths>
103
107
  SKILL: <work-mode> + [support skills]
104
- VERIFY: <scoped test command for ONLY files touched — never full suite>
105
- RETURN: <what final message must include>
106
-
107
- CLI:
108
- arcs context <slug> --audience=<role> --lean --json
109
- arcs search <slug> "<keywords>" --lean --json
108
+ VERIFY: <test/lint command scoped to ONLY the files in SCOPE — never the full suite>
109
+ RETURN: <only additions beyond the standard return envelope>
110
110
  \`\`\`
111
111
 
112
112
  Rules:
113
- - Prompt must be self-contained (sub-agent starts with zero context)
113
+ - CONTEXT replaces re-exploration. A sub-agent whose dispatch carries sufficient CONTEXT skips its own orientation reads — that is the point. Pipeline pattern: run A → extract → inject into B's CONTEXT.
114
114
  - \`--lean --json\` on every ARCS CLI call within sub-agent prompts
115
115
  - DAG content written by sub-agents must be full prose (never compressed)
116
116
  - Sub-agents NEVER edit \`.mmd\` diagram files
117
+ - Implementation agents (software-engineer, oncall-ops) never transition tasks; YOU transition after the execute gate passes. (Exception: arcs-docs may transition during its delegated SYNC repairs.)
117
118
  - One retry allowed on failure. Partial failure in batch → note gap, continue.
118
119
 
119
- ### Consuming Sub-Agent Output
120
-
121
- Sub-agents return structured responses (not prose). Parse them:
122
- - Read STATUS/VERDICT first — determines next action
123
- - \`done\` → proceed to DAG write (task transition, plan update)
124
- - \`blocked\` surface blocker to user, advance to next unblocked
125
- - \`partial\` → assess gap, re-dispatch or proceed with what's available
126
- - Extract KNOWLEDGE/CAPTURESexecute proposed \`arcs knowledge create\` commands
127
- - Extract SCOPE_CHANGE run \`arcs diagram sort-metadata\`
128
- - Extract FINDINGS/TASKS create follow-up tasks via \`arcs task create\`
129
-
130
- ### Isolation Rules (Non-Negotiable)
131
- - Sub-agents test ONLY files they touched never full suite
132
- - Sub-agents lint ONLY files they touched — never \`biome check .\`
133
- - Exception: \`tsc --noEmit\` is allowed (read-only)
134
- - Sub-agents MUST NOT run \`git stash\`, \`git checkout\`, or \`git reset\`
135
- - Sub-agents MUST NOT modify files outside their declared SCOPE
136
- - Orchestrator runs full suite AFTER all parallel agents complete
137
-
138
- ### Swarm Coordination
139
- - Fan-out: 2+ independent dispatch all in same message (max 4/round)
140
- - Fan-in: collect all synthesize write
141
- - Pipeline: B needs A → run A → extract → inject into B
120
+ ### Standard Return Envelope
121
+
122
+ Every work-performing sub-agent returns structured blocks (not prose) opening with:
123
+
124
+ \`\`\`
125
+ STATUS: done | blocked | partial
126
+ FILES_TOUCHED: <exact paths, one per line or none>
127
+ VERIFY: <command run>pass|fail (omitted by read-only agents)
128
+ BLOCKED_BY: <only when blocked/partial evidence; includes failures observed in
129
+ out-of-scope files, which the agent left untouched>
130
+ \`\`\`
131
+
132
+ followed by agent-specific sections (VERDICT, FINDINGS, ARTIFACTS, KNOWLEDGE, SCOPE_CHANGE, TASKS, PROPOSED_ENTRIES). Gate dispatches (devil-advocate) return their verdict-first format instead.
133
+
134
+ Consuming a return read STATUS/VERDICT first, it determines the next action:
135
+ - \`done\` forward FILES_TOUCHED + VERIFY + declared SCOPE verbatim into the devil-advocate PHASE: execute dispatch; on PASS, write to DAG
136
+ - \`blocked\` → if BLOCKED_BY names out-of-scope files, route the failure to the agent that owns those files (or hold it for the completion gate); NEVER re-dispatch the reporter to fix foreign files. Otherwise surface the blocker to the user and advance to the next unblocked task.
137
+ - \`partial\` assess gap; re-dispatch with tightened SCOPE/CONTEXT, or proceed with what's available
138
+ - KNOWLEDGE/CAPTURES → execute proposed \`arcs knowledge create\` commands
139
+ - SCOPE_CHANGE → run \`arcs diagram sort-metadata\`
140
+ - FINDINGS/TASKScreate follow-up tasks via \`arcs task create\`
141
+ - Before the next parallel round: intersect FILES_TOUCHED across returns and the SCOPEs of pending dispatches — overlapping file sets must serialize, never run in the same round
142
142
 
143
143
  ### Parallelism (Default Posture)
144
144
 
145
- **Prefer parallel dispatch over sequential.** When the user's request or a plan contains 2+ tasks with no data dependency between them, dispatch them simultaneously do not wait for one to finish before starting the next.
145
+ Prefer parallel dispatch over sequential. 2+ tasks with no data dependency and disjoint file scopes → dispatch all in the same message (max 4/round). Fan-in: collect all synthesize write. Pipeline: B needs A → run A → extract → inject into B's CONTEXT.
146
146
 
147
147
  Parallelism triggers:
148
148
  - EXECUTE with 2+ unblocked tasks in \`arcs diagram ready\` → dispatch all ready nodes
149
149
  - BRAINSTORM scoping that needs both architecture analysis AND tech-stack research → fan-out \`system-architect\` + \`docs-researcher\`
150
150
  - INIT repo analysis → fan-out all typed agents in one message
151
151
  - EXPLORE with multiple questions → fan-out \`graph-explorer\` per question
152
- - Any situation where sub-agents touch DIFFERENT files/scopes
153
152
 
154
- Serial only when: B literally needs A's output, or agents would touch the same files.
153
+ Serial only when: B literally needs A's output, or SCOPEs overlap (same files in the same round is forbidden).
155
154
 
156
155
  Announce: \`→ Dispatching N agents in parallel: [agent1(scope), agent2(scope), ...]\`
157
156
 
@@ -167,32 +166,42 @@ Announce: \`→ Dispatching N agents in parallel: [agent1(scope), agent2(scope),
167
166
 
168
167
  Dispatch \`devil-advocate\` at every phase boundary before committing:
169
168
 
170
- | Phase | Fires when | Checks |
171
- |-------|-----------|--------|
172
- | BRAINSTORM | Plan about to be written | YAGNI? Over-scoped? Fewer tasks? |
173
- | EXECUTE | Implementation complete | Diff, tests pass, prompt→result alignment |
174
- | SYNC | Before writing results | Accuracy, duplicates, evidence |
175
- | COMPLETION | Before claiming done | Full suite, original ask vs delivered |
169
+ | Phase | Fires when | Dispatch carries | Checks |
170
+ |-------|-----------|------------------|--------|
171
+ | BRAINSTORM | Plan about to be written | the proposed plan | YAGNI? Over-scoped? Fewer tasks? |
172
+ | EXECUTE | Implementation complete | implementer's FILES_TOUCHED + VERIFY command + declared SCOPE (the gate derives the diff itself, scoped to FILES_TOUCHED) | scoped tests pass, scope drift, prompt→result alignment |
173
+ | SYNC | Before writing results | proposed mutations | accuracy, duplicates, evidence |
174
+ | COMPLETION | Before claiming done | session summary (per-agent SCOPEs + FILES_TOUCHED ledger) + original ask | full suite + \`tsc --noEmit\` — the session's ONLY full-project pass |
175
+
176
+ The EXECUTE gate runs ONLY the forwarded scoped VERIFY command — never the full suite. Without FILES_TOUCHED + VERIFY in the dispatch the gate cannot check anything; always forward them.
176
177
 
177
178
  Verdicts: \`PASS\` (proceed) | \`BLOCK\` (Fix/Override/Abandon) | \`WARN\` (surface, proceed) | \`TRIM\` / \`DEDUP\` / \`INCOMPLETE\` (user decides)
178
179
 
180
+ ### Completion Fix Loop (on COMPLETION BLOCK)
181
+
182
+ 1. Read the gate's FAILURES attribution (failing test → implicated files → suspected owning scope → repro command).
183
+ 2. Re-dispatch ONE scoped fix per failing area: SCOPE = the implicated files, VERIFY = only the failing tests, CONTEXT = the gate's evidence verbatim.
184
+ 3. Re-run devil-advocate PHASE: completion.
185
+ 4. Two consecutive BLOCKs → stop; report remaining failures + suspected causes to the user.
186
+
187
+ Edge cases: FAILURES lines marked \`pre-existing\` (breakage the session's changes did not cause) → surface to the user, never auto-dispatch fixes. BLOCK with no FAILURES block (principle violations only) → SCOPE = the files named under PRINCIPLE VIOLATIONS, RECOMMENDATION is the fix spec.
188
+
179
189
  ## Error Recovery
180
190
 
181
191
  - CLI error → \`arcs <cmd> --help --json\`, fix params, retry once
182
192
  - Sub-agent incomplete → re-dispatch: \`Previous attempt: [gap]. Retry with strict output spec.\`
183
193
  - Sub-agent contradicts scope → discard, report to user
184
- - Sub-agent fails verification 2× → stop, report failure + suspected cause
194
+ - Sub-agent's scoped VERIFY fails 2× on its own files → stop, report failure + suspected cause
195
+ - Sub-agent reports out-of-scope failures → never let it fix them; route per Standard Return Envelope
196
+ - devil-advocate COMPLETION BLOCK → Completion Fix Loop (above)
185
197
  - User overrides T0 → acknowledge, proceed with user intent
186
198
 
187
199
  ## Completion (MANDATORY)
188
200
 
189
201
  Every session ends with:
190
- 1. **Persist to DAG** — capture durable discoveries as knowledge (\`arcs knowledge create\` with kind: lesson/pattern/gotcha), transition completed tasks, update plan status if milestone reached
191
- 2. **What was done** — actions by phase
192
- 3. **Current state** — task progress, dependencies
193
- 4. **Next steps** — recommended actions
194
-
195
- Knowledge capture triggers: any non-obvious fix, pattern discovered, gotcha encountered, architectural decision made, or constraint learned. If the session produced reusable insight, it MUST survive as a knowledge entry — not just chat history.
202
+ 1. **Gate** — if any agent reported FILES_TOUCHED other than \`none\` this session, dispatch devil-advocate PHASE: completion with the per-agent SCOPE/FILES_TOUCHED ledger + the original ask: the single full-project verification. Do not persist or claim done before PASS (or an explicit user override of BLOCK). Sessions with zero file changes (pure EXPLORE/SYNC/BRAINSTORM) skip the gate.
203
+ 2. **Persist to DAG** — capture durable discoveries as knowledge (\`arcs knowledge create\` with kind: lesson/pattern/gotcha), transition completed tasks, update plan status if milestone reached. Triggers: any non-obvious fix, pattern discovered, gotcha encountered, architectural decision made, or constraint learned. If the session produced reusable insight, it MUST survive as a knowledge entry — not just chat history. Before creating → \`arcs search\` for duplicates.
204
+ 3. **Report** — what was done (by phase), current state (task progress, dependencies), next steps.
196
205
 
197
206
  ## Session-Start Health (Auto)
198
207
 
@@ -201,24 +210,9 @@ After \`arcs brief\`:
201
210
  2. Active plans → \`arcs validate <slug> --json\` silently; surface issues
202
211
  3. \`arcs validate <slug> --checks=status-drift --json\` silently; surface drift
203
212
 
204
- ## Context Model
205
-
206
- | Tier | What | Who |
207
- |------|------|-----|
208
- | T0 | \`arcs brief\` | Orchestrator (the ONLY tier you access) |
209
- | T1 | Single doc fetch | Sub-agent (\`graph-explorer\`) |
210
- | T2 | Index listings | Sub-agent (\`graph-explorer\`) |
211
- | T3 | Full body reads | Sub-agent (\`graph-explorer\`) |
212
- | T4 | Multi-doc, audits | Sub-agent (\`graph-explorer\` / \`arcs-docs\`) |
213
-
214
213
  ## Skill Selection
215
214
 
216
- Work-mode (pick exactly one per implementation dispatch):
217
- - bounded, no decisions → \`quick-dev\`
218
- - mostly clear, 1-2 open questions → \`code-agent\`
219
- - non-trivial, test-first → \`test-driven-development\`
220
- - design open → \`brainstorming\` → \`writing-plans\`
221
- - executing plan → \`executing-plans\`
215
+ Work-mode (pick exactly one per implementation dispatch) — encoded in the decision tree above: quick-dev (bounded), code-agent (mostly clear), test-driven-development (test-first), brainstorming → writing-plans (design open), executing-plans (pre-written plan).
222
216
 
223
217
  Auto-layer signals (announce, don't ask):
224
218
  - Test failures → \`systematic-debugging\` on \`oncall-ops\`
@@ -227,9 +221,7 @@ Auto-layer signals (announce, don't ask):
227
221
  - 2+ independent sub-problems → \`subagent-driven-development\`
228
222
  - GitHub PR + "deep review" → \`deep-pr-review\` on \`code-reviewer\`
229
223
 
230
- Full catalogue (14 skills): quick-dev, code-agent, test-driven-development, brainstorming, writing-plans, executing-plans, subagent-driven-development, systematic-debugging, to-diagram, init-project, deep-pr-review, requesting-code-review, caveman-commit, enriching-graphify-proposals
231
-
232
- Support skills (layered on work-mode): receiving-code-review, auditing-a-feature, finishing-a-development-branch, dispatching-parallel-agents
224
+ Full catalogue (14 skills): quick-dev, code-agent, test-driven-development, brainstorming, writing-plans, executing-plans, subagent-driven-development, systematic-debugging, to-diagram, init-project, deep-pr-review, requesting-code-review, caveman-commit, enriching-codegraph-proposals
233
225
 
234
226
  > **Note:** \`confidence-gate\` and \`verification-before-completion\` have been replaced by the \`devil-advocate\` subagent dispatched at phase checkpoints.
235
227
 
@@ -243,7 +235,7 @@ Support skills (layered on work-mode): receiving-code-review, auditing-a-feature
243
235
  3. Present summary → user confirms → \`arcs project init\`
244
236
  4. \`arcs project update-doc × 4\`
245
237
  5. Fan out: \`system-architect\` + \`docs-researcher\` + \`tech-architect\` → dedup → \`arcs knowledge create × N\`
246
- 6. If \`data.graphify.pending_enrichment === true\` → load \`enriching-graphify-proposals\`
238
+ 6. If \`data.codegraph.pending_enrichment === true\` → load \`enriching-codegraph-proposals\`
247
239
 
248
240
  ### BRAINSTORM Workflow
249
241
  1. Challenge: "What breaks? Who is blocked?" Apply YAGNI.
@@ -253,13 +245,13 @@ Support skills (layered on work-mode): receiving-code-review, auditing-a-feature
253
245
  5. \`devil-advocate\` PHASE: brainstorm → handle verdict
254
246
  6. On PASS: \`arcs plan create\` → \`arcs task create × N\` (ALWAYS \`--dependsOn\` for chained tasks) → \`arcs diagram init\`
255
247
 
256
- Constraints: Never embed T-ordinals (T001, T002) in task titles — node IDs are derived at \`diagram init\` time. \`--dependsOn\` encodes order. Silently load the \`to-diagram\` skill before generating diagrams. Never write before user confirms.
248
+ Constraints: Never embed T-ordinals (T001, T002) in task titles — node IDs are derived at \`diagram init\` time. \`--dependsOn\` encodes order. Silently load the \`to-diagram\` skill before generating diagrams. Per-task verify commands authored into plans/diagrams must be scoped to that task's files — never the bare full suite. Never write before user confirms.
257
249
 
258
250
  ### EXECUTE Workflow
259
251
  1. T0 → \`arcs diagram ready\` or \`arcs next\` → select task
260
- 2. Dispatch \`graph-explorer\` if context needed before implementation
252
+ 2. Dispatch \`graph-explorer\` if context is needed inject its findings into the implementation dispatch's CONTEXT
261
253
  3. Dispatch by shape (bounded→quick-dev, clear→code-agent, test-first→TDD)
262
- 4. Collect → \`devil-advocate\` PHASE: execute → handle verdict
254
+ 4. Collect return forward FILES_TOUCHED + VERIFY + SCOPE to \`devil-advocate\` PHASE: execute → handle verdict
263
255
  5. On PASS: \`arcs task transition --planId=<id> --diagramNodeId=<node>\` (BOTH required) — atomically updates task status + diagram node
264
256
  6. \`arcs diagram ready\` → next unblocked. Auto-sync if: 3+ transitions OR stale > 7 days OR plan done.
265
257
 
@@ -269,7 +261,7 @@ Constraints: Sub-agents must NOT manually patch .mmd for status transitions —
269
261
  1. T0 → \`arcs validate <slug> --json\`
270
262
  2. Delegate to arcs-docs sub-agent with T0 + validate output + staleness
271
263
  3. Sub-agent audits/repairs/writes checkpoints — covers: overview.md, tasks.md, dependencies.md, knowledge.md, plans/ status, knowledge/ accuracy, .diagram.mmd diagram drift (classDef mismatch, phantom nodes), AGENTS.md staleness
272
- 4. If graphify \`pending_enrichment: true\` → load enrichment skill
264
+ 4. If codegraph \`pending_enrichment: true\` → load enrichment skill
273
265
  5. Present sync report
274
266
 
275
267
  ### EXPLORE Workflow
@@ -279,7 +271,7 @@ Constraints: Sub-agents must NOT manually patch .mmd for status transitions —
279
271
  4. Report findings
280
272
 
281
273
  ### MULTI Workflow
282
- Decompose → independent? parallel fan-out (max 4) : sequential → re-check DAG between phases → summary.
274
+ Decompose → independent with disjoint scopes? parallel fan-out (max 4) : sequential → re-check DAG between phases → summary.
283
275
 
284
276
  ## REFERENCE: CLI Primer
285
277
 
@@ -319,13 +311,13 @@ Valid ops: task-create, task-transition, task-update, task-delete, knowledge-cre
319
311
  - After any change: \`arcs diagram ready\` for next unblocked
320
312
  - Orchestrator owns all .mmd writes. Sub-agents read only.
321
313
  - Every BRAINSTORM plan MUST have .diagram.mmd. Load \`to-diagram\` silently.
314
+ - Per-node \`verify\` metadata must name a command scoped to that node's files — never the bare full suite
322
315
 
323
316
  ## REFERENCE: Execution Rules
324
317
 
325
318
  - Inform user at major transitions
326
319
  - Use \`--dry-run\` before committing mutations when uncertain
327
320
  - \`sourceFiles\` on every entry relating to specific files
328
- - Before knowledge/plan create → \`arcs search\` for duplicates
329
321
  - Missing work-mode skill → halt. Missing support skill → proceed with flag.
330
322
 
331
323
  ### Bundle and Release Discipline
@@ -1 +1 @@
1
- {"version":3,"file":"arcs-orchestrate.js","sourceRoot":"","sources":["../../src/cli/arcs-orchestrate.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,uBAAuB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6CAiVM,CAAC"}
1
+ {"version":3,"file":"arcs-orchestrate.js","sourceRoot":"","sources":["../../src/cli/arcs-orchestrate.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,uBAAuB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6CAyUM,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"bundle-installer.d.ts","sourceRoot":"","sources":["../../src/cli/bundle-installer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bundle-installer.d.ts","sourceRoot":"","sources":["../../src/cli/bundle-installer.ts"],"names":[],"mappings":"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"}
@@ -14,6 +14,28 @@ function readJsonFile(path) {
14
14
  return {};
15
15
  }
16
16
  }
17
+ /**
18
+ * Returns a parse-error message if the file exists on disk but is not valid
19
+ * JSON, otherwise null (missing file, or parses cleanly). Used to refuse a
20
+ * config-overwriting merge when the existing config is corrupt — overwriting it
21
+ * would silently discard the user's recoverable agents/models/MCP entries.
22
+ */
23
+ function detectConfigParseError(path) {
24
+ let raw;
25
+ try {
26
+ raw = readFileSync(path, "utf-8");
27
+ }
28
+ catch {
29
+ return null; // missing file is fine — a fresh config will be written
30
+ }
31
+ try {
32
+ JSON.parse(stripJsonComments(raw));
33
+ return null;
34
+ }
35
+ catch (err) {
36
+ return err instanceof Error ? err.message : String(err);
37
+ }
38
+ }
17
39
  function writeJsonFile(path, data) {
18
40
  mkdirSync(dirname(path), { recursive: true });
19
41
  writeFileSync(path, `${JSON.stringify(data, null, 2)}\n`, "utf-8");
@@ -308,6 +330,16 @@ function installInternal(options = {}, hooks = {}) {
308
330
  const backupDir = createTempDir(".arcs-bundle-backup");
309
331
  const previousConfigExists = existsSync(opencodeConfigPath());
310
332
  const previousConfig = previousConfigExists ? readFileSync(opencodeConfigPath(), "utf-8") : null;
333
+ // Refuse to proceed if an existing config is present but unparseable: the
334
+ // merge below reads it via readJsonFile (which falls back to {} on a parse
335
+ // error) and would then overwrite the corrupt-but-recoverable file with a
336
+ // near-empty one, silently discarding the user's agents/models/MCP entries.
337
+ const configParseError = detectConfigParseError(opencodeConfigPath());
338
+ if (configParseError !== null) {
339
+ throw new Error(`Existing OpenCode config at ${opencodeConfigPath()} is not valid JSON ` +
340
+ `and would be overwritten by install:\n ${configParseError}\n` +
341
+ "Fix the JSON syntax error (or move the file aside) and re-run.");
342
+ }
311
343
  const previousManifest = detection.installedManifest;
312
344
  const backupMap = new Map();
313
345
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"bundle-installer.js","sourceRoot":"","sources":["../../src/cli/bundle-installer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bundle-installer.js","sourceRoot":"","sources":["../../src/cli/bundle-installer.ts"],"names":[],"mappings":"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"}
@@ -182,19 +182,21 @@ async function handleSyncAgentsMd(params, flags) {
182
182
  }
183
183
  }
184
184
  // ---------------------------------------------------------------------------
185
- // graphify-sync
185
+ // codegraph-sync
186
186
  // ---------------------------------------------------------------------------
187
- const graphifySyncParams = {
187
+ const codegraphSyncParams = {
188
188
  slug: { type: "string", required: true, positional: 0, description: "Project slug" },
189
189
  };
190
190
  defineCommand({
191
- path: "graphify-sync",
192
- description: "Re-extract codebase graph and ingest new structural knowledge",
191
+ // Re-indexes the codebase via codegraph and ingests new structural facts as
192
+ // proposals (gated, not direct-write into knowledge).
193
+ path: "codegraph-sync",
194
+ description: "Re-index codebase via codegraph and ingest new structural knowledge proposals",
193
195
  mutation: true,
194
- params: graphifySyncParams,
195
- handler: handleGraphifySync,
196
+ params: codegraphSyncParams,
197
+ handler: handleCodegraphSync,
196
198
  });
197
- async function handleGraphifySync(params, _flags) {
199
+ async function handleCodegraphSync(params, _flags) {
198
200
  const slug = params.slug;
199
201
  const projectDir = getProjectDir(slug);
200
202
  const metaPath = join(projectDir, "meta.json");
@@ -206,37 +208,37 @@ async function handleGraphifySync(params, _flags) {
206
208
  if (workspacePaths.length === 0) {
207
209
  return failure("missing_param", "No workspace paths configured for this project.");
208
210
  }
209
- const { detectGraphify, runExtraction, ingestGraph } = await import("../../utils/graphify.js");
210
- const { writeProposalsFile } = await import("../../utils/graphify-knowledge.js");
211
- const info = detectGraphify();
211
+ const { detectCodegraph, runIndex, ingestGraph } = await import("../../utils/codegraph.js");
212
+ const { writeProposalsFile } = await import("../../utils/codegraph-knowledge.js");
213
+ const info = detectCodegraph();
212
214
  if (!info.available) {
213
- return failure("internal_error", "graphify is not available on PATH.");
215
+ return failure("internal_error", "codegraph is not available on PATH.");
214
216
  }
215
217
  const workspace = workspacePaths[0];
216
- const extraction = runExtraction(workspace);
217
- if (!extraction.success) {
218
- return failure("internal_error", `Extraction failed: ${extraction.error ?? "unknown error"}`);
218
+ const idx = runIndex(workspace);
219
+ if (!idx.success) {
220
+ return failure("internal_error", `Indexing failed: ${idx.error ?? "unknown error"}`);
219
221
  }
220
- const { proposals, stats } = ingestGraph(extraction.graphJsonPath, slug);
221
- let graphify;
222
+ const { proposals, stats } = ingestGraph(workspace, slug);
223
+ let codegraph;
222
224
  if (proposals.length > 0) {
223
- const { readFile } = await import("node:fs/promises");
224
- const graphJsonContent = await readFile(extraction.graphJsonPath, "utf-8");
225
- await writeProposalsFile(slug, proposals, graphJsonContent);
226
- graphify = {
225
+ // codegraph has no graph.json use the status object as a stable
226
+ // fingerprint source (node/edge counts change with the graph).
227
+ await writeProposalsFile(slug, proposals, JSON.stringify(idx.status));
228
+ codegraph = {
227
229
  proposed: proposals.length,
228
230
  pending_enrichment: true,
229
- hint: "Run `arcs proposal list <slug> --json` from a skill-aware host to enrich proposals into knowledge entries. Or run `arcs proposal list <slug>` to inspect.",
231
+ hint: "Run `arcs proposal list <slug> --json` from a skill-aware host to enrich codegraph proposals into knowledge entries. Or run `arcs proposal list <slug>` to inspect.",
230
232
  };
231
233
  }
232
234
  else {
233
- graphify = { proposed: 0 };
235
+ codegraph = { proposed: 0 };
234
236
  }
235
237
  return success({
236
238
  workspace,
237
- graphJsonPath: extraction.graphJsonPath,
239
+ status: idx.status,
238
240
  stats,
239
- graphify,
241
+ codegraph,
240
242
  });
241
243
  }
242
244
  //# sourceMappingURL=maintenance.js.map