axstack 0.20.1 → 0.20.3

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/README.md CHANGED
@@ -1,141 +1,124 @@
1
1
  # Axstack
2
2
 
3
- Axstack is a standalone toolkit for finishing agreed engineering work with less
4
- supervision while retaining independent review. Chat drives execution; a Bun
5
- CLI installs owned skills and role data and checks capabilities. Axstack has no
6
- daemon, scheduler, runtime database, or workflow state machine.
7
-
8
- Orca is the only supported active runtime. Its installed, version-matched
9
- `orchestration` and `orca-cli` guides own worktrees, sessions, supervised
10
- dispatch, messages, settlement, and handoff mechanics. Axstack owns scope,
11
- role choices, evidence, review policy, and one private derived run record.
12
-
13
- ## How a run works
14
-
15
- Invoke the needed phase directly: `axstack-align`, `axstack-spec`,
16
- `axstack-tickets`, `axstack-implement`, `axstack-review`, and `axstack-watch`.
17
- Direct `axstack-research`, `axstack-explain`,
18
- `axstack-improve`, and `axstack-debug` routes need no spec ceremony. `axstack-relay` remains an
19
- optional inline route for explicit messages and authorized notifications; an
20
- unavailable or legacy-runtime-only relay falls back to the current conversation
21
- without changing authority.
22
-
23
- 1. Classify new engineering work as substantial, small, or unclear with a brief
24
- reason. Small, bounded one-PR work uses the current request or selected issue
25
- as a snapshotted small-change intent;
26
- substantial or stacked work needs an approved spec and matching ticket map.
27
- Substantial work uses Linear by default, or explicitly selected GitHub Issues
28
- or repository Markdown, as its authoritative spec and capability tracker.
29
- 2. The current chat drives on whatever model runs it; there is no driver
30
- profile. Bind each ready task to the selected role snapshot and an authoritative Orca
31
- Run, Task, and Dispatch. Exactly one writer owns a candidate at a time. All
32
- subagent and delegated worker dispatches go through Orca orchestration rather than
33
- harness-native subagent tools.
34
- 3. Peer PRs receive both configured independent reviewer roles. Authored PRs
35
- receive one eligible reviewer from the selected preset's explicit mapping
36
- and actual author provenance. Every review binds the exact head and base.
37
- Stable IDs are `axstack-reviewer-primary` and `axstack-reviewer-secondary`.
38
- 4. Accepted repairs return to the same author where its session and evidence
39
- remain valid. The human merges by default, bottom-up for a stack.
40
- 5. Full handoff requires explicit recipient acceptance of the exact scope and
41
- authority before ownership changes. Ordinary resume reconciles the current
42
- owner instead of replacing it.
43
-
44
- Active PR fanout is dependency- and capacity-driven; there is no fixed count.
45
- Each PR has one theme and a measured size under the shared
46
- [PR-shape policy](skills/axstack/references/pr-shape.md). Routine shape and
47
- fanout choices remain autonomous inside approved scope. Material scope,
48
- serious-risk, unavailable-model, and human-merge holds remain explicit.
49
- The autonomous driver records the rationale band's cohesion rationale; the exception band needs a
50
- reasonable split attempt and full exception record. Size alone never requires
51
- user approval.
52
-
53
- ## Install from source
54
-
55
- Requirements: Bun >=1.3.14, Git, `gh`, the `gh stack` extension, and a running
56
- Orca with its runtime-owned guides. Filesystem access uses Bun's implementation
57
- of `node:fs` and `node:fs/promises`; there are no runtime dependencies.
3
+ Engineering workflows for AI agents, from an idea to a reviewed pull request.
4
+
5
+ Axstack is a set of skills for engineers who want agents to carry work forward
6
+ with less supervision, without giving up clear scope, independent review, or
7
+ control over what ships. Use it to plan a feature, implement an agreed task,
8
+ review a teammate's PR, or maintain your own PRs as feedback arrives.
9
+
10
+ Your chat stays in charge. Orca provides the worktrees, agent sessions, and
11
+ coordination; Axstack supplies the workflow and review rules. A small Bun CLI
12
+ installs the skills and checks prerequisites. There is no Axstack daemon,
13
+ scheduler, or runtime database to operate. Orca is the only supported runtime.
14
+
15
+ ## What you can do
16
+
17
+ | Need | Skill |
18
+ | --- | --- |
19
+ | Explore an idea and settle scope | `axstack-align` |
20
+ | Turn agreed scope into a specification | `axstack-spec` |
21
+ | Break a specification into executable tickets | `axstack-tickets` |
22
+ | Build an approved task with tests and independent review | `axstack-implement` |
23
+ | Review a pull request | `axstack-review` |
24
+ | Monitor or maintain an existing PR | `axstack-watch` |
25
+ | Diagnose a bug and establish a failing check | `axstack-debug` |
26
+ | Answer a bounded question with sources | `axstack-research` |
27
+ | Explain a system or identify improvements | `axstack-explain`, `axstack-improve` |
28
+ | Measure a run's outcomes and gaps | `axstack-audit` |
29
+ | Send an explicit message or authorized notification | `axstack-relay` |
30
+
31
+ Start at the phase you need. Small, bounded changes can begin with your request
32
+ or an existing issue; substantial work needs an approved spec and matching
33
+ tickets before implementation. Research, explanation, and peer review do not
34
+ require a new specification.
35
+
36
+ For a larger feature, the usual path is:
37
+
38
+ ```text
39
+ align → spec → tickets → implement → review → watch
40
+ ```
41
+
42
+ The implementation workflow includes the author–review–repair loop. You do not
43
+ need to manually coordinate every agent or repeat an approval that is still valid.
44
+
45
+ ## Quick start
46
+
47
+ You need Bun >=1.3.14, Git, the GitHub CLI (`gh`), the `gh stack` extension,
48
+ and a running Orca with its `orca-cli` and `orchestration` guides available.
49
+ The agents selected by your preset must also be available in Orca.
50
+
51
+ Install the CLI and skills for your harness. For example, for Codex:
58
52
 
59
53
  ```sh
60
- bun bin/axstack.js check --bundle . [--harness claude|codex|opencode|antigravity]
61
- bun bin/axstack.js install --bundle . --skills-dir <dir> --instructions <file> --preset mixed [--yes]
62
- bun bin/axstack.js install --bundle . --skills-dir <dir> --preset mixed
63
- bun bin/axstack.js uninstall --skills-dir <dir> --instructions <file>
54
+ bun add --global axstack
55
+ axstack check --harness codex
56
+ axstack install --harness codex --preset mixed --yes
57
+ ```
58
+
59
+ Then open an Orca chat and ask for the relevant skill:
60
+
61
+ ```text
62
+ $axstack-align Help me scope account recovery.
63
+ $axstack-implement Build the task we agreed on.
64
+ $axstack-review Review this pull request: <PR URL>
65
+ $axstack-watch Monitor this PR without making changes: <PR URL>
64
66
  ```
65
67
 
66
- Use `--harness claude|codex|opencode|antigravity` only for a verified default
67
- skill directory and rules file. `--claude-settings` and `--no-claude-settings` manage the existing
68
- Claude Code subagent default transaction; they do not configure Orca roles.
69
- See [installation details](docs/installation.md).
70
-
71
- `--instructions` manages one versioned Axstack block in `AGENTS.md`,
72
- `CLAUDE.md`, or `GEMINI.md`. Harness defaults resolve those files automatically. The block
73
- requires direct matching phase-skill invocation and requires every subagent, delegated
74
- worker, reviewer, and cross-harness dispatch to use visible Orca orchestration via the `orca` CLI
75
- rather than a harness-native subagent tool (e.g. Claude/Codex native subagents). OpenCode
76
- and Antigravity subagents run as Orca-supervised workers. Text and file
77
- mode outside the markers are preserved; edited, malformed, unowned, or unsafe
78
- targets are reported without normal-path adoption. Install exits nonzero when
79
- an instruction conflict is preserved, while clean and idempotent installs exit
80
- successfully.
81
-
82
- The public bundle preserves three canonical 24-role inputs:
68
+ Use `--harness claude`, `opencode`, or `antigravity` for another supported
69
+ installation target, or provide explicit skill and instruction paths.
70
+ Installation adds an owned instruction block and preserves unrelated content;
71
+ it does not enable automations or prove that every configured model is available.
72
+ See [installation](docs/installation.md) for source installs, custom paths,
73
+ upgrades, conflicts, and uninstalling.
74
+
75
+ ## How work stays controlled
76
+
77
+ - **One accountable driver, one writer per candidate.** Your current chat
78
+ coordinates work; separate worktrees keep PR jobs isolated.
79
+ - **Independent review.** Peer PRs receive two independent reviews; authored
80
+ changes receive a reviewer selected from the actual author's configured
81
+ pairing. Reviews apply to an exact revision, not just a branch name.
82
+ - **Visible agent work.** Delegation uses visible Orca orchestration via the `orca` CLI,
83
+ not harness-native subagent tools.
84
+ - **Explicit boundaries.** Agents work within agreed scope. Missing authority,
85
+ unavailable models, and serious risks are surfaced rather than silently
86
+ bypassed. The human merges by default.
87
+ - **Resumable progress.** Work retains ownership, decisions, and evidence so a
88
+ later session can reconcile what happened before continuing.
89
+
90
+ Choose an explicit role preset:
83
91
  [mixed](profiles/presets/mixed.json),
84
- [codex-only](profiles/presets/codex-only.json), and
85
- [claude-only](profiles/presets/claude-only.json). Each is exactly
86
- `{ "version": 1, "roles": [...] }`. Installation writes the selected snapshot
87
- to `<skills-dir>/axstack/roles.json` as
88
- `{ "version": 1, "preset": "<name>", "roles": [...] }` under normal ownership
89
- hashes. An edited installed role file is preserved.
90
-
91
- Mixed configures independent Astra and Fable advisers at high. Single-provider
92
- presets preserve both adviser IDs and mark the unavailable one with `model:
93
- null` inside that preset's provider bounds; installation remains ready, while
94
- Align and Spec hold because both receipts are required. The mixed
95
- `axstack-checker` and `axstack-research-web-google` roles launch Antigravity by
96
- agent ID with explicit `model: null`; the run records the model reported by the
97
- TUI. The single-provider presets configure the checker and record the Google
98
- research branch as intentionally absent. Preset changes affect new runs only. Stored model, effort, and permission
99
- fields are declared intent until actual Orca launch receipts establish effective
100
- behavior; installation never proves provider availability or permission parity.
101
- Subscription availability and quota never select a fallback model.
102
- End-to-end compatibility remains unverified without matching runtime receipts.
103
-
104
- ## Runtime evidence and holds
105
-
106
- Native Orca exercises have returned Codex, Claude, and OpenCode Muse Spark
107
- worker completions, same-terminal follow-up, separate worktree placement, settlement
108
- cleanup, `user_takeover` retention, and recovery from `consumer_fenced`. These are
109
- bounded runtime facts, not proof that every role or harness is compatible.
110
-
111
- Input acceptance is not agent readiness. A trust prompt was observed after an
112
- accepted launch, so startup recovery must inspect the existing attempt, never
113
- answer trust or permission prompts on the worker's behalf, and never create a
114
- duplicate writer. A `worker_done` advances work only when its Task and Dispatch
115
- match the active attempt and its revision evidence verifies.
116
-
117
- Two logical native PR-manager lanes run on staggered 15-minute schedules. Each
118
- pass uses a fresh finite session in its persistent dedicated workspace. Review
119
- and watch each admit at most five bounded PR jobs;
120
- waiting PRs stay covered without reserving slots. Axstack adds no custom
121
- scheduler, queue engine, or decision interpreter. Sessions reconcile before
122
- admission, save durable continuity and decisions, clean only positively
123
- identified owned unused setup shells, and self-close as their final action.
124
- Native fresh-session, overlapping-pass, recovery, and VPS resource behavior
125
- require a canary before activation.
126
-
127
- Mobile completion/reply behavior remains unverified. Structural checks and
128
- qualitative scenario evaluation are not live runtime proof.
129
-
130
- ## Historical migration boundary
131
-
132
- Older releases used Paseo for orchestration and could leave profile ownership
133
- provenance or retired skills behind. That state is historical and inert in the
134
- Orca runtime. Migration preserves user-edited and unknown assets and records
135
- legacy ownership without reading, writing, or deleting live host configuration.
136
- Use the explicit migration guidance in [installation](docs/installation.md);
137
- release installation, host cutover, and old-timer cleanup need separate
138
- authorization.
92
+ [codex-only](profiles/presets/codex-only.json), or
93
+ [claude-only](profiles/presets/claude-only.json).
94
+ Mixed supports the cross-provider implementation workflow. Single-provider
95
+ presets have workflow limitations; they are not automatic fallbacks when a
96
+ model is unavailable. See [workflow and routing details](docs/workflows.md).
97
+
98
+ ## Optional PR automation
99
+
100
+ Manual review and watch work independently of scheduled automation.
101
+ For recurring use, Axstack defines two native Orca manager lanes: one discovers
102
+ eligible peer-review requests, and the other monitors your open PRs and handles
103
+ authorized repair events.
104
+
105
+ The lanes use staggered 15-minute schedules. Each pass uses a fresh finite
106
+ session in an isolated workspace and admits at most five executing PR jobs per
107
+ lane, fewer under resource pressure. Waiting PRs remain tracked without consuming
108
+ execution slots, so a large open-PR backlog does not require an idle agent per PR.
109
+ Completed passes save continuity and retire their own verified resources.
110
+
111
+ Scheduling is opt-in and requires host-specific runtime validation before
112
+ activation. Installing Axstack does not turn it on. Repairs are limited to
113
+ explicitly allowed repositories; automation never merges for you.
114
+ See [PR-manager setup and safety](skills/axstack/references/automations.md).
115
+
116
+ ## Documentation
117
+
118
+ - [Installation and configuration](docs/installation.md)
119
+ - [Workflows, review policy, and model routing](docs/workflows.md)
120
+ - [PR scope and sizing](skills/axstack/references/pr-shape.md)
121
+ - [Releases](https://github.com/axatbhardwaj/axstack/releases)
139
122
 
140
123
  ## License
141
124
 
package/docs/workflows.md CHANGED
@@ -184,19 +184,21 @@ read-only observer for standalone watches and never sends.
184
184
 
185
185
  The accepted contract has exactly two logical native manager lanes: review at
186
186
  minutes `0,15,30,45` and watch at `7,22,37,52`. Each scheduled pass uses a
187
- fresh finite session in a persistent dedicated workspace, scans complete
187
+ fresh finite session in a new isolated workspace, scans complete
188
188
  discovery pages, and admits at most five executing
189
189
  PR jobs. Waiting PRs stay covered and consume no slot after owned descendants
190
190
  settle. Each job uses one repository-parented worktree; managers never check out
191
191
  PR branches in their own workspaces.
192
192
 
193
- Every pass reconciles saved, GitHub, and native Orca state before admission. A
193
+ Every pass reconciles saved, GitHub, and native Orca state across all same-lane
194
+ workspaces before admission. A
194
195
  confirmed same-lane manager makes the new duplicate do no work or shared-record
195
196
  write and close only itself. Normal teardown settles descendants, saves durable
196
- continuity and decisions, closes only positively identified owned unused setup
197
- shell terminals, then self-closes as the final action. It never blanket-closes
198
- the workspace or cleans preserved candidates, evidence, user sessions, unknown
199
- liveness, `user_takeover`, or ambiguous publication state.
197
+ continuity and decisions outside disposable workspaces, then retires its own
198
+ verified isolated pass workspace as the final action. It never bulk-closes a
199
+ shared manager workspace or a PR-job worktree, or cleans preserved candidates,
200
+ evidence, user sessions, unknown liveness, `user_takeover`, or ambiguous
201
+ publication state. Manual review/watch remains outside this scheduled lifecycle.
200
202
 
201
203
  Requested reviews cover any accessible repository; automatic repairs retain
202
204
  their `defi-com/monorepo` and `defi-com/mobile` scope. Orca owns schedules,
@@ -226,6 +228,8 @@ Predeclared scenario evaluation is qualitative behavior evidence, not determinis
226
228
  compatibility requires actual guide discovery, role/session evidence, worktree
227
229
  and Dispatch receipts, completion delivery, and cleanup as applicable. Mobile
228
230
  completion and reply behavior remain unverified.
231
+ End-to-end compatibility remains unverified for any route without matching
232
+ runtime receipts; evidence from one route does not establish support for all roles.
229
233
 
230
234
  ## Historical migration
231
235
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "axstack",
3
- "version": "0.20.1",
3
+ "version": "0.20.3",
4
4
  "description": "Axstack installer and setup CLI: installs owned chat skills and role data, configures supported harness settings, and checks Orca capabilities.",
5
5
  "keywords": [
6
6
  "claude-code",
@@ -13,13 +13,22 @@ There are exactly two logical manager lanes:
13
13
  [axstack-watch](../../axstack-watch/SKILL.md) for eligible own-PR watch or
14
14
  repair events.
15
15
 
16
- Each scheduled pass starts a fresh finite manager session in its persistent
17
- dedicated workspace; the workspace and saved continuity persist, but the
18
- manager chat does not. A manager never checks out a PR branch in that
19
- workspace. Missed slots do not replay a backlog; the next ordinary pass
16
+ Use a new isolated workspace for every scheduled pass, with one fresh finite
17
+ manager session. Configure native repo-created worktree mode against the
18
+ designated manager repository; never target an existing shared workspace.
19
+ Do not use `--reuse-session`. The scheduler creates the pass workspace before
20
+ launch; the manager must not move itself from a shared launch workspace.
21
+ Keep lane continuity and evidence outside disposable manager workspaces at
22
+ the configured durable absolute paths. A manager never checks out a PR branch
23
+ in its pass workspace. Missed slots do not replay a backlog; the next ordinary pass
20
24
  discovers current state. The two short packaged prompts sit beside this file
21
25
  and discover these rules by relative link instead of copying them.
22
26
 
27
+ Provision one explicit absolute continuity path per automation ID in the
28
+ scheduled prompt. Follow [Run record](run-record.md) for its contents; the
29
+ repository's absolute Git common directory is a valid durable root, but a pass
30
+ worktree is not. Missing or non-durable continuity configuration holds admission.
31
+
23
32
  This is prompt policy, not proof that Orca starts a fresh session or prevents
24
33
  overlapping passes. Before activation a native canary must prove fresh-session
25
34
  launch, overlapping-pass behavior, recovery after session loss, nested
@@ -29,14 +38,43 @@ effects. A firing timestamp proves neither delivery nor useful completion.
29
38
  ## Session admission
30
39
 
31
40
  Reconcile saved state, current GitHub state, and native Orca Tasks, Dispatches,
32
- sessions, and liveness in the dedicated workspace before discovery or
33
- admission. A confirmed live manager for the same lane remains authoritative.
41
+ sessions, and liveness across all workspaces belonging to the same automation
42
+ before discovery or admission; never infer lane ownership from an empty local
43
+ workspace. Bind the lane to the automation ID and pass to its native run ID,
44
+ workspace ID, and terminal identity, not a title or directory-name guess.
45
+ A confirmed live manager for the same lane remains authoritative.
34
46
  The new duplicate does no PR work, makes no shared-record write, touches
35
- nothing owned by the live manager, and closes only itself as its final action.
47
+ nothing owned by the live manager, and closes only itself as its final action
48
+ by the same guarded isolated-workspace retirement below, not a tab-only close.
36
49
  Unknown liveness blocks admission and shared-record writes; it does not
37
50
  authorize takeover, cleanup, or a duplicate manager. Preserve `user_takeover`
38
51
  and other user-owned sessions.
39
52
 
53
+ When two new passes overlap, reconcile native run ordering before either admits
54
+ work; the earlier unsettled pass retains the lane. Missing ordering or ownership
55
+ evidence holds admission, never guesses a winner. This is not an atomic lock:
56
+ activation requires an overlap canary proving only one pass admits work. Count
57
+ all unsettled PR jobs and descendants across the lane, not just this workspace.
58
+ Read every page of native runs, workers, and workspace inventory; truncated or
59
+ failed inventory holds admission and cleanup rather than implying absence.
60
+
61
+ A prior manager does not retain the lane merely because its automation run
62
+ status says failed or dispatched. Require confirmed native process exit for its
63
+ exact terminal incarnation, saved continuity, and settlement of all owned jobs
64
+ and descendants before releasing its lane ownership. Absence or saved retirement
65
+ intent alone is insufficient. Conversely a completed run row does not prove exit.
66
+ If these facts remain unknown, report the hold at the durable decision location;
67
+ do not silently stand down forever or replace a potentially live owner.
68
+
69
+ Before PR admission, reconcile old pass resources. If three or more unreclaimed
70
+ earlier pass workspaces remain, disable only this automation through the native
71
+ CLI, verify the disabled setting, save/report the cleanup hold, and admit no new
72
+ PR jobs. Also pause on a confirmed cleanup failure or unresolved lane ownership.
73
+ Already-dispatched passes still reconcile and retire only their own safe resources;
74
+ this threshold is a stop condition, not an atomic hard cap on in-flight creations.
75
+ An uncertain disable is a reported failure, not proof scheduling stopped. Resume
76
+ only after ownership/cleanup is verified and explicit activation authority exists.
77
+
40
78
  ## Discovery and coverage
41
79
 
42
80
  Resolve self on every tick with `gh api user --jq .login`; never hardcode the
@@ -176,13 +214,35 @@ and must be reconciled rather than trusted from saved status. Then save durable
176
214
  continuity, evidence locations, pending receipts, and user decisions before
177
215
  self-close. Waiting PRs still occupy zero slots once their owned trees settle.
178
216
 
179
- Cleanup is scoped to positively identified owned unused setup shells: use the
180
- version-matched native exact-terminal close operation for each such terminal only.
181
- Never blanket-close a workspace. Preserve dirty worktrees, unpushed candidates,
182
- review evidence, user-owned terminals, unknown liveness, `user_takeover`, and
183
- ambiguous publication state. Close the finite manager's own exact terminal
184
- through the native guide. Self-close is the final action; perform no record
185
- write, cleanup, or other work afterward.
217
+ Cleanup of PR-job setup shells stays scoped to positively identified owned unused
218
+ setup shells: use the native exact-terminal close operation for each only.
219
+ Preserve dirty worktrees, unpushed candidates, review evidence, user-owned
220
+ terminals, unknown liveness, `user_takeover`, and ambiguous publication state.
221
+
222
+ For the manager pass only, verify native run/workspace identity, exclusive
223
+ automation ownership, no unsettled descendants, and a fresh terminal inventory
224
+ containing only this manager and its proven unused setup shells. No other pass
225
+ may target this workspace. If an unexpected terminal or user takeover is present,
226
+ do not bulk-close; preserve the workspace and report the hold at its durable
227
+ decision location. Never bulk-close a shared manager workspace or a PR-job worktree.
228
+
229
+ After saving continuity, use the version-matched native workspace retirement:
230
+ `terminal close --worktree id:<exact-native-workspace-id> --all --json`.
231
+ Copy the complete ID from the run/workspace receipt; never use a name, branch,
232
+ path-only selector, or `active` for this destructive operation.
233
+ Self-close is the final action; perform no record write or cleanup afterward.
234
+ A failed or uncertain close is not proof of retirement. The next admitted pass
235
+ reconciles prior retirement from native state before trusting saved intent.
236
+ Retire only positively identified completed pass resources; do not kill another
237
+ live or unknown manager. Remove an old pass worktree only with native cleanup
238
+ after terminal retirement is confirmed and its Git state is clean, with no
239
+ unpushed commits, retained evidence, children, or user-owned work. Never use
240
+ recursive shell deletion. Failed cleanup remains recorded, not silently forgotten.
241
+
242
+ The activation canary must additionally prove distinct workspace IDs per pass,
243
+ cross-workspace lane admission, self-retirement and absence after client reconnect,
244
+ and bounded retained worktrees over repeated passes. A shell-only close test does
245
+ not prove agent resume-record retirement. Do not activate on source checks alone.
186
246
 
187
247
  ## Recovery and limits
188
248
 
@@ -110,7 +110,7 @@ differs from merged; human merges.
110
110
 
111
111
  ## Watch health
112
112
 
113
- Native review and watch lanes use fresh finite sessions in persistent dedicated
113
+ Native review and watch lanes use fresh finite sessions in isolated per-pass
114
114
  workspaces on staggered 15-minute schedules. Each admits at most five executing PR jobs;
115
115
  waiting PRs remain covered without reserving slots. Bounded PR jobs own their
116
116
  events, use per-PR worktrees, and settle after descendants settle. Build no
@@ -1,10 +1,12 @@
1
1
  # Review manager prompt
2
2
 
3
- You are a fresh finite review-manager session in its persistent dedicated Orca workspace. Enter
3
+ You are a fresh finite review-manager session in its isolated per-pass Orca workspace. Enter
4
4
  through the installed `axstack-review` skill; that skill loads its packaged
5
5
  `../axstack/references/automations.md` contract by relative reference. Discover
6
6
  every eligible peer-review event and invoke the skill through Orca for each
7
7
  admitted bounded PR job. Keep complete coverage separate from the five-job
8
8
  execution cap, preserve exact ownership and receipts, settle completed trees,
9
9
  and stay quiet when nothing changed. Reconcile before admission, save durable
10
- continuity, then self-close as the final action. Never check out a PR branch here.
10
+ continuity outside this workspace, then retire only this pass workspace as the
11
+ final action under the contract's ownership guards. Reconcile the whole lane,
12
+ not just this workspace. Never check out a PR branch here.
@@ -1,11 +1,12 @@
1
1
  # Watch manager prompt
2
2
 
3
- You are a fresh finite watch-manager session in its persistent dedicated Orca workspace. Enter
3
+ You are a fresh finite watch-manager session in its isolated per-pass Orca workspace. Enter
4
4
  through the installed `axstack-watch` skill; that skill loads its packaged
5
5
  `../axstack/references/automations.md` contract by relative reference. Discover
6
6
  every eligible own-PR event and invoke the skill through Orca for each admitted
7
7
  bounded PR job. Keep complete coverage separate from the five-job execution
8
8
  cap, preserve exact ownership, candidates, holds, and receipts, settle
9
9
  completed trees, and stay quiet when nothing changed. Reconcile before
10
- admission, save durable continuity, then self-close as the final action. Never
11
- check out a PR branch here.
10
+ admission, save durable continuity outside this workspace, then retire only this
11
+ pass workspace as the final action under the contract's ownership guards.
12
+ Reconcile the whole lane, not just this workspace. Never check out a PR branch here.
@@ -5,6 +5,8 @@ description: When a candidate PR needs final review, use axstack-review for conf
5
5
 
6
6
  # Review
7
7
 
8
+ Manual invocation does not enter the scheduled manager lifecycle; never close the user’s chat or workspace.
9
+
8
10
  Produce one evidence-bound verdict for an exact candidate revision using the
9
11
  review count and model routing required by its mode. Report within the
10
12
  requested authority; the human merges unless separately authorized otherwise.
@@ -5,6 +5,8 @@ description: When babysitting an existing PR, use axstack-watch to monitor or ma
5
5
 
6
6
  # Watch
7
7
 
8
+ Manual invocation does not enter the scheduled manager lifecycle; never close the user’s chat or workspace.
9
+
8
10
  Leave each adopted PR with one accountable owner, current readiness evidence,
9
11
  and user-facing updates that name its current milestone and next wake or
10
12
  condition.
@@ -71,8 +73,8 @@ Read-only checks and updates to the already-owned local record need no runtime
71
73
  load. When the watch needs a new owner or automated observation, first read
72
74
  [Watch runtime](references/watch-runtime.md) and then
73
75
  [Orca runtime](../axstack/references/orca-runtime.md). Reconcile before creating
74
- anything. Each native watch-manager pass starts a fresh finite session in one
75
- persistent dedicated workspace on its staggered 15-minute schedule, covers
76
+ anything. Each native watch-manager pass starts a fresh finite session in an
77
+ isolated per-pass workspace on its staggered 15-minute schedule, covers
76
78
  every eligible own PR, and starts only bounded actionable-event jobs. Waiting PRs reserve no execution slots and
77
79
  there is no watch deadline for manager automation. `axstack-monitor` stays an
78
80
  optional read-only observer that never sends. One read-only PR observation
@@ -14,9 +14,10 @@ stop task-owned registrations at completion, cancellation, or expiry.
14
14
  ## Native watch manager
15
15
 
16
16
  The separate native watch manager lane follows the
17
- [native PR-manager contract](../../axstack/references/automations.md). It reuses
18
- one persistent dedicated workspace while each scheduled pass uses a fresh
19
- finite session at minutes `7,22,37,52`. It scans every eligible own PR and
17
+ [native PR-manager contract](../../axstack/references/automations.md). Each pass
18
+ uses a new isolated workspace and fresh finite session at minutes `7,22,37,52`.
19
+ Continuity survives outside disposable workspaces; admission reconciles the
20
+ whole lane across workspaces. It scans every eligible own PR and
20
21
  admits at most five bounded actionable-event jobs. Waiting PRs stay covered
21
22
  without reserving slots. Each job uses its own repository-parented worktree and
22
23
  settles with all descendants; no model, per-PR timer, or polling loop waits for