@starci/cli 1.0.0 → 1.0.1

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/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) StarCi contributors
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md CHANGED
@@ -4,5 +4,8 @@
4
4
  `starci app ...`; runtime operations use the `workflow`, `kernel`, `runtime`, `supervisor`, and
5
5
  `debug` groups.
6
6
 
7
+ Use Node.js 22.22.3 or later within the 22 branch, or 24.15.0 or later within the 24 branch, as
8
+ `package.json` `engines.node` declares. Runtime SQLite capability checks remain required.
9
+
7
10
  Install the package as an exact development dependency, then run `starci help`. Runtime commands
8
11
  locate an installed StarCi tree automatically. If none exists, run `starci runtime install`.
@@ -49,7 +49,7 @@ _starci() {
49
49
  git) _values 'verbs' 'backup[push local branch tips only to dated backup refs]' 'commit[commit staged work with the message convention and trailers]' 'land[verify a lane and fast-forward it onto local main without pushing]' 'sync[merge local main into a clean lane with rerere enabled]' ;;
50
50
  guard) _values 'verbs' 'command[judge one shell PreToolUse request from JSON on stdin]' 'footprint-scan[scan for fresh cross-repository links and linked worktrees]' 'raw[apply command policy and run the real host tool behind a PATH wrapper]' 'seat-tools[deny tools forbidden for the bound seat from JSON on stdin]' 'verify-commit[verify a protected-branch update carries only worker-owned paths]' ;;
51
51
  harness) _values 'verbs' 'open[open the local harness URL in the default browser]' 'start[start the harness API and UI or its named tunnel]' 'status[report whether the harness health endpoint is up]' 'stop[stop only harness processes recorded by harness start]' ;;
52
- kernel) _values 'verbs' 'archive[archive a workflow that will not finish: drop open jobs, retire asks, close Kernel and Tasks]' 'artifacts[list the indexed proof files of the workflow'\''s jobs, per job (read-only)]' 'autopilot[show or drive a workflow'\''s autopilot: switch it, sweep, bundle, defer to handover, release, extend]' 'consume-report[integrate the report a job filed; the Kernel must consume it before settle]' 'contract-release[release a frozen op family at the Supervisor release point (contract-freeze.yaml)]' 'coverage[show every FR, shape and proof case of the workflow'\''s scope as proven, stale or missing]' 'cut-seam[publish a cut seam'\''s interface, release its siblings on a stub, or reconcile a stub sibling]' 'decide[open, list or close an entry of the Kernel decision log (hypothesis, action, metric)]' 'decisions[list, open, claim, resolve or escalate Decision Items; the Kernel reads them first every wake]' 'dispatch[admit a routed job and launch its worker with --spawn; without it print the launch plan]' 'dispatch-ready[route and dispatch queued-ready jobs up to the workflow allowed parallelism]' 'enqueue[enqueue a work-unit job with its op, owned paths, records and retry lineage]' 'estimate[compute the size class and agent count of a slice from runtimes.yaml allocation.slicing]' 'extensions[list the file-based kernel extensions: verbs, status fields, boolean flags, load problems]' 'finish[finish an owner-approved workflow and release its kernel seat]' 'foundation[claim, land or declare a shared foundation (or none) for a workflow]' 'foundations[list the ledger'\''s shared foundations: owner, state, dependents, waits]' 'graph-edit[apply a logged, reversible light edit to the workflow'\''s unit jobs (drop, widen, wire, ...)]' 'hierarchy[project the agent hierarchy (starci/agent-hierarchy@1) of a workflow]' 'inbox[list the workflow'\''s pending inbox items, or acknowledge one with a disposition]' 'incident[raise, resolve or attach typed release conditions to a workflow incident]' 'kernel-ack-rev[record the runtime rev whose kernel files this Kernel has read]' 'kernel-proposal[file a tier-2 shared runtime change proposal for the Supervisor, or list proposals]' 'lifecycle[pause, stop or resume a workflow; only the owner or supervisor resumes or stops]' 'log[append one typed log row to the ledger'\''s logs table]' 'logs[list the workflow'\''s typed log rows, oldest first]' 'messages[drain the workflow Runs into the ledger and list every orchestration message]' 'notify[send a typed notice to one peer workflow or all peers]' 'nudge[wake a running job'\''s worker at its exact terminal so it files its report]' 'observe[read the exact op terminal screen of a job (reasoning context, never evidence)]' 'op-contract[read the contract row dispatch wrote for a job or an op+attempt]' 'op-override[store an additive override of one op for this workflow]' 'peers[the workflow'\''s peer workflows of the same ledger]' 'plan[write the workflow'\''s derived plan into the ledger]' 'provider-backoff[open the provider circuit a persisting rate limit calls for (idempotent)]' 'provider-health[the ledger provider-health row; --recover clears an open circuit (Kernel terminal only)]' 'questions[list the pending worker questions of a workflow, draining its Runs into the ledger first]' 'reconcile[recover a fenced launch, drop a queued job, recover a dead worker or cancel orphan kernel jobs]' 'record-change[the record'\''s OWNER declares its committed change breaking (peers owe ONE follow-up leg) or advisory]' 'record-checks[record independent checks against a filed worker report]' 'redesign[dispatch the owning op with the RCA as its brief (strong reasoning pool)]' 'rename[set a workflow'\''s display name and rename its live Kernel and Op terminal tabs]' 'reply[answer a pending worker question, or route it to the owner with --to-owner]' 'report[a worker files its job report (the durable op to kernel IPC)]' 'retire-ask[close an ask the owner should no longer answer (ask-superseded)]' 'route[resolve and persist the model decision of a job]' 'run-deferred-tests[re-queue the test legs the owner'\''s specs switch deferred (see status testsDeferred)]' 'serve-ask[park an owner ask: Telegram notice first, the answer form served on demand]' 'settle[settle a consumed report: pass, fail or blocked verdict]' 'settle-tail[run the async tail of a settled job (artifact index, evidence, retention)]' 'status[the live status projection of a workflow (frontier, progress, waits)]' 'survey[the read projection a Kernel scans each wake (jobs, inbox, signals, drift)]' 'unit[the work units and their try budgets; only the owner or Supervisor raises one]' 'usage[measured tokens by op, model and Kernel of one workflow, or per workflow]' 'verify-proofs[re-hash every indexed proof file and walk the events digest chain; exit 1 on tampering]' ;;
52
+ kernel) _values 'verbs' 'archive[archive a workflow that will not finish: drop open jobs, retire asks, close Kernel and Tasks]' 'artifacts[list the indexed proof files of the workflow'\''s jobs, per job (read-only)]' 'autopilot[show or drive a workflow'\''s autopilot: switch it, sweep, bundle, defer to handover, release, extend]' 'consume-report[integrate the report a job filed; the Kernel must consume it before settle]' 'coverage[show every FR, shape and proof case of the workflow'\''s scope as proven, stale or missing]' 'cut-seam[publish a cut seam'\''s interface, release its siblings on a stub, or reconcile a stub sibling]' 'decide[open, list or close an entry of the Kernel decision log (hypothesis, action, metric)]' 'decisions[list, open, claim, resolve or escalate Decision Items; the Kernel reads them first every wake]' 'dispatch[admit a routed job and launch its worker with --spawn; without it print the launch plan]' 'dispatch-ready[route and dispatch queued-ready jobs up to the workflow allowed parallelism]' 'enqueue[enqueue a work-unit job with its op, owned paths, records and retry lineage]' 'estimate[compute the size class and agent count of a slice from runtimes.yaml allocation.slicing]' 'extensions[list the file-based kernel extensions: verbs, status fields, boolean flags, load problems]' 'finish[finish an owner-approved workflow and release its kernel seat]' 'foundation[claim, land or declare a shared foundation (or none) for a workflow]' 'foundations[list the ledger'\''s shared foundations: owner, state, dependents, waits]' 'graph-edit[apply a logged, reversible light edit to the workflow'\''s unit jobs (drop, widen, wire, ...)]' 'hierarchy[project the agent hierarchy (starci/agent-hierarchy@1) of a workflow]' 'inbox[list the workflow'\''s pending inbox items, or acknowledge one with a disposition]' 'incident[raise, resolve or attach typed release conditions to a workflow incident]' 'kernel-ack-rev[project or attest the complete current Kernel READ manifest]' 'kernel-proposal[file a tier-2 shared runtime change proposal for the Supervisor, or list proposals]' 'lifecycle[pause, stop or resume a workflow; only the owner or supervisor resumes or stops]' 'log[append one typed log row to the ledger'\''s logs table]' 'logs[list the workflow'\''s typed log rows, oldest first]' 'messages[drain the workflow Runs into the ledger and list every orchestration message]' 'notify[send a typed notice to one peer workflow or all peers]' 'nudge[wake a running job'\''s worker at its exact terminal so it files its report]' 'observe[read the exact op terminal screen of a job (reasoning context, never evidence)]' 'op-contract[read the contract row dispatch wrote for a job or an op+attempt]' 'op-override[store an additive override of one op for this workflow]' 'peers[the workflow'\''s peer workflows of the same ledger]' 'plan[write the workflow'\''s derived plan into the ledger]' 'provider-backoff[open the provider circuit a persisting rate limit calls for (idempotent)]' 'provider-health[the ledger provider-health row; --recover clears an open circuit (Kernel terminal only)]' 'questions[list the pending worker questions of a workflow, draining its Runs into the ledger first]' 'reconcile[recover a fenced launch, drop a queued job, recover a dead worker or cancel orphan kernel jobs]' 'record-change[the record'\''s OWNER declares its committed change breaking (peers owe ONE follow-up leg) or advisory]' 'record-checks[record independent checks against a filed worker report]' 'redesign[dispatch the owning op with the RCA as its brief (strong reasoning pool)]' 'rename[set a workflow'\''s display name and rename its live Kernel and Op terminal tabs]' 'reply[answer a pending worker question, or route it to the owner with --to-owner]' 'report[a worker files its job report (the durable op to kernel IPC)]' 'retire-ask[close an ask the owner should no longer answer (ask-superseded)]' 'route[resolve and persist the model decision of a job]' 'run-deferred-tests[re-queue the test legs the owner'\''s specs switch deferred (see status testsDeferred)]' 'serve-ask[park an owner ask: Telegram notice first, the answer form served on demand]' 'settle[settle a consumed report: pass, fail or blocked verdict]' 'settle-tail[run the async tail of a settled job (artifact index, evidence, retention)]' 'status[the live status projection of a workflow (frontier, progress, waits)]' 'survey[the read projection a Kernel scans each wake (jobs, inbox, signals, drift)]' 'unit[the work units and their try budgets; only the owner or Supervisor raises one]' 'usage[measured tokens by op, model and Kernel of one workflow, or per workflow]' 'verify-proofs[re-hash every indexed proof file and walk the events digest chain; exit 1 on tampering]' ;;
53
53
  lint) _values 'verbs' 'run[lint changed files or the release-scoped whole repository]' ;;
54
54
  machine) _values 'verbs' 'decisions[inspect and act on runtime and Supervisor decision items]' 'kernel-watchdog[inspect or repair one running workflow Kernel seat]' 'lessons[inspect and update Supervisor learning records]' 'op-metrics[report operation health metrics across managed ledgers]' 'seam-policy[plan canon cuts or redispatch a blocked canon slice]' 'worktrees[inspect, collect or resume runtime worktrees]' 'worktrees-clean[remove clean lane worktrees already merged into local main]' ;;
55
55
  npm) _values 'verbs' 'ci[install a clean lockfile into this worktree under the host lock]' 'install[add exact dependencies from canon pins under the host lock]' ;;
@@ -57,10 +57,10 @@ _starci() {
57
57
  reconciler) _values 'verbs' 'once[run one reconcile pass of the controllers in memory, shadow unless --apply]' 'restart[stop the reconciler engine and ensure a new leader]' 'start[ensure the reconciler engine has a healthy leader]' 'status[print reconciler leader, queue, mode and violation status]' 'stop[stop the current reconciler engine leader]' 'up[bring the runtime host services and live seats up and print one checklist]' ;;
58
58
  release) _values 'verbs' 'app-installs[verify a scaffolded app against fresh registry installs]' 'check[run the one read-only release readiness gate]' 'clean-test[test published packages from fresh isolated installs]' 'cut[cut the release, the only push of main with its annotated release tag]' 'images[build, run, health-check and tear down the shipped application images]' 'launch-smoke[prove live nested-agent launch paths on an Orca host]' 'proof[build the release proof attached before publish or deploy effects]' 'publish[plan or perform the owner-run package publication sequence]' 'sync-runtime[refresh or check package runtime copies and optionally prepare grammar]' ;;
59
59
  route) _values 'verbs' 'op[resolve the operation that serves a structured routing request]' ;;
60
- runtime) _values 'verbs' 'architecture[check one repository against the runtime architecture rules]' 'benchmark-snapshot[append one model-pool snapshot file under benchmark/snapshots]' 'check[judge the runtime tree — node --check, the runtime HFS check, the retained self-checks]' 'derived-fields[regenerate or check the derived fields of the knowledge pattern files]' 'doctor[run the installed tree'\''s own specs and report drift against the install manifest]' 'gen-catalog[write or check the generated CLI catalog outputs, docs and shell completions]' 'gen-ops[regenerate or check the generated operation registry]' 'housekeeping[inspect or apply the host housekeeping sweeps]' 'install[install the StarCi runtime — fetch the pinned package, then init or update <cwd>/.claude]' 'ledger-hygiene[report orphan ledgers and legacy repository-local ledger stores]' 'link[point the per-user StarCi launcher at a live runtime checkout]' 'machine-db[inspect or maintain the host machine database]' 'owner-claims-audit[audit owner-decision claims and owner-gates in runtime ledgers]' 'readme-blocks[regenerate or check the generated blocks of knowledge/hfs/README.md]' 'status[the runtime'\''s version, tree root and manifest drift — a read-only summary]' 'update[bring an installed .claude tree to this package'\''s payload version]' 'validate[read-only Work record/tree validation — structure, consistency, artifacts, schemas]' 'version[print the runtime package version]' ;;
60
+ runtime) _values 'verbs' 'architecture[check one repository against the runtime architecture rules]' 'benchmark-snapshot[append one model-pool snapshot file under benchmark/snapshots]' 'check[judge the runtime tree — node --check, the runtime HFS check, the retained self-checks]' 'derived-fields[regenerate or check the derived fields of the knowledge pattern files]' 'doctor[verify installed payload, public entry custody and local runtime capabilities]' 'gen-catalog[write or check the generated CLI catalog outputs, docs and shell completions]' 'gen-ops[regenerate or check the generated operation registry]' 'housekeeping[inspect or apply the host housekeeping sweeps]' 'install[install the StarCi runtime — fetch the pinned package, then init or update <cwd>/.claude]' 'ledger-hygiene[report orphan ledgers and legacy repository-local ledger stores]' 'link[point the per-user StarCi launcher at a live runtime checkout]' 'machine-db[inspect or maintain the host machine database]' 'owner-claims-audit[audit owner-decision claims and owner-gates in runtime ledgers]' 'readme-blocks[regenerate or check the generated blocks of knowledge/hfs/README.md]' 'status[the runtime'\''s version, tree root and manifest drift — a read-only summary]' 'update[bring an installed .claude tree to this package'\''s payload version]' 'validate[read-only Work record/tree validation — structure, consistency, artifacts, schemas]' 'version[print the runtime package version]' ;;
61
61
  smoke) _values 'verbs' 'scaffold[scaffold and prove one full or lite app in an isolated scratch directory]' ;;
62
62
  supabase) _values 'verbs' 'start[start the app'\''s Supabase stack after enforcing its isolated port block]' 'status[show the app'\''s Supabase endpoints and key names without secret values]' 'stop[stop only the app'\''s configured Supabase project]' ;;
63
- supervisor) _values 'verbs' 'actions[list, record, or preview the Supervisor'\''s owed-action audit trail]' 'bridge[inspect and govern cross-workflow dependencies and shared ownership]' 'channel[register, inspect, and answer the Supervisor owner-message channel]' 'direct-commits[find runtime main commits that bypassed the exclusive land gate]' 'gate-stability[compare frozen gate behavior against accepted work in live workflows]' 'gc[inspect or collect leftover workers, shells, lanes, temp data, leases, and logs]' 'land[run the in-runtime land gate; external land-to-main.sh remains external]' 'lesson-actions[land, revert, or propose changes from the Supervisor self-learning loop]' 'notify[deliver a durable Supervisor ruling to one workflow Kernel]' 'owed[inspect and acknowledge work that running workflows owe the Supervisor]' 'poll[stream or print a read-only Supervisor digest of workflow progress and blockers]' 'push[run full repository suites and push clean main branches]' 'push-mains[scan and push main for the runtime and configured product repositories]' 'ram-cap[inspect or override RAM-aware workflow dispatch priorities]' 'report[render or send the owner'\''s detailed workflow progress report]' 'start[enable and start the one long-lived Supervisor seat]' 'status[print whether the Supervisor seat is enabled and healthy]' 'stop[disable the Supervisor seat, stop its worker and release it]' 'telegram-bridge[start, run, inspect, or stop the Supervisor Telegram bridge]' 'tell[send a desktop message to the Supervisor or read its recent replies]' 'watchdog[run one reconciler-owned Supervisor seat liveness pass]' 'workers[create, launch, inspect, report, and clean up Supervisor repair workers]' ;;
63
+ supervisor) _values 'verbs' 'actions[list, record, or preview the Supervisor'\''s owed-action audit trail]' 'bridge[inspect and govern cross-workflow dependencies and shared ownership]' 'channel[register, inspect, and answer the Supervisor owner-message channel]' 'direct-commits[find runtime main commits that bypassed the exclusive land gate]' 'gate-stability[compare explicitly selected current gates against accepted work in live workflows]' 'gc[inspect or collect leftover workers, shells, lanes, temp data, leases, and logs]' 'land[run the in-runtime land gate; external land-to-main.sh remains external]' 'lesson-actions[land, revert, or propose changes from the Supervisor self-learning loop]' 'notify[deliver a durable Supervisor ruling to one workflow Kernel]' 'owed[inspect and acknowledge work that running workflows owe the Supervisor]' 'poll[stream or print a read-only Supervisor digest of workflow progress and blockers]' 'push[run full repository suites and push clean main branches]' 'push-mains[scan and push main for the runtime and configured product repositories]' 'ram-cap[inspect or override RAM-aware workflow dispatch priorities]' 'report[render or send the owner'\''s detailed workflow progress report]' 'start[enable and start the one long-lived Supervisor seat]' 'status[print whether the Supervisor seat is enabled and healthy]' 'stop[disable the Supervisor seat, stop its worker and release it]' 'telegram-bridge[start, run, inspect, or stop the Supervisor Telegram bridge]' 'tell[send a desktop message to the Supervisor or read its recent replies]' 'watchdog[run one reconciler-owned Supervisor seat liveness pass]' 'workers[create, launch, inspect, report, and clean up Supervisor repair workers]' ;;
64
64
  task) _values 'verbs' 'list[list state, runs, results and actions for registered runtime tasks]' 'register[print or apply one runtime scheduled-task registration]' 'show[show state, runs, result and action for one runtime scheduled task]' ;;
65
65
  test) _values 'verbs' 'run[run the specs selected for one local ladder level]' ;;
66
66
  typecheck) _values 'verbs' 'run[check changed runtime modules or affected TypeScript projects]' ;;
@@ -176,8 +176,6 @@ _starci() {
176
176
  'gate:sonar:--declaration') return 0 ;;
177
177
  'gate:sonar:--host') return 0 ;;
178
178
  'gate:sonar:--stack') return 0 ;;
179
- 'gate:starcistacks:--admitted-at') return 0 ;;
180
- 'gate:starcistacks:--op') return 0 ;;
181
179
  'gate:test-world:--root') return 0 ;;
182
180
  'gate:test-world:--project') _values 'values' 'e2e' 'integration' 'contract'; return 0 ;;
183
181
  'gate:test-world:--tests') return 0 ;;
@@ -229,12 +227,6 @@ _starci() {
229
227
  'kernel:autopilot:--by') _values 'values' 'supervisor' 'kernel' 'autopilot'; return 0 ;;
230
228
  'kernel:consume-report:--repo') return 0 ;;
231
229
  'kernel:consume-report:--job') return 0 ;;
232
- 'kernel:contract-release:--repo') return 0 ;;
233
- 'kernel:contract-release:--family') return 0 ;;
234
- 'kernel:contract-release:--workflow') return 0 ;;
235
- 'kernel:contract-release:--batch') return 0 ;;
236
- 'kernel:contract-release:--reason') return 0 ;;
237
- 'kernel:contract-release:--by') _values 'values' 'supervisor' 'owner'; return 0 ;;
238
230
  'kernel:coverage:--repo') return 0 ;;
239
231
  'kernel:coverage:--workflow') return 0 ;;
240
232
  'kernel:cut-seam:--repo') return 0 ;;
@@ -303,8 +295,6 @@ _starci() {
303
295
  'kernel:enqueue:--cut-total') return 0 ;;
304
296
  'kernel:enqueue:--after') return 0 ;;
305
297
  'kernel:enqueue:--foundation') return 0 ;;
306
- 'kernel:enqueue:--contract-change') return 0 ;;
307
- 'kernel:enqueue:--follow-up-of') return 0 ;;
308
298
  'kernel:enqueue:--new-module') return 0 ;;
309
299
  'kernel:enqueue:--retry-of') return 0 ;;
310
300
  'kernel:enqueue:--reopen') return 0 ;;
@@ -386,7 +376,8 @@ _starci() {
386
376
  'kernel:kernel-ack-rev:--repo') return 0 ;;
387
377
  'kernel:kernel-ack-rev:--workflow') return 0 ;;
388
378
  'kernel:kernel-ack-rev:--rev') return 0 ;;
389
- 'kernel:kernel-ack-rev:--files') return 0 ;;
379
+ 'kernel:kernel-ack-rev:--read-manifest') return 0 ;;
380
+ 'kernel:kernel-ack-rev:--op') return 0 ;;
390
381
  'kernel:kernel-proposal:--repo') return 0 ;;
391
382
  'kernel:kernel-proposal:--workflow') return 0 ;;
392
383
  'kernel:kernel-proposal:--title') return 0 ;;
@@ -885,8 +876,6 @@ _starci() {
885
876
  'work:layout-tree:--tolerance') return 0 ;;
886
877
  'work:render-proof:--work') return 0 ;;
887
878
  'work:render-proof:--record') return 0 ;;
888
- 'work:shell-conformance:--admitted-at') return 0 ;;
889
- 'work:shell-conformance:--op') return 0 ;;
890
879
  'work:ui-proof-brief:--surface') return 0 ;;
891
880
  'work:ui-proof-brief:--repo') return 0 ;;
892
881
  'work:ui-proof-brief:--family') return 0 ;;
@@ -969,7 +958,7 @@ _starci() {
969
958
  'gate:repo-presentation') _values 'flags' '--root' '--runtime' '--json' '--cwd' '--quiet' '--help' '--edition' ;;
970
959
  'gate:run') _values 'flags' '--root' '--base' '--main' '--changed' '--tests' '--out' '--scope' '--tree' '--json' '--cwd' '--quiet' '--help' '--edition' ;;
971
960
  'gate:sonar') _values 'flags' '--key' '--name' '--with-token' '--wait' '--base' '--paths' '--project-gate' '--out' '--blob' '--log' '--token-ref' '--no-ensure' '--timeout' '--wait-timeout' '--isolate' '--keep-slice-project' '--declaration' '--host' '--stack' '--json' '--cwd' '--quiet' '--help' '--edition' ;;
972
- 'gate:starcistacks') _values 'flags' '--new' '--admitted-at' '--op' '--json' '--cwd' '--quiet' '--help' '--edition' ;;
961
+ 'gate:starcistacks') _values 'flags' '--new' '--json' '--cwd' '--quiet' '--help' '--edition' ;;
973
962
  'gate:test-world') _values 'flags' '--root' '--project' '--tests' '--out' '--json' '--cwd' '--quiet' '--help' '--edition' ;;
974
963
  'gate:unit') _values 'flags' '--root' '--out' '--json' '--cwd' '--quiet' '--help' '--edition' ;;
975
964
  'git:backup') _values 'flags' '--remote' '--branches' '--dry-run' '--json' '--cwd' '--quiet' '--help' '--edition' ;;
@@ -989,14 +978,13 @@ _starci() {
989
978
  'kernel:artifacts') _values 'flags' '--repo' '--workflow' '--job' '--kind' '--subkind' '--json' '--cwd' '--quiet' '--help' '--edition' ;;
990
979
  'kernel:autopilot') _values 'flags' '--repo' '--workflow' '--sweep' '--bundle' '--checklist' '--lang' '--set' '--reason' '--defer-to-handover' '--op' '--class' '--detail' '--fields' '--stub' '--job' '--release' '--defer-leg' '--reopen' '--handover-answer' '--note' '--extend-budget' '--by' '--json' '--cwd' '--quiet' '--help' '--edition' ;;
991
980
  'kernel:consume-report') _values 'flags' '--repo' '--job' '--json' '--cwd' '--quiet' '--help' '--edition' ;;
992
- 'kernel:contract-release') _values 'flags' '--repo' '--family' '--workflow' '--batch' '--reason' '--by' '--dry-run' '--json' '--cwd' '--quiet' '--help' '--edition' ;;
993
981
  'kernel:coverage') _values 'flags' '--repo' '--workflow' '--json' '--cwd' '--quiet' '--help' '--edition' ;;
994
982
  'kernel:cut-seam') _values 'flags' '--repo' '--publish-interface' '--release' '--reconcile' '--job' '--files' '--summary' '--workflow' '--op' '--cut-id' '--reason' '--exit-code' '--command' '--evidence' '--json' '--cwd' '--quiet' '--help' '--edition' ;;
995
983
  'kernel:decide') _values 'flags' '--repo' '--workflow' '--hypothesis' '--action-key' '--metric' '--command' '--close' '--result' '--observed' '--list' '--json' '--cwd' '--quiet' '--help' '--edition' ;;
996
984
  'kernel:decisions') _values 'flags' '--repo' '--workflow' '--list' '--all' '--next' '--open' '--kind' '--summary' '--by' '--entity-type' '--entity-id' '--decider' '--due-ms' '--key' '--evidence-file' '--evidence' '--evidence-json' '--allowed-verbs' '--options-json' '--severity' '--item' '--claim' '--resolve' '--verb' '--decision' '--note' '--escalate' '--to' '--reason' '--json' '--cwd' '--quiet' '--help' '--edition' ;;
997
985
  'kernel:dispatch') _values 'flags' '--repo' '--job' '--spawn' '--model' '--worktree' '--lease-ttl' '--env-gate' '--json' '--cwd' '--quiet' '--help' '--edition' ;;
998
986
  'kernel:dispatch-ready') _values 'flags' '--repo' '--workflow' '--max' '--dry-run' '--foreground' '--json' '--cwd' '--quiet' '--help' '--edition' ;;
999
- 'kernel:enqueue') _values 'flags' '--repo' '--workflow' '--op' '--paths' '--records' '--params' '--repository' '--cut-id' '--cut-ordinal' '--cut-total' '--after' '--foundation' '--contract-change' '--follow-up-of' '--new-module' '--retry-of' '--reopen' '--derived-from' '--canon-scan' '--resolves' '--what' '--title' '--risk' '--json' '--cwd' '--quiet' '--help' '--edition' ;;
987
+ 'kernel:enqueue') _values 'flags' '--repo' '--workflow' '--op' '--paths' '--records' '--params' '--repository' '--cut-id' '--cut-ordinal' '--cut-total' '--after' '--foundation' '--new-module' '--retry-of' '--reopen' '--derived-from' '--canon-scan' '--resolves' '--what' '--title' '--risk' '--json' '--cwd' '--quiet' '--help' '--edition' ;;
1000
988
  'kernel:estimate') _values 'flags' '--repo' '--files' '--assertions' '--components' '--records' '--paths' '--gear' '--json' '--cwd' '--quiet' '--help' '--edition' ;;
1001
989
  'kernel:extensions') _values 'flags' '--repo' '--json' '--cwd' '--quiet' '--help' '--edition' ;;
1002
990
  'kernel:finish') _values 'flags' '--repo' '--workflow' '--json' '--cwd' '--quiet' '--help' '--edition' ;;
@@ -1006,7 +994,7 @@ _starci() {
1006
994
  'kernel:hierarchy') _values 'flags' '--repo' '--workflow' '--json' '--cwd' '--quiet' '--help' '--edition' ;;
1007
995
  'kernel:inbox') _values 'flags' '--repo' '--workflow' '--ack' '--disposition' '--json' '--cwd' '--quiet' '--help' '--edition' ;;
1008
996
  'kernel:incident') _values 'flags' '--repo' '--workflow' '--kind' '--detail' '--op' '--holds' '--peer' '--refs' '--resolve' '--by' '--owner-answer' '--introduced-by' '--introducer' '--fix' '--attach' '--until-record' '--until-job' '--until-message' '--until-commit' '--until-incident' '--until-foundation' '--until-landed' '--json' '--cwd' '--quiet' '--help' '--edition' ;;
1009
- 'kernel:kernel-ack-rev') _values 'flags' '--repo' '--workflow' '--rev' '--files' '--json' '--cwd' '--quiet' '--help' '--edition' ;;
997
+ 'kernel:kernel-ack-rev') _values 'flags' '--repo' '--workflow' '--rev' '--plan' '--read-manifest' '--op' '--json' '--cwd' '--quiet' '--help' '--edition' ;;
1010
998
  'kernel:kernel-proposal') _values 'flags' '--repo' '--workflow' '--title' '--evidence' '--patch' '--files' '--decision' '--list' '--json' '--cwd' '--quiet' '--help' '--edition' ;;
1011
999
  'kernel:lifecycle') _values 'flags' '--repo' '--workflow' '--pause' '--stop' '--resume' '--by' '--reason' '--json' '--cwd' '--quiet' '--help' '--edition' ;;
1012
1000
  'kernel:log') _values 'flags' '--repo' '--workflow' '--job' '--kind' '--msg' '--data' '--refs' '--level' '--node' '--actor' '--json' '--cwd' '--quiet' '--help' '--edition' ;;
@@ -1150,7 +1138,7 @@ _starci() {
1150
1138
  'work:hygiene') _values 'flags' '--repo' '--json' '--cwd' '--quiet' '--help' '--edition' ;;
1151
1139
  'work:layout-tree') _values 'flags' '--work' '--app-dir' '--write' '--app' '--repo-root' '--node' '--breakpoint' '--theme' '--file' '--url' '--provenance' '--destination' '--route' '--locale' '--from' '--rect' '--active-nav' '--design' '--files' '--key' '--tolerance' '--json' '--cwd' '--quiet' '--help' '--edition' ;;
1152
1140
  'work:render-proof') _values 'flags' '--work' '--record' '--json' '--cwd' '--quiet' '--help' '--edition' ;;
1153
- 'work:shell-conformance') _values 'flags' '--admitted-at' '--op' '--json' '--cwd' '--quiet' '--help' '--edition' ;;
1141
+ 'work:shell-conformance') _values 'flags' '--json' '--cwd' '--quiet' '--help' '--edition' ;;
1154
1142
  'work:ui-proof-brief') _values 'flags' '--surface' '--repo' '--family' '--elements' '--score' '--viewport' '--json' '--cwd' '--quiet' '--help' '--edition' ;;
1155
1143
  'worker:close') _values 'flags' '--dispatch' '--stop-first' '--retry-release' '--json' '--cwd' '--quiet' '--help' '--edition' ;;
1156
1144
  'worker:list') _values 'flags' '--run' '--by-lane' '--active' '--worktree' '--json' '--cwd' '--quiet' '--help' '--edition' ;;
@@ -22,7 +22,7 @@ _starci() {
22
22
  git) COMPREPLY=( $(compgen -W "backup commit land sync" -- "$cur") );;
23
23
  guard) COMPREPLY=( $(compgen -W "command footprint-scan raw seat-tools verify-commit" -- "$cur") );;
24
24
  harness) COMPREPLY=( $(compgen -W "open start status stop" -- "$cur") );;
25
- kernel) COMPREPLY=( $(compgen -W "archive artifacts autopilot consume-report contract-release coverage cut-seam decide decisions dispatch dispatch-ready enqueue estimate extensions finish foundation foundations graph-edit hierarchy inbox incident kernel-ack-rev kernel-proposal lifecycle log logs messages notify nudge observe op-contract op-override peers plan provider-backoff provider-health questions reconcile record-change record-checks redesign rename reply report retire-ask route run-deferred-tests serve-ask settle settle-tail status survey unit usage verify-proofs" -- "$cur") );;
25
+ kernel) COMPREPLY=( $(compgen -W "archive artifacts autopilot consume-report coverage cut-seam decide decisions dispatch dispatch-ready enqueue estimate extensions finish foundation foundations graph-edit hierarchy inbox incident kernel-ack-rev kernel-proposal lifecycle log logs messages notify nudge observe op-contract op-override peers plan provider-backoff provider-health questions reconcile record-change record-checks redesign rename reply report retire-ask route run-deferred-tests serve-ask settle settle-tail status survey unit usage verify-proofs" -- "$cur") );;
26
26
  lint) COMPREPLY=( $(compgen -W "run" -- "$cur") );;
27
27
  machine) COMPREPLY=( $(compgen -W "decisions kernel-watchdog lessons op-metrics seam-policy worktrees worktrees-clean" -- "$cur") );;
28
28
  npm) COMPREPLY=( $(compgen -W "ci install" -- "$cur") );;
@@ -149,8 +149,6 @@ _starci() {
149
149
  gate:sonar:--declaration) return 0;;
150
150
  gate:sonar:--host) return 0;;
151
151
  gate:sonar:--stack) return 0;;
152
- gate:starcistacks:--admitted-at) return 0;;
153
- gate:starcistacks:--op) return 0;;
154
152
  gate:test-world:--root) return 0;;
155
153
  gate:test-world:--project) COMPREPLY=( $(compgen -W "e2e integration contract" -- "$cur") ); return 0;;
156
154
  gate:test-world:--tests) return 0;;
@@ -202,12 +200,6 @@ _starci() {
202
200
  kernel:autopilot:--by) COMPREPLY=( $(compgen -W "supervisor kernel autopilot" -- "$cur") ); return 0;;
203
201
  kernel:consume-report:--repo) return 0;;
204
202
  kernel:consume-report:--job) return 0;;
205
- kernel:contract-release:--repo) return 0;;
206
- kernel:contract-release:--family) return 0;;
207
- kernel:contract-release:--workflow) return 0;;
208
- kernel:contract-release:--batch) return 0;;
209
- kernel:contract-release:--reason) return 0;;
210
- kernel:contract-release:--by) COMPREPLY=( $(compgen -W "supervisor owner" -- "$cur") ); return 0;;
211
203
  kernel:coverage:--repo) return 0;;
212
204
  kernel:coverage:--workflow) return 0;;
213
205
  kernel:cut-seam:--repo) return 0;;
@@ -276,8 +268,6 @@ _starci() {
276
268
  kernel:enqueue:--cut-total) return 0;;
277
269
  kernel:enqueue:--after) return 0;;
278
270
  kernel:enqueue:--foundation) return 0;;
279
- kernel:enqueue:--contract-change) return 0;;
280
- kernel:enqueue:--follow-up-of) return 0;;
281
271
  kernel:enqueue:--new-module) return 0;;
282
272
  kernel:enqueue:--retry-of) return 0;;
283
273
  kernel:enqueue:--reopen) return 0;;
@@ -359,7 +349,8 @@ _starci() {
359
349
  kernel:kernel-ack-rev:--repo) return 0;;
360
350
  kernel:kernel-ack-rev:--workflow) return 0;;
361
351
  kernel:kernel-ack-rev:--rev) return 0;;
362
- kernel:kernel-ack-rev:--files) return 0;;
352
+ kernel:kernel-ack-rev:--read-manifest) return 0;;
353
+ kernel:kernel-ack-rev:--op) return 0;;
363
354
  kernel:kernel-proposal:--repo) return 0;;
364
355
  kernel:kernel-proposal:--workflow) return 0;;
365
356
  kernel:kernel-proposal:--title) return 0;;
@@ -858,8 +849,6 @@ _starci() {
858
849
  work:layout-tree:--tolerance) return 0;;
859
850
  work:render-proof:--work) return 0;;
860
851
  work:render-proof:--record) return 0;;
861
- work:shell-conformance:--admitted-at) return 0;;
862
- work:shell-conformance:--op) return 0;;
863
852
  work:ui-proof-brief:--surface) return 0;;
864
853
  work:ui-proof-brief:--repo) return 0;;
865
854
  work:ui-proof-brief:--family) return 0;;
@@ -942,7 +931,7 @@ _starci() {
942
931
  gate:repo-presentation) COMPREPLY=( $(compgen -W "--root --runtime --json --cwd --quiet --help --edition" -- "$cur") );;
943
932
  gate:run) COMPREPLY=( $(compgen -W "--root --base --main --changed --tests --out --scope --tree --json --cwd --quiet --help --edition" -- "$cur") );;
944
933
  gate:sonar) COMPREPLY=( $(compgen -W "--key --name --with-token --wait --base --paths --project-gate --out --blob --log --token-ref --no-ensure --timeout --wait-timeout --isolate --keep-slice-project --declaration --host --stack --json --cwd --quiet --help --edition" -- "$cur") );;
945
- gate:starcistacks) COMPREPLY=( $(compgen -W "--new --admitted-at --op --json --cwd --quiet --help --edition" -- "$cur") );;
934
+ gate:starcistacks) COMPREPLY=( $(compgen -W "--new --json --cwd --quiet --help --edition" -- "$cur") );;
946
935
  gate:test-world) COMPREPLY=( $(compgen -W "--root --project --tests --out --json --cwd --quiet --help --edition" -- "$cur") );;
947
936
  gate:unit) COMPREPLY=( $(compgen -W "--root --out --json --cwd --quiet --help --edition" -- "$cur") );;
948
937
  git:backup) COMPREPLY=( $(compgen -W "--remote --branches --dry-run --json --cwd --quiet --help --edition" -- "$cur") );;
@@ -962,14 +951,13 @@ _starci() {
962
951
  kernel:artifacts) COMPREPLY=( $(compgen -W "--repo --workflow --job --kind --subkind --json --cwd --quiet --help --edition" -- "$cur") );;
963
952
  kernel:autopilot) COMPREPLY=( $(compgen -W "--repo --workflow --sweep --bundle --checklist --lang --set --reason --defer-to-handover --op --class --detail --fields --stub --job --release --defer-leg --reopen --handover-answer --note --extend-budget --by --json --cwd --quiet --help --edition" -- "$cur") );;
964
953
  kernel:consume-report) COMPREPLY=( $(compgen -W "--repo --job --json --cwd --quiet --help --edition" -- "$cur") );;
965
- kernel:contract-release) COMPREPLY=( $(compgen -W "--repo --family --workflow --batch --reason --by --dry-run --json --cwd --quiet --help --edition" -- "$cur") );;
966
954
  kernel:coverage) COMPREPLY=( $(compgen -W "--repo --workflow --json --cwd --quiet --help --edition" -- "$cur") );;
967
955
  kernel:cut-seam) COMPREPLY=( $(compgen -W "--repo --publish-interface --release --reconcile --job --files --summary --workflow --op --cut-id --reason --exit-code --command --evidence --json --cwd --quiet --help --edition" -- "$cur") );;
968
956
  kernel:decide) COMPREPLY=( $(compgen -W "--repo --workflow --hypothesis --action-key --metric --command --close --result --observed --list --json --cwd --quiet --help --edition" -- "$cur") );;
969
957
  kernel:decisions) COMPREPLY=( $(compgen -W "--repo --workflow --list --all --next --open --kind --summary --by --entity-type --entity-id --decider --due-ms --key --evidence-file --evidence --evidence-json --allowed-verbs --options-json --severity --item --claim --resolve --verb --decision --note --escalate --to --reason --json --cwd --quiet --help --edition" -- "$cur") );;
970
958
  kernel:dispatch) COMPREPLY=( $(compgen -W "--repo --job --spawn --model --worktree --lease-ttl --env-gate --json --cwd --quiet --help --edition" -- "$cur") );;
971
959
  kernel:dispatch-ready) COMPREPLY=( $(compgen -W "--repo --workflow --max --dry-run --foreground --json --cwd --quiet --help --edition" -- "$cur") );;
972
- kernel:enqueue) COMPREPLY=( $(compgen -W "--repo --workflow --op --paths --records --params --repository --cut-id --cut-ordinal --cut-total --after --foundation --contract-change --follow-up-of --new-module --retry-of --reopen --derived-from --canon-scan --resolves --what --title --risk --json --cwd --quiet --help --edition" -- "$cur") );;
960
+ kernel:enqueue) COMPREPLY=( $(compgen -W "--repo --workflow --op --paths --records --params --repository --cut-id --cut-ordinal --cut-total --after --foundation --new-module --retry-of --reopen --derived-from --canon-scan --resolves --what --title --risk --json --cwd --quiet --help --edition" -- "$cur") );;
973
961
  kernel:estimate) COMPREPLY=( $(compgen -W "--repo --files --assertions --components --records --paths --gear --json --cwd --quiet --help --edition" -- "$cur") );;
974
962
  kernel:extensions) COMPREPLY=( $(compgen -W "--repo --json --cwd --quiet --help --edition" -- "$cur") );;
975
963
  kernel:finish) COMPREPLY=( $(compgen -W "--repo --workflow --json --cwd --quiet --help --edition" -- "$cur") );;
@@ -979,7 +967,7 @@ _starci() {
979
967
  kernel:hierarchy) COMPREPLY=( $(compgen -W "--repo --workflow --json --cwd --quiet --help --edition" -- "$cur") );;
980
968
  kernel:inbox) COMPREPLY=( $(compgen -W "--repo --workflow --ack --disposition --json --cwd --quiet --help --edition" -- "$cur") );;
981
969
  kernel:incident) COMPREPLY=( $(compgen -W "--repo --workflow --kind --detail --op --holds --peer --refs --resolve --by --owner-answer --introduced-by --introducer --fix --attach --until-record --until-job --until-message --until-commit --until-incident --until-foundation --until-landed --json --cwd --quiet --help --edition" -- "$cur") );;
982
- kernel:kernel-ack-rev) COMPREPLY=( $(compgen -W "--repo --workflow --rev --files --json --cwd --quiet --help --edition" -- "$cur") );;
970
+ kernel:kernel-ack-rev) COMPREPLY=( $(compgen -W "--repo --workflow --rev --plan --read-manifest --op --json --cwd --quiet --help --edition" -- "$cur") );;
983
971
  kernel:kernel-proposal) COMPREPLY=( $(compgen -W "--repo --workflow --title --evidence --patch --files --decision --list --json --cwd --quiet --help --edition" -- "$cur") );;
984
972
  kernel:lifecycle) COMPREPLY=( $(compgen -W "--repo --workflow --pause --stop --resume --by --reason --json --cwd --quiet --help --edition" -- "$cur") );;
985
973
  kernel:log) COMPREPLY=( $(compgen -W "--repo --workflow --job --kind --msg --data --refs --level --node --actor --json --cwd --quiet --help --edition" -- "$cur") );;
@@ -1123,7 +1111,7 @@ _starci() {
1123
1111
  work:hygiene) COMPREPLY=( $(compgen -W "--repo --json --cwd --quiet --help --edition" -- "$cur") );;
1124
1112
  work:layout-tree) COMPREPLY=( $(compgen -W "--work --app-dir --write --app --repo-root --node --breakpoint --theme --file --url --provenance --destination --route --locale --from --rect --active-nav --design --files --key --tolerance --json --cwd --quiet --help --edition" -- "$cur") );;
1125
1113
  work:render-proof) COMPREPLY=( $(compgen -W "--work --record --json --cwd --quiet --help --edition" -- "$cur") );;
1126
- work:shell-conformance) COMPREPLY=( $(compgen -W "--admitted-at --op --json --cwd --quiet --help --edition" -- "$cur") );;
1114
+ work:shell-conformance) COMPREPLY=( $(compgen -W "--json --cwd --quiet --help --edition" -- "$cur") );;
1127
1115
  work:ui-proof-brief) COMPREPLY=( $(compgen -W "--surface --repo --family --elements --score --viewport --json --cwd --quiet --help --edition" -- "$cur") );;
1128
1116
  worker:close) COMPREPLY=( $(compgen -W "--dispatch --stop-first --retry-release --json --cwd --quiet --help --edition" -- "$cur") );;
1129
1117
  worker:list) COMPREPLY=( $(compgen -W "--run --by-lane --active --worktree --json --cwd --quiet --help --edition" -- "$cur") );;
@@ -97,7 +97,6 @@ complete -c starci -n '__starci_needs_verb kernel' -a 'archive' -d 'archive a wo
97
97
  complete -c starci -n '__starci_needs_verb kernel' -a 'artifacts' -d 'list the indexed proof files of the workflow'\''s jobs, per job (read-only)'
98
98
  complete -c starci -n '__starci_needs_verb kernel' -a 'autopilot' -d 'show or drive a workflow'\''s autopilot: switch it, sweep, bundle, defer to handover, release, extend'
99
99
  complete -c starci -n '__starci_needs_verb kernel' -a 'consume-report' -d 'integrate the report a job filed; the Kernel must consume it before settle'
100
- complete -c starci -n '__starci_needs_verb kernel' -a 'contract-release' -d 'release a frozen op family at the Supervisor release point (contract-freeze.yaml)'
101
100
  complete -c starci -n '__starci_needs_verb kernel' -a 'coverage' -d 'show every FR, shape and proof case of the workflow'\''s scope as proven, stale or missing'
102
101
  complete -c starci -n '__starci_needs_verb kernel' -a 'cut-seam' -d 'publish a cut seam'\''s interface, release its siblings on a stub, or reconcile a stub sibling'
103
102
  complete -c starci -n '__starci_needs_verb kernel' -a 'decide' -d 'open, list or close an entry of the Kernel decision log (hypothesis, action, metric)'
@@ -114,7 +113,7 @@ complete -c starci -n '__starci_needs_verb kernel' -a 'graph-edit' -d 'apply a l
114
113
  complete -c starci -n '__starci_needs_verb kernel' -a 'hierarchy' -d 'project the agent hierarchy (starci/agent-hierarchy@1) of a workflow'
115
114
  complete -c starci -n '__starci_needs_verb kernel' -a 'inbox' -d 'list the workflow'\''s pending inbox items, or acknowledge one with a disposition'
116
115
  complete -c starci -n '__starci_needs_verb kernel' -a 'incident' -d 'raise, resolve or attach typed release conditions to a workflow incident'
117
- complete -c starci -n '__starci_needs_verb kernel' -a 'kernel-ack-rev' -d 'record the runtime rev whose kernel files this Kernel has read'
116
+ complete -c starci -n '__starci_needs_verb kernel' -a 'kernel-ack-rev' -d 'project or attest the complete current Kernel READ manifest'
118
117
  complete -c starci -n '__starci_needs_verb kernel' -a 'kernel-proposal' -d 'file a tier-2 shared runtime change proposal for the Supervisor, or list proposals'
119
118
  complete -c starci -n '__starci_needs_verb kernel' -a 'lifecycle' -d 'pause, stop or resume a workflow; only the owner or supervisor resumes or stops'
120
119
  complete -c starci -n '__starci_needs_verb kernel' -a 'log' -d 'append one typed log row to the ledger'\''s logs table'
@@ -180,7 +179,7 @@ complete -c starci -n '__starci_needs_verb runtime' -a 'architecture' -d 'check
180
179
  complete -c starci -n '__starci_needs_verb runtime' -a 'benchmark-snapshot' -d 'append one model-pool snapshot file under benchmark/snapshots'
181
180
  complete -c starci -n '__starci_needs_verb runtime' -a 'check' -d 'judge the runtime tree — node --check, the runtime HFS check, the retained self-checks'
182
181
  complete -c starci -n '__starci_needs_verb runtime' -a 'derived-fields' -d 'regenerate or check the derived fields of the knowledge pattern files'
183
- complete -c starci -n '__starci_needs_verb runtime' -a 'doctor' -d 'run the installed tree'\''s own specs and report drift against the install manifest'
182
+ complete -c starci -n '__starci_needs_verb runtime' -a 'doctor' -d 'verify installed payload, public entry custody and local runtime capabilities'
184
183
  complete -c starci -n '__starci_needs_verb runtime' -a 'gen-catalog' -d 'write or check the generated CLI catalog outputs, docs and shell completions'
185
184
  complete -c starci -n '__starci_needs_verb runtime' -a 'gen-ops' -d 'regenerate or check the generated operation registry'
186
185
  complete -c starci -n '__starci_needs_verb runtime' -a 'housekeeping' -d 'inspect or apply the host housekeeping sweeps'
@@ -202,7 +201,7 @@ complete -c starci -n '__starci_needs_verb supervisor' -a 'actions' -d 'list, re
202
201
  complete -c starci -n '__starci_needs_verb supervisor' -a 'bridge' -d 'inspect and govern cross-workflow dependencies and shared ownership'
203
202
  complete -c starci -n '__starci_needs_verb supervisor' -a 'channel' -d 'register, inspect, and answer the Supervisor owner-message channel'
204
203
  complete -c starci -n '__starci_needs_verb supervisor' -a 'direct-commits' -d 'find runtime main commits that bypassed the exclusive land gate'
205
- complete -c starci -n '__starci_needs_verb supervisor' -a 'gate-stability' -d 'compare frozen gate behavior against accepted work in live workflows'
204
+ complete -c starci -n '__starci_needs_verb supervisor' -a 'gate-stability' -d 'compare explicitly selected current gates against accepted work in live workflows'
206
205
  complete -c starci -n '__starci_needs_verb supervisor' -a 'gc' -d 'inspect or collect leftover workers, shells, lanes, temp data, leases, and logs'
207
206
  complete -c starci -n '__starci_needs_verb supervisor' -a 'land' -d 'run the in-runtime land gate; external land-to-main.sh remains external'
208
207
  complete -c starci -n '__starci_needs_verb supervisor' -a 'lesson-actions' -d 'land, revert, or propose changes from the Supervisor self-learning loop'
@@ -430,8 +429,6 @@ complete -c starci -n '__starci_using_command gate sonar' -l declaration -r -d '
430
429
  complete -c starci -n '__starci_using_command gate sonar' -l host -r -d 'Sonar server URL'
431
430
  complete -c starci -n '__starci_using_command gate sonar' -l stack -r -d 'custody stack directory'
432
431
  complete -c starci -n '__starci_using_command gate starcistacks' -l new -d 'check a repository being created by this leg'
433
- complete -c starci -n '__starci_using_command gate starcistacks' -l admitted-at -r -d 'admission time for contract-change advice'
434
- complete -c starci -n '__starci_using_command gate starcistacks' -l op -r -d 'admitted operation for contract-change advice'
435
432
  complete -c starci -n '__starci_using_command gate test-world' -l root -r -d 'application root'
436
433
  complete -c starci -n '__starci_using_command gate test-world' -l project -r -a 'e2e integration contract' -d 'test-world project'
437
434
  complete -c starci -n '__starci_using_command gate test-world' -l tests -r -d 'path pattern narrowing the selected specs'
@@ -493,13 +490,6 @@ complete -c starci -n '__starci_using_command kernel autopilot' -l extend-budget
493
490
  complete -c starci -n '__starci_using_command kernel autopilot' -l by -r -a 'supervisor kernel autopilot' -d 'who acts (default supervisor)'
494
491
  complete -c starci -n '__starci_using_command kernel consume-report' -l repo -r -d 'managed repository whose .starciwork ledger the command uses'
495
492
  complete -c starci -n '__starci_using_command kernel consume-report' -l job -r -d 'job whose filed report is consumed'
496
- complete -c starci -n '__starci_using_command kernel contract-release' -l repo -r -d 'managed repository whose .starciwork ledger the command uses'
497
- complete -c starci -n '__starci_using_command kernel contract-release' -l family -r -d 'op family to release'
498
- complete -c starci -n '__starci_using_command kernel contract-release' -l workflow -r -d 'workflow id'
499
- complete -c starci -n '__starci_using_command kernel contract-release' -l batch -r -d 'name of the release batch'
500
- complete -c starci -n '__starci_using_command kernel contract-release' -l reason -r -d 'why the family is released'
501
- complete -c starci -n '__starci_using_command kernel contract-release' -l by -r -a 'supervisor owner' -d 'who releases it'
502
- complete -c starci -n '__starci_using_command kernel contract-release' -l dry-run -d 'report what would be released without recording it'
503
493
  complete -c starci -n '__starci_using_command kernel coverage' -l repo -r -d 'managed repository whose .starciwork ledger the command uses'
504
494
  complete -c starci -n '__starci_using_command kernel coverage' -l workflow -r -d 'workflow id'
505
495
  complete -c starci -n '__starci_using_command kernel cut-seam' -l repo -r -d 'managed repository whose .starciwork ledger the command uses'
@@ -579,8 +569,6 @@ complete -c starci -n '__starci_using_command kernel enqueue' -l cut-ordinal -r
579
569
  complete -c starci -n '__starci_using_command kernel enqueue' -l cut-total -r -d 'number of units in the cut'
580
570
  complete -c starci -n '__starci_using_command kernel enqueue' -l after -r -d 'comma list of job ids this job waits for'
581
571
  complete -c starci -n '__starci_using_command kernel enqueue' -l foundation -r -d 'shared foundation this unit builds'
582
- complete -c starci -n '__starci_using_command kernel enqueue' -l contract-change -r -d 'registered follow-up change id in contract-changes.yaml'
583
- complete -c starci -n '__starci_using_command kernel enqueue' -l follow-up-of -r -d 'job of this workflow the follow-up leg answers'
584
572
  complete -c starci -n '__starci_using_command kernel enqueue' -l new-module -r -d 'comma list of module root dirs the grant creates'
585
573
  complete -c starci -n '__starci_using_command kernel enqueue' -l retry-of -r -d 'job this one retries'
586
574
  complete -c starci -n '__starci_using_command kernel enqueue' -l reopen -r -d 'reason a settled unit is reopened'
@@ -662,8 +650,10 @@ complete -c starci -n '__starci_using_command kernel incident' -l until-foundati
662
650
  complete -c starci -n '__starci_using_command kernel incident' -l until-landed -r -d 'release when the workflow lands its product: <workflowId>@<repository>'
663
651
  complete -c starci -n '__starci_using_command kernel kernel-ack-rev' -l repo -r -d 'managed repository whose .starciwork ledger the command uses'
664
652
  complete -c starci -n '__starci_using_command kernel kernel-ack-rev' -l workflow -r -d 'workflow id'
665
- complete -c starci -n '__starci_using_command kernel kernel-ack-rev' -l rev -r -d 'runtime commit (sha or ref) that was read'
666
- complete -c starci -n '__starci_using_command kernel kernel-ack-rev' -l files -r -d 'comma list of the kernel files read at that rev'
653
+ complete -c starci -n '__starci_using_command kernel kernel-ack-rev' -l rev -r -d 'exact current Git SHA or installed required-byte revision returned by --plan'
654
+ complete -c starci -n '__starci_using_command kernel kernel-ack-rev' -l plan -d 'return the current server-derived required manifest without acknowledgement'
655
+ complete -c starci -n '__starci_using_command kernel kernel-ack-rev' -l read-manifest -r -d 'regular JSON file containing the exact complete manifest read by this Kernel'
656
+ complete -c starci -n '__starci_using_command kernel kernel-ack-rev' -l op -r -d 'include this declared upcoming op contract in the required READ set'
667
657
  complete -c starci -n '__starci_using_command kernel kernel-proposal' -l repo -r -d 'managed repository whose .starciwork ledger the command uses'
668
658
  complete -c starci -n '__starci_using_command kernel kernel-proposal' -l workflow -r -d 'workflow id'
669
659
  complete -c starci -n '__starci_using_command kernel kernel-proposal' -l title -r -d 'one-line title of the proposal (required unless --list)'
@@ -941,7 +931,7 @@ complete -c starci -n '__starci_using_command runtime benchmark-snapshot' -l dir
941
931
  complete -c starci -n '__starci_using_command runtime check' -l only -r -d 'run one named check; arguments after -- pass through unchanged'
942
932
  complete -c starci -n '__starci_using_command runtime derived-fields' -l write -d 'rewrite the stale output in place'
943
933
  complete -c starci -n '__starci_using_command runtime derived-fields' -l check -d 'list the stale output (the default)'
944
- complete -c starci -n '__starci_using_command runtime doctor' -l quick -d 'only the core kernel/ledger spec subset'
934
+ complete -c starci -n '__starci_using_command runtime doctor' -l quick -d 'check install integrity without runtime capability checks'
945
935
  complete -c starci -n '__starci_using_command runtime gen-catalog' -l write -d 'rewrite every generated output from modules/cli/commands'
946
936
  complete -c starci -n '__starci_using_command runtime gen-catalog' -l check -d 'exit 1 listing each output that differs'
947
937
  complete -c starci -n '__starci_using_command runtime gen-catalog' -l root -r -d 'the runtime tree to read and write'
@@ -1019,7 +1009,7 @@ complete -c starci -n '__starci_using_command supervisor channel' -l text-file -
1019
1009
  complete -c starci -n '__starci_using_command supervisor channel' -l to -r -d 'inbox message id to answer'
1020
1010
  complete -c starci -n '__starci_using_command supervisor channel' -l timeout-ms -r -d 'maximum inbox wait in milliseconds'
1021
1011
  complete -c starci -n '__starci_using_command supervisor direct-commits' -l repo -r -d 'runtime repository to inspect'
1022
- complete -c starci -n '__starci_using_command supervisor gate-stability' -l family -r -d 'frozen operation family to inspect'
1012
+ complete -c starci -n '__starci_using_command supervisor gate-stability' -l family -r -d 'operation family to inspect'
1023
1013
  complete -c starci -n '__starci_using_command supervisor gate-stability' -l tree -r -d 'tree whose gates should run for one side'
1024
1014
  complete -c starci -n '__starci_using_command supervisor gate-stability' -l base -r -d 'baseline tree for a two-sided comparison'
1025
1015
  complete -c starci -n '__starci_using_command supervisor gate-stability' -l head -r -d 'candidate tree for a two-sided comparison'
@@ -1280,8 +1270,6 @@ complete -c starci -n '__starci_using_command work layout-tree' -l key -r -d 'sl
1280
1270
  complete -c starci -n '__starci_using_command work layout-tree' -l tolerance -r -d 'colour tolerance when finding the slot'
1281
1271
  complete -c starci -n '__starci_using_command work render-proof' -l work -r -d 'the .starciwork tree that holds the record'
1282
1272
  complete -c starci -n '__starci_using_command work render-proof' -l record -r -d 'record id to render'
1283
- complete -c starci -n '__starci_using_command work shell-conformance' -l admitted-at -r -d 'ISO time or epoch ms the work was admitted at'
1284
- complete -c starci -n '__starci_using_command work shell-conformance' -l op -r -d 'op id whose contract changes count (needs --admitted-at)'
1285
1273
  complete -c starci -n '__starci_using_command work ui-proof-brief' -l surface -r -d 'ui record path the brief is for'
1286
1274
  complete -c starci -n '__starci_using_command work ui-proof-brief' -l repo -r -d 'product repository root'
1287
1275
  complete -c starci -n '__starci_using_command work ui-proof-brief' -l family -r -d 'grammar family to use instead of the detected one (a registered grammar family id)'
@@ -12,7 +12,7 @@ Register-ArgumentCompleter -Native -CommandName starci -ScriptBlock {
12
12
  'git' = @('backup','commit','land','sync')
13
13
  'guard' = @('command','footprint-scan','raw','seat-tools','verify-commit')
14
14
  'harness' = @('open','start','status','stop')
15
- 'kernel' = @('archive','artifacts','autopilot','consume-report','contract-release','coverage','cut-seam','decide','decisions','dispatch','dispatch-ready','enqueue','estimate','extensions','finish','foundation','foundations','graph-edit','hierarchy','inbox','incident','kernel-ack-rev','kernel-proposal','lifecycle','log','logs','messages','notify','nudge','observe','op-contract','op-override','peers','plan','provider-backoff','provider-health','questions','reconcile','record-change','record-checks','redesign','rename','reply','report','retire-ask','route','run-deferred-tests','serve-ask','settle','settle-tail','status','survey','unit','usage','verify-proofs')
15
+ 'kernel' = @('archive','artifacts','autopilot','consume-report','coverage','cut-seam','decide','decisions','dispatch','dispatch-ready','enqueue','estimate','extensions','finish','foundation','foundations','graph-edit','hierarchy','inbox','incident','kernel-ack-rev','kernel-proposal','lifecycle','log','logs','messages','notify','nudge','observe','op-contract','op-override','peers','plan','provider-backoff','provider-health','questions','reconcile','record-change','record-checks','redesign','rename','reply','report','retire-ask','route','run-deferred-tests','serve-ask','settle','settle-tail','status','survey','unit','usage','verify-proofs')
16
16
  'lint' = @('run')
17
17
  'machine' = @('decisions','kernel-watchdog','lessons','op-metrics','seam-policy','worktrees','worktrees-clean')
18
18
  'npm' = @('ci','install')
@@ -68,7 +68,7 @@ Register-ArgumentCompleter -Native -CommandName starci -ScriptBlock {
68
68
  'gate repo-presentation' = @('--root','--runtime','--json','--cwd','--quiet','--help','--edition')
69
69
  'gate run' = @('--root','--base','--main','--changed','--tests','--out','--scope','--tree','--json','--cwd','--quiet','--help','--edition')
70
70
  'gate sonar' = @('--key','--name','--with-token','--wait','--base','--paths','--project-gate','--out','--blob','--log','--token-ref','--no-ensure','--timeout','--wait-timeout','--isolate','--keep-slice-project','--declaration','--host','--stack','--json','--cwd','--quiet','--help','--edition')
71
- 'gate starcistacks' = @('--new','--admitted-at','--op','--json','--cwd','--quiet','--help','--edition')
71
+ 'gate starcistacks' = @('--new','--json','--cwd','--quiet','--help','--edition')
72
72
  'gate test-world' = @('--root','--project','--tests','--out','--json','--cwd','--quiet','--help','--edition')
73
73
  'gate unit' = @('--root','--out','--json','--cwd','--quiet','--help','--edition')
74
74
  'git backup' = @('--remote','--branches','--dry-run','--json','--cwd','--quiet','--help','--edition')
@@ -88,14 +88,13 @@ Register-ArgumentCompleter -Native -CommandName starci -ScriptBlock {
88
88
  'kernel artifacts' = @('--repo','--workflow','--job','--kind','--subkind','--json','--cwd','--quiet','--help','--edition')
89
89
  'kernel autopilot' = @('--repo','--workflow','--sweep','--bundle','--checklist','--lang','--set','--reason','--defer-to-handover','--op','--class','--detail','--fields','--stub','--job','--release','--defer-leg','--reopen','--handover-answer','--note','--extend-budget','--by','--json','--cwd','--quiet','--help','--edition')
90
90
  'kernel consume-report' = @('--repo','--job','--json','--cwd','--quiet','--help','--edition')
91
- 'kernel contract-release' = @('--repo','--family','--workflow','--batch','--reason','--by','--dry-run','--json','--cwd','--quiet','--help','--edition')
92
91
  'kernel coverage' = @('--repo','--workflow','--json','--cwd','--quiet','--help','--edition')
93
92
  'kernel cut-seam' = @('--repo','--publish-interface','--release','--reconcile','--job','--files','--summary','--workflow','--op','--cut-id','--reason','--exit-code','--command','--evidence','--json','--cwd','--quiet','--help','--edition')
94
93
  'kernel decide' = @('--repo','--workflow','--hypothesis','--action-key','--metric','--command','--close','--result','--observed','--list','--json','--cwd','--quiet','--help','--edition')
95
94
  'kernel decisions' = @('--repo','--workflow','--list','--all','--next','--open','--kind','--summary','--by','--entity-type','--entity-id','--decider','--due-ms','--key','--evidence-file','--evidence','--evidence-json','--allowed-verbs','--options-json','--severity','--item','--claim','--resolve','--verb','--decision','--note','--escalate','--to','--reason','--json','--cwd','--quiet','--help','--edition')
96
95
  'kernel dispatch' = @('--repo','--job','--spawn','--model','--worktree','--lease-ttl','--env-gate','--json','--cwd','--quiet','--help','--edition')
97
96
  'kernel dispatch-ready' = @('--repo','--workflow','--max','--dry-run','--foreground','--json','--cwd','--quiet','--help','--edition')
98
- 'kernel enqueue' = @('--repo','--workflow','--op','--paths','--records','--params','--repository','--cut-id','--cut-ordinal','--cut-total','--after','--foundation','--contract-change','--follow-up-of','--new-module','--retry-of','--reopen','--derived-from','--canon-scan','--resolves','--what','--title','--risk','--json','--cwd','--quiet','--help','--edition')
97
+ 'kernel enqueue' = @('--repo','--workflow','--op','--paths','--records','--params','--repository','--cut-id','--cut-ordinal','--cut-total','--after','--foundation','--new-module','--retry-of','--reopen','--derived-from','--canon-scan','--resolves','--what','--title','--risk','--json','--cwd','--quiet','--help','--edition')
99
98
  'kernel estimate' = @('--repo','--files','--assertions','--components','--records','--paths','--gear','--json','--cwd','--quiet','--help','--edition')
100
99
  'kernel extensions' = @('--repo','--json','--cwd','--quiet','--help','--edition')
101
100
  'kernel finish' = @('--repo','--workflow','--json','--cwd','--quiet','--help','--edition')
@@ -105,7 +104,7 @@ Register-ArgumentCompleter -Native -CommandName starci -ScriptBlock {
105
104
  'kernel hierarchy' = @('--repo','--workflow','--json','--cwd','--quiet','--help','--edition')
106
105
  'kernel inbox' = @('--repo','--workflow','--ack','--disposition','--json','--cwd','--quiet','--help','--edition')
107
106
  'kernel incident' = @('--repo','--workflow','--kind','--detail','--op','--holds','--peer','--refs','--resolve','--by','--owner-answer','--introduced-by','--introducer','--fix','--attach','--until-record','--until-job','--until-message','--until-commit','--until-incident','--until-foundation','--until-landed','--json','--cwd','--quiet','--help','--edition')
108
- 'kernel kernel-ack-rev' = @('--repo','--workflow','--rev','--files','--json','--cwd','--quiet','--help','--edition')
107
+ 'kernel kernel-ack-rev' = @('--repo','--workflow','--rev','--plan','--read-manifest','--op','--json','--cwd','--quiet','--help','--edition')
109
108
  'kernel kernel-proposal' = @('--repo','--workflow','--title','--evidence','--patch','--files','--decision','--list','--json','--cwd','--quiet','--help','--edition')
110
109
  'kernel lifecycle' = @('--repo','--workflow','--pause','--stop','--resume','--by','--reason','--json','--cwd','--quiet','--help','--edition')
111
110
  'kernel log' = @('--repo','--workflow','--job','--kind','--msg','--data','--refs','--level','--node','--actor','--json','--cwd','--quiet','--help','--edition')
@@ -249,7 +248,7 @@ Register-ArgumentCompleter -Native -CommandName starci -ScriptBlock {
249
248
  'work hygiene' = @('--repo','--json','--cwd','--quiet','--help','--edition')
250
249
  'work layout-tree' = @('--work','--app-dir','--write','--app','--repo-root','--node','--breakpoint','--theme','--file','--url','--provenance','--destination','--route','--locale','--from','--rect','--active-nav','--design','--files','--key','--tolerance','--json','--cwd','--quiet','--help','--edition')
251
250
  'work render-proof' = @('--work','--record','--json','--cwd','--quiet','--help','--edition')
252
- 'work shell-conformance' = @('--admitted-at','--op','--json','--cwd','--quiet','--help','--edition')
251
+ 'work shell-conformance' = @('--json','--cwd','--quiet','--help','--edition')
253
252
  'work ui-proof-brief' = @('--surface','--repo','--family','--elements','--score','--viewport','--json','--cwd','--quiet','--help','--edition')
254
253
  'worker close' = @('--dispatch','--stop-first','--retry-release','--json','--cwd','--quiet','--help','--edition')
255
254
  'worker list' = @('--run','--by-lane','--active','--worktree','--json','--cwd','--quiet','--help','--edition')
@@ -367,8 +366,6 @@ Register-ArgumentCompleter -Native -CommandName starci -ScriptBlock {
367
366
  'gate sonar --declaration' = @()
368
367
  'gate sonar --host' = @()
369
368
  'gate sonar --stack' = @()
370
- 'gate starcistacks --admitted-at' = @()
371
- 'gate starcistacks --op' = @()
372
369
  'gate test-world --root' = @()
373
370
  'gate test-world --project' = @('e2e','integration','contract')
374
371
  'gate test-world --tests' = @()
@@ -420,12 +417,6 @@ Register-ArgumentCompleter -Native -CommandName starci -ScriptBlock {
420
417
  'kernel autopilot --by' = @('supervisor','kernel','autopilot')
421
418
  'kernel consume-report --repo' = @()
422
419
  'kernel consume-report --job' = @()
423
- 'kernel contract-release --repo' = @()
424
- 'kernel contract-release --family' = @()
425
- 'kernel contract-release --workflow' = @()
426
- 'kernel contract-release --batch' = @()
427
- 'kernel contract-release --reason' = @()
428
- 'kernel contract-release --by' = @('supervisor','owner')
429
420
  'kernel coverage --repo' = @()
430
421
  'kernel coverage --workflow' = @()
431
422
  'kernel cut-seam --repo' = @()
@@ -494,8 +485,6 @@ Register-ArgumentCompleter -Native -CommandName starci -ScriptBlock {
494
485
  'kernel enqueue --cut-total' = @()
495
486
  'kernel enqueue --after' = @()
496
487
  'kernel enqueue --foundation' = @()
497
- 'kernel enqueue --contract-change' = @()
498
- 'kernel enqueue --follow-up-of' = @()
499
488
  'kernel enqueue --new-module' = @()
500
489
  'kernel enqueue --retry-of' = @()
501
490
  'kernel enqueue --reopen' = @()
@@ -577,7 +566,8 @@ Register-ArgumentCompleter -Native -CommandName starci -ScriptBlock {
577
566
  'kernel kernel-ack-rev --repo' = @()
578
567
  'kernel kernel-ack-rev --workflow' = @()
579
568
  'kernel kernel-ack-rev --rev' = @()
580
- 'kernel kernel-ack-rev --files' = @()
569
+ 'kernel kernel-ack-rev --read-manifest' = @()
570
+ 'kernel kernel-ack-rev --op' = @()
581
571
  'kernel kernel-proposal --repo' = @()
582
572
  'kernel kernel-proposal --workflow' = @()
583
573
  'kernel kernel-proposal --title' = @()
@@ -1076,8 +1066,6 @@ Register-ArgumentCompleter -Native -CommandName starci -ScriptBlock {
1076
1066
  'work layout-tree --tolerance' = @()
1077
1067
  'work render-proof --work' = @()
1078
1068
  'work render-proof --record' = @()
1079
- 'work shell-conformance --admitted-at' = @()
1080
- 'work shell-conformance --op' = @()
1081
1069
  'work ui-proof-brief --surface' = @()
1082
1070
  'work ui-proof-brief --repo' = @()
1083
1071
  'work ui-proof-brief --family' = @()
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@starci/cli",
3
- "version": "1.0.0",
3
+ "version": "1.0.1",
4
4
  "description": "The single catalog-driven command line for StarCi apps and runtimes.",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -12,20 +12,22 @@
12
12
  "./package.json": "./package.json"
13
13
  },
14
14
  "dependencies": {
15
- "@starci/hfs": "4.0.9"
15
+ "@starci/hfs": "4.0.10"
16
16
  },
17
17
  "scripts": {
18
18
  "test": "node --test src/*.spec.mjs"
19
19
  },
20
20
  "files": [
21
+ "LICENSE",
21
22
  "bin/",
22
23
  "src/",
24
+ "!src/**/*.spec.mjs",
23
25
  "completions/",
24
26
  "README.md",
25
27
  "CHANGELOG.md"
26
28
  ],
27
29
  "engines": {
28
- "node": ">=22.13.0"
30
+ "node": "^22.22.3 || ^24.15.0"
29
31
  },
30
32
  "publishConfig": {
31
33
  "access": "public"
@@ -1,7 +1,7 @@
1
1
  // GENERATED by scripts/cli/gen-catalog.mjs — do not edit
2
2
  export const CATALOG = {
3
3
  "schema": "starci/cli-catalog@1",
4
- "hash": "59cf4483d2aaf6832810722f454616ca58e4f9e7e833d93f139ba91e1f04f4e6",
4
+ "hash": "b224e67e193ec794b7f5a090ba31e76f9a9f72255a0db6326b8c37d256ab3441",
5
5
  "global": [
6
6
  {
7
7
  "name": "json",
@@ -681,7 +681,7 @@ export const CATALOG = {
681
681
  ],
682
682
  "exit": {
683
683
  "0": "action completed",
684
- "1": "another gateway owns the state or the port cannot be bound",
684
+ "1": "another gateway owns the state, the port cannot be bound, or stop custody is unverified",
685
685
  "2": "bad usage or configuration"
686
686
  },
687
687
  "json": "always",
@@ -883,7 +883,7 @@ export const CATALOG = {
883
883
  ],
884
884
  "exit": {
885
885
  "0": "action completed",
886
- "1": "another tunnel manager owns the tunnel state",
886
+ "1": "another tunnel manager owns the state or exact manager/child stop custody is unverified",
887
887
  "2": "bad usage or configuration"
888
888
  },
889
889
  "json": "always",
@@ -1898,16 +1898,6 @@ export const CATALOG = {
1898
1898
  "name": "new",
1899
1899
  "type": "boolean",
1900
1900
  "summary": "check a repository being created by this leg"
1901
- },
1902
- {
1903
- "name": "admitted-at",
1904
- "type": "string",
1905
- "summary": "admission time for contract-change advice"
1906
- },
1907
- {
1908
- "name": "op",
1909
- "type": "string",
1910
- "summary": "admitted operation for contract-change advice"
1911
1901
  }
1912
1902
  ],
1913
1903
  "exit": {
@@ -2984,76 +2974,6 @@ export const CATALOG = {
2984
2974
  ]
2985
2975
  }
2986
2976
  },
2987
- "contract-release": {
2988
- "summary": "release a frozen op family at the Supervisor release point (contract-freeze.yaml)",
2989
- "owner": "runtime",
2990
- "flags": [
2991
- {
2992
- "name": "repo",
2993
- "type": "string",
2994
- "summary": "managed repository whose .starciwork ledger the command uses"
2995
- },
2996
- {
2997
- "name": "family",
2998
- "type": "string",
2999
- "required": true,
3000
- "summary": "op family to release"
3001
- },
3002
- {
3003
- "name": "workflow",
3004
- "type": "string",
3005
- "summary": "workflow id"
3006
- },
3007
- {
3008
- "name": "batch",
3009
- "type": "string",
3010
- "summary": "name of the release batch"
3011
- },
3012
- {
3013
- "name": "reason",
3014
- "type": "string",
3015
- "summary": "why the family is released"
3016
- },
3017
- {
3018
- "name": "by",
3019
- "type": "enum",
3020
- "summary": "who releases it",
3021
- "enum": [
3022
- "supervisor",
3023
- "owner"
3024
- ]
3025
- },
3026
- {
3027
- "name": "dry-run",
3028
- "type": "boolean",
3029
- "summary": "report what would be released without recording it"
3030
- }
3031
- ],
3032
- "exit": {
3033
- "0": "released, or the dry-run plan shown",
3034
- "1": "refused or failed",
3035
- "2": "bad usage: a required flag is missing or a flag has no value"
3036
- },
3037
- "json": "flag",
3038
- "examples": [
3039
- "starci kernel contract-release --repo <path> --family <family>",
3040
- "starci kernel contract-release --repo <path> --family <family> --workflow <workflow> --batch <batch> --reason <reason> --dry-run"
3041
- ],
3042
- "editions": [
3043
- "full"
3044
- ],
3045
- "since": "1.0.0-alpha.4",
3046
- "removed": [
3047
- "starci api contract-release",
3048
- "node scripts/kernel/cli.mjs contract-release"
3049
- ],
3050
- "impl": {
3051
- "script": "scripts/kernel/cli.mjs",
3052
- "args": [
3053
- "contract-release"
3054
- ]
3055
- }
3056
- },
3057
2977
  "coverage": {
3058
2978
  "summary": "show every FR, shape and proof case of the workflow's scope as proven, stale or missing",
3059
2979
  "owner": "runtime",
@@ -3658,16 +3578,6 @@ export const CATALOG = {
3658
3578
  "type": "string",
3659
3579
  "summary": "shared foundation this unit builds"
3660
3580
  },
3661
- {
3662
- "name": "contract-change",
3663
- "type": "string",
3664
- "summary": "registered follow-up change id in contract-changes.yaml"
3665
- },
3666
- {
3667
- "name": "follow-up-of",
3668
- "type": "string",
3669
- "summary": "job of this workflow the follow-up leg answers"
3670
- },
3671
3581
  {
3672
3582
  "name": "new-module",
3673
3583
  "type": "string",
@@ -4398,7 +4308,7 @@ export const CATALOG = {
4398
4308
  }
4399
4309
  },
4400
4310
  "kernel-ack-rev": {
4401
- "summary": "record the runtime rev whose kernel files this Kernel has read",
4311
+ "summary": "project or attest the complete current Kernel READ manifest",
4402
4312
  "owner": "runtime",
4403
4313
  "flags": [
4404
4314
  {
@@ -4415,23 +4325,33 @@ export const CATALOG = {
4415
4325
  {
4416
4326
  "name": "rev",
4417
4327
  "type": "string",
4418
- "required": true,
4419
- "summary": "runtime commit (sha or ref) that was read"
4328
+ "summary": "exact current Git SHA or installed required-byte revision returned by --plan"
4420
4329
  },
4421
4330
  {
4422
- "name": "files",
4331
+ "name": "plan",
4332
+ "type": "boolean",
4333
+ "summary": "return the current server-derived required manifest without acknowledgement"
4334
+ },
4335
+ {
4336
+ "name": "read-manifest",
4337
+ "type": "string",
4338
+ "summary": "regular JSON file containing the exact complete manifest read by this Kernel"
4339
+ },
4340
+ {
4341
+ "name": "op",
4423
4342
  "type": "string",
4424
- "summary": "comma list of the kernel files read at that rev"
4343
+ "summary": "include this declared upcoming op contract in the required READ set"
4425
4344
  }
4426
4345
  ],
4427
4346
  "exit": {
4428
- "0": "acked",
4429
- "1": "refused or failed (rev is no commit of the runtime)",
4347
+ "0": "planned or acknowledged",
4348
+ "1": "refused or unavailable current identity/READ inputs",
4430
4349
  "2": "bad usage: a required flag is missing or a flag has no value"
4431
4350
  },
4432
4351
  "json": "flag",
4433
4352
  "examples": [
4434
- "starci kernel kernel-ack-rev --repo <path> --workflow <workflow> --rev <rev>"
4353
+ "starci kernel kernel-ack-rev --repo <path> --workflow <workflow> --plan",
4354
+ "starci kernel kernel-ack-rev --repo <path> --workflow <workflow> --rev <rev> --read-manifest <file>"
4435
4355
  ],
4436
4356
  "editions": [
4437
4357
  "full"
@@ -8104,18 +8024,18 @@ export const CATALOG = {
8104
8024
  }
8105
8025
  },
8106
8026
  "doctor": {
8107
- "summary": "run the installed tree's own specs and report drift against the install manifest",
8027
+ "summary": "verify installed payload, public entry custody and local runtime capabilities",
8108
8028
  "owner": "runtime",
8109
8029
  "flags": [
8110
8030
  {
8111
8031
  "name": "quick",
8112
8032
  "type": "boolean",
8113
- "summary": "only the core kernel/ledger spec subset"
8033
+ "summary": "check install integrity without runtime capability checks"
8114
8034
  }
8115
8035
  ],
8116
8036
  "exit": {
8117
- "0": "every spec passed",
8118
- "1": "a spec failed or the tree drifted",
8037
+ "0": "the selected local diagnostic checks passed",
8038
+ "1": "installed integrity or a selected runtime capability failed",
8119
8039
  "2": "bad usage"
8120
8040
  },
8121
8041
  "json": "none",
@@ -9227,14 +9147,14 @@ export const CATALOG = {
9227
9147
  }
9228
9148
  },
9229
9149
  "gate-stability": {
9230
- "summary": "compare frozen gate behavior against accepted work in live workflows",
9150
+ "summary": "compare explicitly selected current gates against accepted work in live workflows",
9231
9151
  "owner": "runtime",
9232
9152
  "flags": [
9233
9153
  {
9234
9154
  "name": "family",
9235
9155
  "type": "string",
9236
9156
  "required": true,
9237
- "summary": "frozen operation family to inspect"
9157
+ "summary": "operation family to inspect"
9238
9158
  },
9239
9159
  {
9240
9160
  "name": "tree",
@@ -9259,6 +9179,7 @@ export const CATALOG = {
9259
9179
  {
9260
9180
  "name": "gate",
9261
9181
  "type": "list",
9182
+ "required": true,
9262
9183
  "summary": "gate module and export as module#name"
9263
9184
  }
9264
9185
  ],
@@ -9268,8 +9189,8 @@ export const CATALOG = {
9268
9189
  },
9269
9190
  "json": "flag",
9270
9191
  "examples": [
9271
- "starci supervisor gate-stability --family <op> --tree <dir>",
9272
- "starci supervisor gate-stability --family <op> --base <dir> --head <dir> --json"
9192
+ "starci supervisor gate-stability --family <op> --gate <module#export> --tree <dir>",
9193
+ "starci supervisor gate-stability --family <op> --gate <module#export> --base <dir> --head <dir> --json"
9273
9194
  ],
9274
9195
  "editions": [
9275
9196
  "full"
@@ -12525,18 +12446,7 @@ export const CATALOG = {
12525
12446
  "variadic": false
12526
12447
  }
12527
12448
  ],
12528
- "flags": [
12529
- {
12530
- "name": "admitted-at",
12531
- "type": "string",
12532
- "summary": "ISO time or epoch ms the work was admitted at"
12533
- },
12534
- {
12535
- "name": "op",
12536
- "type": "string",
12537
- "summary": "op id whose contract changes count (needs --admitted-at)"
12538
- }
12539
- ],
12449
+ "flags": [],
12540
12450
  "exit": {
12541
12451
  "0": "conformant",
12542
12452
  "1": "refused or suspect records",
@@ -13669,14 +13579,6 @@ export const RETIRED = [
13669
13579
  "spelling": "node scripts/kernel/cli.mjs consume-report",
13670
13580
  "use": "starci kernel consume-report"
13671
13581
  },
13672
- {
13673
- "spelling": "starci api contract-release",
13674
- "use": "starci kernel contract-release"
13675
- },
13676
- {
13677
- "spelling": "node scripts/kernel/cli.mjs contract-release",
13678
- "use": "starci kernel contract-release"
13679
- },
13680
13582
  {
13681
13583
  "spelling": "starci api coverage",
13682
13584
  "use": "starci kernel coverage"
@@ -0,0 +1,2 @@
1
+ // GENERATED by scripts/cli/gen-catalog.mjs — do not edit
2
+ export const RUNTIME_VERSION = "1.0.0-alpha.4";
@@ -6,7 +6,8 @@ import { fileURLToPath } from 'node:url';
6
6
  import { spawnSync } from 'node:child_process';
7
7
  import { writeRuntimeShim } from './shim.mjs';
8
8
 
9
- export const RUNTIME_VERSION = '1.0.0-alpha.4';
9
+ import { RUNTIME_VERSION } from './runtime-install.generated.mjs';
10
+ export { RUNTIME_VERSION };
10
11
 
11
12
  const writeTo = (target, text) => {
12
13
  if (typeof target === 'function') target(text);
@@ -105,6 +106,7 @@ export function installRuntime({ cwd = process.cwd(), home = os.homedir(), force
105
106
  const installStatus = statusOf(installed, 'runtime installer', report);
106
107
  if (installStatus !== 0) return installStatus;
107
108
 
108
- writeRuntimeShim({ root: runtimeRoot, home, cli: fileURLToPath(new URL('../bin/starci.mjs', import.meta.url)) }, deps);
109
+ // The download cache supplies the installer; runtime commands must read the installed host's config and bindings.
110
+ writeRuntimeShim({ root: path.resolve(cwd, '.claude'), home, cli: fileURLToPath(new URL('../bin/starci.mjs', import.meta.url)) }, deps);
109
111
  return 0;
110
112
  }
@@ -1,83 +0,0 @@
1
- import assert from 'node:assert/strict';
2
- import { spawnSync } from 'node:child_process';
3
- import { lstatSync, mkdtempSync, readFileSync, readdirSync, realpathSync, rmSync, writeFileSync } from 'node:fs';
4
- import os from 'node:os';
5
- import path from 'node:path';
6
- import test from 'node:test';
7
- import { fileURLToPath } from 'node:url';
8
- import { main } from './main.mjs';
9
-
10
- const bin = fileURLToPath(new URL('../bin/starci.mjs', import.meta.url));
11
- const manifest = JSON.parse(readFileSync(new URL('../package.json', import.meta.url), 'utf8'));
12
- const run = (...args) => spawnSync(process.execPath, [bin, ...args], { encoding: 'utf8', windowsHide: true, timeout: 30_000 });
13
-
14
- test('the exact installed HFS dependency loads its real published module graph', async () => {
15
- const file = fileURLToPath(import.meta.resolve('@starci/hfs/package.json'));
16
- const installed = JSON.parse(readFileSync(file, 'utf8'));
17
- assert.equal(installed.name, '@starci/hfs');
18
- const declared = manifest.dependencies[installed.name];
19
- if (declared.startsWith('file:')) {
20
- const archive = path.resolve(fileURLToPath(new URL('../', import.meta.url)), declared.slice('file:'.length));
21
- assert.equal(path.extname(archive), '.tgz');
22
- assert.equal(lstatSync(archive).isFile(), true);
23
- // The clean-package owner verifies the original exact version and archive identity in preparePackedDependencies,
24
- // then every installed archive byte in verifyPackedDependencies, before running this spec with its scratch alias.
25
- } else assert.equal(installed.version, declared);
26
- const root = path.dirname(file);
27
- assert.equal(lstatSync(root).isDirectory(), true);
28
- assert.equal(realpathSync.native(root), path.join(realpathSync.native(fileURLToPath(new URL('../', import.meta.url))), 'node_modules', '@starci', 'hfs'));
29
- const hfs = await import('@starci/hfs');
30
- assert.equal(typeof hfs.main, 'function');
31
- });
32
-
33
- test('the real binary dispatches finite app explanations through installed HFS', (t) => {
34
- const cwd = mkdtempSync(path.join(os.tmpdir(), 'starci-app-main-'));
35
- t.after(() => rmSync(cwd, { recursive: true, force: true }));
36
- const declaration = JSON.stringify({ hfs: 2, kind: 'app', project: 'package-entry', sides: {
37
- be: { apps: [{ name: 'api', kind: 'api' }] },
38
- fe: { apps: [{ name: 'web', kind: 'next' }], reads: ['be/contracts/'] },
39
- } });
40
- writeFileSync(path.join(cwd, 'hfs.json'), declaration);
41
- const owned = run('app', 'explain', 'hfs.json', '--cwd', cwd, '--json');
42
- assert.equal(owned.status, 0, owned.stderr || String(owned.error ?? ''));
43
- const explained = JSON.parse(owned.stdout);
44
- assert.deepEqual([explained.path, explained.status, explained.slot], ['hfs.json', 'owned', 'app.declaration']);
45
- const unowned = run('app', 'explain', 'unowned.fixture', '--cwd', cwd, '--json');
46
- assert.equal(unowned.status, 1, unowned.stderr || String(unowned.error ?? ''));
47
- const refused = JSON.parse(unowned.stdout);
48
- assert.deepEqual([refused.path, refused.status, refused.code], ['unowned.fixture', 'no-slot', 'HFS_SLOT_UNDECLARED']);
49
- assert.equal(readFileSync(path.join(cwd, 'hfs.json'), 'utf8'), declaration);
50
- assert.deepEqual(readdirSync(cwd), ['hfs.json']);
51
- });
52
-
53
- test('the published binary serves its own version and catalog help', () => {
54
- const version = run('--version');
55
- assert.equal(version.status, 0, version.stderr);
56
- assert.equal(version.stdout.trim(), manifest.version);
57
- const help = run('--help');
58
- assert.equal(help.status, 0, help.stderr);
59
- assert.match(help.stdout, /Usage: starci <group> <verb>/);
60
- assert.match(help.stdout, /Groups:/);
61
- const appHelp = run('app', 'check', '--help');
62
- assert.equal(appHelp.status, 0, appHelp.stderr);
63
- assert.match(appHelp.stdout, /starci app check/);
64
- });
65
-
66
- test('the published binary refuses unknown commands and invalid flags', () => {
67
- const unknown = run('package-entry-unknown');
68
- assert.equal(unknown.status, 2);
69
- assert.match(unknown.stderr, /unknown group/);
70
- const invalid = run('app', 'check', '--package-entry-unknown');
71
- assert.equal(invalid.status, 2);
72
- assert.match(invalid.stderr, /unknown (?:flag|option)/);
73
- });
74
-
75
- test('the package dispatcher preserves app arguments, cwd and owner exit status', async () => {
76
- let called;
77
- const code = await main(['--cwd', 'selected-app', 'app', 'check', '--json'], {
78
- cwd: path.resolve('package-entry-base'), stdout: () => {}, stderr: () => {},
79
- importHfs: async () => ({ main: async (argv, io) => { called = { argv, cwd: io.cwd }; return 1; } }),
80
- });
81
- assert.equal(code, 1);
82
- assert.deepEqual(called, { argv: ['check', '--json'], cwd: path.resolve('package-entry-base', 'selected-app') });
83
- });