axstack 0.34.3 → 0.34.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/docs/getting-started.md +4 -2
- package/docs/host-operations.md +3 -4
- package/docs/installation.md +2 -0
- package/docs/workflows.md +1 -2
- package/package.json +1 -1
- package/skills/axstack/references/autopilot.md +1 -1
- package/skills/axstack/references/run-record.md +2 -1
- package/skills/axstack/references/t3-runtime.md +16 -7
- package/skills/axstack/references/ui-verification.md +8 -12
- package/skills/axstack-diagram/SKILL.md +2 -1
- package/skills/axstack-explain/SKILL.md +3 -3
- package/skills/axstack-explain/references/inline-pages.md +1 -3
- package/skills/axstack-watch/SKILL.md +1 -1
- package/skills/axstack-watch/references/watch-runtime.md +5 -8
package/docs/getting-started.md
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
# Getting started
|
|
2
2
|
|
|
3
|
+
Linux is the only supported host OS.
|
|
4
|
+
|
|
3
5
|
Install Axstack, check your host, then ask for one bounded task in T3 Code.
|
|
4
6
|
For the mental model, read [concepts](concepts.md); for other journeys, use
|
|
5
7
|
[guides](guides.md).
|
|
@@ -24,8 +26,8 @@ axstack check --harness codex
|
|
|
24
26
|
```
|
|
25
27
|
|
|
26
28
|
Installation writes owned skills and instructions, preserving unrelated content,
|
|
27
|
-
and fetches the pinned archify tool for explicit viewer requests. Reload the
|
|
28
|
-
installation. Use the [installation reference](installation.md) for other
|
|
29
|
+
and fetches the pinned archify tool for explicit viewer requests. Reload the
|
|
30
|
+
harness's skills in T3 after installation. Use the [installation reference](installation.md) for other
|
|
29
31
|
harnesses, source installs or conflicts.
|
|
30
32
|
|
|
31
33
|
A successful check exits 0. Its five capability rows mean:
|
package/docs/host-operations.md
CHANGED
|
@@ -134,10 +134,9 @@ messages under the accepted fleet risk.
|
|
|
134
134
|
|
|
135
135
|
## Chat-run watch activation
|
|
136
136
|
|
|
137
|
-
A bound T3 schedule
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
member, or failed re-arming restore five minutes. Human-only waits use 60 minutes
|
|
137
|
+
A bound T3 schedule wakes the driver thread on a normal 30-minute cadence.
|
|
138
|
+
Unavailable or unarmed native watches for any open member, failed re-arming,
|
|
139
|
+
or a resumed question run restore five minutes. Human-only waits use 60 minutes
|
|
141
140
|
under [Chat-run watch runtime](../skills/axstack-watch/references/watch-runtime.md#chat-run-watch).
|
|
142
141
|
A T3 "stopped watching" notice triggers a PR re-check and native re-arm in that same turn.
|
|
143
142
|
The run record holds the schedule ID and driver thread.
|
package/docs/installation.md
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
# Installation
|
|
2
2
|
|
|
3
|
+
Linux is the only supported host OS.
|
|
4
|
+
|
|
3
5
|
Axstack's Bun CLI installs owned chat skills plus one selected role snapshot and
|
|
4
6
|
checks host capabilities. T3 Code is the only supported active runtime. The CLI
|
|
5
7
|
does not dispatch agents, edit T3 settings, run a scheduler, or maintain a
|
package/docs/workflows.md
CHANGED
|
@@ -151,8 +151,7 @@ later installation changes without re-resolution.
|
|
|
151
151
|
|
|
152
152
|
Peer roles use the stable IDs `axstack-reviewer-primary` and
|
|
153
153
|
`axstack-reviewer-peer`; their provider/class mappings come only from the
|
|
154
|
-
selected preset. The mixed
|
|
155
|
-
Opus medium. The mixed peer coordinator and review-lane binding
|
|
154
|
+
selected preset and the ordered reviewer table above. The mixed peer coordinator and review-lane binding
|
|
156
155
|
`axstack-owner` uses Sol high and never reviews. `axstack-reviewer-secondary`
|
|
157
156
|
is used in the authored mapping and, alongside `axstack-reviewer-primary`,
|
|
158
157
|
in codebase findings mode.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "axstack",
|
|
3
|
-
"version": "0.34.
|
|
3
|
+
"version": "0.34.4",
|
|
4
4
|
"description": "Axstack installer and setup CLI: installs owned chat skills and role data, configures supported harness settings, and checks T3 Code capabilities.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"claude-code",
|
|
@@ -89,7 +89,7 @@ Never require a manual `axstack-watch` invocation.
|
|
|
89
89
|
The driver remains the single owner and sole run-record writer.
|
|
90
90
|
Never create a per-PR session or an ownership hand-off.
|
|
91
91
|
Read the [T3 runtime boundary](t3-runtime.md) and use its bound
|
|
92
|
-
`schedule_task` wake (`everyMs:
|
|
92
|
+
`schedule_task` wake (`everyMs:1800000`), recording the scheduledTaskId.
|
|
93
93
|
Follow [Native PR links and watches](t3-runtime.md#native-pr-links-and-watches)
|
|
94
94
|
alongside that bound schedule.
|
|
95
95
|
Apply [Chat-run watch runtime](../../axstack-watch/references/watch-runtime.md#chat-run-watch)
|
|
@@ -136,7 +136,8 @@ Record the reason for each driver-elected repair in `Decisions`.
|
|
|
136
136
|
|
|
137
137
|
Record concise IDs, SHAs, URLs, status, timestamps, next actions, and evidence
|
|
138
138
|
references. Private records include the checkout, evidence and worktree paths
|
|
139
|
-
that the schema requires. Include no
|
|
139
|
+
that the schema requires. Include no other machine-specific paths in private records.
|
|
140
|
+
Include no tokens, transcripts, full worker output,
|
|
140
141
|
credentials or private prompts. Publication of a sanitized summary needs separate
|
|
141
142
|
authority.
|
|
142
143
|
|
|
@@ -238,15 +238,24 @@ the failed attempt's branch is kept until salvage. Unknown liveness holds
|
|
|
238
238
|
replacement; reconcile the old writer before admitting another.
|
|
239
239
|
|
|
240
240
|
With an unsettled launched thread, the driver turn must end only while a bound
|
|
241
|
-
`schedule_task` with `bindToCurrentThread:true
|
|
242
|
-
|
|
241
|
+
`schedule_task` with `bindToCurrentThread:true` is armed at the default
|
|
242
|
+
`everyMs:1800000` or for its 5-minute recovery cases in
|
|
243
|
+
[Chat-run watch runtime](../../axstack-watch/references/watch-runtime.md#chat-run-watch),
|
|
244
|
+
with its ID recorded. Each wake must reconcile all unsettled runs, including a
|
|
243
245
|
writer that died without sending; failed runs hold incomplete work. The watch
|
|
244
246
|
inherits the driver model/workspace and adds no runtime of Axstack's own.
|
|
245
247
|
T3 queues a scheduled wake even while the driver is busy, so copies pile up.
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
248
|
+
After a provider error, server restart or Stop, T3 holds the queue: held
|
|
249
|
+
messages do not start, and later queued messages are held too.
|
|
250
|
+
At the start of each run-watch wake, the driver lists every queued message with
|
|
251
|
+
`t3_queue_list` and treats it as stranded.
|
|
252
|
+
The driver must cancel every queued copy of its own run-watch prompt.
|
|
249
253
|
One wake reconciles all those copies.
|
|
254
|
+
For each stranded worker receipt or PR-watch update, the driver must read it
|
|
255
|
+
with `t3_queue_read`, act on it in that wake, then cancel it with `t3_queue_cancel`.
|
|
256
|
+
A queued user message is a pending local action, so the driver must keep every
|
|
257
|
+
queued user message and report it in its reply even on an otherwise unchanged
|
|
258
|
+
wake, because only the user resumes a held queue.
|
|
250
259
|
|
|
251
260
|
Once nothing remains unsettled the driver must `delete_scheduled_task` for the
|
|
252
261
|
run watch and use `list_scheduled_tasks` to read back its absence; an uncertain
|
|
@@ -291,10 +300,10 @@ If re-arming fails, restore the bound 5-minute schedule.
|
|
|
291
300
|
When the run waits only on a user decision or a human-only step, including a
|
|
292
301
|
user merge, with no unsettled worker and no PR needing watch events, change
|
|
293
302
|
the run watch cadence to 60 minutes at once.
|
|
294
|
-
When work restarts, restore the normal
|
|
303
|
+
When work restarts, restore the normal 30-minute cadence.
|
|
295
304
|
Keep native PR watches.
|
|
296
305
|
For chat-run cadence changes, follow [Chat-run watch runtime](../../axstack-watch/references/watch-runtime.md#chat-run-watch)
|
|
297
|
-
for 30-minute
|
|
306
|
+
for the normal 30-minute cadence, 5-minute recovery, and schedule update read-back.
|
|
298
307
|
The schedule still reconciles author and review tasks, readiness, and release.
|
|
299
308
|
When a PR merges or closes, or its watch is torn down, call `unwatch_pull_request`
|
|
300
309
|
and keep its link.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# UI verification
|
|
2
2
|
|
|
3
|
-
Every Playwright, browser, or rendered-UI check outside the three named
|
|
3
|
+
Every Playwright, browser, or rendered-UI check outside the three named browser
|
|
4
4
|
exceptions, including a "confirm it in the browser" step, goes through async
|
|
5
5
|
`delegate_task` to `axstack-ui-verifier` from the run's role snapshot. Give it the exact build, URL, or artifact and the private
|
|
6
6
|
dispatch's evidence folder. The verifier is read-only: it never edits source.
|
|
@@ -8,21 +8,16 @@ The PR writer remains the sole writer.
|
|
|
8
8
|
|
|
9
9
|
Before using a PR preview URL, the UI verifier must read [PR previews](preview.md).
|
|
10
10
|
|
|
11
|
-
The first named
|
|
11
|
+
The first named browser exception is archify `finalize` as a headless build gate.
|
|
12
12
|
Keep finalize outputs only in the private evidence folder.
|
|
13
13
|
Never replace the verifier's rendered pass with finalize.
|
|
14
14
|
|
|
15
|
-
The second named
|
|
15
|
+
The second named browser exception is the driver's two `html_preview`
|
|
16
16
|
runs at 728px dark and 360px light.
|
|
17
|
-
Scan the exact bytes of every page for remote src, srcset, and href on loaded
|
|
18
|
-
resources, `@import`, `url()`, `fetch`, XHR, WebSocket, EventSource, and meta refresh.
|
|
19
|
-
Reject scan matches except local url(#id) references such as SVG markers and gradients.
|
|
20
|
-
Require correct layout, theme, zero console errors, empty `missingImages`,
|
|
21
|
-
height, network, and word count.
|
|
22
17
|
Never replace the verifier's interaction pass with `html_preview`.
|
|
23
18
|
Follow [Inline pages](../../axstack-explain/references/inline-pages.md) for the page checks.
|
|
24
19
|
|
|
25
|
-
The third named
|
|
20
|
+
The third named browser exception permits dispatched roles to use
|
|
26
21
|
`html_preview` as a non-publishing self-check.
|
|
27
22
|
Dispatched-role self-checks never replace the driver's two previews or the `axstack-ui-verifier` pass.
|
|
28
23
|
Dispatched roles never call `html_render`.
|
|
@@ -36,8 +31,8 @@ Candidate browser and visual checks must run in the delegated `axstack-ui-verifi
|
|
|
36
31
|
For every interactive page, require a real-browser `axstack-ui-verifier` interaction pass.
|
|
37
32
|
Give the evidence path and SHA-256 of the exact bytes in the verifier brief.
|
|
38
33
|
The verifier serves the exact bytes on loopback.
|
|
39
|
-
|
|
40
|
-
|
|
34
|
+
The verifier opens the page with `preview_open` using `open:false`.
|
|
35
|
+
The verifier checks clicks, keyboard, focus order, screen-reader names, expanded states, and reduced motion.
|
|
41
36
|
Require that `performance.getEntriesByType('resource')` is empty.
|
|
42
37
|
The detached-checkout rule does not apply to a page without a candidate.
|
|
43
38
|
|
|
@@ -57,7 +52,8 @@ Keep browser recipes tool-neutral for the verifier.
|
|
|
57
52
|
|
|
58
53
|
## Proof standards
|
|
59
54
|
|
|
60
|
-
Apply these standards
|
|
55
|
+
Apply these standards wherever referenced, including the verifier's candidate checks
|
|
56
|
+
and inline-page interaction pass.
|
|
61
57
|
|
|
62
58
|
Drive the real user path.
|
|
63
59
|
Capture the action, the resulting state and its side effects.
|
|
@@ -13,7 +13,7 @@ Use archify HTML only on an explicit viewer request.
|
|
|
13
13
|
The configured `axstack-explainer` authors the viewer; follow [Archify](references/archify.md).
|
|
14
14
|
Use inline SVG or CSS inside inline pages.
|
|
15
15
|
Never use Mermaid in inline pages.
|
|
16
|
-
Use Mermaid for chat
|
|
16
|
+
Use Mermaid for chat, GitHub, and docs.
|
|
17
17
|
Include `accTitle` and `accDescr` in each Mermaid view.
|
|
18
18
|
Never use theme init in Mermaid.
|
|
19
19
|
Split large Mermaid diagrams into views.
|
|
@@ -23,5 +23,6 @@ Explain owns evidence, claim labels, the word cap, dispatch, and delivery.
|
|
|
23
23
|
Diagram owns format and visual rules.
|
|
24
24
|
Never call explain.
|
|
25
25
|
For direct use, keep fidelity and rendered QA.
|
|
26
|
+
For direct viewer requests, follow [Explain's declared launch path](../axstack-explain/SKILL.md#2-choose-proportional-output).
|
|
26
27
|
|
|
27
28
|
Ideas: [archify](https://github.com/tt-a1i/archify), [diagram-design](https://github.com/cathrynlavery/diagram-design), [visual-explainer](https://github.com/nicobailon/visual-explainer), [Matt Pocock](https://github.com/mattpocock/skills), and [poteto](https://github.com/poteto/how); guidance uses Axstack's own words.
|
|
@@ -71,11 +71,11 @@ Diagram never calls explain.
|
|
|
71
71
|
Each card has at most 40 words and cites its source, as defined in
|
|
72
72
|
[Archify](../axstack-diagram/references/archify.md).
|
|
73
73
|
Count node labels, headings, captions, and all non-card text.
|
|
74
|
-
2. Use chat only for an explicit chat request, an answer
|
|
75
|
-
or inline-page fallback.
|
|
74
|
+
2. Use chat only for an explicit chat request, an answer outside the description's conditions,
|
|
75
|
+
or inline-page fallback.
|
|
76
76
|
Use a compact diagram when useful.
|
|
77
77
|
For chat answers, never dispatch an agent when applying its Mermaid rules inline.
|
|
78
|
-
3. For
|
|
78
|
+
3. For the conditions in the description, create an inline page by default.
|
|
79
79
|
Honor an explicitly requested artifact format.
|
|
80
80
|
Use archify only on an explicit viewer request, through the configured
|
|
81
81
|
`axstack-explainer`. The reply adds only what the page omits.
|
|
@@ -48,7 +48,7 @@ Scan for `@import`, `url()`, `fetch`, XHR, WebSocket, EventSource, and meta refr
|
|
|
48
48
|
Reject scan matches except local `url(#id)` references such as SVG markers and gradients.
|
|
49
49
|
|
|
50
50
|
Before publishing, run `html_preview` at 728px dark and 360px light.
|
|
51
|
-
The driver's two previews are
|
|
51
|
+
The driver's two previews are a named browser exception to delegated browser checks.
|
|
52
52
|
Require correct layout, theme, height, network, word count, zero console errors,
|
|
53
53
|
and empty `missingImages`.
|
|
54
54
|
Check every claim against its source.
|
|
@@ -59,8 +59,6 @@ For every interactive page, require a real-browser `axstack-ui-verifier` pass
|
|
|
59
59
|
for clicks, keyboard, and expanded states.
|
|
60
60
|
Give the evidence path and SHA-256 of the exact bytes in the verifier brief.
|
|
61
61
|
Follow [UI verification](../../axstack/references/ui-verification.md) for that pass.
|
|
62
|
-
The pass covers focus order, screen-reader names, reduced motion, and an empty
|
|
63
|
-
`performance.getEntriesByType('resource')` list.
|
|
64
62
|
|
|
65
63
|
## Publish or fall back
|
|
66
64
|
|
|
@@ -78,7 +78,7 @@ load. When the watch needs a new owner or automated observation, first read
|
|
|
78
78
|
[T3 runtime](../axstack/references/t3-runtime.md). Reconcile before creating
|
|
79
79
|
anything. Task-owned observations use their recorded wakes and expiry.
|
|
80
80
|
`axstack-monitor` stays an optional read-only observer for standalone watch
|
|
81
|
-
that never sends. For own open PRs in chat-run mode, use the 30-minute
|
|
81
|
+
that never sends. For own open PRs in chat-run mode, use the normal 30-minute cadence under
|
|
82
82
|
[Chat-run watch runtime](references/watch-runtime.md#chat-run-watch);
|
|
83
83
|
the bound T3 schedule resumes the original driver thread. One read-only PR observation needs
|
|
84
84
|
neither. Start no automation for a read-only check.
|
|
@@ -34,7 +34,7 @@ after verified readback, subject to the user's explicit publication boundary.
|
|
|
34
34
|
|
|
35
35
|
The initiating T3 thread remains the sole driver and `progress.md` writer.
|
|
36
36
|
Initially use the bound run watch from [T3 runtime](../../axstack/references/t3-runtime.md):
|
|
37
|
-
`schedule_task` with `bindToCurrentThread:true`, `everyMs:
|
|
37
|
+
`schedule_task` with `bindToCurrentThread:true`, `everyMs:1800000`, a stable
|
|
38
38
|
`clientRequestId`, and the authorized watch prompt. Record the schedule ID,
|
|
39
39
|
driver thread, chosen mechanism and native schedule lifetime; the watch inherits the driver binding at creation.
|
|
40
40
|
Follow [Provider bindings](../../axstack/references/t3-runtime.md#preflight-and-binding) before arming the watch and for schedule recreation on self-switch.
|
|
@@ -45,20 +45,17 @@ Use `update_scheduled_task` on the recorded schedule ID for cadence changes and
|
|
|
45
45
|
When the run waits only on a user decision or a human-only step, including a
|
|
46
46
|
user merge, with no unsettled worker and no PR needing watch events, change
|
|
47
47
|
the run watch cadence to 60 minutes at once.
|
|
48
|
-
When work restarts, restore the normal
|
|
48
|
+
When work restarts, restore the normal 30-minute cadence.
|
|
49
49
|
Keep native PR watches.
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
Because delegated tasks deliver native completion wakes, unsettled delegated
|
|
54
|
-
tasks alone keep the 30-minute fallback eligible.
|
|
50
|
+
Because launched writers, delegated tasks and native PR watches deliver their
|
|
51
|
+
own wakes, use the normal 30-minute cadence (`everyMs:1800000`) even while
|
|
52
|
+
launched work or the release step is unsettled.
|
|
55
53
|
A resumed `AXSTACK-QUESTION` child run lacks a native completion wake, so it
|
|
56
54
|
keeps the 5-minute cadence (`everyMs:300000`) until its result is accepted.
|
|
57
55
|
If native `watch_pull_request` is unavailable or unarmed for any open member,
|
|
58
56
|
or re-arming fails, restore the bound chat-run schedule to 5 minutes (`everyMs:300000`).
|
|
59
57
|
On the next event on a watched PR, re-evaluate the wake cadence against the
|
|
60
58
|
fallback conditions in the same turn.
|
|
61
|
-
If launched work or the release step becomes unsettled, restore the 5-minute cadence (`everyMs:300000`).
|
|
62
59
|
Apply these conditions before ending each driver turn, including after initial
|
|
63
60
|
arming or a work restart; the 60-minute human-only wait rule above still applies.
|
|
64
61
|
Read back each schedule update and record its receipt; an uncertain update holds affected work.
|