@yunhozz/arc 0.2.2 → 0.2.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.
- package/MANIFEST.sha256 +107 -88
- package/README.md +4 -6
- package/claude/agents/arc-implementer.md +32 -42
- package/claude/agents/arc-planner.md +33 -47
- package/claude/agents/arc-qa.md +28 -44
- package/claude/agents/arc-reviewer.md +28 -41
- package/claude/agents/arc-scouter.md +26 -38
- package/claude/skill/SKILL.md +41 -59
- package/claude/skill/references/arc-visual-companion.md +28 -0
- package/claude/skill/references/commit.md +38 -70
- package/claude/skill/references/coordination.md +77 -126
- package/claude/skill/references/git-recovery.md +17 -35
- package/claude/skill/references/handoff-prep.md +91 -103
- package/claude/skill/references/handoff.md +110 -208
- package/claude/skill/references/limits.md +19 -31
- package/claude/skill/references/planning.md +93 -244
- package/claude/skill/references/verification.md +105 -261
- package/claude/skill/references/visual-companion.md +293 -15
- package/claude/skill/runtime/adapters/claude.mjs +10 -9
- package/claude/skill/runtime/adapters/codex.mjs +7 -8
- package/claude/skill/runtime/bootstrap.mjs +3 -2
- package/claude/skill/runtime/capabilities.mjs +12 -0
- package/claude/skill/runtime/cooperative-schema.mjs +3 -2
- package/claude/skill/runtime/cooperative.mjs +52 -4
- package/claude/skill/runtime/evaluate.mjs +115 -2
- package/claude/skill/runtime/identity.mjs +22 -0
- package/claude/skill/runtime/role-policy.json +18 -18
- package/claude/skill/runtime/schema.mjs +19 -0
- package/claude/skill/scripts/model_config.py +3 -79
- package/codex/agents/arc-implementer.toml +34 -30
- package/codex/agents/arc-planner.toml +27 -23
- package/codex/agents/arc-qa.toml +24 -15
- package/codex/agents/arc-reviewer.toml +25 -16
- package/codex/agents/arc-scouter.toml +20 -26
- package/codex/skill/SKILL.md +42 -57
- package/codex/skill/references/arc-visual-companion.md +33 -0
- package/codex/skill/references/commit.md +35 -81
- package/codex/skill/references/coordination.md +76 -104
- package/codex/skill/references/git-recovery.md +29 -51
- package/codex/skill/references/handoff-prep.md +76 -134
- package/codex/skill/references/handoff-worktree.md +32 -66
- package/codex/skill/references/handoff.md +111 -271
- package/codex/skill/references/limits.md +21 -34
- package/codex/skill/references/planning.md +125 -299
- package/codex/skill/references/verification.md +90 -272
- package/codex/skill/references/visual-companion.md +290 -18
- package/codex/skill/runtime/adapters/claude.mjs +10 -9
- package/codex/skill/runtime/adapters/codex.mjs +7 -8
- package/codex/skill/runtime/bootstrap.mjs +3 -2
- package/codex/skill/runtime/capabilities.mjs +12 -0
- package/codex/skill/runtime/cooperative-schema.mjs +3 -2
- package/codex/skill/runtime/cooperative.mjs +52 -4
- package/codex/skill/runtime/evaluate.mjs +115 -2
- package/codex/skill/runtime/identity.mjs +22 -0
- package/codex/skill/runtime/role-policy.json +18 -18
- package/codex/skill/runtime/schema.mjs +19 -0
- package/lib/installer/global-config.mjs +1 -0
- package/lib/installer/install.mjs +5 -7
- package/lib/installer/manifest.mjs +23 -8
- package/lib/installer/package-references.mjs +10 -5
- package/lib/installer/plan.mjs +1 -4
- package/lib/installer/superpowers.mjs +26 -1
- package/lib/installer/transaction.mjs +3 -3
- package/lib/installer/uninstall.mjs +2 -2
- package/lib/installer/upgrade.mjs +2 -9
- package/lib/management/operations.mjs +6 -8
- package/lib/management/update.mjs +3 -3
- package/lib/models/profiles.mjs +1 -40
- package/lib/policy/render.mjs +1 -5
- package/lib/policy/role-policy.json +18 -18
- package/lib/release/artifact.mjs +6 -4
- package/lib/runtime/adapters/claude.mjs +10 -9
- package/lib/runtime/adapters/codex.mjs +7 -8
- package/lib/runtime/bootstrap.mjs +3 -2
- package/lib/runtime/capabilities.mjs +12 -0
- package/lib/runtime/cooperative-schema.mjs +3 -2
- package/lib/runtime/cooperative.mjs +52 -4
- package/lib/runtime/evaluate.mjs +115 -2
- package/lib/runtime/identity.mjs +22 -0
- package/lib/runtime/schema.mjs +19 -0
- package/lib/tui/app.mjs +12 -8
- package/lib/tui/setup.mjs +5 -8
- package/package.json +11 -2
- package/scripts/update-manifest.mjs +7 -9
- package/claude/skill/hooks/git-policy.json +0 -208
- package/claude/skill/hooks/role-git-guard.mjs +0 -18
- package/claude/skill/hooks/runtime-gate.mjs +0 -12
- package/claude/skill/references/superpowers/brainstorming/visual-companion.md +0 -299
- package/codex/skill/hooks/runtime-gate.mjs +0 -10
- package/codex/skill/references/superpowers/brainstorming/visual-companion.md +0 -299
- package/lib/policy/claude-hook.mjs +0 -80
- package/scripts/probe-runtime-hooks.mjs +0 -55
- package/scripts/update-superpowers-local.sh +0 -4
- /package/claude/skill/references/{superpowers/brainstorming/SKILL.md → brainstorming.md} +0 -0
- /package/claude/skill/references/{superpowers/brainstorming/builder-check-prompt.md → builder-check-prompt.md} +0 -0
- /package/claude/skill/references/{superpowers/brainstorming/scripts → scripts}/frame-template.html +0 -0
- /package/claude/skill/references/{superpowers/brainstorming/scripts → scripts}/helper.js +0 -0
- /package/claude/skill/references/{superpowers/brainstorming/scripts → scripts}/server.cjs +0 -0
- /package/claude/skill/references/{superpowers/brainstorming/scripts → scripts}/start-server.sh +0 -0
- /package/claude/skill/references/{superpowers/brainstorming/scripts → scripts}/stop-server.sh +0 -0
- /package/claude/skill/references/{superpowers/LICENSE → superpowers-LICENSE} +0 -0
- /package/claude/skill/references/{superpowers/provenance.json → superpowers-provenance.json} +0 -0
- /package/claude/skill/references/{superpowers/test-driven-development/SKILL.md → test-driven-development.md} +0 -0
- /package/claude/skill/references/{superpowers/test-driven-development/writing-good-tests.md → writing-good-tests.md} +0 -0
- /package/claude/skill/references/{superpowers/writing-plans/SKILL.md → writing-plans.md} +0 -0
- /package/codex/skill/references/{superpowers/brainstorming/SKILL.md → brainstorming.md} +0 -0
- /package/codex/skill/references/{superpowers/brainstorming/builder-check-prompt.md → builder-check-prompt.md} +0 -0
- /package/codex/skill/references/{superpowers/brainstorming/scripts → scripts}/frame-template.html +0 -0
- /package/codex/skill/references/{superpowers/brainstorming/scripts → scripts}/helper.js +0 -0
- /package/codex/skill/references/{superpowers/brainstorming/scripts → scripts}/server.cjs +0 -0
- /package/codex/skill/references/{superpowers/brainstorming/scripts → scripts}/start-server.sh +0 -0
- /package/codex/skill/references/{superpowers/brainstorming/scripts → scripts}/stop-server.sh +0 -0
- /package/codex/skill/references/{superpowers/LICENSE → superpowers-LICENSE} +0 -0
- /package/codex/skill/references/{superpowers/provenance.json → superpowers-provenance.json} +0 -0
- /package/codex/skill/references/{superpowers/test-driven-development/SKILL.md → test-driven-development.md} +0 -0
- /package/codex/skill/references/{superpowers/test-driven-development/writing-good-tests.md → writing-good-tests.md} +0 -0
- /package/codex/skill/references/{superpowers/writing-plans/SKILL.md → writing-plans.md} +0 -0
|
@@ -1,308 +1,157 @@
|
|
|
1
|
+
<a id="planning-and-approval"></a>
|
|
1
2
|
# Planning and approval
|
|
2
3
|
|
|
4
|
+
<a id="authorization-and-scope"></a>
|
|
3
5
|
## Authorization and scope
|
|
4
6
|
|
|
5
|
-
An explicit execution request authorizes only
|
|
6
|
-
expected outcome, constraints, document depth, and verification risk, with no unresolved material behavior, method,
|
|
7
|
-
or risk decision requiring the user. That scope must come from the request or a description the user explicitly references. Record authorization evidence, scope, acceptance criteria, constraints, and depth in the brief or
|
|
8
|
-
canonical record. Orchestrator may record routine execution and check choices; added product behavior or material scope is not already approved. Restating or handing off the same scope, or restarting, requires no new approval.
|
|
7
|
+
An explicit execution request authorizes only sufficiently specified scope from that request or a description the user explicitly references. Confirm intent/outcome/constraints/document depth/verification risk and no unresolved material behavior/method/risk decision. Record approval evidence, scope, criteria, constraints and depth. Orchestrator may choose routine execution/check details, not unapproved product behavior/material scope. Restating/handoff/restart of unchanged scope needs no new approval.
|
|
9
8
|
|
|
10
|
-
Silence, ambiguous assent,
|
|
11
|
-
Planner's new material choices are not automatically approved. Ask for the missing material decision; roles route
|
|
12
|
-
questions to Orchestrator. Required written specs and plans still require their individual approval in the order below.
|
|
9
|
+
Silence, ambiguous assent, other-work approval and vague blanket improvements are insufficient. Planner's new material choices are not automatically approved. Request missing decisions through Orchestrator. Required specs/plans retain separate ordered approval.
|
|
13
10
|
|
|
14
|
-
Material scope
|
|
15
|
-
also hold affected work under [handoff](handoff.md) and [git-recovery](git-recovery.md). Distinguish new authorization
|
|
16
|
-
needs from execution issues within existing scope: ordinary corrections and reverification do not require duplicate
|
|
17
|
-
approval after failure. Revalidate affected gates after resolution.
|
|
11
|
+
Material scope/method/risk changes hold affected work with missing decision/evidence/remaining scope reported. Target change, unclear ownership, unexpected state, unresolved failure or missing inputs also hold under [handoff](handoff.md)/[recovery](git-recovery.md). Distinguish new authorization from existing-scope execution issues; routine correction/reverification needs no duplicate approval. Revalidate after resolution.
|
|
18
12
|
|
|
13
|
+
<a id="probe-scope"></a>
|
|
19
14
|
### Probe scope
|
|
20
15
|
|
|
21
|
-
|
|
22
|
-
or subsequent implementation. Record question, method/scope, criteria, and constraints; a sufficiently specific probe
|
|
23
|
-
request can supply that approval. Match checks to probe purpose/risk and do not report probe evidence as product proof.
|
|
16
|
+
Probe-only work ends with approved-question findings/evidence/limits/uncertainty, including well-supported infeasibility. It authorizes neither product retention nor subsequent implementation. Record question/method/scope/criteria/constraints; a specific request may approve them. Match checks to purpose/risk, not product-proof claims.
|
|
24
17
|
|
|
25
|
-
If the
|
|
26
|
-
the entire scope. When the entire scope meets the Bounded path criteria in Design path and plan depth, the probe is an
|
|
27
|
-
internal investigation with no new approval boundary at its report. Unknown implementation is not blanket authorization:
|
|
28
|
-
hold affected implementation if findings materially change scope, method, or risk, or leave a new material decision.
|
|
29
|
-
Reassess depth and obtain any required design/spec/plan approvals before that implementation. A probe-only request
|
|
30
|
-
remains separate.
|
|
18
|
+
If explicitly requested probe+implementation is fully specified, classify the whole scope. Under Bounded conditions, probing is internal with no new report-time approval boundary. Unknown implementation is not blanket authorization. Materially changed scope/method/risk or new decisions hold implementation for reassessment and required design/spec/plan approvals. Probe-only remains separate.
|
|
31
19
|
|
|
20
|
+
<a id="formal-drafting-boundary"></a>
|
|
32
21
|
## Formal drafting boundary
|
|
33
22
|
|
|
34
|
-
Initial design
|
|
35
|
-
and records the actual absolute workspace/repository, branch or detached HEAD, HEAD, changes and ownership,
|
|
36
|
-
explicit choice and preparation evidence, and absolute document paths inside that target. Planner drafts for that
|
|
37
|
-
verified workspace; Orchestrator saves directly in the selected target. Missing or mismatched evidence stops the
|
|
38
|
-
affected drafting or save and is reported to Orchestrator. Planned scope and paths do not prove actual preparation.
|
|
39
|
-
Initial target preparation does not authorize Implementer; the complete handoff gate still applies.
|
|
23
|
+
Initial design/brainstorming may precede target choice. Formal spec/plan includes complete pre-save drafts returned only in chat. Before that, Orchestrator records actual absolute workspace/repository, branch/detached HEAD/HEAD, changes/ownership, explicit choice/preparation and in-target absolute document paths. Planner drafts for verified target; Orchestrator saves there. Missing/mismatched evidence stops affected drafting/saving. Planned paths prove no actual preparation. Initial preparation never starts Implementer without full handoff.
|
|
40
24
|
|
|
41
|
-
|
|
42
|
-
[handoff](handoff.md#orchestrator-direct-path-for-small-tasks); follow it there and stop and reclassify if scope or risk changes.
|
|
43
|
-
Everything else follows this reference. Brainstorming and writing-plans are instructions for existing roles,
|
|
44
|
-
not extra agents; ARC routing and approval gates apply even if a skill names another executor.
|
|
45
|
-
Report a missing required skill before its stage; it blocks that stage. Integrate means save, route, and obtain approval; never author.
|
|
46
|
-
Significant risk is defined in [verification](verification.md#risk-scaled-execution).
|
|
47
|
-
|
|
48
|
-
When the request or brief is in Korean, Planner writes spec and plan titles and prose in Korean unless the user asks
|
|
49
|
-
otherwise, preserving identifiers, skill/API names, code, paths, commands, and literal values.
|
|
50
|
-
Orchestrator preserves that language when saving.
|
|
25
|
+
Small-task direct edits follow only [handoff](handoff.md#orchestrator-direct-path-for-small-tasks), stopping/reclassifying changed scope/risk. Otherwise follow this reference. `brainstorming`/`writing-plans` instruct existing roles, not extra agents; ARC routing/approval overrides alternate executors. Missing required skills block their stage. Integration means save/route/request approval, never author.
|
|
51
26
|
|
|
27
|
+
For Korean requests/briefs, Planner uses Korean titles/prose unless another language is requested, preserving identifiers, skill/API names, code, paths, commands and literals. Orchestrator preserves agreed language when saving.
|
|
52
28
|
|
|
29
|
+
<a id="planner-drafting-preparation-and-consolidated-feedback"></a>
|
|
53
30
|
## Planner drafting preparation and consolidated feedback
|
|
54
31
|
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
2. Maintain a compact ledger of original requirements/criteria IDs, approved and open decisions, exclusions and
|
|
63
|
-
scope deltas; merge intervening user changes into one next-brief delta. Distinguish user-approved decisions,
|
|
64
|
-
verified source facts with exact paths and lines, assumptions and open decisions.
|
|
65
|
-
|
|
66
|
-
3. Send one complete brief for the initial call of each stage, using coordination's shared fields and evidence-link
|
|
67
|
-
rules. Include the prepared workspace, branch or detached HEAD, HEAD and ownership; scope, exclusions, depth,
|
|
68
|
-
dependencies, shared contracts, acceptance criteria, required QA/focused checks, evidence and holds. Identify
|
|
69
|
-
preceding approved versions, document/output paths, current behavior and connected source, generated, runtime,
|
|
70
|
-
installer and documentation surfaces, policy conflicts and resolution direction, open decisions and the exact
|
|
71
|
-
stage deliverable. For visual work, include approved sources/versions, criteria and unresolved interpretations.
|
|
72
|
-
|
|
73
|
-
4. Planner returns a complete proportional draft and self-review. Orchestrator integrates, saves, reviews and
|
|
74
|
-
obtains approval; never authors missing content. Review the complete draft once with this fixed checklist:
|
|
75
|
-
scope and evidence; targets, ownership and paths; policy surfaces and conflicts; task boundaries, dependencies
|
|
76
|
-
and acceptance criteria; checks, evidence and holds; roles, approval and commit boundaries; draft completeness.
|
|
77
|
-
Finish the checklist before sending all substantive omissions in one consolidated follow-up request.
|
|
78
|
-
Identify each criterion, defect, evidence and expected correction. Follow coordination's changed-fields-only
|
|
79
|
-
and `unchanged` rules. Do not split requests by omission.
|
|
80
|
-
|
|
81
|
-
5. After that correction, additional Planner calls require user-approved material scope/evidence changes or
|
|
82
|
-
concrete unmet checklist items, plus meaningful new input or criterion-state progress. Identify changed input,
|
|
83
|
-
target criterion, expected artifact and expected progress. Distinguish approved scope changes from ordinary
|
|
84
|
-
omissions within existing scope; omissions require no renewed scope approval. If the same criterion remains
|
|
85
|
-
unmet without meaningful new input, evidence or progress, hold the stage and report the criterion, observed
|
|
86
|
-
evidence and exact unblock input or decision. Do not repeat resolved questions, reword the same request, or
|
|
87
|
-
count rewording or agent replacement as meaningful input or progress.
|
|
88
|
-
|
|
89
|
-
Initial design, required spec approval, and formal plan drafting/approval remain separate ordered stages;
|
|
90
|
-
written-spec approval precedes dependent plan drafting. No fixed call cap applies; never accept an incomplete draft
|
|
91
|
-
to reduce calls or add call-count conditions to Planner profiles.
|
|
32
|
+
Planner reports initial/revision progress only to Orchestrator: brief stage/feedback/blocker/next step, never body/excerpts/incremental drafts. Return complete draft/self-review. Raw responses may appear in app/tool surfaces; prompt policy cannot hide them. User updates stay brief/status-based without draft content. At approval present integrated/saved/reviewed Markdown without repeating its body in chat.
|
|
33
|
+
|
|
34
|
+
1. Preflight relevant policy/references/profiles/tests/parity/manifest/conflicts. Apply formal-target and coordination provenance/input/local-skill gates, including required paths, approved bounded read alternatives and return conditions. Missing inputs/conflicts hold drafting. Read recovery grants no preparation/check/write/approval authority.
|
|
35
|
+
2. Maintain a compact ledger of original requirements/IDs, approved/open decisions, exclusions and scope deltas. Consolidate intervening user changes into one brief delta. Separate approvals, path/line-verified facts, assumptions and open decisions.
|
|
36
|
+
3. Send one complete stage-specific initial brief: prepared target/HEAD/ownership, scope/exclusions/depth/dependencies/shared contracts/criteria/checks/evidence/holds; preceding approved versions, paths, current behavior and connected source/generated/runtime/installer/docs, policy conflicts/resolution direction and exact deliverable. Visual work includes approved sources/versions/criteria/open interpretations.
|
|
37
|
+
4. Planner returns complete proportional draft/self-review; Orchestrator integrates/saves/reviews/requests approval without authoring missing content. Review once with the fixed checklist: scope/evidence; targets/ownership/paths; policy/conflicts; task boundaries/dependencies/criteria; checks/evidence/holds; roles/approval/commit boundaries; completeness. Finish before one consolidated correction covering every substantive omission with criterion/defect/evidence/expected fix. Use deltas/`unchanged`; never split by omission.
|
|
38
|
+
5. Further calls after correction need approved material scope/evidence changes or concrete unmet checklist items plus meaningful new input/criterion progress. State changed input/target criterion/expected artifact/progress. Existing-scope omissions need no renewed scope approval. Repeated unmet criteria without new input/evidence/progress hold the stage; report criterion/observation/exact unblock decision. Do not repeat resolved questions or count rewording/agent replacement as progress.
|
|
92
39
|
|
|
40
|
+
Allow initial draft and one consolidated correction. Reformatting/re-expression/save/patch errors belong to Orchestrator, not Planner calls. Separate substantive work uses normal gates. Design/spec/plan stages remain separately ordered; spec approval precedes dependent planning. Add no fixed call cap/profile count condition or incomplete-draft acceptance.
|
|
41
|
+
|
|
42
|
+
<a id="design-and-planning"></a>
|
|
43
|
+
<a id="design-path-and-plan-depth"></a>
|
|
93
44
|
## Design path and plan depth
|
|
94
45
|
|
|
95
|
-
Record
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
Role gate); the direct path uses only a scope record.
|
|
103
|
-
2. Spike: apply Probe scope above; distinguish probe-only authorization from a sufficiently specified combined scope.
|
|
104
|
-
Bounded: approve a short design before Implementer or an Orchestrator direct edit (Planner's design before
|
|
105
|
-
Implementer; a direct edit uses only an approved scope record). Architectural: approve the design, then Planner returns a
|
|
106
|
-
complete spec draft and self-review; Orchestrator integrates, saves (user's path or
|
|
107
|
-
`docs/superpowers/specs/YYYY-MM-DD-<topic>-design.md`), self-reviews, and obtains written-spec approval before
|
|
108
|
-
implementation planning. Planner is read-only and cannot request approval.
|
|
109
|
-
3. After approved design/spec and before Implementer, Orchestrator assesses plan depth separately from file count, LOC,
|
|
110
|
-
or bounded scope. Architectural work always uses `writing-plans` and a written plan approval, regardless of locality,
|
|
111
|
-
risk, or size. For Bounded work skip the plan only for one local change with no dependent stages, cross-component
|
|
112
|
-
shared state, lifecycle or integration-order concerns, and one focused verification path; otherwise require a draft.
|
|
113
|
-
A "bounded" or "no plan" label does not bypass this judgment. "Orchestrator's recorded plan-depth judgment" means
|
|
114
|
-
this assessment, including any Bounded written spec requirement, recorded in the brief.
|
|
115
|
-
4. Record dependencies and any plan-depth rationale in the brief. Planner returns the complete proportional plan,
|
|
116
|
-
assumptions/open decisions, verification requirements, and self-review. Orchestrator integrates, saves to the user's
|
|
117
|
-
path or `docs/superpowers/plans/YYYY-MM-DD-<feature-name>.md`, self-reviews, and obtains plan approval before Implementer.
|
|
118
|
-
Planner cannot save, implement, or request approval.
|
|
119
|
-
5. Every Implementer first start and restart requires all applicable approvals and the Common handoff gate (SKILL.md,
|
|
120
|
-
handoff). Non-behavior configuration/documentation may skip inapplicable design/planning stages but not the gate.
|
|
121
|
-
|
|
122
|
-
When Orchestrator's recorded plan-depth judgment requires a Bounded written spec, record that and its scope,
|
|
123
|
-
use the approved short design as its basis, and have Planner return a proportional complete draft and self-review;
|
|
124
|
-
Orchestrator integrates, saves, self-reviews, and obtains individual written-spec approval before dependent plan
|
|
125
|
-
drafting. This applies that judgment, not a new spec rule. A required plan alone does not require a spec.
|
|
126
|
-
|
|
127
|
-
Design, spec, plan, and brainstorming drafts are authored only by Planner.
|
|
128
|
-
Orchestrator must not substitute its own spec for Planner's complete draft; return substantive omissions to Planner;
|
|
129
|
-
if Planner fails or is unavailable, stop and report, never draft instead. Design approval does not transfer ownership.
|
|
46
|
+
Record depth separately from risk. Risk controls checks/review, not design paths/plan approval. Bounded/omission is not low risk; Architectural adds no QA/Reviewer at every stage. Apply risk rules and specific obligations.
|
|
47
|
+
|
|
48
|
+
1. Before feature/design/behavior work, assign brief/evidence/local `brainstorming` to Planner. Planner proposes context/path/options/tradeoffs/criteria/assumptions/questions; Orchestrator selects path, integrates, announces scope, routes revisions and obtains approval. Never run drafting skills itself. Direct path uses scope record only.
|
|
49
|
+
2. Spike distinguishes probe-only from specific combined scope. Bounded approves short design before Implementer; direct edits use approved scope record. Architectural approves design, then complete Planner spec/self-review, Orchestrator save/review and written-spec approval before planning. Planner is read-only and requests no approval.
|
|
50
|
+
3. Assess plan depth after design/spec approval and before Implementer, separately from files/LOC/Bounded label. Architectural always uses `writing-plans` and written-plan approval regardless of size/locality/risk. Bounded skips only for one local change, no dependent stages/cross-component shared state/lifecycle/integration-order concerns and one verification path. Otherwise require a plan. Labels/no-plan requests do not bypass judgment, which also records Bounded spec necessity.
|
|
51
|
+
4. Record dependencies/depth reasons. Planner returns complete plan/assumptions/open decisions/checks/self-review. Orchestrator saves/reviews/obtains approval before Implementer at user path or `docs/superpowers/plans/YYYY-MM-DD-<feature-name>.md`. Default spec path is `docs/superpowers/specs/YYYY-MM-DD-<topic>-design.md`.
|
|
52
|
+
5. Every Implementer first start/restart needs applicable approvals/artifacts/brief/findings and full handoff. Non-behavior docs/config omit only inapplicable stages. Direct edits need approved scope record and same first-edit gates.
|
|
130
53
|
|
|
54
|
+
If Bounded requires written spec, record necessity/scope using approved short design as basis. Planner returns proportional full spec/self-review; Orchestrator saves/reviews/obtains individual approval before dependent plan/preparation. Short design approval never substitutes. This applies recorded judgment, not new spec necessity. Required plans alone imply no written spec.
|
|
55
|
+
|
|
56
|
+
Only Planner drafts. Never substitute Orchestrator-authored specs/plans. Return substantive omissions; unavailable/failed Planner stops work rather than transferring authorship. Design approval does not transfer ownership.
|
|
57
|
+
|
|
58
|
+
<a id="top-level-plan-tasks"></a>
|
|
131
59
|
## Top-level plan tasks
|
|
132
60
|
|
|
133
|
-
|
|
134
|
-
acceptance criteria, required QA/focused checks and evidence before acceptance, and hold conditions.
|
|
135
|
-
Each task must be independently implementable, verifiable, and acceptable; changes that cannot be verified independently
|
|
136
|
-
(policy, profile, tests, manifest sharing one contract) belong in one task. Never merge approved tasks into one commit
|
|
137
|
-
during execution; if inseparability appears, stop and have Orchestrator revise scope and approvals.
|
|
61
|
+
Apply Planner rules: ID/title, goal/scope/files, predecessors/dependencies, criteria, required pre-acceptance QA/checks/evidence and holds. Tasks must be independently implementable/verifiable/acceptable. Inseparable policy/profile/tests/manifest contracts start in one task. If inseparability appears later, stop for revised scope/planning/approvals; never merge distinct approved tasks during execution.
|
|
138
62
|
|
|
139
|
-
Substeps
|
|
140
|
-
Orchestrator acceptance. Never list Reviewer as a per-task check. State final plan QA/integration verification
|
|
141
|
-
separately with scope and timing; for significant work it lists the single independent Reviewer of the final full change
|
|
142
|
-
after all tasks are accepted. Task boundaries add no QA gates; keep risk requirements, risky-dependency QA,
|
|
143
|
-
and approved obligations. No-change, hold, and resume follow [commit](commit.md).
|
|
63
|
+
Substeps/checkboxes/RED-GREEN/commands are not commits. One top-level task becomes one focused commit after acceptance; [commit](commit.md) governs no-change/hold/resume. Reviewer is never a per-task check. Final whole verification has separate scope/timing; significant work lists one Reviewer after all task acceptances/risk checks. Task boundaries alone add no QA. Apply only to required plans; omission paths gain no plan obligation.
|
|
144
64
|
|
|
65
|
+
<a id="dependency-and-readiness-record"></a>
|
|
145
66
|
## Dependency and readiness record
|
|
146
67
|
|
|
147
|
-
After
|
|
148
|
-
accessible canonical handoff record, linked to the approved plan version. For each task record explicit and implicit
|
|
149
|
-
predecessors, required inputs, outputs and shared contracts, owned files, conflicting shared resources, required
|
|
150
|
-
checks/QA path, ready/held status and reasons. Record the initial ready batch and capacity/serialization reasons.
|
|
151
|
-
Analyze shared APIs, contracts, generated artifacts and resources even when tasks edit different files. Unresolved
|
|
152
|
-
shared contracts or insufficient dependency information block the affected tasks; same-file concurrent Implementer edits
|
|
153
|
-
are blocked even for different lines. Do not infer independence from file separation or plan listing order.
|
|
154
|
-
|
|
155
|
-
A task is ready only when all applicable approvals and execution preparation are complete, required inputs/contracts
|
|
156
|
-
are available and settled, predecessors have required evidence and Orchestrator acceptance plus verified focused
|
|
157
|
-
commits (or accepted no-change records), ownership/resources do not conflict, its required check/QA path is available,
|
|
158
|
-
and a subagent slot exists under both the configured ARC full-tree cap shared by all roles and any lower actual runtime
|
|
159
|
-
limit (see [limits](limits.md)). Report runtime limits; ARC's cap is not a claim of runtime capability. Start all ready
|
|
160
|
-
independent tasks with fresh Implementers concurrently within capacity; record each hold or serialization reason instead of
|
|
161
|
-
silently following list order. Preserve existing risk gates, risk-scaled QA/Reviewer timing and execution-target
|
|
162
|
-
restrictions.
|
|
163
|
-
|
|
164
|
-
Update the map on completion, check evidence, acceptance, commit, slot return and new conflicts. Completion reports
|
|
165
|
-
alone do not release dependents. Reevaluate newly ready tasks immediately without waiting for unrelated batch members;
|
|
166
|
-
failed or ambiguous predecessors hold their dependent chain, while unaffected ready tasks may proceed. Dispatch still
|
|
167
|
-
passes [handoff](handoff.md) for each task, refreshing assignment evidence there; commits, shared-checkout Git
|
|
168
|
-
coordination and shared Git mutations follow [commit](commit.md). This record does not authorize
|
|
169
|
-
Orchestrator to rewrite Planner's approved task boundaries or waive approvals.
|
|
170
|
-
|
|
171
|
-
For example, with A → B → C and independent D and two slots, start A and D. After A's required checks,
|
|
172
|
-
Orchestrator acceptance and verified commit, start B while D continues if capacity and gates allow.
|
|
173
|
-
If A fails, hold B and C; D may continue if unaffected.
|
|
68
|
+
After approval and before first assignment, canonically link every task ID to plan version. Record explicit/implicit predecessors, inputs/outputs/shared contracts, files/conflicting resources, check/QA paths, ready/held/reasons, initial ready batch and capacity/serialization reasons. Analyze shared APIs/contracts/generated artifacts/resources even across files. Unsettled contracts/incomplete dependencies block affected tasks; same-file concurrent Implementers are forbidden even on different lines. File separation/list order proves no independence.
|
|
174
69
|
|
|
175
|
-
|
|
70
|
+
Ready requires approvals/preparation, settled inputs/contracts, predecessor checks/Orchestrator acceptance/verified commits or accepted no-change, nonconflicting ownership/resources, available checks/QA and slots under both full-tree ARC and lower actual runtime limits. Read [limits](limits.md); report runtime constraints without claiming capability. Start ready independent tasks concurrently with fresh Implementers within capacity. Record holds/serialization rather than silently following order. Preserve risk/QA/Reviewer/target gates.
|
|
176
71
|
|
|
177
|
-
|
|
178
|
-
record accessible evidence in the brief or handoff record. Saving creates a reviewable file and does not require
|
|
179
|
-
written-spec approval; it requires valid execution-target choice and actual preparation; it is not approval or a commit, and an uncommitted file is never
|
|
180
|
-
described as committed.
|
|
72
|
+
Update on reports/checks/acceptance/commit/slot return/conflicts. Completion alone releases no dependent. Immediately reassess newly ready tasks without waiting for unrelated batches. Failed/uncertain predecessors hold only their chains. Refresh handoff each dispatch; shared Git follows commit rules. This map cannot rewrite approved boundaries or waive approval.
|
|
181
73
|
|
|
182
|
-
|
|
183
|
-
Orchestrator's integration/save/review responsibility, and the absolute save path.
|
|
184
|
-
For a Bounded spec also verify the depth judgment, approved short design, and necessity rationale.
|
|
185
|
-
Saving or approving the short design does not replace the spec's drafting, self-review, or individual approval.
|
|
74
|
+
Example: with A → B → C, independent D and two slots, start A/D. After A's checks/acceptance/verified commit, B may start while D continues. A failure holds B/C, not unaffected D.
|
|
186
75
|
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
and the absolute save path.
|
|
76
|
+
<a id="document-save-evidence-gates"></a>
|
|
77
|
+
## Document-save evidence gates
|
|
190
78
|
|
|
191
|
-
|
|
79
|
+
Before first Architectural spec, required Bounded spec or plan save, read this and record accessible brief/canonical evidence. Saving creates reviewable files, not approval/commits.
|
|
192
80
|
|
|
193
|
-
|
|
81
|
+
| Save | Required evidence |
|
|
82
|
+
|---|---|
|
|
83
|
+
| Spec | Approved design scope/evidence, complete Planner draft/self-review, Orchestrator integration/save/review ownership and absolute path. Required Bounded specs also need depth judgment, short design, necessity/scope |
|
|
84
|
+
| Plan | Approved design and required approved spec/version/evidence, depth judgment, plan list/dependencies, complete Planner draft/self-review, ownership and absolute path |
|
|
194
85
|
|
|
195
|
-
|
|
196
|
-
Record scope, depth, absolute paths and coverage, approved versions, dependencies and order, skipped stages with
|
|
197
|
-
rationale, and documents awaiting writing or approval. The set is complete only when every required document is written
|
|
198
|
-
and individually approved and no unresolved decision needs another document.
|
|
86
|
+
Saving for review does not require prior written-spec approval, but does require valid target choice/actual preparation. Individually approved specs enter the document set before dependent planning. Never call uncommitted files committed. Missing/mismatched evidence stops the affected save.
|
|
199
87
|
|
|
200
|
-
|
|
201
|
-
|
|
88
|
+
<a id="complete-planning-document-set"></a>
|
|
89
|
+
## Complete planning-document set
|
|
202
90
|
|
|
203
|
-
|
|
91
|
+
Include all current-scope required specs/plans, excluding future projects. Record scope/depth/absolute paths/coverage/versions/status/dependencies/order/omissions/reasons/pending drafting and approvals. Complete means every required document written/individually approved and no unresolved decision requiring another document. Omit no required artifact.
|
|
204
92
|
|
|
205
|
-
|
|
206
|
-
formal spec drafting (when required), saving and self-review → written-spec approval → formal plan drafting
|
|
207
|
-
(when required), saving and self-review → individual plan approvals → complete applicable set → existing-commit
|
|
208
|
-
verification and one batch docs commit of remaining approved documents → final Git verification → Implementer handoff.
|
|
209
|
-
Written-spec approval precedes dependent plan drafting. On document-omission paths skip only the inapplicable document
|
|
210
|
-
steps; preserve target choice, preparation, state/ownership checks and Implementer gates.
|
|
93
|
+
A required plan implies no spec. Bounded follows recorded judgment; spec stages cover Architectural/required Bounded only, plan stages required plans only. Add no spec duty to Spike/plan-skip/non-behavior paths.
|
|
211
94
|
|
|
212
|
-
|
|
213
|
-
Select and initially prepare the target before formal drafting. Document completion gates staging/commit, not initial preparation. An incomplete set or missing applicable approval blocks document commit and Implementer, but not the initial choice request. No early Implementer work is authorized by approval of only some documents.
|
|
95
|
+
Order: initial design approval → explicit target → actual preparation/verification → required spec drafting/save/self-review/individual approval → required plans drafting/save/review/individual approval → full set → verify existing commits/batch remaining approvals → final Git → Implementer. Omission skips only inapplicable documents with rationale. Complete documents precede staging/commit/handoff, not initial preparation/choice request. Partial approvals authorize no early implementation.
|
|
214
96
|
|
|
215
|
-
|
|
216
|
-
approval without committing, then write and approve all plans; commit the spec only in the final batch.
|
|
217
|
-
`writing-plans` commit steps do not permit document commits during planning or start Implementer.
|
|
218
|
-
Do not modify external skills.
|
|
97
|
+
Defer local `brainstorming`'s early spec commit: save/self-review/approve uncommitted spec, approve all plans, then final batch. Modify no external skill. `writing-plans` implementation commits grant neither planning-document commits nor early Implementer.
|
|
219
98
|
|
|
220
|
-
| Path |
|
|
99
|
+
| Path | Approval/preparation |
|
|
221
100
|
|---|---|
|
|
222
|
-
| Spike
|
|
223
|
-
| Bounded, plan skipped | Approve
|
|
224
|
-
| Bounded, plan required | Approve
|
|
225
|
-
| Architectural |
|
|
226
|
-
| Non-behavior
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
These gates add no new spec obligation for Spike, Bounded plan-skip, or non-behavior documentation/configuration paths.
|
|
230
|
-
Document omission skips only document obligations, never target choice, Git/ownership checks,
|
|
231
|
-
or handoff evidence. New scope found in planning requires reassessing the list and additional approvals before dependent drafting or commit; revised approved document bodies need renewed approval except mechanical execution records defined below. New scope found during implementation stops dependent
|
|
232
|
-
execution (a running Implementer stops before edits dependent on new plans) until its documents, approvals,
|
|
233
|
-
and preparation are complete. Then reflect the approved plan version in its original planning-document commit under the update contract below; never retroactively authorize work before actual approval.
|
|
101
|
+
| Spike | Approve question/method/scope/criteria/constraints; no forced unknown-implementation docs. Implementer probes require handoff; read-only Orchestrator/Planner probes without Implementer do not trigger it |
|
|
102
|
+
| Bounded, plan skipped | Approve short design; record omission conditions. Complete approvals, target choice, actual docs or valid absence, then handoff |
|
|
103
|
+
| Bounded, plan required | Approve design/all required plans; approve necessary specs before dependent planning. Prepare target before drafting, complete set before batch/handoff |
|
|
104
|
+
| Architectural | Design → written spec → all `writing-plans` plans. Target before drafting; full set before batch/final checks/handoff |
|
|
105
|
+
| Non-behavior docs/config | Record scope/criteria/inapplicability. Preserve target/Git/docs-or-absence/handoff |
|
|
106
|
+
|
|
107
|
+
New planning scope requires list/depth/dependency reassessment and approvals before dependent drafting/commit. Approved-body changes need revised approval except mechanical records below. New implementation scope holds execution until docs/approvals/preparation complete. Running Implementer stops before newly dependent edits; inspect actual changes/Git without retrospective preparation claims. Reflect approved versions through original-commit updates below. Unchanged-document restarts follow handoff lifetime.
|
|
234
108
|
|
|
109
|
+
<a id="plan-updates-during-execution"></a>
|
|
235
110
|
## Plan updates during execution
|
|
236
111
|
|
|
237
|
-
Mechanical
|
|
238
|
-
links and task completion state that preserve the approved execution contract. Record their classification, reason and actual recording time in the canonical handoff record. Required checks' removal, invented success, unsupported acceptance
|
|
239
|
-
or scope changes mixed with a completion mark are not mechanical records.
|
|
112
|
+
Mechanical checkboxes/results/evidence/completion preserving the approved contract need no new approval; record classification/reason/actual time. Removing checks, invented success, unsupported acceptance or mixed scope changes are not mechanical.
|
|
240
113
|
|
|
241
|
-
|
|
242
|
-
require revised-version approval before affected work. Hold affected execution, obtain necessary design/spec/plan approvals
|
|
243
|
-
in order, and complete target, ownership, checks and handoff preparation before resuming. Other approved body corrections
|
|
244
|
-
follow the document-version approval rules; classify typos, paths, commands and explanations by their semantic effect.
|
|
114
|
+
Goal/task boundary/scope/criteria/method/risk/dependency/check changes require revised approval before affected work. Hold, obtain ordered design/spec/plan approvals and prepare target/ownership/checks/handoff. Other body corrections follow version approval; classify typos/paths/commands/explanations by semantic effect.
|
|
245
115
|
|
|
246
|
-
Both
|
|
247
|
-
Make no separate document commit or fixup commit, including for newly approved scope. Preserve implementation task commits.
|
|
248
|
-
This history update does not backdate approval: the latest plan in the original commit does not prove its contents were approved from the outset. Never use rewritten history to justify work started before approval.
|
|
116
|
+
Both kinds amend the original planning commit at safe boundaries, never separate docs/fixup commits, including new scope. Preserve implementation commits. Rewriting does not backdate approval; latest content in an old commit proves no earlier authorization.
|
|
249
117
|
|
|
250
|
-
|
|
251
|
-
revised approval references and actual times; change reason and classification; affected tasks and hold/preparation/resume
|
|
252
|
-
evidence. For mechanical records explain why no new approval is needed and record the time. Preserve recoverable document
|
|
253
|
-
contents, not hashes alone, and each old-to-new SHA mapping for the original document commit and descendant task commits.
|
|
254
|
-
Do not overwrite earlier approval references or the contents they approved.
|
|
118
|
+
Preserve absolute/Git plan paths, old/new hashes/versions, prior/revised approval refs/actual times, reason/classification, affected tasks and hold/preparation/resume evidence. Mechanical records state why no approval/time. Keep recoverable contents, not hashes only, and old→new mappings for original/descendant commits. Never overwrite old approvals/content.
|
|
255
119
|
|
|
256
|
-
Orchestrator alone
|
|
257
|
-
[commit](commit.md#execution-time-plan-document-updates). Shared/published or unknown history, merges, unclear ownership,
|
|
258
|
-
unexpected HEAD/dirty state and replay conflicts stop affected work. No force push or fallback document commit.
|
|
259
|
-
After rewriting, connect evidence to the new state under [verification](verification.md#evidence-after-plan-history-rewrite).
|
|
260
|
-
This contract adds no Git automation, runtime enforcement, authority or exemption from required checks/QA/Reviewer gates.
|
|
120
|
+
Orchestrator alone rewrites under [preparation](handoff-prep.md#execution-time-plan-amendment)/[commit](commit.md#execution-time-plan-document-updates). Shared/published/unknown history, merges, unclear ownership, unexpected HEAD/dirty state/replay conflicts stop work. No force push/fallback docs commit. Reconnect evidence under [verification](verification.md#evidence-after-plan-history-rewrite). Add no Git automation/runtime enforcement/authority/check exemptions.
|
|
261
121
|
|
|
122
|
+
<a id="evidence-refresh-and-limits"></a>
|
|
262
123
|
## Evidence refresh and limits
|
|
263
124
|
|
|
264
|
-
Missing
|
|
265
|
-
target request, Git mutation, or Implementer handoff; Orchestrator resolves it and reverifies.
|
|
266
|
-
Reverify when scope, approved versions, paths, target, or Git state changes. Never treat an early save or commit as
|
|
267
|
-
satisfying a gate or as approval; record the actual order and gaps. Structural checks prove only the written policy,
|
|
268
|
-
not agent runtime compliance; without execution records for role returns, approvals, saves, and Git actions,
|
|
269
|
-
leave runtime compliance unverified. Administrative status updates must accurately describe actual progress.
|
|
270
|
-
Return scope changes and unresolved decisions to the user through Orchestrator.
|
|
125
|
+
Missing/mismatched evidence, unfinished approvals, unclear ownership or unresolved failures block affected save/choice request/Git mutation/handoff. Resolve/reverify before resume and on changed scope/version/path/target/Git state. Preserve unrelated changes; read-only investigation remains allowed.
|
|
271
126
|
|
|
272
|
-
|
|
127
|
+
Never retroactively call early saves/commits compliant or approved. Record actual order/gaps. Structure proves authored contracts only; absent role/approval/save/Git execution records leave runtime compliance unverified. Add no runtime infrastructure or external-skill changes for checks. Only the narrow cooperative exception below applies.
|
|
273
128
|
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
skill. Missing files stop the stage; report paths without global fallback. Keep ARC approval and ownership gates.
|
|
129
|
+
<a id="local-planning-references"></a>
|
|
130
|
+
## Local planning references
|
|
277
131
|
|
|
132
|
+
Brief absolute installed `references/brainstorming.md`/`references/writing-plans.md`. Planner reads directly, resolving relatives from installed `references/`. Missing paths stop the stage without global fallback. Preserve ARC approval/ownership.
|
|
278
133
|
|
|
279
|
-
|
|
134
|
+
<a id="instruction-and-input-provenance"></a>
|
|
135
|
+
## Instruction and input provenance
|
|
280
136
|
|
|
281
|
-
|
|
137
|
+
Supply exact skill/reference paths/access state. Separate user instructions/discovered files, approved versions/open questions. Visual criteria link approved source/version/access/IDs/method. Missing inputs/unapproved interpretation hold dependent drafting. Optional alternatives follow [handoff](handoff.md#instruction-sources-bounded-read-recovery-visual-evidence-and-resumption). Planner stays draft-only in recovery.
|
|
282
138
|
|
|
283
139
|
[ARC role policy: contract begin]
|
|
284
140
|
Generated from lib/policy/role-policy.json; do not edit this managed section manually.
|
|
285
|
-
- [git.orchestrator-accept-commit] Only Orchestrator accepts work and
|
|
286
|
-
- [review.significant-no-plan]
|
|
287
|
-
- [review.significant-plan]
|
|
288
|
-
- [review.final-plan-recheck]
|
|
289
|
-
- [planning.plan-amend]
|
|
290
|
-
- [planning.planner-brief] Follow planning.md's Planner drafting preparation and consolidated feedback procedure, including preflight, ledger, evidence classification, target preparation, preceding approvals, provenance and reference gates. Send one complete stage-specific initial brief. Planner returns a complete proportional draft and self-review
|
|
291
|
-
- [platform.claude] Existing per-role tool allowlists reduce available tools; Bash and role contracts are not a filesystem sandbox.
|
|
141
|
+
- [git.orchestrator-accept-commit] Only Orchestrator accepts work and performs Git mutations. One approved top-level plan task becomes one focused implementation commit after criteria, required checks and findings are satisfied. Orchestrator accepts, then commits without separate user commit approval. Reports, passing checks and Reviewer opinions do not replace acceptance. Preserve unrelated changes and ownership; verify the resulting SHA, content, HEAD and remaining changes. Existing small-task direct and plan-omission paths remain unchanged.
|
|
142
|
+
- [review.significant-no-plan] Significant/high-risk work without a plan follows Implementer → QA and required QA rechecks → Reviewer of the final full change → Orchestrator acceptance. Do not omit Reviewer because no plan exists. This adds no plan obligation.
|
|
143
|
+
- [review.significant-plan] Significant/high-risk plan work follows Implementer → required fresh QA → Orchestrator acceptance and focused commit for each task. After all tasks are accepted and required QA is complete, Reviewer reviews the final full change once. Reviewer is not a per-task or per-commit gate. Preserve required checks and necessary finding rechecks.
|
|
144
|
+
- [review.final-plan-recheck] Final overall Reviewer findings on plan work, including behavior findings, follow Implementer → Reviewer without QA reassignment until resolved. This exception applies only at the final plan stage. Preserve required QA and QA failure rechecks before the initial final review and outside this exception.
|
|
145
|
+
- [planning.plan-amend] Mechanical plan progress records during approved execution need no new user approval. Changes to goals, scope, criteria, method, risk, dependencies or required verification need revised-version approval and preparation before affected work. In both cases Orchestrator amends the original planning-document commit at a safe boundary, with no separate document or fixup commit. Preserve actual approval chronology, recoverable old/new content, hashes, versions and SHA mappings; never authorize past work retroactively. Rewrite only unpublished, unshared local linear history with clear ownership and no merges. Unknown publication/ownership, unexpected state or replay conflicts stop rewriting; no force push or fallback document commit. Preserve implementation task boundaries and revalidate affected evidence. Follow planning, handoff-prep, commit and verification for the full contract.
|
|
146
|
+
- [planning.planner-brief] Follow planning.md's Planner drafting preparation and consolidated feedback procedure, including preflight, ledger, evidence classification, target preparation, preceding approvals, provenance and reference gates. Allow the initial draft and one consolidated correction. Send one complete stage-specific initial brief. Planner returns a complete proportional draft and self-review. Orchestrator reviews once with the fixed checklist and sends one consolidated correction using changed fields only. Further calls require user-approved material scope/evidence changes or concrete unmet checklist items after correction, plus meaningful new input or criterion-state progress. State changed input, target criterion, expected artifact and expected progress. Hold repeated unmet criteria without new input, evidence or progress; report the criterion, observed evidence and exact unblock input/decision. Do not split omissions, repeat resolved items or count rewording/agent replacement as progress. Do not invoke Planner only for reformatting, re-expression, save errors or patch-application errors; Orchestrator handles these. Evaluate separate substantive work under the normal Planner gate. Preserve separate sequential design/spec/plan approvals. Add no fixed call cap or profile call-count conditions, and never accept an incomplete draft. Keep user progress brief and based on Planner status without relaying draft content. At approval, present the integrated, saved and reviewed Markdown without repeating its body in chat.
|
|
147
|
+
- [platform.claude] Existing per-role tool allowlists reduce available tools; Bash and role contracts are not a filesystem sandbox. ARC supplies no native observer hook or Bash Git guard; Git restrictions remain prompt-level role contracts.
|
|
292
148
|
[ARC role policy: contract end]
|
|
293
149
|
|
|
150
|
+
<a id="approved-cooperative-execution-path-within-the-repository"></a>
|
|
294
151
|
## Approved cooperative execution path within the repository
|
|
295
152
|
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
An entry update does not migrate existing state or renew approvals; runtime/target drift still requires current evidence.
|
|
302
|
-
Its scope is decisions and records within the repository's cooperative path. It adds no authority to install native hooks/providers/installers or block direct tool calls.
|
|
303
|
-
`no-plan`/omission is unsupported by this CLI, and this boundary remains in Phases 2 and 3. This does not imply an omission policy violation or a new obligation to write documents.
|
|
304
|
-
|
|
305
|
-
Orchestrator records the SHA-256 values of the user-approved spec and plan, their shared docs-only commit, document version and approval version.
|
|
306
|
-
The CLI verifies the exact changed paths in actual Git objects and the current document bytes before persisting an assignment intent.
|
|
307
|
-
A new workflow or late document commit cannot prove earlier execution was compliant. Earlier agent history and execution outside this path remain unverified.
|
|
308
|
-
Approval attestations and native returns are `operator-attested`; an agent ID is not an authenticated identity.
|
|
153
|
+
Installed workflow connects plan-mode document commits to initial Implementer assignment. Resolve `<target-home>/skills/arc/runtime/cli.mjs` from the actual loaded skill selected by the installer, including custom homes. Pass path/options as separate `node` arguments. Shell uses safely assigned/quoted `node "$ARC_RUNTIME_ENTRY" <command> --cwd "$ARC_CHECKOUT" --workflow "$ARC_WORKFLOW_ID" --input -`. Follow [handoff](handoff.md) invocation/continuity.
|
|
154
|
+
|
|
155
|
+
Entry updates migrate no state/renew no approvals; drift requires current evidence. Scope is repository cooperative decisions/records, not native hook/provider/installer installation or blocking direct tools. `no-plan`/omission stays unsupported through Phases 2/3, implying neither policy violation nor new document duty.
|
|
156
|
+
|
|
157
|
+
Record approved spec/plan SHA-256, shared docs-only commit and document/approval versions. CLI verifies exact Git-object paths/current bytes before assignment intent. New workflows/late commits prove no past compliance. Prior history/outside execution stays unverified. Approval/native results are `operator-attested`; agent IDs are not authenticated identity.
|