@iowarp/clio-coder 0.3.6 → 0.3.8
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/CHANGELOG.md +59 -0
- package/README.md +22 -6
- package/dist/{acp-2BEHC4DL.js → acp-U67UHUK2.js} +14 -14
- package/dist/{agents-LNNFTM53.js → agents-YU6SGALZ.js} +42 -35
- package/dist/assets/codewiki.json +1 -1
- package/dist/{auth-KXXFI2VS.js → auth-5ZPJOIVG.js} +32 -24
- package/dist/builtins-C6JMZVV6.js +17 -0
- package/dist/{chunk-E25LMLRW.js → chunk-26LEYJZH.js} +2 -2
- package/dist/{chunk-TSHXZTOQ.js → chunk-2HEJ2F35.js} +5 -5
- package/dist/{chunk-PBTHKCPN.js → chunk-2HFZQUHL.js} +7 -7
- package/dist/{chunk-FO5ZOVUY.js → chunk-3BINW3FP.js} +5 -5
- package/dist/{chunk-4OC57DA6.js → chunk-4DGYLA73.js} +53 -2
- package/dist/{chunk-CKXWIANG.js → chunk-4SPRNWDE.js} +18 -16
- package/dist/{chunk-E2ER4LJF.js → chunk-5C3AQNDW.js} +25 -1
- package/dist/{chunk-XF5N4U5A.js → chunk-5DHKRSMQ.js} +9 -8
- package/dist/{chunk-43AOLP7E.js → chunk-5FR74PWO.js} +2 -1
- package/dist/{chunk-EKY57CSP.js → chunk-5H3GB5BO.js} +68 -772
- package/dist/{chunk-6XXKFVSN.js → chunk-5Q2VVUKB.js} +4 -4
- package/dist/{chunk-DJVECN66.js → chunk-7RFXX52T.js} +295 -3705
- package/dist/{chunk-ZXF4XRKW.js → chunk-7RGZWPB6.js} +158 -8
- package/dist/{chunk-FYYLNIL5.js → chunk-A2NJGIB3.js} +2 -2
- package/dist/{chunk-XXQNGV4M.js → chunk-A3WNZD3P.js} +548 -72
- package/dist/{chunk-VEZEGCGW.js → chunk-B5CSFE7B.js} +23 -21
- package/dist/{chunk-2SFS6XQE.js → chunk-DGSYXYMX.js} +3 -2
- package/dist/chunk-DR52UMZW.js +21 -0
- package/dist/{chunk-ZWLZP4ZT.js → chunk-DYIM5TJT.js} +98 -12
- package/dist/{chunk-QKMUKYO7.js → chunk-E77JEWSD.js} +270 -125
- package/dist/{chunk-LYF7OHWH.js → chunk-EMYUUSFG.js} +12 -467
- package/dist/{chunk-4VP4KH3K.js → chunk-EQ63NRB7.js} +8 -8
- package/dist/chunk-FBVTI2TJ.js +518 -0
- package/dist/{chunk-R46L2BIR.js → chunk-FHJEP5SW.js} +19 -25
- package/dist/{chunk-WR67VIZY.js → chunk-GN57SG4G.js} +66 -8
- package/dist/{chunk-RD5U66HV.js → chunk-GPIEI3LY.js} +9 -9
- package/dist/{chunk-PCZJO5TI.js → chunk-GU2UIAFZ.js} +13 -178
- package/dist/chunk-GWS3VEIW.js +195 -0
- package/dist/chunk-H7IXIC72.js +103 -0
- package/dist/{chunk-3BPUFZDL.js → chunk-HLE42MG7.js} +3 -3
- package/dist/{chunk-24I7BN55.js → chunk-IFBNV6H6.js} +3 -3
- package/dist/{chunk-QNQHSOLF.js → chunk-IGWKHNIQ.js} +114 -55
- package/dist/chunk-IIZWH4XA.js +172 -0
- package/dist/{chunk-AD2SYQYC.js → chunk-IJ7RPIYJ.js} +124 -6
- package/dist/chunk-J3YUBZWY.js +382 -0
- package/dist/{chunk-5JGRAMKL.js → chunk-JOZYP4GM.js} +8 -6
- package/dist/{chunk-OH3TOQTB.js → chunk-K4XHGFR5.js} +751 -15
- package/dist/{chunk-EYPA3EGJ.js → chunk-KTYTFRMB.js} +178 -14
- package/dist/chunk-LU7P4LHA.js +33 -0
- package/dist/chunk-ME6CCNFO.js +108 -0
- package/dist/chunk-MXKJU4JB.js +1100 -0
- package/dist/{chunk-RY3LY4J5.js → chunk-N22QMJKY.js} +21 -18
- package/dist/chunk-NMPKI6XL.js +3006 -0
- package/dist/chunk-NUGM5KR6.js +165 -0
- package/dist/{chunk-22NAGB7X.js → chunk-P43ETTHK.js} +5 -94
- package/dist/{chunk-NILBFAPG.js → chunk-PMDBGQSJ.js} +2 -2
- package/dist/chunk-PT7HYKEM.js +165 -0
- package/dist/chunk-RVG5JXAL.js +41 -0
- package/dist/{chunk-GEYXPTRF.js → chunk-RWSI4YD7.js} +2 -2
- package/dist/{chunk-4BPJXDWC.js → chunk-TANS5ZJS.js} +35 -19
- package/dist/{verifiers-NCBTHHN2.js → chunk-TB5666IT.js} +67 -324
- package/dist/{chunk-QM3F2GKX.js → chunk-TLQJPP24.js} +7927 -8088
- package/dist/{chunk-G7MUEIGA.js → chunk-TT36MB5S.js} +2 -1
- package/dist/chunk-TTHACPOM.js +961 -0
- package/dist/{chunk-6US73PDB.js → chunk-TYPGUK6W.js} +7 -7
- package/dist/{chunk-MFFY33HR.js → chunk-U6MBIEMB.js} +554 -209
- package/dist/chunk-VAWNZU7Z.js +242 -0
- package/dist/{chunk-IR4CFBFN.js → chunk-VCBR6CU7.js} +12 -12
- package/dist/{chunk-WHJYKASB.js → chunk-VHN4MY6O.js} +2 -2
- package/dist/{chunk-XYDYPRZI.js → chunk-VWZOAB7K.js} +10 -10
- package/dist/{chunk-ZRGEBJ4T.js → chunk-WLFILSD5.js} +48 -48
- package/dist/{chunk-K7T3E2SR.js → chunk-WNIJTQQK.js} +12 -11
- package/dist/{chunk-CYQKWTG3.js → chunk-WSB3FPX7.js} +68 -20
- package/dist/{chunk-KHSFENX2.js → chunk-WWCZ5F23.js} +116 -14
- package/dist/{chunk-XE2VEJHX.js → chunk-WXY7KU3G.js} +2 -2
- package/dist/{chunk-PPAMZ32Z.js → chunk-XK56QHLX.js} +6 -1
- package/dist/{chunk-KOHPCX4K.js → chunk-XWSF374K.js} +5 -5
- package/dist/{chunk-CJUB2JJ2.js → chunk-YS5VLNH5.js} +10 -10
- package/dist/{chunk-ZZMN5OM4.js → chunk-ZNLWCMVZ.js} +2 -2
- package/dist/{chunk-WHGPSPT5.js → chunk-ZVJ5BLO2.js} +2 -2
- package/dist/cli/index.js +33 -31
- package/dist/{clio-M2KGYUFZ.js → clio-QVTYJ57A.js} +10 -10
- package/dist/{code-nav-GQNL7XA6.js → code-nav-FGGFIE7L.js} +5 -5
- package/dist/codewiki/build-worker.js +4 -4
- package/dist/{components-5TTYYX6G.js → components-ZFA3SAER.js} +9 -9
- package/dist/{config-XUUYQIWO.js → config-LW5IJFQN.js} +65 -55
- package/dist/{configure-IHJ7YOMV.js → configure-7XIZCOU4.js} +29 -24
- package/dist/{context-75MIWW3U.js → context-L3WL3X7K.js} +54 -43
- package/dist/{context-ZQ7SIFJV.js → context-N52ZA626.js} +30 -14
- package/dist/{context-74JLXAWD.js → context-Y6Y7QPR6.js} +12 -12
- package/dist/{context-clear-GYKWNUML.js → context-clear-MBQRLSDQ.js} +54 -43
- package/dist/{context-index-SSR5ECNE.js → context-index-HVMFQHK3.js} +5 -5
- package/dist/{context-working-set-UX5KEP4J.js → context-working-set-GS6DSO7F.js} +18 -18
- package/dist/{dispatch-runner-GIJBHNFL.js → dispatch-runner-22ZCNOM3.js} +367 -79
- package/dist/{docs-6FZSCG5B.js → docs-7LQ23DLM.js} +9 -9
- package/dist/{doctor-SVJ5BZCW.js → doctor-M7YEDGAE.js} +27 -23
- package/dist/{eval-CG6LLBLD.js → eval-BEC2WHDA.js} +73 -20
- package/dist/{evidence-ZYFIEN42.js → evidence-REJUMSKM.js} +70 -59
- package/dist/{evolve-QGEXEMDW.js → evolve-PY5ZBA5K.js} +50 -39
- package/dist/{extensions-ADGNCJJD.js → extensions-HVKU65YU.js} +7 -7
- package/dist/{fleet-S5R4ZOQY.js → fleet-7WZEWRFA.js} +236 -377
- package/dist/fleet-commands-UVHWM76J.js +70 -0
- package/dist/fleet-graph-6ULH7PES.js +125 -0
- package/dist/fleet-new-RDVJLHHH.js +48 -0
- package/dist/{fleet-preflight-BHSNPBMH.js → fleet-preflight-J53T6CCE.js} +5 -5
- package/dist/fleet-validate-72PC4SLA.js +79 -0
- package/dist/{init-5DRU55YR.js → init-OG3TPGQG.js} +69 -57
- package/dist/library-CNTMPLRF.js +217 -0
- package/dist/{memory-7YKKR6UC.js → memory-6IS7F275.js} +52 -41
- package/dist/{models-ZPOLRU2C.js → models-ENRJDA5W.js} +37 -31
- package/dist/{monitor-US5F5YGZ.js → monitor-XLDVO7TN.js} +79 -42
- package/dist/{orchestrator-E2AL4T5N.js → orchestrator-6KSPYRHA.js} +4126 -762
- package/dist/{paths-E7KYAQWE.js → paths-DBXMZMDU.js} +6 -6
- package/dist/registry-LG64LTF4.js +11 -0
- package/dist/{reset-KZ652EK6.js → reset-RZ4ER727.js} +12 -12
- package/dist/{run-SRNBKDWD.js → run-Y2CNK5RU.js} +89 -76
- package/dist/{share-CGZE33UP.js → share-A55GYP6Z.js} +37 -13
- package/dist/{skills-S2X4DLY5.js → skills-ALC5J6AT.js} +29 -13
- package/dist/{skills-eval-W2GGIC4R.js → skills-eval-JPBEBYQU.js} +60 -48
- package/dist/support-MIETYA5E.js +38 -0
- package/dist/{targets-54SWINWB.js → targets-VGNXIR3S.js} +46 -36
- package/dist/{terminal-lease-SAIF2OGY.js → terminal-lease-WOBR64YA.js} +4 -4
- package/dist/{uninstall-BVLWXKBT.js → uninstall-ZJF5H5ZN.js} +9 -9
- package/dist/{upgrade-JKAR27XC.js → upgrade-FUSUAGHR.js} +31 -28
- package/dist/{usage-MSAWCLX4.js → usage-N4MKVHKD.js} +140 -68
- package/dist/verifiers-YAWOJ3H2.js +336 -0
- package/dist/{verify-X5HDROLA.js → verify-LTDHYBGY.js} +10 -9
- package/dist/{wiki-generate-GUSOQ6ZP.js → wiki-generate-6M7GHTBJ.js} +75 -62
- package/dist/worker/entry.js +67 -57
- package/docs/README.md +3 -2
- package/docs/acp.md +1 -1
- package/docs/alcf-provider.md +1 -1
- package/docs/architecture.md +2 -2
- package/docs/artifact-versions.md +11 -6
- package/docs/built-in-agents.md +26 -2
- package/docs/capacity-and-scheduling.md +1 -1
- package/docs/commands-and-modes.md +83 -3
- package/docs/configuration-and-targets.md +86 -4
- package/docs/context-engine.md +1 -1
- package/docs/development-pipeline.md +1 -1
- package/docs/dispatch-architecture-rationale.md +1 -1
- package/docs/documentation-coverage.md +3 -3
- package/docs/documentation-guide.md +3 -3
- package/docs/eval-runner.md +1 -1
- package/docs/evals-internal.md +1 -1
- package/docs/evidence-and-memory.md +74 -10
- package/docs/evolution.md +1 -1
- package/docs/exit-codes-and-output.md +4 -1
- package/docs/extensions-and-sharing.md +6 -2
- package/docs/fleet-demo-runbook.md +2 -2
- package/docs/fleet-dispatch.md +228 -16
- package/docs/git-commit-provenance.md +2 -2
- package/docs/glossary.md +22 -2
- package/docs/installation-and-lifecycle.md +2 -2
- package/docs/middleware-and-components.md +2 -1
- package/docs/model-catalog.md +1 -1
- package/docs/observability.md +56 -9
- package/docs/proactive-memory.md +1 -1
- package/docs/prompt-envelope-and-tools.md +4 -2
- package/docs/provider-adapter-cookbook.md +1 -1
- package/docs/release-cut-checklist.md +83 -65
- package/docs/resource-library.md +59 -0
- package/docs/safety-model.md +2 -2
- package/docs/scientific-validation.md +3 -3
- package/docs/session-lifecycle.md +37 -1
- package/docs/skills-marketplace.md +16 -3
- package/docs/tool-usage.md +14 -7
- package/docs/trace-store.md +1 -1
- package/docs/troubleshooting.md +1 -1
- package/docs/tui-design.md +1 -1
- package/docs/worker-dispatch-mechanics.md +3 -3
- package/package.json +1 -2
- package/src/cli/argv.ts +5 -0
- package/src/cli/configure.ts +107 -23
- package/src/cli/doctor.ts +5 -1
- package/src/cli/evidence.ts +30 -25
- package/src/cli/fleet-commands.ts +37 -0
- package/src/cli/fleet-graph.ts +102 -0
- package/src/cli/fleet-new.ts +36 -0
- package/src/cli/fleet-preflight.ts +111 -0
- package/src/cli/fleet-validate.ts +30 -0
- package/src/cli/fleet.ts +173 -335
- package/src/cli/index.ts +3 -1
- package/src/cli/library.ts +190 -0
- package/src/cli/share.ts +13 -1
- package/src/cli/shared.ts +1 -0
- package/src/cli/targets.ts +4 -1
- package/src/cli/usage.ts +111 -19
- package/src/cli/validate-model.ts +60 -5
- package/src/core/bus-events.ts +29 -0
- package/src/core/commit-attribution.ts +4 -4
- package/src/core/config.ts +130 -0
- package/src/core/defaults.ts +81 -0
- package/src/core/path-boundary.ts +100 -0
- package/src/domains/agents/builtins/architect.md +1 -0
- package/src/domains/agents/builtins/oracle.md +33 -0
- package/src/domains/agents/catalog.ts +13 -1
- package/src/domains/agents/extension.ts +2 -11
- package/src/domains/agents/fleet-contract.ts +304 -24
- package/src/domains/agents/index.ts +14 -0
- package/src/domains/agents/recipe.ts +7 -1
- package/src/domains/agents/registry.ts +73 -5
- package/src/domains/agents/result-contract.ts +360 -15
- package/src/domains/agents/write-boundary.ts +15 -50
- package/src/domains/config/classify.ts +4 -0
- package/src/domains/context/project-rules.ts +51 -1
- package/src/domains/dispatch/active-route-planner.ts +14 -0
- package/src/domains/dispatch/assignment-reconcile.ts +22 -5
- package/src/domains/dispatch/assignment-store.ts +151 -14
- package/src/domains/dispatch/backoff.ts +2 -1
- package/src/domains/dispatch/capability-match.ts +1 -0
- package/src/domains/dispatch/checkout-writer-lease.ts +175 -0
- package/src/domains/dispatch/contract.ts +48 -0
- package/src/domains/dispatch/delegation-plan.ts +164 -0
- package/src/domains/dispatch/execution-plan.ts +76 -5
- package/src/domains/dispatch/execution-role.ts +12 -2
- package/src/domains/dispatch/execution-scheduler.ts +183 -67
- package/src/domains/dispatch/extension.ts +412 -74
- package/src/domains/dispatch/fleet-gate.ts +14 -0
- package/src/domains/dispatch/fleet-plan.ts +63 -3
- package/src/domains/dispatch/fleet-run.ts +791 -0
- package/src/domains/dispatch/gate-role-prompts.ts +47 -0
- package/src/domains/dispatch/host-verification.ts +178 -0
- package/src/domains/dispatch/index.ts +41 -1
- package/src/domains/dispatch/intent-requirements.ts +40 -0
- package/src/domains/dispatch/intent.ts +235 -0
- package/src/domains/dispatch/path-scope.ts +370 -0
- package/src/domains/dispatch/receipt-integrity.ts +9 -4
- package/src/domains/dispatch/state.ts +36 -3
- package/src/domains/dispatch/types.ts +64 -12
- package/src/domains/dispatch/validation.ts +69 -6
- package/src/domains/dispatch/write-boundary-enforcer.ts +45 -0
- package/src/domains/dispatch/write-boundary.ts +201 -22
- package/src/domains/eval/metrics/evidence.ts +79 -2
- package/src/domains/eval/runners/clio-run.ts +12 -2
- package/src/domains/evidence/build.ts +69 -11
- package/src/domains/evidence/index.ts +21 -0
- package/src/domains/evidence/provenance.ts +46 -11
- package/src/domains/evidence/trust-projection.ts +274 -0
- package/src/domains/evidence/trust-status.ts +155 -18
- package/src/domains/evidence/types.ts +4 -0
- package/src/domains/extensions/discovery.ts +88 -1
- package/src/domains/extensions/resources.ts +20 -8
- package/src/domains/extensions/state.ts +6 -2
- package/src/domains/extensions/types.ts +4 -1
- package/src/domains/lifecycle/doctor.ts +140 -1
- package/src/domains/middleware/index.ts +15 -0
- package/src/domains/middleware/watchdog.ts +281 -0
- package/src/domains/observability/contract.ts +3 -1
- package/src/domains/observability/cost.ts +12 -1
- package/src/domains/observability/extension.ts +2 -2
- package/src/domains/observability/index.ts +10 -0
- package/src/domains/observability/out-of-turn-usage.ts +223 -0
- package/src/domains/prompts/contract.ts +3 -5
- package/src/domains/providers/extension.ts +30 -2
- package/src/domains/resources/common-loader.ts +3 -0
- package/src/domains/resources/index.ts +20 -0
- package/src/domains/resources/library.ts +326 -0
- package/src/domains/resources/prompts/loader.ts +119 -14
- package/src/domains/resources/skills/marketplace.ts +37 -12
- package/src/domains/safety/policy-engine.ts +5 -5
- package/src/domains/safety/run-effects.ts +64 -1
- package/src/domains/safety/scope.ts +7 -12
- package/src/domains/session/handoff.ts +629 -0
- package/src/domains/share/archive.ts +67 -2
- package/src/engine/acp/server.ts +4 -1
- package/src/engine/prompt-templates.ts +18 -1
- package/src/engine/worker-runtime.ts +6 -3
- package/src/entry/orchestrator.ts +37 -0
- package/src/interactive/bus-notices.ts +26 -0
- package/src/interactive/chat-loop.ts +235 -1
- package/src/interactive/chat-renderer.ts +22 -0
- package/src/interactive/cost-overlay.ts +31 -3
- package/src/interactive/council-dispatch.ts +30 -0
- package/src/interactive/council-grid.ts +213 -0
- package/src/interactive/council.ts +99 -0
- package/src/interactive/dispatch-board.ts +311 -17
- package/src/interactive/fleet-run-preview.ts +307 -0
- package/src/interactive/footer/notifications.ts +219 -0
- package/src/interactive/handoff-round.ts +56 -0
- package/src/interactive/interactive-application.ts +43 -1
- package/src/interactive/interactive-event-projection.ts +23 -1
- package/src/interactive/interactive-slash-runtime.ts +52 -2
- package/src/interactive/interactive-subscriptions.ts +14 -2
- package/src/interactive/oracle.ts +179 -0
- package/src/interactive/overlay-ask-user-lifecycle.ts +6 -0
- package/src/interactive/overlay-general-openers.ts +190 -1
- package/src/interactive/overlay-key-routing.ts +17 -1
- package/src/interactive/overlay-lifecycle.ts +41 -1
- package/src/interactive/overlay-permission-lifecycle.ts +10 -0
- package/src/interactive/overlay-resource-openers.ts +11 -3
- package/src/interactive/overlay-session-lifecycle.ts +234 -2
- package/src/interactive/overlays/fleet-run-approval.ts +208 -0
- package/src/interactive/overlays/handoff-review.ts +185 -0
- package/src/interactive/overlays/library-install-confirm.ts +151 -0
- package/src/interactive/overlays/list-overlay.ts +168 -2
- package/src/interactive/overlays/settings.ts +221 -30
- package/src/interactive/overlays/side-question.ts +139 -0
- package/src/interactive/overlays/skills-hub.ts +401 -15
- package/src/interactive/side-question.ts +171 -0
- package/src/interactive/slash-commands.ts +439 -7
- package/src/interactive/slash-spec.ts +19 -6
- package/src/interactive/theme/tokens.ts +30 -0
- package/src/interactive/turn-middleware.ts +15 -1
- package/src/interactive/view/artifacts.ts +42 -9
- package/src/interactive/view/view-overlay.ts +15 -3
- package/src/interactive/watchdog-run.ts +75 -0
- package/src/interactive/worker-receipts.ts +14 -2
- package/src/interactive/worker-share.ts +56 -1
- package/src/interactive/worker-stream.ts +15 -0
- package/src/tools/bootstrap.ts +3 -0
- package/src/tools/compete-worktrees.ts +13 -79
- package/src/tools/dispatch-admission.ts +251 -18
- package/src/tools/dispatch-arguments.ts +84 -1
- package/src/tools/dispatch-plan.ts +165 -6
- package/src/tools/dispatch-runner.ts +364 -23
- package/src/tools/dispatch-types.ts +20 -1
- package/src/tools/dispatch.ts +72 -2
- package/src/tools/monitor.ts +29 -0
- package/src/tools/profiles.ts +18 -4
- package/src/tools/task-worktree.ts +238 -0
- package/src/tools/verify/authoring.ts +61 -1
- package/src/tools/verify/scripts.ts +62 -0
- package/src/tools/worker-evidence.ts +21 -14
- package/src/worker/spec-contract.ts +3 -1
- package/dist/chunk-HC4CLZ2Y.js +0 -68
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# Configuration, Targets, Runtimes, and Auth
|
|
2
2
|
|
|
3
3
|
> [!TIP]
|
|
4
|
-
> **Interactive Spec Available:** An interactive configuration validator, target resolver, and CLI command generator is located at [docs/html/configuration_blueprint.html](html/configuration_blueprint.html) (Version: 0.3.
|
|
4
|
+
> **Interactive Spec Available:** An interactive configuration validator, target resolver, and CLI command generator is located at [docs/html/configuration_blueprint.html](html/configuration_blueprint.html) (Version: 0.3.8).
|
|
5
5
|
|
|
6
6
|
Clio Coder is target-first: chat and fleet dispatch resolve through configured targets in `settings.yaml`, not through provider-specific ad hoc flags. Chat and print targets are HTTP and native engine-backed runtimes. Fleet dispatch can also target the sanctioned Claude Code subscription runtimes described below.
|
|
7
7
|
|
|
@@ -31,6 +31,8 @@ Default config file:
|
|
|
31
31
|
|
|
32
32
|
Role contents: config holds user-authored files (settings, credentials, agents, skills, prompts, extensions, runtimes); data holds durable artifacts (memory, evidence, evals); state holds machine-produced session state (sessions, audit, receipts, runs.json, recent-models.json, install.json, interop.json, interviews, scratch); cache holds disposable derived files.
|
|
33
33
|
|
|
34
|
+
The `library` settings block configures the private resource catalog. `library.catalog` is an optional path and defaults to `<configDir>/library.yaml`. `library.remote` is an optional git remote URL, and the catalog repository must name that git remote `library`. `library.sync` defaults to `false`, which makes sync and push refuse before spawning git. `library.confirmedRemote` is written by `clio-coder library remote confirm <url>` and must exactly match `library.remote` before sync or push can run. Confirmation sets both values when `library.remote` is unset and refuses a differing configured URL with `library_remote_mismatch`. See [resource-library.md](resource-library.md).
|
|
35
|
+
|
|
34
36
|
`clio-coder paths --json` prints the resolved directories and is the single source of truth for scripts.
|
|
35
37
|
|
|
36
38
|
---
|
|
@@ -80,11 +82,16 @@ clio-coder configure \
|
|
|
80
82
|
--id local-lmstudio \
|
|
81
83
|
--runtime lmstudio \
|
|
82
84
|
--url http://127.0.0.1:1234 \
|
|
83
|
-
--model
|
|
85
|
+
--model qwen3.8-27b \
|
|
84
86
|
--set-orchestrator \
|
|
85
87
|
--set-fleet-default
|
|
86
88
|
```
|
|
87
89
|
|
|
90
|
+
`--model` must be an id the server advertises. `configure` fetches the
|
|
91
|
+
server's model list and refuses an id that is not on it, printing the ids it
|
|
92
|
+
found and which of them are loaded; `--force` saves the target anyway. Replace
|
|
93
|
+
`qwen3.8-27b` with an id from `lms ls` (LM Studio) or your server's model list.
|
|
94
|
+
|
|
88
95
|
Use the id you chose, probe it, then launch the TUI:
|
|
89
96
|
|
|
90
97
|
```bash
|
|
@@ -174,6 +181,17 @@ workers:
|
|
|
174
181
|
model: your-model-id
|
|
175
182
|
thinkingLevel: off
|
|
176
183
|
profiles: {}
|
|
184
|
+
rosters:
|
|
185
|
+
design:
|
|
186
|
+
members:
|
|
187
|
+
- label: local-a
|
|
188
|
+
target: local-lmstudio
|
|
189
|
+
model: your-model-id
|
|
190
|
+
thinking: medium
|
|
191
|
+
color: accent
|
|
192
|
+
- label: local-b
|
|
193
|
+
target: local-vllm
|
|
194
|
+
color: "#5ba8ff"
|
|
177
195
|
agentBindings: {}
|
|
178
196
|
maxRetries: 2
|
|
179
197
|
onPermission: deny
|
|
@@ -208,6 +226,11 @@ terminal:
|
|
|
208
226
|
tuiMode: regular # regular terminal scrollback or fullscreen sticky layout
|
|
209
227
|
fullscreenScrollbar: auto # hidden, auto, or always in fullscreen mode
|
|
210
228
|
smoothStreaming: off # off, conservative auto, or explicit on
|
|
229
|
+
notify: false # content-free desktop notification, interactive TTY only
|
|
230
|
+
watchdog:
|
|
231
|
+
enabled: false # opt-in read-only review of every mutating turn
|
|
232
|
+
# target: local-lmstudio # route the review at a cheap model
|
|
233
|
+
# cadenceToolCalls: 20 # also review every N tool calls inside a turn
|
|
211
234
|
skills:
|
|
212
235
|
trustProjectCompatRoots: false
|
|
213
236
|
delegation:
|
|
@@ -467,7 +490,8 @@ The Settings Center organizes all configuration under four non-selectable group
|
|
|
467
490
|
| **RUNTIME** | Budget (`budget`) | `budget.sessionCeilingUsd`, `defaults.maxTokens`, and `budget.concurrency` (restart required). |
|
|
468
491
|
| **RUNTIME** | Compaction (`compaction`) | `compaction.auto`, `compaction.threshold`, and `compaction.excludeLastTurns`. |
|
|
469
492
|
| **RUNTIME** | Retry (`retry`) | `retry.enabled`, `retry.maxRetries`, `retry.baseDelayMs`, and `retry.maxDelayMs`. |
|
|
470
|
-
| **EXPERIENCE** | Terminal (`terminal`) | `terminal.showTerminalProgress`, `terminal.outputVerbosity` (`minimal`, `default`, `verbose`), `terminal.tuiMode` (`regular`, `fullscreen`), `terminal.fullscreenScrollbar` (`hidden`, `auto`, `always`), `terminal.smoothStreaming` (`off`, `auto`, `on`), and `theme`. |
|
|
493
|
+
| **EXPERIENCE** | Terminal (`terminal`) | `terminal.showTerminalProgress`, `terminal.outputVerbosity` (`minimal`, `default`, `verbose`), `terminal.tuiMode` (`regular`, `fullscreen`), `terminal.fullscreenScrollbar` (`hidden`, `auto`, `always`), `terminal.smoothStreaming` (`off`, `auto`, `on`), `terminal.notify`, and `theme`. |
|
|
494
|
+
| **EXPERIENCE** | Watchdog (`watchdog`) | `watchdog.enabled`, `watchdog.target`, and `watchdog.cadenceToolCalls`. The two optional keys are editable text rows that render their absence as `(session target)` and `(turn end only)`; submitting an empty value removes the key from `settings.yaml` rather than storing a blank. |
|
|
471
495
|
| **EXPERIENCE** | Advanced (`advanced`) | `runtimePlugins`, `attribution.gitCommits`, `compaction.model`, `compaction.systemPrompt`, `delegation.defaults.connectTimeoutMs`, `delegation.defaults.turnTimeoutMs`, `delegation.defaults.permissionTimeoutMs`, `keybindings`, and `delegation.agents`. |
|
|
472
496
|
|
|
473
497
|
`retry.streamStallMs` has no Settings Center row; edit it in `settings.yaml`.
|
|
@@ -517,6 +541,10 @@ Label to config path mapping:
|
|
|
517
541
|
| TUI mode | `terminal.tuiMode` (`regular` or `fullscreen`, restart required) |
|
|
518
542
|
| Fullscreen scrollbar | `terminal.fullscreenScrollbar` (`hidden`, `auto`, or `always`, restart required) |
|
|
519
543
|
| Smooth streaming | `terminal.smoothStreaming` (`off`, `auto`, or `on`, live) |
|
|
544
|
+
| Desktop notifications | `terminal.notify` |
|
|
545
|
+
| Turn-end watchdog | `watchdog.enabled` |
|
|
546
|
+
| Watchdog target | `watchdog.target` (blank clears the key) |
|
|
547
|
+
| Watchdog cadence (tools) | `watchdog.cadenceToolCalls` (integer ≥ 1; blank clears the key) |
|
|
520
548
|
| Theme | `theme` |
|
|
521
549
|
| Runtime plugins | `runtimePlugins` |
|
|
522
550
|
| Clio commit provenance | `attribution.gitCommits` (`enabled` or `disabled`, live) |
|
|
@@ -555,6 +583,15 @@ These are saved defaults, not a live control surface. See [Live routing vs saved
|
|
|
555
583
|
|
|
556
584
|
### Safety and worker policy
|
|
557
585
|
|
|
586
|
+
`workers.rosters.<name>.members` defines council membership beside
|
|
587
|
+
`workers.profiles`. Every member accepts `label`, `target`, and the optional
|
|
588
|
+
keys `model`, `thinking`, and `color`. Labels must match
|
|
589
|
+
`[a-z][a-z0-9_-]{0,31}` and must be unique inside the roster. A roster contains
|
|
590
|
+
two to five members. Colors accept a theme token such as `accent`, `success`,
|
|
591
|
+
or `reason`, or a six-digit hexadecimal value such as `#5ba8ff`. Unknown roster
|
|
592
|
+
and member keys are rejected during configuration load. The existing settings
|
|
593
|
+
watcher validates and publishes roster changes with every other hot reload.
|
|
594
|
+
|
|
558
595
|
| Key | Default | Validation | When it applies |
|
|
559
596
|
| --- | --- | --- | --- |
|
|
560
597
|
| `autonomy` | `auto-edit` | `read-only`, `suggest`, `auto-edit`, `full-auto` | immediately |
|
|
@@ -564,8 +601,13 @@ These are saved defaults, not a live control surface. See [Live routing vs saved
|
|
|
564
601
|
| `workers.maxRetries` | `2` | integer ≥ 0 | next dispatch |
|
|
565
602
|
| `workers.resilienceCooldownMs` | `15000` | integer ≥ 0 | next dispatch |
|
|
566
603
|
| `workers.profiles` | `{}` | map of profile name to a target/model/thinking choice | next dispatch |
|
|
604
|
+
| `workers.rosters` | `{}` | map of roster name to 2 to 5 council members | next dispatch |
|
|
567
605
|
| `workers.agentBindings` | `{}` | map of agent id to a key present in `workers.profiles` | next dispatch |
|
|
568
606
|
| `skills.trustProjectCompatRoots` | `false` | boolean | restart |
|
|
607
|
+
| `library.catalog` | `null` | string or null | immediately |
|
|
608
|
+
| `library.remote` | `null` | string or null | immediately |
|
|
609
|
+
| `library.confirmedRemote` | `null` | string or null | immediately |
|
|
610
|
+
| `library.sync` | `false` | boolean | immediately |
|
|
569
611
|
|
|
570
612
|
### Git commit provenance
|
|
571
613
|
|
|
@@ -623,6 +665,34 @@ Generic provider and transport errors are classified by transient retry rules, i
|
|
|
623
665
|
| `memory.intervention.maxTokens` | `400` | integer ≥ 1 | next turn |
|
|
624
666
|
| `memory.intervention.timeoutMs` | `180000` | integer ≥ 1 | next turn |
|
|
625
667
|
|
|
668
|
+
### Turn-end watchdog
|
|
669
|
+
|
|
670
|
+
| Key | Default | Validation | When it applies |
|
|
671
|
+
| --- | --- | --- | --- |
|
|
672
|
+
| `watchdog.enabled` | `false` | boolean | immediately |
|
|
673
|
+
| `watchdog.target` | unset | non-empty target id | immediately |
|
|
674
|
+
| `watchdog.cadenceToolCalls` | unset | integer ≥ 1 | immediately |
|
|
675
|
+
|
|
676
|
+
The watchdog is off by default because it spends one worker run per mutating
|
|
677
|
+
turn. With `enabled: true`, a turn that changed the tree is handed to one
|
|
678
|
+
read-only `verifier` run briefed with the turn's coalesced diff and the task
|
|
679
|
+
board's current scope. Its blockers become one transcript notice naming the
|
|
680
|
+
count and the first three failed checks, and nothing else: it never follows up,
|
|
681
|
+
never queues a turn, and never mutates. A passing report emits nothing at all. A
|
|
682
|
+
turn with no file mutations never fires it.
|
|
683
|
+
|
|
684
|
+
`watchdog.target` routes the run at a named target, which is how a cheap local
|
|
685
|
+
model reviews turns run on a subscription route; unset, the run takes the
|
|
686
|
+
session's active target. `watchdog.cadenceToolCalls: N` additionally fires the
|
|
687
|
+
watchdog after every N tool calls inside a turn, with the same diff-and-scope
|
|
688
|
+
briefing, so mid-turn scope drift is visible before the turn ends. At most one
|
|
689
|
+
watchdog run is in flight at a time; a trigger that arrives while one is running
|
|
690
|
+
is dropped and counted rather than queued. Headless and ACP runs never fire the
|
|
691
|
+
watchdog regardless of the setting, because neither has an operator reading a
|
|
692
|
+
transcript. The block has its own Settings Center section under EXPERIENCE ›
|
|
693
|
+
Watchdog; clearing the target or the cadence row removes that key from
|
|
694
|
+
`settings.yaml` rather than writing an empty value.
|
|
695
|
+
|
|
626
696
|
### Delegation
|
|
627
697
|
|
|
628
698
|
| Key | Default | Validation | When it applies |
|
|
@@ -645,10 +715,22 @@ Generic provider and transport errors are classified by transient retry rules, i
|
|
|
645
715
|
| `terminal.tuiMode` | `regular` | `regular`, `fullscreen` | restart |
|
|
646
716
|
| `terminal.fullscreenScrollbar` | `auto` | `hidden`, `auto`, `always` | restart |
|
|
647
717
|
| `terminal.smoothStreaming` | `off` | `off`, `auto`, `on` | immediately |
|
|
718
|
+
| `terminal.notify` | `false` | boolean | immediately |
|
|
648
719
|
| `modelSelector.favorites` | `[]` | list of strings | immediately |
|
|
649
720
|
| `modelSelector.recentLimit` | `12` | integer ≥ 1 | immediately |
|
|
650
721
|
| `keybindings` | `{}` | map of binding id to a key string or list of them | restart |
|
|
651
722
|
|
|
723
|
+
`terminal.notify` turns on a content-free desktop notification for the three
|
|
724
|
+
moments an operator is waiting: a turn ends, a detached fleet batch settles, and
|
|
725
|
+
a worker permission or `ask_user` request parks. The payload is fixed. The title
|
|
726
|
+
is always `clio-coder` and the body comes from a closed vocabulary (`turn
|
|
727
|
+
finished`, `batch <shortId> settled`, `approval needed`), so no prompt text, file
|
|
728
|
+
path, or model output ever leaves the process in a notification. Clio emits OSC
|
|
729
|
+
777 by default and OSC 9 on iTerm2, Windows Terminal, and ConEmu, never both for
|
|
730
|
+
one event. Headless, ACP, and non-TTY runs never emit one regardless of the
|
|
731
|
+
setting. The knob has a Settings Center row under EXPERIENCE › Terminal,
|
|
732
|
+
labeled `Desktop notifications`.
|
|
733
|
+
|
|
652
734
|
Recently selected models are runtime state and live in `recent-models.json` under the state directory, not here. A `state.recentModels` key in `settings.yaml` is an unknown-key error.
|
|
653
735
|
|
|
654
736
|
### Structural and catalog keys
|
|
@@ -691,7 +773,7 @@ clio-coder configure \
|
|
|
691
773
|
--id local-llamacpp \
|
|
692
774
|
--runtime llamacpp \
|
|
693
775
|
--url http://127.0.0.1:8080 \
|
|
694
|
-
--model
|
|
776
|
+
--model qwen3.8-27b \
|
|
695
777
|
--set-orchestrator \
|
|
696
778
|
--set-fleet-default
|
|
697
779
|
```
|
package/docs/context-engine.md
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# Context Engine
|
|
2
2
|
|
|
3
3
|
> [!TIP]
|
|
4
|
-
> **Interactive Spec Available:** An interactive dashboard is located at [docs/html/context_blueprint.html](html/context_blueprint.html) (Version: 0.3.
|
|
4
|
+
> **Interactive Spec Available:** An interactive dashboard is located at [docs/html/context_blueprint.html](html/context_blueprint.html) (Version: 0.3.8).
|
|
5
5
|
|
|
6
6
|
Clio Coder tracks context pressure, records per-turn snapshots, and protects the provider context with bounded tool results plus single-threshold compaction.
|
|
7
7
|
|
|
@@ -80,7 +80,7 @@ New `area:*` labels are proposed in an issue, not created ad hoc.
|
|
|
80
80
|
|
|
81
81
|
## Milestones are releases
|
|
82
82
|
|
|
83
|
-
Each open milestone is the next version (`v0.3.
|
|
83
|
+
Each open milestone is the next version (`v0.3.7`, `v0.4.0`). Triage means
|
|
84
84
|
assigning an issue to a milestone or explicitly leaving it in the backlog.
|
|
85
85
|
A release cut requires every issue in its milestone to be closed
|
|
86
86
|
or bumped; the milestone closes when the tag is published.
|
|
@@ -28,7 +28,7 @@ split would use. They cross them.
|
|
|
28
28
|
| Write-boundary attribution is per scheduling *window*, so the compiler refuses a wave with two writers | scheduling, write boundaries, plan compilation | `execution-plan.ts`, `write-boundary.ts` |
|
|
29
29
|
| A loop's later nodes are `unneeded`, decided by the scheduler, not the plan | plan compilation, scheduling, receipts | `fleet-plan.ts`, `execution-scheduler.ts` |
|
|
30
30
|
| Staleness revalidation re-runs a verification a later workspace step invalidated | scheduling, plan compilation, code steps | `execution-scheduler.ts` |
|
|
31
|
-
| Receipt integrity
|
|
31
|
+
| Receipt integrity v16 seals normalized routing intent | routing, receipts | `receipt-integrity.ts`, `routing-intent.ts` |
|
|
32
32
|
|
|
33
33
|
The write-boundary and loop rows are the sharpest. Both are properties of a
|
|
34
34
|
*wave*, which is a scheduling concept computed by the plan compiler and enforced
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Clio Coder Documentation Coverage Matrix
|
|
2
2
|
|
|
3
|
-
This matrix maps every top-level directory in `src/` and every domain directory under `src/domains/` to its authoritative documentation page. It records coverage status (`documented`, `partial`, `undocumented`), missing concepts, and key source contracts for `v0.3.
|
|
3
|
+
This matrix maps every top-level directory in `src/` and every domain directory under `src/domains/` to its authoritative documentation page. It records coverage status (`documented`, `partial`, `undocumented`), missing concepts, and key source contracts for `v0.3.7`.
|
|
4
4
|
|
|
5
5
|
## Coverage Matrix
|
|
6
6
|
|
|
@@ -19,7 +19,7 @@ This matrix maps every top-level directory in `src/` and every domain directory
|
|
|
19
19
|
| `src/domains/components/` | Component scanning, snapshots, hashing, diffing | [middleware-and-components.md](middleware-and-components.md) | `documented` | Documented in active component snapshot and middleware guide. |
|
|
20
20
|
| `src/domains/config/` | Configuration contracts, file watcher, keybinding definitions, setting classifiers | [configuration-and-targets.md](configuration-and-targets.md), [commands-and-modes.md](commands-and-modes.md) | `documented` | Documented in configuration targets and command/keybinding reference. |
|
|
21
21
|
| `src/domains/context/` | `CLIO-CODER.md` bootstrap, codewiki generation, prompt context assembly, project rules, non-destructive working-set eviction (`age-horizon` and `structural-v1` policies, protection predicates, path index, byte-stable markers, recall by ref) | [context-engine.md](context-engine.md), [context-working-set.md](context-working-set.md) | `documented` | Context window, token accounting, and the three compaction mechanisms in the engine reference; the working-set layer has its own guide covering the vocabulary, both ledger record kinds and format v4, the marker contract, both policies with their rule order, recall semantics, and the operator surfaces. |
|
|
22
|
-
| `src/domains/dispatch/` | Fleet orchestration, assignment store, batch tracker, admission, route planner, receipt integrity
|
|
22
|
+
| `src/domains/dispatch/` | Fleet orchestration, assignment store, batch tracker, admission, route planner, receipt integrity v16 | [fleet-dispatch.md](fleet-dispatch.md), [dispatch-architecture-rationale.md](dispatch-architecture-rationale.md), [worker-dispatch-mechanics.md](worker-dispatch-mechanics.md) | `documented` | Multi-node fleet dispatch, admission invariants, and receipt verification fully documented. |
|
|
23
23
|
| `src/domains/eval/` | Suite v2 YAML schema, eval runner, metrics, reporters, workspace sandboxing | [eval-runner.md](eval-runner.md), [evals-internal.md](evals-internal.md) | `documented` | Product evals are documented independently from external benchmarks. |
|
|
24
24
|
| `src/domains/evidence/` | Evidence bundles, findings taxonomy, provenance store, failure attribution | [evidence-and-memory.md](evidence-and-memory.md) | `documented` | Documented in evidence directory structures and memory retrieval guide. |
|
|
25
25
|
| `src/domains/evolution/` | Falsifiable Change Manifest JSON templates and `clio-coder evolve` self-edit gates | [evolution.md](evolution.md) | `documented` | Documented in evolution manifest reference and mutation validation rules. |
|
|
@@ -35,7 +35,7 @@ This matrix maps every top-level directory in `src/` and every domain directory
|
|
|
35
35
|
| `src/domains/scheduling/` | Capacity lease acquisition, heartbeats, expiry, cross-process locks, cluster scheduling | [capacity-and-scheduling.md](capacity-and-scheduling.md), [fleet-dispatch.md](fleet-dispatch.md) | `documented` | Dedicated capacity leasing, heartbeat TTL, and cross-process lock reference. |
|
|
36
36
|
| `src/domains/session/` | Session ledger format v4, tree branching (`/tree`), `/fork`, `/resume`, checkpoints, protected-artifact journal | [session-lifecycle.md](session-lifecycle.md), [context-working-set.md](context-working-set.md) | `documented` | Dedicated session lifecycle guide covering branching, journal, and recovery; the `contextEviction` and `contextRecall` records added at format v4 are specified in the working-set guide. |
|
|
37
37
|
| `src/domains/share/` | Portable share archive bundles, manifest verification, import/export flows | [extensions-and-sharing.md](extensions-and-sharing.md) | `documented` | Share archives and portable bundle formats documented in extensions guide. |
|
|
38
|
-
| `src/domains/webhook/` | Empty directory | None (Inert) | `inert` | Directory contains no active modules or exports in v0.3.
|
|
38
|
+
| `src/domains/webhook/` | Empty directory | None (Inert) | `inert` | Directory contains no active modules or exports in v0.3.7. |
|
|
39
39
|
|
|
40
40
|
## Cross-Cutting Reference Guides
|
|
41
41
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# Documentation Standards and Codebase Alignment
|
|
2
2
|
|
|
3
3
|
> [!TIP]
|
|
4
|
-
> **Interactive Spec Available:** An interactive documentation link linter, phrasing/claim evaluator, and alignment portal is located at [docs/html/documentation_blueprint.html](html/documentation_blueprint.html) (Version: 0.3.
|
|
4
|
+
> **Interactive Spec Available:** An interactive documentation link linter, phrasing/claim evaluator, and alignment portal is located at [docs/html/documentation_blueprint.html](html/documentation_blueprint.html) (Version: 0.3.8).
|
|
5
5
|
|
|
6
6
|
Clio Coder is an experimental community alpha. Documentation should help contributors and early users work from the source of truth without overstating maturity. When docs drift, prefer the current source and tests over older prose or aspirational roadmap notes.
|
|
7
7
|
|
|
@@ -46,10 +46,10 @@ Classify claims clearly:
|
|
|
46
46
|
| [alcf-provider.md](alcf-provider.md) | `src/domains/providers/runtimes/cloud/alcf.ts`, `src/engine/alcf-oauth.ts` | Globus PKCE OAuth, openAuthStorage(), Sophia vLLM, Metis API, chatTemplateKwargsUnsupported. |
|
|
47
47
|
| [environment-variables.md](environment-variables.md) | `src/core/guardrails.ts`, `src/core/xdg.ts`, `src/domains/providers/knowledge-base-path.ts` | Comprehensive env var matrix: guardrail overrides, directory layout (CLIO_CODER_HOME), debug toggles, and internal plumbing. |
|
|
48
48
|
| [built-in-agents.md](built-in-agents.md) | `src/domains/agents/**`, `src/domains/agents/builtins/*.md`, `src/domains/dispatch/**` | Builtin agent recipes, discovery roots, frontmatter schema, fleet contract shadowing (`.clio-coder/fleets/<name>.md`), active route automation. |
|
|
49
|
-
| [fleet-dispatch.md](fleet-dispatch.md) | `src/domains/dispatch/**` | Multi-node SSH dispatch: process-safe admission, capacity leases, Contract v4 write boundaries (detect-and-rollback), bounded check/repair loops (`loop_bound_exhausted`), deterministic code steps, attestation, receipts
|
|
49
|
+
| [fleet-dispatch.md](fleet-dispatch.md) | `src/domains/dispatch/**` | Multi-node SSH dispatch: process-safe admission, capacity leases, Contract v4 write boundaries (detect-and-rollback), bounded check/repair loops (`loop_bound_exhausted`), deterministic code steps, attestation, receipts v16. |
|
|
50
50
|
| [capacity-and-scheduling.md](capacity-and-scheduling.md) | `src/domains/scheduling/**`, `src/domains/dispatch/capacity-lease.ts`, `src/domains/dispatch/reservation-store.ts` | Multi-process capacity leases (`dispatch-admission.json`), heartbeat TTLs, cross-process transaction locks (`dispatch-admission.json.lock`), and cluster drain controls. |
|
|
51
51
|
| [worker-dispatch-mechanics.md](worker-dispatch-mechanics.md) | `src/worker/**` | NDJSON parent-child socket protocols, control/bulk lane demuxing, watchdog timers, worker attestation (13 protocol fields), permission parking, exit codes. |
|
|
52
|
-
| [fleet-demo-runbook.md](fleet-demo-runbook.md) | `src/domains/dispatch/**` | Multi-node fleet demo: SSH setup, C++ build/repair workflow, reviewer gates, receipt verification
|
|
52
|
+
| [fleet-demo-runbook.md](fleet-demo-runbook.md) | `src/domains/dispatch/**` | Multi-node fleet demo: SSH setup, C++ build/repair workflow, reviewer gates, receipt verification v16. |
|
|
53
53
|
| [session-lifecycle.md](session-lifecycle.md) | `src/engine/session.ts`, `src/domains/session/**` | Session lifecycle, on-disk ledger format v4 (`current.jsonl`), tree branching (`tree.json`), active-path lineage selection, `/fork`, `/resume`, checkpoints, and write-ahead protected-artifact journal. |
|
|
54
54
|
| [acp.md](acp.md) | `src/engine/acp/**`, `src/cli/acp.ts` | Agent Client Protocol (ACP) server over stdio, tool mediation, non-stall permission handling, timeout bounds, and error taxonomy. |
|
|
55
55
|
| [artifact-versions.md](artifact-versions.md) | `src/domains/dispatch/receipt-integrity.ts`, `src/engine/session.ts`, `src/worker/spec-contract.ts`, `src/domains/agents/fleet-contract.ts`, `src/domains/eval/schema/`, `src/domains/observability/trace-store.ts` | Version registry and migration policies for all 9 serialized artifact schemas across Clio Coder. |
|
package/docs/eval-runner.md
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# Clio Coder Local Evaluation Runner
|
|
2
2
|
|
|
3
3
|
> [!TIP]
|
|
4
|
-
> **Interactive Spec Available:** An interactive task suite validator, subprocess execution simulator, and compare calculator is located at [docs/html/eval_blueprint.html](html/eval_blueprint.html) (Version: 0.3.
|
|
4
|
+
> **Interactive Spec Available:** An interactive task suite validator, subprocess execution simulator, and compare calculator is located at [docs/html/eval_blueprint.html](html/eval_blueprint.html) (Version: 0.3.8).
|
|
5
5
|
|
|
6
6
|
The local evaluation runner executes repository-local YAML task suites as deterministic subprocess checks. It is useful for comparing harness changes, prompts, tools, or local workflows.
|
|
7
7
|
|
package/docs/evals-internal.md
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# Internal Eval Suites
|
|
2
2
|
|
|
3
3
|
> [!TIP]
|
|
4
|
-
> **Interactive Spec Available:** An interactive blueprint is available at [docs/html/evals_internal_blueprint.html](html/evals_internal_blueprint.html) (Version: 0.3.
|
|
4
|
+
> **Interactive Spec Available:** An interactive blueprint is available at [docs/html/evals_internal_blueprint.html](html/evals_internal_blueprint.html) (Version: 0.3.8).
|
|
5
5
|
|
|
6
6
|
Private suites should live outside this repository. Keep datasets, prompts,
|
|
7
7
|
live fleet coordinates, calibration outputs, and raw run artifacts in a private
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
# Evidence Corpus and Long-Term Memory
|
|
2
2
|
|
|
3
3
|
> [!TIP]
|
|
4
|
-
> **Interactive Spec Available:** An interactive memory lifecycle dashboard and simulator is located at [docs/html/memory_blueprint.html](html/memory_blueprint.html) (Version: 0.3.
|
|
4
|
+
> **Interactive Spec Available:** An interactive memory lifecycle dashboard and simulator is located at [docs/html/memory_blueprint.html](html/memory_blueprint.html) (Version: 0.3.8). Use it to design, validate, and simulate memory proposals, approval loops, pruning rules, and token budgets.
|
|
5
5
|
|
|
6
|
-
Clio Coder treats run claims and agent lessons as structured artifacts to support reproducibility and scientific provenance. In evaluations such as [SWE-bench](https://www.swebench.com), capturing granular execution evidence is essential for validating agent claims. Evidence corpora are deterministic directories built from run ledgers, receipts, sessions, audits, and eval artifacts. In v0.3.
|
|
6
|
+
Clio Coder treats run claims and agent lessons as structured artifacts to support reproducibility and scientific provenance. In evaluations such as [SWE-bench](https://www.swebench.com), capturing granular execution evidence is essential for validating agent claims. Evidence corpora are deterministic directories built from run ledgers, receipts, sessions, audits, and eval artifacts. In v0.3.7, forensic evidence auto-builds on dispatch run completion: when a run finalizes, the observability domain automatically compiles the evidence bundle under `<dataDir>/evidence/run-<id>/` and updates a compact sidecar index row in `<stateDir>/evidence-index.json`. Long-term memory records are local, evidence-linked, and only injected after explicit approval. Use the TUI [`/view`](observability.md) command for interactive inspection of receipts, dispatch output, durable tool output, compaction summaries, and session accountability before building or citing evidence.
|
|
7
7
|
|
|
8
8
|
Source of truth: `src/domains/evidence/**`, `src/domains/memory/**`, `src/cli/evidence.ts`, and `src/cli/memory.ts`.
|
|
9
9
|
|
|
@@ -76,7 +76,7 @@ Eval evidence adds `eval-result.json` and uses empty receipt/protected-artifact
|
|
|
76
76
|
|
|
77
77
|
Session ledger entries are attributed to a run by the run id the producer stamped on the entry at write time. Rows built from those entries carry that provenance in a `runLink` field (`{ kind, confidence, candidateRunIds? }`) in `tool-events.jsonl` and `protected-artifacts.json`; a write-time stamp is `kind: "entry-run-id"`, `confidence: "exact"`. Entries written without run context fall back to timestamp windowing, labeled `kind: "timestamp-window"`, `confidence: "best-effort"`, and printed as `link=timestamp-window` in the transcript. Concurrent dispatch runs share one clock and their windows overlap, so an entry inside more than one window has no owner the bundle can name. Such an entry is reported in the bundle of every run it may belong to, with `runId: null`, `kind: "ambiguous-timestamp-window"`, and a `candidateRunIds` list, plus a `best-effort-link` finding counting them. It is never dropped and never claimed as exact.
|
|
78
78
|
|
|
79
|
-
When a run was chained (pipeline), composed with a persona override, or escalated for a permission, `transcript.md` and `trace.cleaned.jsonl` surface the receipt's provenance field sets, and `clio-coder evidence inspect` prints them as a `provenance <runId>:` block. The field paths, types, and stability labels are documented in the [receipt provenance schema](./observability.md#receipt-fields-for-dispatch-provenance).
|
|
79
|
+
When a run was chained (pipeline), composed with a persona override, or escalated for a permission, `transcript.md` and `trace.cleaned.jsonl` surface the receipt's provenance field sets, and `clio-coder evidence inspect` prints them as a `provenance <runId>:` block. The block is the detail behind the canonical trust projection, never a second reading of it: it is printed only for a run whose seal the projection verified, its `autonomy:` line carries the policy name, external mode, and bypass flag and never the axis word (`mediated`, `approximated`, `bypassed` are the trust summary's to print), and a run whose seal was rejected or retired gets no block at all, so the output never publishes a value the projection reported as `absent`. The field paths, types, and stability labels are documented in the [receipt provenance schema](./observability.md#receipt-fields-for-dispatch-provenance).
|
|
80
80
|
|
|
81
81
|
### Task and decision provenance
|
|
82
82
|
|
|
@@ -106,6 +106,7 @@ Clio Coder classifies every run, session, and eval record using a closed set of
|
|
|
106
106
|
| `blocked-tool` | Failure | The safety net blocked a tool call requested by the model. |
|
|
107
107
|
| `escalation` | Precaution | A worker permission escalation timed out or was denied; see the receipt provenance schema below. |
|
|
108
108
|
| `receipt-integrity` | Security | Forensic verification detected receipt modification or checksum mismatch. |
|
|
109
|
+
| `receipt-retired` | Provenance | The receipt was sealed under an integrity version this build no longer verifies. It is not migrated and not read as evidence; the row names both versions. An info row, never the security warning a modified receipt gets. |
|
|
109
110
|
| `protected-artifact`| Precaution | Mutating a path protected by project or system safety policies. |
|
|
110
111
|
| `tool-loop` | Constraint | The model repeatedly called the same tool with identical arguments. |
|
|
111
112
|
| `test-failure` | Failure | A verification command containing test/lint keywords exited non-zero. |
|
|
@@ -116,6 +117,9 @@ Clio Coder classifies every run, session, and eval record using a closed set of
|
|
|
116
117
|
| `auth-failure` | Failure | Missing or invalid credentials/API keys. |
|
|
117
118
|
| `external-bypass` | Security | An external runner bypassed standard safety gates. |
|
|
118
119
|
| `external-approximation`| Validation | An external runner approximated results rather than fully executing. |
|
|
120
|
+
| `independent-review` | Validation | The canonical independent-review axis: a failed, correlated, or inconclusive review is a warning; a successful run with no review at all is an info row saying its result rests on its own receipt. |
|
|
121
|
+
| `context-provenance` | Provenance | The canonical context-provenance axis read `invalid`: the receipt's briefing or project-context record contradicts itself. |
|
|
122
|
+
| `completion-evidence` | Validation | The canonical completion-evidence axis: a mutation that finished without validation evidence at the completion boundary is a warning; an explicit limitation is an info row. |
|
|
119
123
|
| `unknown` | Undefined | Unclassified execution failure. |
|
|
120
124
|
|
|
121
125
|
---
|
|
@@ -148,11 +152,11 @@ Each run receipt (persisted under `<stateDir>/receipts/<runId>.json`) carries an
|
|
|
148
152
|
### Computation and Lifecycle
|
|
149
153
|
- **Circular Dependency Prevention**: To prevent circular dependencies, `findingsSummary` is calculated **cheaply in-memory** at receipt-record time using the draft envelope and tool statistics (in `src/domains/dispatch/receipt-findings.ts`). It never reads from disk or calls `buildEvidence`.
|
|
150
154
|
- **First-Pass Success**: Calculated as `true` only if the terminal outcome was `"succeeded"`, the lineage attempt was `0` (no dispatch retries), the tool stats confirm at least one successful validation tool was executed, and no failure-cause tags were detected.
|
|
151
|
-
- **Cryptographic Coverage**: Current receipts use strict
|
|
155
|
+
- **Cryptographic Coverage**: Current receipts use strict v19 and authenticate every current receipt field, including briefing and steering provenance, routing intent and decision, route quality, worker identity, execution role, result-contract conformance, council provenance, and fleet gate provenance, against the reconstructed ledger. Every version other than v19 is rejected; there is no historical receipt reader.
|
|
152
156
|
|
|
153
157
|
| Version | Verification policy | Compatibility policy |
|
|
154
158
|
|---|---|---|
|
|
155
|
-
|
|
|
159
|
+
| v19 | Current canonical projection; every current receipt and reconstructible ledger field is authenticated | Accepted |
|
|
156
160
|
| Any other version | No reader | Rejected; remove or archive the incompatible state rather than expecting migration |
|
|
157
161
|
|
|
158
162
|
Receipt integrity and evidence verification answer different questions. The
|
|
@@ -207,11 +211,12 @@ They do not mutate receipt, gate-decision, evidence-bundle, or session formats.
|
|
|
207
211
|
| Current receipt present but integrity not checked | Artifact integrity is `unknown`; the receipt's own digest never authenticates itself. The other receipt-owned axes are `absent` with `not_observed` until authentication succeeds. |
|
|
208
212
|
| Historical receipt missing its integrity block | Receipt-owned axes are `unknown` through the compatibility source, even if a caller presents a contradictory positive verification result. |
|
|
209
213
|
| Integrity verification succeeds or fails | Artifact integrity is `verified` or `failed`. A failure leaves the receipt-owned validation grounding, context provenance, and autonomy enforcement `absent`; no untrusted receipt claim contributes a positive state. Validation the session ledger observed on its own (a validation command that ran and exited 0) still grounds the run, so a tampered run can read `artifactIntegrity: failed` beside `validationGrounding: validated`. The two axes name different artifacts and different authorities, and the bundle's `receipt-integrity` finding is what flags the pairing. |
|
|
214
|
+
| Receipt sealed under a retired integrity version | Artifact integrity is `unknown` through the compatibility source `run_receipt:<runId>:integrity-v<N>-retired`, which is where the human clause reads the version back from (`seal v19 retired (this build verifies v20)`); `failed` and "seal broken" are reserved for a seal this build checked and rejected. The receipt-owned axes are `absent` with `historical_format`, and the verdict is `unknown` rather than `compromised`. The receipt is not migrated and not read as evidence: the bundle records a `receipt-retired` info finding, `evidence build` prints it as a note and exits 0, and `/view verify` reports `verify retired` with both versions. |
|
|
210
215
|
| Receipt `verification.state: verified` | Validation grounding is `validated` unless a stronger typed failure or ungrounded claim is present. |
|
|
211
216
|
| Receipt `verification.state: unverified` | Validation grounding is `absent` with `not_observed`; lack of a validation tool is not a failed validation. |
|
|
212
217
|
| Receipt verification `unknown` or `not_applicable` | Validation grounding preserves `unknown` or `not_applicable`. A missing historical verification field maps to `unknown`. |
|
|
213
218
|
| Typed receipt validation or result-contract quality | A passing correctness-bearing fact maps to `validated`; a failing fact maps to `failed`; an ungrounded passing claim maps to `ungrounded`. |
|
|
214
|
-
| Valid bounded project context or valid briefing hash | Context provenance is `recorded`. Explicit project-context tier `none` with no briefing is `not_applicable`; a missing historical field is `unknown`; a contradictory block is `invalid`. |
|
|
219
|
+
| Valid bounded project context, valid none-tier workspace-root record, or valid briefing hash | Context provenance is `recorded`. A `none`-tier run still receives the workspace-root message, so a none-tier block naming exactly `workspace-root` with a well-formed count and hash is `recorded`. Explicit project-context tier `none` with no content and no briefing is `not_applicable`; a missing historical field is `unknown`; a contradictory block (a handbook section under a none policy, a hash with no section, a malformed count) is `invalid`. |
|
|
215
220
|
| Gate decision | An authenticated independent pass or fail maps to `passed` or `failed`. Correlated review maps to `not_independent`. Unauthenticated artifacts map to `unknown`; operator or full-auto confirmation alone is `not_applicable` to independent review. |
|
|
216
221
|
| Receipt autonomy grade | `mediated`, `approximated`, and `bypassed` map to `enforced`, `approximated`, and `bypassed`. A dangerous-bypass flag always normalizes to `bypassed`; a missing historical block is `unknown`. |
|
|
217
222
|
| Finish-contract assessment | `validation_evidence`, `unvalidated_mutation`, `explicit_limitation`, and `no_mutation` map to `evidenced`, `incomplete`, `limited`, and `not_applicable`. A run whose receipt was presented and rejected downgrades `evidenced` to `unknown`: the row still points at its own record, but a rejected receipt authenticates nothing about the run it names. |
|
|
@@ -222,15 +227,74 @@ Receipt inspection, worker output, monitor details, and evidence rebuilding all
|
|
|
222
227
|
use the same authenticated receipt projection boundary. Evidence rebuilding
|
|
223
228
|
then composes independently authenticated gate decisions and exact
|
|
224
229
|
finish-contract records without changing receipt-owned axes. Findings such as
|
|
225
|
-
`no-validation`, `proxy-validation`, `external-approximation`,
|
|
226
|
-
`external-bypass`
|
|
227
|
-
|
|
230
|
+
`no-validation`, `proxy-validation`, `external-approximation`,
|
|
231
|
+
`external-bypass`, `independent-review`, `context-provenance`, and
|
|
232
|
+
`completion-evidence` are selected from the canonical states, so every axis
|
|
233
|
+
reaches `findings.md`, while their detailed domain artifacts remain in the
|
|
234
|
+
receipt, gate, audit, and trace files.
|
|
228
235
|
|
|
229
236
|
The canonical aggregate is an additive projection for downstream work. Receipt
|
|
230
|
-
integrity remains version
|
|
237
|
+
integrity remains version 18, evidence bundles remain version 1, gate decisions
|
|
231
238
|
remain version 2, and no persisted receipt field or cryptographic algorithm
|
|
232
239
|
changes.
|
|
233
240
|
|
|
241
|
+
### Trust projection
|
|
242
|
+
|
|
243
|
+
`src/domains/evidence/trust-projection.ts` is the one place the canonical
|
|
244
|
+
status is turned into words. Every operator surface prints from it, so the
|
|
245
|
+
same canonical input renders the same verdict on the dispatch run line, in a
|
|
246
|
+
monitor block, under `clio-coder evidence inspect`, in `findings.md`, on the
|
|
247
|
+
Alt+W board, in the `/view` receipt header, in eval metrics, and on the ACP
|
|
248
|
+
wire.
|
|
249
|
+
|
|
250
|
+
The compact human line has six fixed clauses in a fixed order and answers the
|
|
251
|
+
four operator questions without receipt internals:
|
|
252
|
+
|
|
253
|
+
```text
|
|
254
|
+
trust v1: sealed; grounded by host-verification; not independently reviewed; mediated; context recorded; completion evidenced
|
|
255
|
+
```
|
|
256
|
+
|
|
257
|
+
| Clause | Axis | Question it answers |
|
|
258
|
+
|---|---|---|
|
|
259
|
+
| `sealed` / `seal broken` / `seal unchecked` / `no receipt` | Artifact integrity | Can the record be trusted to be what was written? |
|
|
260
|
+
| `grounded by <claimant>` / `validation failed by <claimant>` / `inferred: validation claimed, none observed` / `no validation observed` / `validation unknown (<system>)` / `validation not applicable` | Validation grounding | Who claims the result, and what was observed? |
|
|
261
|
+
| `independently reviewed: pass` / `independently reviewed: fail` / `independent review inconclusive` / `review not independent` / `not independently reviewed` | Independent review | What did a second, uncorrelated authority check? |
|
|
262
|
+
| `mediated` / `approximated (<runtime>)` / `bypassed (<runtime>)` / `autonomy not recorded` | Autonomy enforcement | Did Clio's own gate mediate the run? |
|
|
263
|
+
| `context recorded` / `context record invalid` / `context not recorded` | Context provenance | Is what the worker was given recorded consistently? |
|
|
264
|
+
| `completion evidenced` / `completion unevidenced` / `completion limited` / `completion not applicable` | Completion evidence | What did the finish contract observe? |
|
|
265
|
+
|
|
266
|
+
`mediated` is the word for the `enforced` state because it is what the
|
|
267
|
+
receipt grade already says; `inferred` is the word for an `ungrounded` claim.
|
|
268
|
+
Every `unknown` and `absent` state prints as such, so what remains unknown is
|
|
269
|
+
part of the line, never an omission.
|
|
270
|
+
|
|
271
|
+
The drill-down line prints every axis by its canonical state id and is the
|
|
272
|
+
same on every text surface:
|
|
273
|
+
|
|
274
|
+
```text
|
|
275
|
+
trust_status=v1 artifactIntegrity:verified validationGrounding:validated independentReview:absent contextProvenance:recorded autonomyEnforcement:enforced completionEvidence:evidenced
|
|
276
|
+
```
|
|
277
|
+
|
|
278
|
+
The machine projection (`TrustSummaryProjection`, `trust` on the `dispatch`
|
|
279
|
+
tool's `details.runs[]` entries and on the `monitor` receipt details) is
|
|
280
|
+
bounded and versioned: the verdict tier, the six axis states, the claimant,
|
|
281
|
+
the axes still unknown, the compact text, and up to 8 `<kind>:<id>`
|
|
282
|
+
references into the detailed artifacts. It is flat by design so a depth-capped
|
|
283
|
+
wire such as ACP `rawOutput` carries it whole where the nested canonical
|
|
284
|
+
status's artifact references fall off the depth cap.
|
|
285
|
+
|
|
286
|
+
The verdict tier styles a surface and never scores a run. `reviewed` is the
|
|
287
|
+
only tier styled as independently verified; a sealed receipt with observed
|
|
288
|
+
validation is `grounded`, a sealed receipt with nothing observed is
|
|
289
|
+
`unverified`, a broken seal, bypassed gate, failed or inferred validation,
|
|
290
|
+
failed or correlated review, or contradictory context record is
|
|
291
|
+
`compromised`, and an unchecked or missing seal is `unknown`. The Alt+W board
|
|
292
|
+
never carries a verdict on the terminal bus event: the event is published the
|
|
293
|
+
moment the receipt is sealed, before anything has read it back and
|
|
294
|
+
authenticated it against the ledger row, so the board reads the receipt file
|
|
295
|
+
back and projects that authenticated status, and shows `trust: receipt not
|
|
296
|
+
read back` until it can.
|
|
297
|
+
|
|
234
298
|
### Mutation-Report Grounding
|
|
235
299
|
|
|
236
300
|
Mutation-report receipts are grounded directly against observed tool events recorded in the run ledger:
|
package/docs/evolution.md
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# Evolution and Change Manifests
|
|
2
2
|
|
|
3
3
|
> [!TIP]
|
|
4
|
-
> **Interactive Spec Available:** An interactive change manifest editor, authority risk assessor, and checklist workspace is located at [docs/html/evolution_blueprint.html](html/evolution_blueprint.html) (Version: 0.3.
|
|
4
|
+
> **Interactive Spec Available:** An interactive change manifest editor, authority risk assessor, and checklist workspace is located at [docs/html/evolution_blueprint.html](html/evolution_blueprint.html) (Version: 0.3.8).
|
|
5
5
|
|
|
6
6
|
Clio Coder uses change manifests to make harness changes reviewable, falsifiable, and rollback-friendly. CLIO stands for Context Layer for Input/Output, named for the Greek muse of history. A manifest is JSON, generated or checked with `clio-coder evolve manifest`, and should describe what changed, why, what evidence supports it, what could regress, how to validate it, and how to roll it back.
|
|
7
7
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Exit Codes & Machine-Readable Output Contracts
|
|
2
2
|
|
|
3
|
-
This document specifies the process exit codes, machine-readable JSON streaming formats, standard I/O separation rules, and `--help` conventions across all Clio Coder CLI commands in `v0.3.
|
|
3
|
+
This document specifies the process exit codes, machine-readable JSON streaming formats, standard I/O separation rules, and `--help` conventions across all Clio Coder CLI commands in `v0.3.7`.
|
|
4
4
|
|
|
5
5
|
Source implementations: `src/cli/` and `src/entry/`.
|
|
6
6
|
|
|
@@ -66,6 +66,9 @@ Many Clio CLI subcommands provide structured JSON output for integration with sc
|
|
|
66
66
|
| `clio-coder targets` | `--json` | JSON object containing the configured `targets` array. |
|
|
67
67
|
| `clio-coder models` | `--json` | JSON array of catalog models with capability flags. |
|
|
68
68
|
| `clio-coder fleet status` | `--json` | JSON snapshot object with `generatedAt`, `admission` (`open` or `draining`), `running`, `retrying`, and `totals`. Each run row carries its `node`, defaulting to `local`. |
|
|
69
|
+
| `clio-coder fleet validate` | `--json` | JSON report with `valid`, `fleet`, and either successful `checks` plus `planHash` or failure `diagnostics`. Validation failures exit `1`; usage errors exit `2`. |
|
|
70
|
+
| `clio-coder fleet graph` | `--json` | JSON object with `fleet`, `planHash`, compiled `waves`, and expanded `loops`. Contract failures exit `1`; usage errors exit `2`. |
|
|
71
|
+
| `clio-coder fleet run --resume` | `--json` | NDJSON step records include `status: "replayed"` and the original receipt reference for replayed prefix steps. Plan or variable mismatches exit `1`. |
|
|
69
72
|
| `clio-coder trace runs` | `--json` | JSON array of trace run records. |
|
|
70
73
|
| `clio-coder trace sql` | Positional query | JSON array of rows returned by the read-only SQLite query. A single `SELECT` or read-only `WITH` statement is accepted; multiple statements and mutating keywords are refused with exit code 2. |
|
|
71
74
|
| `clio-coder paths` | `--json` | JSON object mapping platform directory names to absolute paths. |
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# Extensions, Prompt Templates, Skills, and Share Archives
|
|
2
2
|
|
|
3
3
|
> [!TIP]
|
|
4
|
-
> **Interactive Spec Available:** An interactive dashboard is located at [docs/html/extensions_blueprint.html](html/extensions_blueprint.html) (Version: 0.3.
|
|
4
|
+
> **Interactive Spec Available:** An interactive dashboard is located at [docs/html/extensions_blueprint.html](html/extensions_blueprint.html) (Version: 0.3.8).
|
|
5
5
|
|
|
6
6
|
Clio Coder has lightweight community-oriented resource packaging. Extensions are filesystem bundles that contribute prompts and skills. Share archives are portable JSON files for moving project/user Clio resources between machines or collaborators. Themes are built into the engine and are no longer loaded from extensions.
|
|
7
7
|
|
|
@@ -251,7 +251,7 @@ Share archives are single JSON files:
|
|
|
251
251
|
"formatVersion": 1,
|
|
252
252
|
"manifest": {
|
|
253
253
|
"format": "clio.share.v1",
|
|
254
|
-
"clioVersion": "0.3.
|
|
254
|
+
"clioVersion": "0.3.7",
|
|
255
255
|
"createdAt": "...",
|
|
256
256
|
"files": []
|
|
257
257
|
},
|
|
@@ -280,6 +280,8 @@ Options:
|
|
|
280
280
|
| `--skills` | Include skills. |
|
|
281
281
|
| `--settings` | Include non-secret settings fragment. |
|
|
282
282
|
| `--extensions` | Include extension bundle files, excluding extension `state.json`. |
|
|
283
|
+
| `--agents` | Include agent recipe files. |
|
|
284
|
+
| `--fleets` | Include fleet contract files. |
|
|
283
285
|
| `--all` | Include every supported resource class. |
|
|
284
286
|
|
|
285
287
|
If no include flags are supplied, export includes all supported classes for the selected scope.
|
|
@@ -296,6 +298,8 @@ clio-coder share import project.clio-coder-share.json --force
|
|
|
296
298
|
|
|
297
299
|
Dry-run imports produce a plan and report conflicts without writing. Without `--force`, conflicting destination files block writes. With `--force`, conflicting files are overwritten and supported settings-fragment keys are merged into the current settings file.
|
|
298
300
|
|
|
301
|
+
Archives accept `agent` and `fleet` file entry types alongside prompts and skills. Agent entries import into the user agent root and must pass the recipe parser and policy checks. Fleet entries import into the user fleet root and must pass `parseFleetContract` before any write. Dry-run plans report both types by kind.
|
|
302
|
+
|
|
299
303
|
Aliases:
|
|
300
304
|
|
|
301
305
|
```bash
|
|
@@ -136,7 +136,7 @@ clio-coder evidence inspect <evidenceId>
|
|
|
136
136
|
run ledger; a tampered or mismatched receipt fails the build with the field
|
|
137
137
|
that diverged. The receipts of the remote runs verify on the orchestrator host because the
|
|
138
138
|
ledger and receipts live on the shared filesystem. Current receipts use strict
|
|
139
|
-
|
|
139
|
+
v16 and authenticate every current receipt and reconstructed-ledger field.
|
|
140
140
|
Every other receipt version is rejected rather than reported as partial; the
|
|
141
141
|
current binary has no historical receipt reader.
|
|
142
142
|
|
|
@@ -168,7 +168,7 @@ reconstruct:
|
|
|
168
168
|
complete receipt schema and its stable ledger row. `clio-coder evidence build
|
|
169
169
|
--run <id>` recomputes and cross-checks it; `verifyReceiptIntegrity` in
|
|
170
170
|
`src/domains/dispatch/receipt-integrity.ts` is the reference
|
|
171
|
-
implementation. Current receipts use
|
|
171
|
+
implementation. Current receipts use v16 and every other version fails
|
|
172
172
|
verification. Incompatible state must be archived or removed; it is never
|
|
173
173
|
read as evidence through a compatibility verifier.
|
|
174
174
|
|