axstack 0.11.5 → 0.11.6
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/package.json
CHANGED
|
@@ -75,7 +75,8 @@ Read `cursor.json` and `decisions/`. Work is due for:
|
|
|
75
75
|
- a `deferred[]` entry whose head still matches discovery;
|
|
76
76
|
- an expired repair cap;
|
|
77
77
|
- a dispatch marker older than 3 h;
|
|
78
|
-
- an unsettled Orca delivery in `pending_settlement[]
|
|
78
|
+
- an unsettled Orca delivery in `pending_settlement[]`;
|
|
79
|
+
- a `runtime_refusal` record, because its re-test needs a launched tick.
|
|
79
80
|
|
|
80
81
|
An `open` decision is not due. Write `pending.json` with the fingerprint,
|
|
81
82
|
`observed_at`, `seen[]`, full discovery list, and hashed subset. Append
|
|
@@ -344,7 +345,9 @@ its dispatch without such a retention record is a health finding. The run direct
|
|
|
344
345
|
`repair_caps{url: {expires_at}}`, `abandon_count{head: n}`,
|
|
345
346
|
`processed_reviews[]` (`review_id`, `pr`, `head`, `digest`),
|
|
346
347
|
`deploy_on_push{repo: [branches]}`,
|
|
347
|
-
`legacy_automation_reviews[]`, `health[]
|
|
348
|
+
`legacy_automation_reviews[]`, `health[]`,
|
|
349
|
+
`runtime_refusal{code, first_seen, last_seen}` (absent when no runtime
|
|
350
|
+
hold is open);
|
|
348
351
|
- `pending.json`, `precheck.log` — driver precheck only;
|
|
349
352
|
- `decisions/<token>.json` — writers assigned by the lifecycle table;
|
|
350
353
|
- `watchdog.log` and `watchdog-state.json` (occurrence `first_observed` values
|
|
@@ -371,7 +374,34 @@ delivery uses [axstack-relay](../../axstack-relay/SKILL.md).
|
|
|
371
374
|
- Enumerate deploy-on-push branches from both repair repositories before
|
|
372
375
|
enabling and store them in `cursor.json`; re-check on allowlist changes.
|
|
373
376
|
- A later tick observing resolution or an explicit user decision clears a
|
|
374
|
-
hold. Silence never clears one.
|
|
377
|
+
hold. Silence never clears one. For a hold caused by an Orca runtime
|
|
378
|
+
refusal — a sub-worker dispatch rejected for depth, a launch capability the
|
|
379
|
+
runtime declines — observing resolution means re-attempting the refused
|
|
380
|
+
operation, once per tick, on the next eligible PR: success clears the hold.
|
|
381
|
+
The hold is keyed on Orca's structured error code (for the depth case,
|
|
382
|
+
`nested_worker_depth_exceeded`), stored in `cursor.json` as
|
|
383
|
+
`runtime_refusal {code, first_seen, last_seen}`; the same code keeps the
|
|
384
|
+
hold and updates `last_seen` without a new health line, a different code is
|
|
385
|
+
a new finding. Prose is never the key. When `worker-start` itself is
|
|
386
|
+
refused after the child worktree was created, there is no worker, so the
|
|
387
|
+
settlement proof does not apply; the driver reads the receipt's `failedStage`
|
|
388
|
+
and `residualResources` first. With no Dispatch and no residual resources
|
|
389
|
+
the no-worker branch applies: the worktree's HEAD must equal the pinned
|
|
390
|
+
head and `git status --porcelain` must be empty, and only then does the
|
|
391
|
+
driver remove the worktree, its directory and branch in the same tick.
|
|
392
|
+
With a Dispatch or any residual resource the failed start owns runtime
|
|
393
|
+
state, and retaining alone is not recovery: the driver follows the
|
|
394
|
+
runtime's recovery guide. With a Dispatch: `worker-list` for that run, and
|
|
395
|
+
the row's `nextAction` is an object `{kind, argv}` — a non-empty `argv` is
|
|
396
|
+
run verbatim through the same Orca executable and nothing else, while
|
|
397
|
+
`kind: none` authorizes no action beyond inspection and retention. With
|
|
398
|
+
residual resources but no Dispatch there is no row: the mutation itself is
|
|
399
|
+
recovered through `request-show` on the receipt's request id. The no-worker
|
|
400
|
+
branch applies only after the resources are proven gone. It never retries
|
|
401
|
+
in the same tick. Anything unproven retains the worktree with a health line
|
|
402
|
+
naming the stage and the resources. Persisted configuration such
|
|
403
|
+
as `orca-data.json` is never evidence either way; it is a snapshot that
|
|
404
|
+
lags the live setting, and the driver never reads it.
|
|
375
405
|
|
|
376
406
|
## Cutover
|
|
377
407
|
|