@alphazede/bearing-lite 0.1.0 → 0.1.8

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 (34) hide show
  1. package/README.md +97 -67
  2. package/hooks/activation.cjs +2 -1
  3. package/hooks/com.anthropic.claude-code/host.cjs +437 -0
  4. package/hooks/com.anthropic.claude-code/mapping.md +69 -0
  5. package/hooks/com.cursor/hooks.json +15 -0
  6. package/hooks/hooks.json +35 -0
  7. package/package.json +7 -4
  8. package/plugin.json +34 -2
  9. package/skills/bearing-lite/SKILL.md +43 -36
  10. package/skills/bearing-lite/agents/openai.yaml +7 -0
  11. package/skills/bearing-lite/references/peer-synthesis.md +19 -0
  12. package/skills/bearing-lite/references/role-routing.mmd +19 -32
  13. package/skills/bearing-lite/references/task-state.md +19 -1
  14. package/skills/bearing-lite/references/task-state.mmd +1 -1
  15. package/skills/bearing-lite/templates/default-role-lineup.md +24 -0
  16. package/skills/bearing-lite/templates/task.md +56 -0
  17. package/skills/crewmate/SKILL.md +42 -30
  18. package/skills/explorer/SKILL.md +50 -31
  19. package/skills/gather-supplies/SKILL.md +46 -26
  20. package/skills/map-the-route/SKILL.md +39 -26
  21. package/skills/map-the-route/references/artifact-grammar.md +10 -10
  22. package/skills/navigator/SKILL.md +51 -37
  23. package/skills/park-ranger/SKILL.md +29 -24
  24. package/skills/repository-fit/SKILL.md +26 -19
  25. package/skills/set-bearings/SKILL.md +25 -19
  26. package/skills/surveyor/SKILL.md +26 -24
  27. package/skills/validator/SKILL.md +28 -27
  28. package/guide/migration.md +0 -168
  29. package/skills/bearing-lite/assets/role-routing.png +0 -0
  30. package/skills/bearing-lite/assets/task-state.png +0 -0
  31. package/skills/delegate-authority/SKILL.md +0 -38
  32. package/skills/sub-explorer/SKILL.md +0 -37
  33. package/skills/trail-boss/SKILL.md +0 -38
  34. package/skills/trail-boss/agents/openai.yaml +0 -4
@@ -1,40 +1,47 @@
1
1
  ---
2
2
  name: bearing-lite
3
- description: >
4
- Bearing Lite router for entry, resume, or unclear next action on repository
5
- work. Locates the project plan, next ready task, dependency state, risk, and
6
- smallest valid route among planning stages and roles. Activate for bearing
7
- lite, start/resume bearing, route the next task, or choose the minimum role
8
- path. Do not use for model or provider selection, package publication, deep
9
- harness control-room work, or a single already-assigned role packet.
3
+ description: Bearing Lite Router for Journeys. Not for ordinary work, assigned packets, implementation, or publication.
10
4
  ---
11
5
 
12
- # Bearing Lite Router
13
-
14
- Plugin entry skill. Not a work role. Owner Authority remains human-only.
15
-
16
- ## Inputs
17
-
18
- Plan path, next ready task, dependencies, risk, and available native capabilities.
19
-
20
- ## Select the smallest route
21
-
22
- 1. Identify the project plan and next ready task. Missing plan fields stay `PROPOSED`.
23
- 2. Invoke only missing planning stages: `repository-fit`, `set-bearings`, `gather-supplies`, `map-the-route`. Reuse valid evidence; do not replay completed stages.
24
- 3. Choose the least costly role route that preserves dependencies and assurance:
25
- - **Direct:** Crewmate author self-check plus coordinator confirmation when `required_assurance` is `none`; otherwise the declared assurance roles. Add Park Ranger only when required or owner-selected. Validator and Park Ranger appear only when declared, owner-selected, or at a mandatory integrated phase gate.
26
- - **Single wave:** Explorer → Crewmate packets with the same assurance rule → Surveyor when multi-packet or owner acceptance requires it. Never automatic Validator per packet.
27
- - **Expedition:** Navigator → Trail Boss only for concurrent/conflicting waves → Explorer lanes → optional Sub-explorer Crewmates, with assurance only where `required_assurance`, owner selection, or a mandatory phase gate requires it.
28
- - **Long multi-phase:** Delegate Authority only when the owner explicitly delegates across sessions or Navigator replacement.
29
- 4. Leave dormant roles unselected. No placeholder, receipt, or hidden state.
30
- 5. Report honest hook coverage: full, partial, or skills-only procedural checks.
31
-
32
- ## Never
33
-
34
- - Select models, providers, credentials, launchers, or tool routes.
35
- - Create, import, or interpret `.bearing` state, MCP, CLI, or a scheduler.
36
- - Expand owner authority, publish, or self-certify as Validator, Park Ranger, or Surveyor.
37
-
38
- ## State and task record
39
-
40
- Task status lives only in the project plan. See `references/task-state.md` and `templates/task.md`. Orientation diagrams may load later under `references/` and `assets/`; text remains authoritative.
6
+ The Router alone writes Journey planning state and owns owner conversation;
7
+ planning nodes return owner questions. No second start confirmation, `.bearing`,
8
+ or hidden ledger. plugin hosts are partial; skill-copy is skills-only.
9
+
10
+ 1. Say `Preparing this Journey.` Inventory visible nonterminal Journeys; acquire or
11
+ resume a generation-bound checkout lease before any planning write or dispatch.
12
+ A live same-checkout competitor returns `WAITING_ON` with sanitized competing identity;
13
+ Distinct explicitly approved compatible worktrees may proceed.
14
+ 2. New Journey: recommend Explorer Journey or Expedition with reason; say when
15
+ the other fits. Ask exactly: `What Journey shall
16
+ we Embark on—an Explorer Journey or an Expedition?`
17
+ 3. On resume, keep the same lease generation and next incomplete stage. Parent-proven
18
+ same-Journey progress refreshes `candidate_revision` on that generation.
19
+ Never replay accepted stages or duplicate a dispatch.
20
+ 4. If `~/.agents/bearing-lite/default-role-lineup.md` is absent, create a
21
+ proposed copy from `templates/default-role-lineup.md`; confirm one role at a
22
+ time. Never infer identity values.
23
+ 5. Run one missing stage in order: Repository Fit Set Bearings → Gather
24
+ Supplies. The Router holds every owner conversation inline; Gather Supplies
25
+ is a Router-led interview, never dispatched. Dispatch a fresh session only
26
+ for bounded mechanical legwork (mapping, drafting) after stage intent is
27
+ clear, on a cheaper lower-reasoning model than the Router; integrate returns.
28
+ 6. Before Map the Route, display each role's primary/fallback, model, reasoning,
29
+ and active/standby/unused state. Ask `Is this a
30
+ good lineup for the roles on this Journey?`; never choose. Recommend cadence
31
+ with a reason plus one cheaper and one more expensive alternative stating
32
+ what each gives up or buys. Ask `How often would you like an independent
33
+ review—per slice, per round, or at the end?`
34
+ 7. Record route, lineup, and cadence before task mapping; if declined, record the named default explicitly.
35
+ The recorded snapshot is authoritative for this Journey. Later edits to
36
+ `~/.agents/bearing-lite/default-role-lineup.md` have no effect on it. Replace
37
+ only through an explicit owner-confirmed dated visible amendment. Invoke Map the Route with the snapshot.
38
+ 8. Every ready node gets a fresh session with lineup identity from the recorded snapshot.
39
+
40
+ Return `READY`, `WAITING_ON`, `OWNER_DECISION_REQUIRED`, or `COMPLETE`. Fallback
41
+ follows primary unavailability; both failing returns to owner.
42
+ Allow three evidence-changing corrections. `max_assurance_rounds` is 3 per
43
+ candidate lineage; Direct route checks `assurance_rounds`; Navigator is not required. At the
44
+ bound return `OWNER_DECISION_REQUIRED` naming the candidate and count; new candidate lineage resets;
45
+ release the checkout lease exactly once on `COMPLETE` or `CANCELLED`. Recover by
46
+ explicit recorded generation increment that cannot steal a live lease. Process discovery
47
+ cannot replace the lease. Never implement, self-assure, select models, or publish.
@@ -0,0 +1,7 @@
1
+ interface:
2
+ display_name: "Bearing Lite"
3
+ short_description: "Route a stateful repository Journey"
4
+ default_prompt: "Use $bearing-lite to start or resume this Journey, resolve planning one stage at a time, confirm the lineup and review cadence, then dispatch fresh bounded sessions."
5
+
6
+ policy:
7
+ allow_implicit_invocation: false
@@ -0,0 +1,19 @@
1
+ # Peer synthesis evidence
2
+
3
+ Bearing keeps its own skills-first identity, visible Markdown state, authority
4
+ ladder, and assurance separation. The catalog synthesizes behavior; it does not
5
+ copy peer text, runtimes, state stores, or authority assumptions.
6
+
7
+ | Bearing skill | Strongest compared peer | Behavior retained |
8
+ | --- | --- | --- |
9
+ | Bearing Router | [LangChain subagents](https://docs.langchain.com/oss/python/langchain/multi-agent/subagents) and [handoffs](https://docs.langchain.com/oss/python/langchain/multi-agent/handoffs) | central conversational supervisor, bounded handoff, fresh context |
10
+ | Repository Fit | [Kiro steering](https://kiro.dev/docs/steering/) | verified workspace and explicit global/workspace scope |
11
+ | Set Bearings | [Kiro steering](https://kiro.dev/docs/steering/) | durable human-readable workspace context |
12
+ | Gather Supplies | [Matt Pocock grilling](https://github.com/mattpocock/skills/blob/main/skills/productivity/grilling/SKILL.md) | relentless dependency-ordered interview, one recommended question at a time |
13
+ | Map the Route | [Kiro Quick Spec](https://kiro.dev/docs/specs/quick-spec/) and [GitHub Spec Kit](https://github.com/github/spec-kit/blob/main/workflows/speckit/workflow.yml) | staged requirements/design/tasks and explicit gates |
14
+ | Navigator | LangChain subagents | central sequencing, context isolation, and conflict-aware wave integration |
15
+ | Explorer | LangChain subagents | bounded worker dispatch, proven-independent lane coordination, and result integration |
16
+ | Crewmate | Spec Kit implement step | bounded execution after approved planning |
17
+ | Validator | Spec Kit gate | evidence gate on a stable candidate |
18
+ | Park Ranger | LangChain reviewer subagent | independent defect review with a typed return |
19
+ | Surveyor | Spec Kit review gate | outcome comparison before completion |
@@ -1,34 +1,21 @@
1
1
  flowchart TD
2
- O[Owner Authority] --> R[Bearing Lite Router]
2
+ O[Owner Authority] <--> R[Stateful Bearing Lite Router]
3
+ R --> J{Explorer Journey or Expedition?}
3
4
  R --> P{Next missing planning stage?}
4
- P -->|Repository Fit| PF[Repository Fit]
5
- P -->|Set Bearings| SB[Set Bearings]
6
- P -->|Gather Supplies| GS[Gather Supplies]
7
- P -->|Map the Route| MR[Map the Route]
8
- PF --> R
9
- SB --> R
10
- GS --> R
11
- MR --> R
12
- P -->|none| Q{Smallest valid route}
13
- Q -->|direct| C[Crewmate]
14
- Q -->|wave| E[Explorer]
15
- Q -->|expedition| N[Navigator]
16
- Q -->|long multi-phase| D[Delegate Authority]
17
- D --> N
18
- N --> TB{Multiple active or conflicting waves?}
19
- TB -->|yes| T[Trail Boss]
20
- TB -->|no| E
21
- T --> E
22
- E --> X{Nested split needed?}
23
- X -->|yes| SE[Sub-explorer]
24
- SE --> C
25
- X -->|no| C
26
- C --> A{required_assurance / next missing?}
27
- A -->|none: coordinator confirms| Q
28
- A -->|Validator| V[Validator]
29
- A -->|Park Ranger| PK[Park Ranger]
30
- A -->|Surveyor| S[Surveyor]
31
- A -->|owner acceptance| O
32
- V --> A
33
- PK --> A
34
- S --> O
5
+ P -->|Repository Fit| PF[Fresh Repository Fit]
6
+ P -->|Set Bearings| SB[Fresh Set Bearings]
7
+ P -->|Gather Supplies| GS[Fresh Gather Supplies]
8
+ P -->|Map the Route| MR[Fresh Map the Route]
9
+ PF & SB & GS & MR -->|typed return| R
10
+ R --> L[Owner confirms lineup and review cadence]
11
+ J -->|Explorer Journey: one packet| C[Fresh Crewmate]
12
+ J -->|Explorer Journey: one wave| E[Fresh Explorer]
13
+ J -->|Expedition| N[Fresh Navigator]
14
+ N --> E
15
+ E --> C
16
+ C --> A{Selected cadence boundary?}
17
+ A -->|Validator declared| V[Fresh Validator]
18
+ A -->|Park Ranger declared| PK[Fresh Park Ranger]
19
+ A -->|Surveyor declared| S[Fresh Surveyor]
20
+ A -->|not yet| E
21
+ V & PK & S -->|typed verdict| R
@@ -8,7 +8,7 @@ The project's human-readable plan is the only task-state record. Diagrams explai
8
8
  | --- | --- | --- |
9
9
  | `PROPOSED` | Parent coordinator | Task exists but is not execution-ready |
10
10
  | `READY` | Parent coordinator | Dependencies, scope, authority, and route are satisfied |
11
- | `WAITING_ON` | Parent coordinator | Named prerequisite or independent-assurance dispatch unavailable |
11
+ | `WAITING_ON` | Parent coordinator | Named prerequisite, checkout-lease conflict, or independent-assurance dispatch unavailable |
12
12
  | `IN_PROGRESS` | Assigned worker or coordinator | Assigned action is being performed |
13
13
  | `EVIDENCE_READY` | Parent coordinator | Candidate and evidence ready for next missing assurance |
14
14
  | `VALIDATING` | Validator | Evidence sufficiency under validation |
@@ -40,3 +40,21 @@ The project's human-readable plan is the only task-state record. Diagrams explai
40
40
  - Workers and assurance roles return handoffs; they do not race plan edits.
41
41
  - Candidate authors never provide their own Validator, Park Ranger, or Surveyor verdict.
42
42
  - Waiting on a prerequisite consumes no correction attempt. Each task has its own three-attempt correction counter; identical retries without new evidence are invalid.
43
+
44
+ ## Checkout lease
45
+
46
+ The Router inventories visible nonterminal Journeys and holds one
47
+ generation-bound checkout lease before any planning write or dispatch.
48
+
49
+ - Same checkout plus a live other Journey → `WAITING_ON` with sanitized
50
+ competing Journey and controller. Distinct explicitly approved compatible
51
+ worktrees may proceed.
52
+ - Resume keeps the same generation and must not duplicate dispatch.
53
+ - `COMPLETE` or `CANCELLED` releases the lease exactly once.
54
+ - Stale recovery is explicit, recorded, increments generation, and cannot
55
+ steal a live lease. Forged or stale-generation records fail closed.
56
+ - Branch or HEAD drift from the leased identity stops the transition before
57
+ mutation. Authorized same-Journey candidate progress whose parent is the
58
+ current leased revision refreshes `candidate_revision` on the same
59
+ generation. Foreign controller, branch/worktree, or unrelated HEAD still
60
+ fail closed as `WAITING_ON`.
@@ -1,7 +1,7 @@
1
1
  stateDiagram-v2
2
2
  [*] --> PROPOSED
3
3
  PROPOSED --> READY
4
- PROPOSED --> WAITING_ON
4
+ PROPOSED --> WAITING_ON: named prerequisite or checkout-lease conflict
5
5
  WAITING_ON --> READY: prerequisite satisfied
6
6
  WAITING_ON --> EVIDENCE_READY: fresh assurance available
7
7
  WAITING_ON --> CANCELLED
@@ -0,0 +1,24 @@
1
+ # Bearing Lite global defaults
2
+
3
+ Store the user-owned copy at
4
+ `~/.agents/bearing-lite/default-role-lineup.md`. The Router displays it before
5
+ implementation and asks whether it is good for the current Journey. Never fill
6
+ agent, model, or reasoning values on the user's behalf.
7
+
8
+ ```markdown
9
+ review_cadence: <per-slice | per-round | at-end>
10
+
11
+ | Role | Primary agent/harness | Primary model | Primary reasoning | Fallback agent/harness | Fallback model | Fallback reasoning |
12
+ | --- | --- | --- | --- | --- | --- | --- |
13
+ | Router | OWNER_TO_SET | OWNER_TO_SET | OWNER_TO_SET | OWNER_TO_SET | OWNER_TO_SET | OWNER_TO_SET |
14
+ | Navigator | OWNER_TO_SET | OWNER_TO_SET | OWNER_TO_SET | OWNER_TO_SET | OWNER_TO_SET | OWNER_TO_SET |
15
+ | Explorer | OWNER_TO_SET | OWNER_TO_SET | OWNER_TO_SET | OWNER_TO_SET | OWNER_TO_SET | OWNER_TO_SET |
16
+ | Crewmate | OWNER_TO_SET | OWNER_TO_SET | OWNER_TO_SET | OWNER_TO_SET | OWNER_TO_SET | OWNER_TO_SET |
17
+ | Validator | OWNER_TO_SET | OWNER_TO_SET | OWNER_TO_SET | OWNER_TO_SET | OWNER_TO_SET | OWNER_TO_SET |
18
+ | Park Ranger | OWNER_TO_SET | OWNER_TO_SET | OWNER_TO_SET | OWNER_TO_SET | OWNER_TO_SET | OWNER_TO_SET |
19
+ | Surveyor | OWNER_TO_SET | OWNER_TO_SET | OWNER_TO_SET | OWNER_TO_SET | OWNER_TO_SET | OWNER_TO_SET |
20
+ ```
21
+
22
+ Journey artifacts copy the confirmed values and mark named instances active,
23
+ standby, or unused. Only verified primary unavailability activates its approved
24
+ fallback. If both are unavailable, return `OWNER_DECISION_REQUIRED`.
@@ -2,6 +2,56 @@
2
2
 
3
3
  Use one compact Markdown block per task in the project's existing plan or progress document. Omit unused conditional fields. Prefer the project's format; add only missing fields. Do not create a Bearing-owned state file or hidden ledger.
4
4
 
5
+ ## Journey settings (record before task mapping)
6
+
7
+ Record these plan-level choices once, above the task blocks:
8
+
9
+ ```markdown
10
+ - journey: <Explorer Journey | Expedition>
11
+ - review_cadence: <per-slice | per-round | at-end>
12
+ - choice_basis: <owner-confirmed recommendation and reason>
13
+ - lineup_snapshot: <named active, standby, and unused role instances>
14
+ ```
15
+
16
+ `review_cadence` controls independent review frequency, not task-level tests or
17
+ author self-checks. Never infer it from `required_assurance` on an individual
18
+ task. `per-round` means after each integrated execution or correction round;
19
+ `at-end` means one review of the final integrated candidate. The Router asks the
20
+ owner to confirm both the applicable lineup and cadence before implementation.
21
+ `lineup_snapshot` is authoritative for this Journey after recording. Later
22
+ edits to `~/.agents/bearing-lite/default-role-lineup.md` have no effect.
23
+ Replace it only through an explicit owner-confirmed dated visible amendment.
24
+ Record the amendment date beside the replacement values. Dispatch identities
25
+ come from this snapshot, not from the current global defaults file.
26
+
27
+ ## Checkout lease (record before any planning write)
28
+
29
+ The Router's first write is this visible lease. Inventory nonterminal Journeys
30
+ first. Do not dispatch or write other planning state until the lease is
31
+ `active` for this Journey.
32
+
33
+ ```markdown
34
+ - checkout_lease:
35
+ - journey: <Journey id>
36
+ - controller: <Router>
37
+ - repository: <canonical repository>
38
+ - checkout: <worktree or checkout identity>
39
+ - branch: <branch>
40
+ - candidate_revision: <candidate revision>
41
+ - acquired_at: <acquisition time>
42
+ - generation: <positive integer>
43
+ - state: <active | released>
44
+ ```
45
+
46
+ Same checkout plus a live other Journey returns `WAITING_ON` with sanitized
47
+ competing Journey and controller identities. Distinct explicitly approved
48
+ compatible worktrees may proceed. Resume keeps the same generation and does
49
+ not duplicate dispatch. Authorized same-Journey candidate progress whose
50
+ parent is the current leased revision refreshes `candidate_revision` on the
51
+ same generation. `COMPLETE` or `CANCELLED` releases the lease exactly
52
+ once. Stale recovery is explicit, recorded, increments generation, and cannot
53
+ steal a live lease. Process discovery cannot replace this durable lease.
54
+
5
55
  ## Always present
6
56
 
7
57
  ```markdown
@@ -37,9 +87,15 @@ Field rules:
37
87
  ```markdown
38
88
  - candidate_ref: <strongest native revision or changed-path reference available>
39
89
  - evidence: <commands run, results observed, and inferences labeled separately>
90
+ - assurance_rounds: <0-3 completed assurance rounds for this candidate lineage>
40
91
  ```
41
92
 
42
93
  `candidate_ref` must not claim stronger provenance than the client can prove.
94
+ `assurance_rounds` counts each candidate version submitted to required assurance
95
+ in one candidate lineage against Bearing Lite `max_assurance_rounds`. A repair
96
+ of the same work stays in the lineage. A new candidate lineage resets the count
97
+ to 0. The parent coordinator writes the count and checks it before redispatched
98
+ assurance.
43
99
 
44
100
  ## Waiting or correcting only
45
101
 
@@ -1,37 +1,49 @@
1
1
  ---
2
2
  name: crewmate
3
3
  description: >
4
- Implement one approved mutation, execution, or integration packet inside its
5
- exact write set with native tools. Use for crewmate, implement packet, bounded
6
- coding task, or apply a write-set change. Do not use for wave orchestration,
7
- multi-packet control, self-certification, publication, or expanding authority.
4
+ Implement one approved bounded packet in a fresh session and exact write set.
5
+ Use for Crewmate, implementation, repair, or integration packets. Do not use
6
+ for orchestration, planning, independent assurance, publication, destructive
7
+ action, owner decisions, or unset scope.
8
8
  ---
9
9
 
10
10
  # Crewmate
11
11
 
12
- ## Trigger
13
-
14
- - **Match:** one approved implementation, repair, or integration packet is READY with fixed scope and authority.
15
- - **Non-match:** multi-packet orchestration, wave ownership, assurance review, owner decisions, or unset write sets.
16
-
17
- ## Inputs
18
-
19
- Plan path, packet objective, acceptance, allowed paths, commands, stop condition, `required_assurance`, expected handoff.
20
-
21
- ## Responsibility
22
-
23
- Smallest honest change in the write set. For verified contract bugs, add a failing regression first, then repair. Run assigned focused commands. Preserve unrelated work.
24
-
25
- ## Return
26
-
27
- Handoff fields: `plan_ref`, `role`, `subject`, `depends_on`, `scope`, `authority`, `outcome`, `evidence`, `blocker`, `next_action`, `receiving_role`.
28
-
29
- Outcomes: `CANDIDATE_READY`, `PARTIAL`, `WAITING_ON`, `OWNER_DECISION_REQUIRED`. Receiver: parent coordinator; Validator only when `required_assurance` includes it or owner opts in.
30
-
31
- ## Independence
32
-
33
- Never self-certifies. `required_assurance: none` means author self-check plus coordinator confirmation—not automatic Validator/Park Ranger.
34
-
35
- ## Correction
36
-
37
- Repair evidenced failures inside authority. Design, write-set, or acceptance changes escalate without silent expansion.
12
+ Lowest mutation authority and highest hands-on work in the Bearing ladder.
13
+
14
+ ## Inputs and match
15
+
16
+ - **Inputs:** approved baseline, objective, dependencies, exact write set,
17
+ authority, acceptance/SEIT rows, commands, cadence, stop rule, return schema,
18
+ and lineup identity from the recorded Journey snapshot.
19
+ - **Match:** one packet is `READY` and every input is fixed.
20
+ - **Non-match:** multi-packet coordination, design gaps, missing authority,
21
+ assurance, or owner-only action.
22
+
23
+ ## Algorithm
24
+
25
+ 1. Start a fresh session and confirm candidate continuity, boundaries, and clean
26
+ dependency state. Do not infer missing owner choices. Read dispatch
27
+ identities only from the recorded Journey snapshot, never from the current
28
+ global defaults file. Revalidate the visible checkout
29
+ lease against the approved Journey, repository, checkout/worktree, branch,
30
+ candidate revision, generation, and active state before the first write and
31
+ every mutation. Released, stale-generation, forged, or
32
+ branch/HEAD-drifted leases fail closed. Authorized same-Journey
33
+ candidate progress whose parent is the current leased revision refreshes
34
+ candidate_revision on the same generation. On mismatch, return WAITING_ON without writing.
35
+ 2. For a verified contract defect, create the smallest failing regression first.
36
+ 3. Make the smallest change that satisfies the packet inside the write set.
37
+ 4. Run assigned focused commands and author self-checks. Review cadence never
38
+ removes deterministic testing or grants independent-review identity.
39
+ 5. Preserve unrelated work and report every changed path and observed result.
40
+ 6. Stop on acceptance, authority boundary, design gap, or exhausted correction.
41
+
42
+ ## Return and recovery
43
+
44
+ Return `CANDIDATE_READY`, `PARTIAL`, `WAITING_ON`, or
45
+ `OWNER_DECISION_REQUIRED` with plan ref, role, subject, dependencies, scope,
46
+ authority, candidate ref, evidence, blocker, next action, and receiving role.
47
+ Attempts 1–3 require new evidence, hypothesis, or narrower strategy.
48
+
49
+ Never expand scope, self-certify as assurance, publish, or hide a failure.
@@ -1,38 +1,57 @@
1
1
  ---
2
2
  name: explorer
3
3
  description: >
4
- Wave-owner orchestration: sequence and dispatch bounded packets inside one
5
- approved wave without implementing them. Use for explorer, wave ownership,
6
- packet orchestration, or parallel dispatch planning. Do not use for product
7
- implementation, multi-wave Trail Boss control, nested Sub-explorer defaulting,
8
- or independent assurance of wave output.
4
+ Own one approved execution wave, dispatching bounded fresh-session packets
5
+ and integrating their evidence. Use for Explorer Journey, wave orchestration,
6
+ proven-independent in-wave lanes, or parallel packet sequencing. Do not use
7
+ for implementation, cross-wave work, planning, automatic nesting, or
8
+ independent assurance.
9
9
  ---
10
10
 
11
11
  # Explorer
12
12
 
13
- ## Trigger
14
-
15
- - **Match:** an approved wave contains work packets that need orchestration, sequencing, or parallel dispatch (not the implementation itself).
16
- - **Non-match:** a single already-bounded implementation packet with no wave orchestration need; multi-wave Trail Boss duty; assurance review.
17
-
18
- ## Inputs
19
-
20
- Plan path, wave objective, packets, dependencies, scope, authority, `required_assurance`, expected handoff.
21
-
22
- ## Responsibility
23
-
24
- Issue disjoint Crewmate packets, inspect returns against allowlists, and hand off for coordinator confirmation or required assurance. Never implement or audit the packets itself.
25
-
26
- ## Return
27
-
28
- Handoff fields: `plan_ref`, `role`, `subject`, `depends_on`, `scope`, `authority`, `outcome`, `evidence`, `blocker`, `next_action`, `receiving_role`.
29
-
30
- Outcomes: `READY`, `REROUTED`, `WAITING_ON`, `OWNER_DECISION_REQUIRED`. Receiver: Sub-explorer, Crewmate, or parent coordinator.
31
-
32
- ## Independence
33
-
34
- Wave owner only. Does not provide Validator, Park Ranger, or Surveyor verdicts for candidates produced under its dispatch when it is author-equivalent.
35
-
36
- ## Correction
37
-
38
- Reroute incomplete packets with new evidence. Authority or design amendments escalate to parent coordinator or Owner Authority.
13
+ Wave authority. Coordinates more and implements less than Crewmate.
14
+
15
+ ## Inputs and match
16
+
17
+ - **Inputs:** approved baseline, wave objective, packet graph, dependencies,
18
+ scope, authority, lineup from the recorded Journey snapshot, review cadence,
19
+ acceptance, and return schema.
20
+ - **Match:** one wave needs packet sequencing, dispatch, integration, or
21
+ proven-independent lane coordination.
22
+ - **Non-match:** one bounded packet needs no orchestration, multiple waves
23
+ conflict, or assurance alone is requested.
24
+
25
+ ## Algorithm
26
+
27
+ 1. Start fresh and verify wave readiness, exact packet boundaries, dependencies,
28
+ and approved primary/fallback identities from the recorded Journey snapshot,
29
+ never from the current global defaults file. Revalidate the visible checkout
30
+ lease against the approved Journey, repository, checkout/worktree, branch,
31
+ candidate revision, generation, and active state before the first write,
32
+ dispatch, or integration. Released, stale-generation, forged, or
33
+ branch/HEAD-drifted leases fail closed. Authorized same-Journey
34
+ candidate progress whose parent is the current leased revision refreshes
35
+ candidate_revision on the same generation. The same valid lease continues
36
+ without duplicate dispatch.
37
+ 2. Use direct Crewmates by default. When two or more lanes are proven
38
+ independent, coordinate those lanes directly inside this wave; never add a
39
+ nested coordinator.
40
+ 3. Give every node a fresh bounded session. Never pass raw conversation history.
41
+ 4. Inspect returns against write sets and acceptance; integrate evidence without
42
+ implementing missing packet work.
43
+ 5. Dispatch declared assurance at `per-slice` or after each integrated execution
44
+ or correction round at `per-round`. At `at-end`, an Explorer Journey reviews
45
+ its final wave once; an Expedition wave defers assurance to the Navigator's
46
+ final Journey boundary. Deterministic checks always run. Before redispatched
47
+ assurance, honor `max_assurance_rounds` from visible `assurance_rounds`. At
48
+ the bound, return `OWNER_DECISION_REQUIRED` with candidate and count; do not
49
+ dispatch another repair or review. A new candidate lineage resets the count.
50
+
51
+ ## Return and recovery
52
+
53
+ Return `READY`, `REROUTED`, `WAITING_ON`, or `OWNER_DECISION_REQUIRED` with
54
+ plan ref, role, subject, dependencies, scope, authority, evidence, blocker, next
55
+ action, and receiver. Reroute only from new evidence; three attempts per packet.
56
+
57
+ Never implement, self-assure, select models, or expand the wave.
@@ -1,33 +1,53 @@
1
1
  ---
2
2
  name: gather-supplies
3
3
  description: >
4
- Resolve only material owner decisions that block a complete plan after the
5
- workspace exists. Use for gather supplies, owner decisions, plan-spec
6
- assumptions, or blocking scope questions. Do not use for design drafting,
7
- implementation, product edits, or replaying settled owner answers.
4
+ Relentlessly resolve material owner decisions for a Bearing Journey, one
5
+ dependency-ordered question at a time, until shared understanding is explicit.
6
+ Use for Gather Supplies or unresolved plan intent. Do not use for discoverable
7
+ repository facts, design drafting, implementation, or settled decisions.
8
8
  ---
9
9
 
10
10
  # Gather Supplies
11
11
 
12
- Procedural stage. Not a persona.
13
-
14
- ## Match / non-match
15
-
16
- - **Match:** material open decisions block scope, architecture, security, authority, or acceptance.
17
- - **Non-match:** decisions already recorded; Map the Route can proceed; pure implementation packets.
18
-
19
- ## Inputs
20
-
21
- Goal, repository evidence, plan workspace, and prior owner Q&A.
22
-
23
- ## Procedure
24
-
25
- 1. Ask only material questions; reuse durable prior answers without re-asking.
26
- 2. For each question: recommendation, evidence, options/tradeoffs, affected section, safe default.
27
- 3. Apply completed answers into the validated plan specification only.
28
- 4. Keep requirements testable with stable IDs; record blockers instead of inventing approval.
29
- 5. Exit with zero-to-few bounded questions, applied plan-spec, or `OWNER_DECISION_REQUIRED`.
30
-
31
- ## Never
32
-
33
- Design the route, draft implementation slices, edit product code, or overwrite a recorded owner answer with a default.
12
+ Planning node, not a persona or plan-state writer.
13
+
14
+ ## Match and inputs
15
+
16
+ - **Match:** a material scope, behavior, authority, risk, or acceptance
17
+ decision is unresolved. The Explorer-versus-Expedition route choice is not
18
+ gathered here; the Router asks it at the pre-implementation gate.
19
+ - **Non-match:** evidence can answer it, the owner already decided it, or a work
20
+ packet is ready.
21
+ - **Inputs:** goal, visible plan state, repository evidence, prior decisions,
22
+ open decision tree, and return schema.
23
+
24
+ ## Algorithm
25
+
26
+ 1. Inspect the repository and available evidence before asking. Never ask the
27
+ owner for a fact tools can establish.
28
+ 2. Select the earliest unresolved decision whose dependencies are satisfied.
29
+ 3. Ask exactly one question, relayed to the owner through the Router. Lead
30
+ with the recommended answer and why, then explain only material
31
+ alternatives and tradeoffs. Wait for the owner.
32
+ 4. Challenge vague terms, contradictions, unsafe assumptions, and incomplete
33
+ acceptance. A default, probability, or silence is not approval.
34
+ 5. Follow the affected dependency branch. Revisit an earlier answer when new
35
+ evidence conflicts; otherwise do not replay it.
36
+ 6. Buffer confirmed decisions in the active session. Do not persist, patch, or
37
+ re-render Journey state after each answer.
38
+ 7. Return one consolidated decision batch to the Router at a natural checkpoint:
39
+ the dependency branch is complete, Map the Route is next, handoff/context
40
+ loss is imminent, or the owner requests a flush.
41
+ 8. When no material branch remains, summarize the shared interpretation and ask
42
+ for explicit confirmation that shared understanding has been reached; then
43
+ return the final decision batch.
44
+
45
+ ## Return and recovery
46
+
47
+ Return `DECISION_CONFIRMED`, `SHARED_UNDERSTANDING_CONFIRMED`,
48
+ `NEEDS_EVIDENCE`, or `OWNER_DECISION_REQUIRED` with decision ID, answer,
49
+ rationale, affected requirements, buffered decision count, remaining branch,
50
+ checkpoint, and next action. Stop after three evidence-changing attempts on one
51
+ blocked decision.
52
+
53
+ Never write Journey state, choose for the owner, design, or implement.