axstack 0.20.10 → 0.20.11

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/docs/workflows.md CHANGED
@@ -50,8 +50,8 @@ role.
50
50
 
51
51
  | Preset | Author | Ordered peer reviewers | Astra / Fable advisers | Auditor |
52
52
  | --- | --- | --- | --- | --- |
53
- | `mixed` | Sol medium | Sol medium; Opus medium | Astra high / Fable high | Luna max |
54
- | `codex-only` | Sol medium | Sol medium; Luna xhigh | Astra high / unavailable | Luna max |
53
+ | `mixed` | Sol medium | Sol medium; Opus medium | Astra high / Fable high | Luna xhigh |
54
+ | `codex-only` | Sol medium | Sol medium; Luna xhigh | Astra high / unavailable | Luna xhigh |
55
55
  | `claude-only` | Opus medium | Opus medium; Sonnet xhigh | unavailable / Fable high | Sonnet xhigh |
56
56
 
57
57
  The installed `<skills-dir>/axstack/roles.json` adds the selected preset name:
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "axstack",
3
- "version": "0.20.10",
3
+ "version": "0.20.11",
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",
@@ -124,7 +124,7 @@
124
124
  "provider": "codex",
125
125
  "model": "gpt-6-luna",
126
126
  "modeId": "full-access",
127
- "thinkingOptionId": "max",
127
+ "thinkingOptionId": "xhigh",
128
128
  "notes": "Independent visual explanation reviewer: checks the exact artifact for source fidelity and rendered behavior where warranted. Any artifact change invalidates its review. Validate configured availability at launch; hold affected work without fallback."
129
129
  },
130
130
  {
@@ -160,7 +160,7 @@
160
160
  "provider": "codex",
161
161
  "model": "gpt-6-luna",
162
162
  "modeId": "full-access",
163
- "thinkingOptionId": "max",
163
+ "thinkingOptionId": "xhigh",
164
164
  "notes": "Read-only end-of-run and checkpoint auditor. Collects scope and outcome evidence with counts and denominators and reports PASS, FAIL, or UNKNOWN without inventing numbers. Never edits, merges, activates, or audits itself."
165
165
  },
166
166
  {
@@ -124,7 +124,7 @@
124
124
  "provider": "codex",
125
125
  "model": "gpt-6-luna",
126
126
  "modeId": "full-access",
127
- "thinkingOptionId": "max",
127
+ "thinkingOptionId": "xhigh",
128
128
  "notes": "Independent visual explanation reviewer: checks the exact artifact for source fidelity and rendered behavior where warranted. Any artifact change invalidates its review. Validate configured availability at launch; hold affected work without fallback."
129
129
  },
130
130
  {
@@ -160,7 +160,7 @@
160
160
  "provider": "codex",
161
161
  "model": "gpt-6-luna",
162
162
  "modeId": "full-access",
163
- "thinkingOptionId": "max",
163
+ "thinkingOptionId": "xhigh",
164
164
  "notes": "Read-only end-of-run and checkpoint auditor. Collects scope and outcome evidence with counts and denominators and reports PASS, FAIL, or UNKNOWN without inventing numbers. Never edits, merges, activates, or audits itself."
165
165
  },
166
166
  {
@@ -238,6 +238,9 @@ or send outcome, not pending CI. Waiting state belongs in GitHub and the compact
238
238
  record, never in an idle model, per-PR timer, or polling loop.
239
239
  Follow the [private evidence archive](evidence-archive.md) when evidence is the
240
240
  only local state to preserve; archive success does not relax any other guard.
241
+ For a completed, forge-merged PR-job, classified reviewer scratch may instead
242
+ follow [axstack-cleanup](../../axstack-cleanup/SKILL.md)'s compact receipt and
243
+ exact-path guards. This does not release active jobs or manager pass workspaces.
241
244
 
242
245
  ## Review and repair authority
243
246
 
@@ -307,6 +310,8 @@ terminals, unknown liveness, `user_takeover`, and ambiguous publication state.
307
310
  Never classify all dirt as evidence. If explicitly classified evidence is the
308
311
  last retention reason, apply and verify the [private evidence archive](evidence-archive.md),
309
312
  update durable continuity, and read it back before native retirement.
313
+ The completed, forge-merged PR-job reviewer scratch exception above uses
314
+ axstack-cleanup; it never changes manager pass preservation or retirement guards.
310
315
 
311
316
  For the manager pass only, verify native run/workspace identity, exclusive
312
317
  automation ownership, no unsettled descendants, and a fresh terminal inventory
@@ -95,8 +95,13 @@ owner. Remove only that exact validated owned path, with no glob or parent-root
95
95
  deletion; never wipe a general cache. Uncertain temporary files are preserved
96
96
  for later reconciliation. Incidental tool-managed caches are not review evidence.
97
97
  Before removing a reviewer worktree, preserve its report and supporting evidence
98
- in the driver's Orca workspace and update the run record's paths. Terminal
99
- release alone is not permission to discard evidence or remove the worktree.
98
+ in the driver's Orca workspace and update the run record's paths. For a settled
99
+ merged run with a confirmed forge merge, the compact durable receipt in
100
+ [axstack-cleanup](../../axstack-cleanup/SKILL.md) satisfies this preservation
101
+ rule only after its classification, readback, and removal guards pass. Preserve
102
+ active or unmerged review evidence and unique evidence whose bytes must survive;
103
+ uncertain ownership or evidence holds. Terminal release alone is not permission
104
+ to discard evidence or remove the worktree.
100
105
 
101
106
  ## Consume, settle, and recover
102
107
 
@@ -25,7 +25,7 @@ immediately before an actual auditor profile or session dispatch. Ordinary
25
25
  audit reading and record writing do not load it, and the auditor never
26
26
  dispatches.
27
27
 
28
- Core owns the `axstack-auditor` profile (codex/gpt-6-luna max) and its
28
+ Core owns the `axstack-auditor` profile (codex/gpt-6-luna xhigh) and its
29
29
  invocation. This skill governs what that auditor reads, measures, and proposes.
30
30
  The user-chosen improvement mode is a tested, independently reviewed PR that a
31
31
  human merges.
@@ -34,8 +34,8 @@ Never clean a manual chat, the current driver, `user_takeover`, an active or
34
34
  unknown worker, an unsettled descendant, or a resource with ambiguous ownership.
35
35
  Preserve dirty or unknown files, unpushed commits, unmerged useful work,
36
36
  ambiguous publication, and evidence that has not been durably preserved. Do not
37
- force, bulk-clean, override a hook failure, edit a runtime database, or add a
38
- scheduler, daemon, or state machine.
37
+ force native removal, bulk-clean, override a hook failure, edit a runtime
38
+ database, or add a scheduler, daemon, or state machine.
39
39
 
40
40
  ## Reconcile each candidate
41
41
 
@@ -57,13 +57,51 @@ Classify exact evidence files individually. Save the compact cleanup decision
57
57
  and identities in the private run record or another configured durable private
58
58
  location outside disposable worktrees. When the evidence archive applies, use
59
59
  its helper with either the existing PR identity or the non-PR Run and Task
60
- identity; never invent a PR number. Read back both the durable record and the
61
- archive manifest, including hashes and exact identities, before removing any
62
- source copy or workspace.
60
+ identity; never invent a PR number. Read back the durable record and, when an
61
+ archive is used, its manifest, including hashes and exact identities, before
62
+ removing any source copy or workspace.
63
63
 
64
64
  Archive success proves only preservation of the listed bytes. It does not prove
65
65
  settlement, exit, ownership, a clean worktree, publication, or removal safety.
66
66
 
67
+ For a settled merged run whose forge merge is confirmed, generated reviewer
68
+ scratch is disposable after a compact durable receipt is written outside the
69
+ review worktree and read back. Bind that receipt to the exact repository, Run,
70
+ Task, Dispatch, reviewer workspace and terminal, exact head SHA and base SHA,
71
+ review verdict, coverage and limitations, test and CI result pointers, and the
72
+ user authorization and scope for cleanup. A raw reviewer report may be discarded
73
+ after its verdict and limitations are compacted into that read-back receipt;
74
+ use the private evidence archive for unique evidence whose exact bytes must
75
+ survive. Raw reproducible probes and logs need not be archived solely to retire
76
+ a completed review worktree.
77
+
78
+ Use only a named run-owned scratch prefix recorded with the Dispatch. Require
79
+ `git status --porcelain=v1 -z --untracked-files=all` to show all dirt as
80
+ untracked files inside that run-owned scratch prefix; any tracked, staged,
81
+ unmerged or unpushed work, dirty source, or dirt outside it holds. Validate that
82
+ the detached checkout still matches the reviewed head and check local commits
83
+ against recorded remote refs; unknown divergence holds. Validate that
84
+ the exact reviewed scratch prefix names the recorded directory inside the exact
85
+ reviewer worktree, never a repository-root target or symlink. Inspect every
86
+ descendant for symlinks, hard links, special files, unknown content, user-owned
87
+ files, or ignored files; any mismatch holds. Active or `user_takeover` terminals
88
+ also hold.
89
+
90
+ List the exact scoped path and all descendants with their types, confirm each
91
+ belongs to generated reviewer scratch, and record that inventory. Dry-run the
92
+ exact scoped path from the reviewer worktree root with
93
+ `git clean -nd -- <exact reviewed scratch prefix>`
94
+ with the concrete reviewed relative prefix substituted for the angle-bracket
95
+ notation. Compare its sole target to the classified directory; an empty,
96
+ partial, or different result holds. Re-read the compact receipt, complete Git
97
+ status, directory contents, native ownership and liveness immediately before
98
+ removal; any change holds. Then run `git clean -fd -- <same exact prefix>` with
99
+ the identical concrete path and recheck clean Git status, recording the path and
100
+ outcome. Use no unresolved variable as a destructive target. Never use `-x`, a
101
+ glob, a repository-root target, extra force, or broad clean.
102
+ This scratch decision does not waive any other preservation or native removal
103
+ guard.
104
+
67
105
  ## Apply distinct native operations
68
106
 
69
107
  Treat these operations as separate decisions and receipts: