@iowarp/clio-coder 0.3.6 → 0.3.7
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 +28 -0
- package/README.md +16 -5
- package/dist/{acp-2BEHC4DL.js → acp-SK4MD6MM.js} +10 -10
- package/dist/{agents-LNNFTM53.js → agents-2FN2K6ME.js} +30 -25
- package/dist/assets/codewiki.json +1 -1
- package/dist/{auth-KXXFI2VS.js → auth-QIYZWM5I.js} +13 -13
- package/dist/{chunk-KHSFENX2.js → chunk-3HAPLH5M.js} +10 -10
- package/dist/{chunk-24I7BN55.js → chunk-465YSENW.js} +2 -2
- package/dist/{chunk-4OC57DA6.js → chunk-4DGYLA73.js} +53 -2
- package/dist/{chunk-CYQKWTG3.js → chunk-4DWFMQDR.js} +4 -4
- package/dist/{chunk-E2ER4LJF.js → chunk-5C3AQNDW.js} +25 -1
- package/dist/{chunk-22NAGB7X.js → chunk-5C77SEEY.js} +5 -94
- package/dist/{chunk-43AOLP7E.js → chunk-5FR74PWO.js} +2 -1
- package/dist/{chunk-K7T3E2SR.js → chunk-5UJ6ECTS.js} +10 -9
- package/dist/{chunk-6US73PDB.js → chunk-6M7VS3J3.js} +5 -5
- package/dist/{chunk-CJUB2JJ2.js → chunk-6TUKSZVF.js} +5 -5
- package/dist/{chunk-5JGRAMKL.js → chunk-AB4XIIVB.js} +8 -6
- package/dist/{chunk-R46L2BIR.js → chunk-BMWK7ZIZ.js} +14 -20
- package/dist/{chunk-4BPJXDWC.js → chunk-C4JBQ5SR.js} +30 -14
- package/dist/{chunk-XXQNGV4M.js → chunk-CEYBNUGC.js} +243 -63
- package/dist/{chunk-VEZEGCGW.js → chunk-D4MDIG46.js} +20 -18
- package/dist/chunk-DJNLUABN.js +843 -0
- package/dist/{chunk-RY3LY4J5.js → chunk-DMD2AGVS.js} +5 -4
- package/dist/{chunk-KOHPCX4K.js → chunk-DOOEX22V.js} +2 -2
- package/dist/chunk-DQA7QLMD.js +123 -0
- package/dist/chunk-DR52UMZW.js +21 -0
- package/dist/{chunk-XF5N4U5A.js → chunk-EBEFWSGL.js} +6 -5
- package/dist/{chunk-EYPA3EGJ.js → chunk-EELBMBT6.js} +120 -13
- package/dist/{chunk-CKXWIANG.js → chunk-EOOQZZDE.js} +16 -14
- package/dist/{chunk-WR67VIZY.js → chunk-FOT2FX5J.js} +63 -5
- package/dist/{chunk-FYYLNIL5.js → chunk-GH5622CP.js} +2 -2
- package/dist/chunk-GWS3VEIW.js +195 -0
- package/dist/{chunk-LYF7OHWH.js → chunk-J7PIKKWC.js} +8 -463
- package/dist/{chunk-NILBFAPG.js → chunk-JNXPYBB4.js} +2 -2
- package/dist/{chunk-4VP4KH3K.js → chunk-JRIO5UD2.js} +4 -4
- package/dist/{chunk-6XXKFVSN.js → chunk-JTSEDYVQ.js} +7 -7
- package/dist/{chunk-QKMUKYO7.js → chunk-KCMKRQX4.js} +236 -84
- package/dist/chunk-KZ2H5X4G.js +1026 -0
- package/dist/{chunk-QNQHSOLF.js → chunk-LADCF22A.js} +12 -12
- package/dist/chunk-M4AKACEO.js +382 -0
- package/dist/{chunk-XYDYPRZI.js → chunk-MXI6J5JF.js} +7 -7
- package/dist/{chunk-G7MUEIGA.js → chunk-OB5HIGJY.js} +1 -1
- package/dist/{chunk-EKY57CSP.js → chunk-OBMAI2DP.js} +61 -767
- package/dist/chunk-PD3MESLB.js +242 -0
- package/dist/{chunk-ZRGEBJ4T.js → chunk-QCTRSGHQ.js} +21 -21
- package/dist/chunk-RVG5JXAL.js +41 -0
- package/dist/{chunk-RD5U66HV.js → chunk-SROCI7ZU.js} +7 -7
- package/dist/{chunk-MFFY33HR.js → chunk-THKY7CD7.js} +466 -205
- package/dist/{chunk-PCZJO5TI.js → chunk-UFQ3F4FW.js} +13 -178
- package/dist/{chunk-AD2SYQYC.js → chunk-UHXRNZ2J.js} +121 -3
- package/dist/chunk-UND3GU2L.js +103 -0
- package/dist/{chunk-QM3F2GKX.js → chunk-UUANF5CR.js} +2247 -2096
- package/dist/chunk-UVDSQ6LW.js +472 -0
- package/dist/{chunk-DJVECN66.js → chunk-VQNODYQ4.js} +14 -14
- package/dist/{chunk-3BPUFZDL.js → chunk-VREKEFLL.js} +3 -3
- package/dist/{chunk-PBTHKCPN.js → chunk-WJHBC77E.js} +6 -6
- package/dist/{chunk-XE2VEJHX.js → chunk-X2KV5FXT.js} +2 -2
- package/dist/{chunk-ZXF4XRKW.js → chunk-XEGB6BCN.js} +157 -7
- package/dist/{chunk-E25LMLRW.js → chunk-YD734TPH.js} +2 -2
- package/dist/{verifiers-NCBTHHN2.js → chunk-YTYFXUI3.js} +65 -322
- package/dist/{chunk-OH3TOQTB.js → chunk-ZGH7FGS5.js} +13 -7
- package/dist/cli/index.js +32 -30
- package/dist/{clio-M2KGYUFZ.js → clio-WBVQEBKO.js} +7 -7
- package/dist/{code-nav-GQNL7XA6.js → code-nav-FGGFIE7L.js} +3 -3
- package/dist/{components-5TTYYX6G.js → components-F7OEATSO.js} +4 -4
- package/dist/{config-XUUYQIWO.js → config-TRBL3RCF.js} +34 -29
- package/dist/{configure-IHJ7YOMV.js → configure-OLCVPHNM.js} +15 -15
- package/dist/{context-74JLXAWD.js → context-MJIJ6GOX.js} +11 -11
- package/dist/{context-ZQ7SIFJV.js → context-WFPKQSM6.js} +19 -3
- package/dist/{context-75MIWW3U.js → context-XEWE3MOJ.js} +31 -26
- package/dist/{context-clear-GYKWNUML.js → context-clear-KNOS2JPB.js} +31 -26
- package/dist/{context-working-set-UX5KEP4J.js → context-working-set-EUXAZI6N.js} +8 -8
- package/dist/{dispatch-runner-GIJBHNFL.js → dispatch-runner-B7MTOVKL.js} +313 -53
- package/dist/{docs-6FZSCG5B.js → docs-FLJTIDSE.js} +4 -4
- package/dist/{doctor-SVJ5BZCW.js → doctor-RN4YKO2X.js} +14 -14
- package/dist/{eval-CG6LLBLD.js → eval-RUBJVSNQ.js} +8 -7
- package/dist/{evidence-ZYFIEN42.js → evidence-JZNBUOQZ.js} +30 -25
- package/dist/{evolve-QGEXEMDW.js → evolve-FJVC4KKI.js} +30 -25
- package/dist/{extensions-ADGNCJJD.js → extensions-IQL36S7K.js} +4 -4
- package/dist/{fleet-S5R4ZOQY.js → fleet-BDKYJFCP.js} +214 -360
- package/dist/fleet-commands-ZFIWZSB3.js +70 -0
- package/dist/fleet-graph-Y6HPXIVF.js +125 -0
- package/dist/fleet-new-RDVJLHHH.js +48 -0
- package/dist/fleet-validate-BIYREGIK.js +79 -0
- package/dist/{init-5DRU55YR.js → init-LQUB5COQ.js} +44 -37
- package/dist/library-NJAHIGG4.js +217 -0
- package/dist/{memory-7YKKR6UC.js → memory-OG6HOYKM.js} +31 -26
- package/dist/{models-ZPOLRU2C.js → models-5ZG5XY7J.js} +21 -20
- package/dist/{monitor-US5F5YGZ.js → monitor-TJ7AMTGB.js} +49 -30
- package/dist/{orchestrator-E2AL4T5N.js → orchestrator-WZYB54DM.js} +3827 -581
- package/dist/{paths-E7KYAQWE.js → paths-XUC7GS6E.js} +4 -4
- package/dist/{reset-KZ652EK6.js → reset-PXQT45IY.js} +7 -7
- package/dist/{run-SRNBKDWD.js → run-FQ74YF62.js} +53 -45
- package/dist/{share-CGZE33UP.js → share-FW7SVCL3.js} +33 -9
- package/dist/{skills-S2X4DLY5.js → skills-7E7IRB3R.js} +24 -8
- package/dist/{skills-eval-W2GGIC4R.js → skills-eval-LI75W6OK.js} +34 -27
- package/dist/{targets-54SWINWB.js → targets-4CIFKCTW.js} +23 -22
- package/dist/{terminal-lease-SAIF2OGY.js → terminal-lease-WUZY7ZV5.js} +4 -4
- package/dist/{uninstall-BVLWXKBT.js → uninstall-7FV7IP4E.js} +4 -4
- package/dist/{upgrade-JKAR27XC.js → upgrade-K2HVIVMQ.js} +20 -19
- package/dist/{usage-MSAWCLX4.js → usage-GTZELZQX.js} +116 -49
- package/dist/verifiers-RLAHT27O.js +336 -0
- package/dist/{verify-X5HDROLA.js → verify-BX3BRKH5.js} +7 -6
- package/dist/{wiki-generate-GUSOQ6ZP.js → wiki-generate-ASIFASCN.js} +45 -37
- package/dist/worker/entry.js +38 -35
- 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 +10 -6
- package/docs/built-in-agents.md +26 -2
- package/docs/capacity-and-scheduling.md +1 -1
- package/docs/commands-and-modes.md +82 -2
- package/docs/configuration-and-targets.md +79 -2
- 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 +5 -5
- 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 +197 -10
- package/docs/git-commit-provenance.md +2 -2
- package/docs/glossary.md +1 -1
- 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 +55 -8
- package/docs/proactive-memory.md +1 -1
- package/docs/prompt-envelope-and-tools.md +1 -1
- package/docs/provider-adapter-cookbook.md +1 -1
- package/docs/release-cut-checklist.md +79 -64
- 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 -1
- 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 +121 -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/usage.ts +111 -19
- package/src/core/bus-events.ts +4 -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/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/fleet-contract.ts +278 -16
- package/src/domains/agents/index.ts +14 -0
- package/src/domains/agents/result-contract.ts +235 -1
- package/src/domains/config/classify.ts +4 -0
- package/src/domains/dispatch/active-route-planner.ts +14 -0
- 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 +34 -0
- package/src/domains/dispatch/delegation-plan.ts +167 -0
- package/src/domains/dispatch/execution-plan.ts +76 -5
- package/src/domains/dispatch/execution-role.ts +3 -1
- package/src/domains/dispatch/execution-scheduler.ts +183 -67
- package/src/domains/dispatch/extension.ts +258 -9
- 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 +737 -0
- package/src/domains/dispatch/gate-role-prompts.ts +9 -0
- package/src/domains/dispatch/host-verification.ts +178 -0
- package/src/domains/dispatch/index.ts +38 -0
- package/src/domains/dispatch/intent.ts +159 -0
- package/src/domains/dispatch/receipt-integrity.ts +8 -4
- package/src/domains/dispatch/state.ts +36 -3
- package/src/domains/dispatch/types.ts +51 -6
- package/src/domains/dispatch/validation.ts +66 -6
- package/src/domains/evidence/trust-status.ts +10 -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/resources/index.ts +20 -0
- package/src/domains/resources/library.ts +326 -0
- package/src/domains/resources/skills/marketplace.ts +37 -12
- package/src/domains/session/handoff.ts +629 -0
- package/src/domains/share/archive.ts +67 -2
- 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 +260 -16
- 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 +9 -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 +101 -4
- 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 +432 -5
- 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/watchdog-run.ts +75 -0
- package/src/interactive/worker-share.ts +56 -1
- package/src/interactive/worker-stream.ts +7 -0
- package/src/tools/bootstrap.ts +3 -0
- package/src/tools/compete-worktrees.ts +13 -79
- package/src/tools/dispatch-admission.ts +242 -8
- package/src/tools/dispatch-arguments.ts +57 -1
- package/src/tools/dispatch-plan.ts +136 -6
- package/src/tools/dispatch-runner.ts +319 -13
- package/src/tools/dispatch-types.ts +20 -1
- package/src/tools/dispatch.ts +72 -2
- package/src/tools/monitor.ts +16 -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 +2 -1
- package/src/worker/spec-contract.ts +1 -0
- package/dist/chunk-HC4CLZ2Y.js +0 -68
package/docs/README.md
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
# Clio Coder Documentation
|
|
6
6
|
|
|
7
|
-
These pages document `v0.3.
|
|
7
|
+
These pages document `v0.3.7` of Clio Coder, an open-source coding orchestrator within the [IOWarp](https://iowarp.ai) scientific computing platform, created by the [Gnosis Research Center](https://grc.iit.edu) at the [Illinois Institute of Technology](https://www.iit.edu).
|
|
8
8
|
|
|
9
9
|
They are source-aligned guides: when prose and source disagree, prefer the
|
|
10
10
|
current source, tests, and `CHANGELOG.md`.
|
|
@@ -39,6 +39,7 @@ current source, tests, and `CHANGELOG.md`.
|
|
|
39
39
|
| Advisory validation-contract patterns for scientific artifacts and HPC assumptions | [scientific-validation.md](scientific-validation.md) ([Interactive Blueprint](html/validation_blueprint.html)) |
|
|
40
40
|
| Falsifiable Change Manifest JSON templates, auditability, and `clio-coder evolve` | [evolution.md](evolution.md) ([Interactive Blueprint](html/evolution_blueprint.html)) |
|
|
41
41
|
| Source-first docs workflow, mapping matrix, and alpha wording guidance | [documentation-guide.md](documentation-guide.md) ([Interactive Blueprint](html/documentation_blueprint.html)) |
|
|
42
|
+
| Typed resource catalogs, private synchronization, installation roots, and library CLI | [resource-library.md](resource-library.md) |
|
|
42
43
|
| Interface layout, colors palette, Unicode character vocabulary, and drawing choreography | [tui-design.md](tui-design.md) ([Interactive Blueprint](html/tui_design_blueprint.html)) |
|
|
43
44
|
| NDJSON parent-child socket protocols, watchdog timers, and exit status mapping | [worker-dispatch-mechanics.md](worker-dispatch-mechanics.md) ([Interactive Blueprint](html/worker_dispatch_blueprint.html)) |
|
|
44
45
|
| Multi-node fleet dispatch: process-safe admission, attested workers, measured routing, activation, agent automation, topologies, and receipts | [fleet-dispatch.md](fleet-dispatch.md) ([Interactive Blueprint](html/fleet_dispatch_blueprint.html)) |
|
|
@@ -83,7 +84,7 @@ under `src/`, run `npm run build` again or keep `npm run dev` running.
|
|
|
83
84
|
## Release Notes
|
|
84
85
|
|
|
85
86
|
The release entry point is [../README.md](../README.md); detailed release
|
|
86
|
-
history lives in [../CHANGELOG.md](../CHANGELOG.md). For v0.3.
|
|
87
|
+
history lives in [../CHANGELOG.md](../CHANGELOG.md). For v0.3.7 the supported
|
|
87
88
|
install paths are `npm install -g @iowarp/clio-coder` and a source checkout
|
|
88
89
|
through `npm run install:local`, the deterministic release gate is
|
|
89
90
|
`npm run ci:release`, and live model smoke validation is local/manual and
|
package/docs/acp.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Agent Client Protocol (ACP) Server
|
|
2
2
|
|
|
3
|
-
This document defines the architecture, transport protocols, tool mediation layers, permission handling, and error taxonomy for Clio Coder's Agent Client Protocol (ACP) server implementation in `v0.3.
|
|
3
|
+
This document defines the architecture, transport protocols, tool mediation layers, permission handling, and error taxonomy for Clio Coder's Agent Client Protocol (ACP) server implementation in `v0.3.7`.
|
|
4
4
|
|
|
5
5
|
Source implementations: `src/engine/acp/` and `src/cli/acp.ts`.
|
|
6
6
|
|
package/docs/alcf-provider.md
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# ALCF Inference Provider
|
|
2
2
|
|
|
3
3
|
> [!TIP]
|
|
4
|
-
> **Interactive Spec Available:** An interactive target configurator and Globus OAuth flow diagram is located at [docs/html/alcf_blueprint.html](html/alcf_blueprint.html) (Version: 0.3.
|
|
4
|
+
> **Interactive Spec Available:** An interactive target configurator and Globus OAuth flow diagram is located at [docs/html/alcf_blueprint.html](html/alcf_blueprint.html) (Version: 0.3.7).
|
|
5
5
|
|
|
6
6
|
Clio can use Argonne's ALCF inference gateway as an OpenAI-compatible target
|
|
7
7
|
backed by Globus OAuth. The runtime id is `alcf`; each configured target points
|
package/docs/architecture.md
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
# Clio Coder Architecture and Boundaries
|
|
2
2
|
|
|
3
3
|
> [!TIP]
|
|
4
|
-
> **Interactive Spec Available:** An interactive dashboard is located at [docs/html/architecture_blueprint.html](html/architecture_blueprint.html) (Version: 0.3.
|
|
4
|
+
> **Interactive Spec Available:** An interactive dashboard is located at [docs/html/architecture_blueprint.html](html/architecture_blueprint.html) (Version: 0.3.7).
|
|
5
5
|
|
|
6
6
|
Clio Coder is an experimental, terminal-first coding harness for the CLIO ecosystem. CLIO stands for Context Layer for Input/Output; the project is named for the Greek muse of history and developed by the Gnosis Research Center at Illinois Tech. Its architecture favors small, auditable subsystems over a single monolithic agent loop: CLI entry points, the interactive TUI, provider/runtime code, worker subprocesses, tools, and feature domains are kept separate so local-model support and scientific-software workflows can evolve without collapsing safety boundaries.
|
|
7
7
|
|
|
8
|
-
This page is source-code aligned for the current `v0.3.
|
|
8
|
+
This page is source-code aligned for the current `v0.3.7` development line.
|
|
9
9
|
|
|
10
10
|
---
|
|
11
11
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Artifact Versions & Serialization Contracts
|
|
2
2
|
|
|
3
|
-
This document is the canonical registry of all versioned file formats, serialized data structures, integrity digests, and migration rules across Clio Coder in `v0.3.
|
|
3
|
+
This document is the canonical registry of all versioned file formats, serialized data structures, integrity digests, and migration rules across Clio Coder in `v0.3.7`.
|
|
4
4
|
|
|
5
5
|
---
|
|
6
6
|
|
|
@@ -10,23 +10,27 @@ Clio Coder strictly versions every persistent or network-transported data struct
|
|
|
10
10
|
|
|
11
11
|
| Artifact / Subsystem | Current Version | Symbol / Type & Source Location | Persisted Path / Wire Location | Schema Semantics & Version Differences | Mismatch Handling |
|
|
12
12
|
| :--- | :--- | :--- | :--- | :--- | :--- |
|
|
13
|
-
| **Run Receipt** | `
|
|
13
|
+
| **Run Receipt** | `19` | `RUN_RECEIPT_INTEGRITY_VERSION = 19`<br>`src/domains/dispatch/receipt-integrity.ts:13` | `<stateDir>/receipts/<runId>.json` | Cryptographically sealed run record. Version 19 covers all base provenance fields, routing intent, quality labels, `validationGrounding`, `capabilityMismatch`, council provenance, and fleet gate provenance. | Fail-closed. Incompatible receipts fail verification and are never read as evidence. |
|
|
14
14
|
| **Session Ledger** | `3` | `CURRENT_SESSION_FORMAT_VERSION = 3`<br>`src/engine/session.ts:66` | `<stateDir>/sessions/<cwdHash>/<sessionId>/` (`meta.json`, `current.jsonl`, `tree.json`) | Append-only ledger format with UUIDv7 turn IDs, session header line, and tree graph linkage. | Automated migration via `src/domains/session/migrations/` on `/resume`. Earlier unmigratable versions rejected. |
|
|
15
15
|
| **Worker Spec** | `3` | `WORKER_SPEC_VERSION = 3`<br>`src/worker/spec-contract.ts:22` | Subprocess `stdin` control plane JSON payload | Worker invocation parameters, tool surface profile, and execution bounds. | Fail-closed preflight rejection before worker activation. |
|
|
16
16
|
| **Worker Runtime Descriptor** | `2` | `WORKER_RUNTIME_DESCRIPTOR_VERSION = 2`<br>`src/worker/spec-contract.ts:23` | Worker attestation descriptor payload | Attestation descriptor for worker runtime environment and hardware facts. | Attestation mismatch causes immediate process termination. |
|
|
17
17
|
| **Worker Protected Artifact State** | `1` | `WORKER_PROTECTED_ARTIFACT_STATE_VERSION = 1`<br>`src/worker/spec-contract.ts:24` | Worker spec initialization snapshot | Snapshot of active protected artifact paths and validation commands passed to worker. | Worker fails closed before executing mutations. |
|
|
18
|
-
| **Fleet Contract** | `1 \| 2 \| 3 \| 4` (Current: `
|
|
18
|
+
| **Fleet Contract** | `1 \| 2 \| 3 \| 4 \| 5` (Current: `5`) | `FleetContractVersion = 1 \| 2 \| 3 \| 4 \| 5`<br>`FLEET_WRITE_BOUNDARY_VERSION = 4`<br>`FLEET_DYNAMIC_STEP_VERSION = 5`<br>`src/domains/agents/fleet-contract.ts` | `.clio-coder/fleets/<name>.yaml`, `.clio-coder/fleets/<name>.yml`, or built-in recipes | Multi-agent workflow contract. v1 is agent-only; v2 adds deterministic code steps; v3 adds bounded loops and commit steps; v4 adds declared per-step write boundaries; v5 adds plan steps, gate steps, per-step target or profile routing, and the single-writer declaration. | Reader refuses contracts whose version features it does not support. |
|
|
19
19
|
| **Execution Plan** | `4` | `version: 4` in `interface ExecutionPlan`<br>`src/domains/dispatch/execution-plan.ts:98` | Statically compiled DAG representation in dispatch memory and receipts | Statically unrolled, deterministically hashed execution plan. v4 adds bounded loop nodes, verification staleness tracking, and commit nodes. | Preflight validation rejects unsupported plan versions. |
|
|
20
20
|
| **Eval Artifact** | `4` | `version: 4` in `interface EvalArtifactV4`<br>`src/domains/eval/schema/artifact.ts:51-52` | `<stateDir>/evals/<evalId>.json` | Stored eval results with suite provenance, matrix parameters, and itemized metric outcomes. Note: `EVAL_ARTIFACT_VERSION = 1` in `src/domains/eval/types.ts:2` is legacy/dead code. | Incompatible eval artifacts are rejected during `clio-coder eval report` and `compare`. |
|
|
21
21
|
| **Trace Database** | `1` | `TRACE_SCHEMA_VERSION = 1`<br>`src/domains/observability/trace-store.ts:23` | `<stateDir>/trace.sqlite` (`meta` table `schema_version`) | Schema version for the 7 SQLite trace mirror tables (`runs`, `phases`, `events`, `envelopes`, `gate_results`, `agent_sessions`, `processes`). | Log warning (`[clio:trace]`), trace writing degrades without failing the parent run. |
|
|
22
22
|
| **Capacity State File** | `2` | `version: 2` in `interface CapacityStateFile`<br>`src/domains/dispatch/capacity-lease.ts:40` | `<stateDir>/dispatch-admission.json` | Active capacity leases, drain status, and cross-process lock state. | Corrupted or unparseable state file causes admission to fail closed. |
|
|
23
23
|
| **Protected Artifact Journal** | `1` | `version: 1` in `interface PendingProtectedArtifactRecord`<br>`src/domains/session/protected-artifact-journal.ts:22` | `<stateDir>/protected-artifact-pending/<key>/<id>.json` | Write-ahead durability records for pending protected artifacts. | Leftover records reconciled during session initialization. |
|
|
24
|
+
| **Fleet Run Record** | `1` | `version: 1` in `interface FleetRunRecord`<br>`src/domains/dispatch/fleet-run.ts` | `<stateDir>/fleet-runs/<runId>.json` | Durable record of one fleet run: contract name, plan hash, static step ids and steps, `--var` values, replayed and settled step results, and the delegation plan hash a `kind: plan` step produced. Read by `fleet run --resume`. | Resume refuses a changed plan hash with a per-step diff and refuses differing `--var` values. |
|
|
25
|
+
| **Checkout Writer Lease** | `1` | `version: 1` in `interface CheckoutWriterLeaseRecord`<br>`src/domains/dispatch/checkout-writer-lease.ts` | `<stateDir>/checkout-writer-leases/<key>.json` (key derived from the canonical checkout path) | Cross-process single-writer lease: checkout path, pid, process birth token, acquisition time. | A live sibling holder is refused with `checkout_writer_lease_held`; a dead owner is reclaimed; a malformed record is treated as absent. |
|
|
26
|
+
| **Out-of-turn Usage Ledger** | unversioned JSONL | `OutOfTurnUsageRow`<br>`src/domains/observability/out-of-turn-usage.ts` | `<stateDir>/usage/out-of-turn.jsonl` | One row per priced `/btw` or `/handoff` call: label, session id, repo identity, timestamp, target, attributed model, provider usage. Bounded ring of `MAX_OUT_OF_TURN_USAGE_ROWS = 1000`, rewritten atomically under the state-file lock. | Unparseable rows are skipped and counted by `usage report`; the session ledger is never affected. |
|
|
27
|
+
| **Library Pins** | unversioned YAML map | `readLibraryPins`<br>`src/domains/resources/library.ts` | `<configDir>/library-pins.yaml` | Typed ref (`skill:x`, `agent:y`, `prompt:p`, `fleet:z`) to `{sha256, sourceUrl}` for every resource `library add` or the Skills Hub installed. | A non-map document reads as empty; an entry whose installed file is missing is reported as available, not installed. |
|
|
24
28
|
|
|
25
29
|
---
|
|
26
30
|
|
|
27
31
|
## 2. Integrity Verification Contracts
|
|
28
32
|
|
|
29
|
-
### Receipt Integrity (Version
|
|
33
|
+
### Receipt Integrity (Version 19)
|
|
30
34
|
|
|
31
35
|
Receipt integrity authenticates that a sealed receipt matches its ledger envelope without modification. Verification reproduces the canonical JSON serialization and computes the SHA-256 digest:
|
|
32
36
|
|
|
@@ -38,9 +42,9 @@ export function computeReceiptDigest(receipt: RunReceiptV15): string {
|
|
|
38
42
|
```
|
|
39
43
|
|
|
40
44
|
Receipt verification checks:
|
|
41
|
-
1. `integrity.version ===
|
|
45
|
+
1. `integrity.version === 19`.
|
|
42
46
|
2. Calculated SHA-256 matches `integrity.digest`.
|
|
43
|
-
3. All optional fields present in the schema (`validationGrounding`, `capabilityMismatch`, `steering`, `gate`, `plan`, `briefing`) conform to the strict
|
|
47
|
+
3. All optional fields present in the schema (`validationGrounding`, `capabilityMismatch`, `steering`, `gate`, `fleetGate`, `council`, `plan`, `briefing`) conform to the strict v19 specification.
|
|
44
48
|
|
|
45
49
|
---
|
|
46
50
|
|
package/docs/built-in-agents.md
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Clio Coder dispatches focused fleet agents from Markdown recipes. Recipes are data files, not hidden code plugins: YAML frontmatter declares identity, mode, tools, optional target/model hints, and thinking level; the Markdown body is the agent instruction text.
|
|
4
4
|
|
|
5
5
|
> [!TIP]
|
|
6
|
-
> **Interactive Spec Available:** An interactive dashboard for the agent registry and dispatch admission check gates is located at [docs/html/agents_blueprint.html](html/agents_blueprint.html) (Version: 0.3.
|
|
6
|
+
> **Interactive Spec Available:** An interactive dashboard for the agent registry and dispatch admission check gates is located at [docs/html/agents_blueprint.html](html/agents_blueprint.html) (Version: 0.3.7).
|
|
7
7
|
|
|
8
8
|
The source of truth is `src/domains/agents/**`. Clio's agent dispatch engine and execution boundaries are built upon the [@earendil-works/pi-agent-core](https://www.npmjs.com/package/@earendil-works/pi-agent-core) library.
|
|
9
9
|
|
|
@@ -34,7 +34,7 @@ Recipe IDs are derived from filenames (e.g., `architect.md` -> `architect`). Rec
|
|
|
34
34
|
* **Built-in Protection**: Project agents cannot override any shipped built-ins; they are strictly treated as custom/domain agents.
|
|
35
35
|
* **Reserved IDs**: The IDs `worker` and `delegate` are strictly reserved for custom/internal contexts and cannot be registered as custom agent IDs.
|
|
36
36
|
* **Local Ignored Custom Examples**: Local examples (e.g., `benchmark-runner`, `clio-dev`, `implementer`, `scientific-validator`) may exist under `.clio-coder/agents` for documentation or test purposes, but are ignored if they collide with reserved/built-in rules.
|
|
37
|
-
* **Fleet Contracts**: Shipped builtin fleet contracts (`build-test`, `build-review`, `sdlc`) live under `src/domains/agents/fleets/*.md`.
|
|
37
|
+
* **Fleet Contracts**: Shipped builtin fleet contracts (`build-test`, `build-review`, `sdlc`) live under `src/domains/agents/fleets/*.md`. Library-installed contracts live at `<configDir>/fleets/<name>.md`. Project contracts at `.clio-coder/fleets/<name>.md` take highest precedence. Deterministic code steps reference commands declared in `.clio-coder/fleets/commands.yaml`. Contract v4 requires per-step write boundaries (`writes`).
|
|
38
38
|
|
|
39
39
|
---
|
|
40
40
|
|
|
@@ -64,12 +64,36 @@ Internal orchestration helpers and internal process agents. They are hidden from
|
|
|
64
64
|
| `scout` | read, grep, find, ls, context, code_nav, git | Broad repository reconnaissance, codebase orientation, structure and entry-point mapping, and multi-file symbol hunting. | `read-only` | `fast` |
|
|
65
65
|
| `researcher` | read, web_fetch, context | Shadow docs and external-source researcher for coding decisions. | `read-only` | `deep` |
|
|
66
66
|
| `provenance` | read, grep, find, ls, git | Shadow evidence, receipt, diff, and telemetry reader for handoffs. | `read-only` | `balanced` |
|
|
67
|
+
| `oracle` | read, grep, find, ls, code_nav, context | Shadow advisor behind `/oracle` that protects consistency with prior decisions and returns the strongest challenge to a question. | `read-only` | `deep` |
|
|
67
68
|
| `context-bootstrap` | read, grep, find, ls, context, code_nav | Internal agent behind `clio-coder context init` that parses repository and returns CLIO-CODER.md payload. | `read-only` | `balanced` |
|
|
68
69
|
|
|
70
|
+
The builtin `architect` also serves as the default author for a version 5 fleet `plan` step. In that role it returns the coordinator-owned `delegation-plan` result shape instead of writing its ordinary plan artifact. It may name only agents from the contract roster. The coordinator supplies the plan step's target or profile to every admitted task.
|
|
71
|
+
|
|
69
72
|
`scout` is bound by a live-grounding contract: its whole final response is one `scout-report` object whose every finding carries the `claim` it observed and the `path:line` that grounds it, a lead it could not confirm live is simply left out, and wiki or index content is orientation only, never citable as evidence. It has an 18-call exploration phase followed by a tool-free synthesis phase; wide parallel batches cannot consume the synthesis backstop as separate violations. Dispatch labels its answer `reconnaissance output (advisory leads, not validation evidence):`.
|
|
70
73
|
|
|
71
74
|
Grounding is checked against the run's own reads, not just against the file. The worker records the exact line span every successful read returned, and a cited line must fall inside one. A line that exists in the file but was never read fails, which is what stops an approximated or inferred line number from passing as observation. `grep` and `code_nav` hits are leads: read the file before citing what they point at.
|
|
72
75
|
|
|
76
|
+
`oracle` is the only shadow agent an operator reaches directly, and only through
|
|
77
|
+
`/oracle <question>`. It never receives a forked transcript. `/oracle` packs a
|
|
78
|
+
bounded digest instead and sends it as dispatch briefing data: the settled
|
|
79
|
+
decisions from the session decision board, the open tasks from the task board,
|
|
80
|
+
the last compaction summary when one exists, and the question. The digest is
|
|
81
|
+
capped at 12 KiB total, with per-section caps of 5120 bytes and 24 rows for
|
|
82
|
+
decisions, 3072 bytes and 24 rows for open tasks, 2048 bytes for the compaction
|
|
83
|
+
summary, and 1536 bytes for the question. Every cap that cuts content appends a
|
|
84
|
+
`[truncated]` marker, so an advisor always knows it is reading a tail-less
|
|
85
|
+
record. Entries are filtered to the active branch before the fold, so a `/tree`
|
|
86
|
+
switch never briefs the advisor on decisions the operator walked away from.
|
|
87
|
+
|
|
88
|
+
The run is an ordinary singular dispatch with `requestOrigin: "internal"` and
|
|
89
|
+
`autonomy: "read-only"`, so admission, receipts, and the Fleet Runs island apply
|
|
90
|
+
to it exactly as they apply to `/run`. Its `oracle-report` contract carries the
|
|
91
|
+
answer shape: a verdict line, the strongest challenge the advisor can mount, the
|
|
92
|
+
evidence that would change its mind, and the decisions it cited. The rendered
|
|
93
|
+
answer reaches the main agent the way `/share` puts a worker result there, as an
|
|
94
|
+
operator-authored note on the ordinary user-turn path. `/oracle` during an
|
|
95
|
+
in-flight turn is refused rather than queued.
|
|
96
|
+
|
|
73
97
|
Every contract-bearing agent gets bounded in-worker repair. When the terminal result misses its contract, the worker replays the validator's own reason, the exact accepted shape, and the `path:line` locations this run actually read, then asks for the result again. Two repair rounds is the whole allowance; after that the run fails with `result_contract_exhausted`. This is what keeps a small local model that gathered the right evidence from being failed for a shape mistake nobody told it about.
|
|
74
98
|
|
|
75
99
|
Two rounds only help when the reason is actionable, so a validator reason names the mistake and shows the value that would have passed. A `mutation-report` with `"validations":[]` is told the array was empty and is given one entry shaped like `{"name":"npm test","passed":true,"evidence":"exit 0"}`, and a report whose entries are malformed is told which keys each entry carries. Naming the requirement alone left a small model re-emitting the same empty array through both rounds.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Capacity Leases & Fleet Scheduling
|
|
2
2
|
|
|
3
|
-
This document specifies the multi-process capacity leasing protocols, node scheduling models, cross-process transaction locks, and failure recovery mechanics implemented in Clio Coder `v0.3.
|
|
3
|
+
This document specifies the multi-process capacity leasing protocols, node scheduling models, cross-process transaction locks, and failure recovery mechanics implemented in Clio Coder `v0.3.7`.
|
|
4
4
|
|
|
5
5
|
Source implementations: `src/domains/scheduling/` and `src/domains/dispatch/capacity-lease.ts`.
|
|
6
6
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# Commands and Modes
|
|
2
2
|
|
|
3
3
|
> [!TIP]
|
|
4
|
-
> **Interactive Spec Available:** An interactive dashboard is located at [docs/html/commands_blueprint.html](html/commands_blueprint.html) (Version: 0.3.
|
|
4
|
+
> **Interactive Spec Available:** An interactive dashboard is located at [docs/html/commands_blueprint.html](html/commands_blueprint.html) (Version: 0.3.7).
|
|
5
5
|
|
|
6
6
|
|
|
7
7
|
Clio Coder is a terminal-first alpha harness. This page keeps the command
|
|
@@ -145,17 +145,21 @@ The registry table below lists the available interactive slash commands. On a ba
|
|
|
145
145
|
| `/quit` | `/quit` | Exit Clio Coder |
|
|
146
146
|
| `/help` | `/help [query]` | Open the interactive help center showing commands and keys |
|
|
147
147
|
| `/skill` | `/skill [name] [task]` | Open the Skills Hub or invoke a skill |
|
|
148
|
+
| `/library` | `/library [kind]` | Open the Skills Hub on a resource library tab |
|
|
148
149
|
| `/prompts` | `/prompts` | List prompt templates |
|
|
149
150
|
| `/extensions` | `/extensions` | List installed extensions |
|
|
150
151
|
| `/interop` | `/interop` | Review other coding agents detected on this machine |
|
|
151
152
|
| `/share` | `/share [runId] \| /share export <path> \| /share import [--dry-run] [--force] <path>` | Share a worker result with the main agent, or export and import Clio archives |
|
|
152
153
|
| `/run` | `/run [--agent-profile <profile>] [--runtime <runtimeId>] [--target <id>] [--model <id>] [--thinking <level>] [--tool-profile <minimal-local\|science-local\|full-agent>] [--require <cap>] [--share] <agent> <task>` | Run a fleet agent |
|
|
153
154
|
| `/delegate` | `/delegate [--share] <agent-id> <task>` | Run an ACP delegation agent |
|
|
155
|
+
| `/btw` | `/btw <question>` | Ask a side question that never enters the session transcript |
|
|
156
|
+
| `/oracle` | `/oracle <question>` | Ask a read-only advisor to challenge a question against this session's settled decisions |
|
|
157
|
+
| `/council` | `/council [--roster <name>] [--rounds <n>] [--synthesis <judge\|vote\|none>] <task>` | Ask a roster of read-only members the same task, with an optional vote or judge synthesis |
|
|
154
158
|
| `/agents` | `/agents` | List Clio agents and ACP delegation agents |
|
|
155
159
|
| `/targets` | `/targets` | Open Settings → Targets: health, use, connect, probe, remove |
|
|
156
160
|
| `/cost` | `/cost` | Show session token and cost totals |
|
|
157
161
|
| `/context` | `/context compact [instructions] \| /context recall <ref> \| /context init \| /context refresh \| /context reset` | Context hub: window overlay plus compact, recall, init, refresh, and reset |
|
|
158
|
-
| `/fleet` | `/fleet
|
|
162
|
+
| `/fleet` | `/fleet run [--var <key=value>] <name>` | Open Settings → Fleet, or run a fleet contract with an approval preview |
|
|
159
163
|
| `/decisions` | `/decisions` | Show settled interview decisions and operator revisions |
|
|
160
164
|
| `/tasks` | `/tasks add <text> \| /tasks hand <id> \| /tasks done <id> \| /tasks drop <id>` | Show the session board or manage project operator tasks |
|
|
161
165
|
| `/memory` | `/memory seed` | Inspect, promote, or seed task memory |
|
|
@@ -167,6 +171,7 @@ The registry table below lists the available interactive slash commands. On a ba
|
|
|
167
171
|
| `/settings` | `/settings [section]` | Open interactive settings |
|
|
168
172
|
| `/resume` | `/resume` | Resume a past session |
|
|
169
173
|
| `/new` | `/new` | Start a fresh session |
|
|
174
|
+
| `/handoff` | `/handoff <goal>` | Hand this session's working state to a fresh session for a stated goal |
|
|
170
175
|
| `/tree` | `/tree` | Open session tree navigator |
|
|
171
176
|
| `/fork` | `/fork` | Fork from an assistant turn |
|
|
172
177
|
| `/export` | `/export [path]` | Export a self-contained HTML transcript by default; a `.md` path writes Markdown |
|
|
@@ -190,6 +195,72 @@ There are no slash-command aliases. `/context compact`, `/quit`, `/model`,
|
|
|
190
195
|
spellings stay errors that name `/help` instead of guessing which operation the
|
|
191
196
|
operator intended.
|
|
192
197
|
|
|
198
|
+
`/btw <question>` runs one model round beside the session and renders the answer
|
|
199
|
+
in an overlay. It sends the same compiled message history the next turn would
|
|
200
|
+
send, as read-only input, under a short system instruction saying this is a side
|
|
201
|
+
question, with no tools. Nothing about the round is appended: not the session
|
|
202
|
+
JSONL, not the transcript panel, not the context ledger, not the task board. That
|
|
203
|
+
is the point of it. A fleet run briefs its workers from the transcript, so a
|
|
204
|
+
question the operator asks to orient themselves mid-run would otherwise become
|
|
205
|
+
context every worker inherits. Esc closes the overlay, and cancels the round if it
|
|
206
|
+
is still streaming. `/btw` during an in-flight turn is refused with a notice
|
|
207
|
+
rather than queued, because a side question answered after the run it was asked
|
|
208
|
+
during has already missed its moment. The round's token usage still shows in
|
|
209
|
+
`/cost`, labeled as a side question, because it was a real call and cost real
|
|
210
|
+
money; it is deliberately not counted as a turn.
|
|
211
|
+
|
|
212
|
+
`/council [--roster <name>] [--rounds <n>] [--synthesis judge|vote|none] <task>`
|
|
213
|
+
asks a roster of two to five read-only members the same task and puts the group on
|
|
214
|
+
the Fleet Runs board as one card. It owns no dispatch path of its own: the command
|
|
215
|
+
builds dispatch-tool arguments and admits them through the tool registry, so a
|
|
216
|
+
supervised autonomy level parks the call and the approval overlay names every
|
|
217
|
+
member's label, target, model, node, round count, and synthesis mode before
|
|
218
|
+
anything runs. Members are pinned to read-only autonomy and the council tool
|
|
219
|
+
surface by admission, exactly as they are for a council the model asks for.
|
|
220
|
+
|
|
221
|
+
`--roster` names a `workers.rosters` entry. Without it the command takes
|
|
222
|
+
`workers.rosters.default` when that roster exists, and with neither it refuses
|
|
223
|
+
and names the setting to declare. A roster that is the only one configured is
|
|
224
|
+
still not the default: seating a council from whichever roster happens to be
|
|
225
|
+
present would run models the operator never chose. `--rounds` accepts one to
|
|
226
|
+
three and `--synthesis` accepts `judge`, `vote`, or `none`, which are the tool's
|
|
227
|
+
own bounds, enforced where the operator typed them so a council is never refused
|
|
228
|
+
after its plan has already been shown. `/council` during an in-flight turn is
|
|
229
|
+
refused with a notice rather than queued, for the same reason `/fleet run` is: an
|
|
230
|
+
approved plan describes the workspace as it stands. Nothing the members produce
|
|
231
|
+
enters the main agent's context until an operator runs `/share`.
|
|
232
|
+
|
|
233
|
+
`/handoff <goal>` carries this session's working state into a fresh session for a
|
|
234
|
+
goal the operator states. The goal is required and gated: a goal shorter than 12
|
|
235
|
+
characters is refused, and so is one of a small stoplist of non-goals such as
|
|
236
|
+
"continue", "next", or "resume". Both refusals name the rule they enforce, because
|
|
237
|
+
"keep going" is exactly the instruction a handoff exists to replace.
|
|
238
|
+
|
|
239
|
+
One model round then runs on the same out-of-turn seam `/btw` uses. It reads the
|
|
240
|
+
compiled message history the next turn would send, sends no tools, and answers
|
|
241
|
+
with JSON validated against a fixed response schema of decisions, facts, files,
|
|
242
|
+
commands, and open questions. Every list and every string is bounded; output over
|
|
243
|
+
a bound is truncated with a visible marker and the document names each bound that
|
|
244
|
+
fired, so nothing is cut silently and an over-eager answer is never a refusal.
|
|
245
|
+
|
|
246
|
+
Every file path the model names is checked against this session's read ledger and
|
|
247
|
+
never against the filesystem. Paths the session did not touch are dropped and
|
|
248
|
+
listed in the document under their own heading so the operator can see what the
|
|
249
|
+
model invented. Extracted decisions are merged with the session's settled decision
|
|
250
|
+
board, and the board wins. The result is one Markdown document opened for review:
|
|
251
|
+
Enter accepts it, `e` hands it to `$EDITOR`, and Esc cancels the whole handoff with
|
|
252
|
+
nothing written anywhere.
|
|
253
|
+
|
|
254
|
+
On accept, Clio mints a new session, writes the reviewed document into it as
|
|
255
|
+
bounded data labelled as a handoff from the old session id, and replays the old
|
|
256
|
+
session's skill activations so loaded skills carry forward. The document is never
|
|
257
|
+
written as a fabricated user turn. The old session is left untouched apart from one
|
|
258
|
+
terminal note recording the target session id. A handoff is a session operation
|
|
259
|
+
throughout: it writes no memory promotion candidate and never calls the task-memory
|
|
260
|
+
bank. `/handoff` during an in-flight turn is refused with a notice rather than
|
|
261
|
+
queued, because a document summarizing a session that is still moving would be
|
|
262
|
+
wrong by the time it was read.
|
|
263
|
+
|
|
193
264
|
The `/resume` picker accepts Page Up and Page Down to move by its 12 visible rows. Arrow keys continue to move one session at a time, and typing continues to filter the list.
|
|
194
265
|
|
|
195
266
|
Only active commands run. Typing anything command-shaped that the registry does
|
|
@@ -256,6 +327,15 @@ operator steering whose run id names a receipt it can read, so a model that
|
|
|
256
327
|
never dispatched the run does not discard it as unattributed output. A turn
|
|
257
328
|
that only relays a shared note does not trip the unbacked-worker-claim
|
|
258
329
|
advisory.
|
|
330
|
+
A council run shares as a council. `/share <synthesis runId>` brings the whole
|
|
331
|
+
`council-report` in as one bounded block: every final-round member's answer under
|
|
332
|
+
its roster label, each with its verdict when it declared one, then the synthesis
|
|
333
|
+
line naming the mode, the verdict, the tally, and the judge run when there was
|
|
334
|
+
one. `/share <member runId>` brings that one member's answer in under its roster
|
|
335
|
+
label, so a single voice never reaches the main agent as an unattributed one. A
|
|
336
|
+
synthesis run whose sealed text does not parse as a report is shared verbatim
|
|
337
|
+
rather than dropped, because the operator named that run.
|
|
338
|
+
|
|
259
339
|
`/new` resets the transcript and the pool bare `/share` draws from, so a run
|
|
260
340
|
from the previous session cannot be shared into the new one. Worker tool
|
|
261
341
|
arguments never cross at all: the transcript carries tool names only, the same
|
|
@@ -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.7).
|
|
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
|
---
|
|
@@ -174,6 +176,17 @@ workers:
|
|
|
174
176
|
model: your-model-id
|
|
175
177
|
thinkingLevel: off
|
|
176
178
|
profiles: {}
|
|
179
|
+
rosters:
|
|
180
|
+
design:
|
|
181
|
+
members:
|
|
182
|
+
- label: local-a
|
|
183
|
+
target: local-lmstudio
|
|
184
|
+
model: your-model-id
|
|
185
|
+
thinking: medium
|
|
186
|
+
color: accent
|
|
187
|
+
- label: local-b
|
|
188
|
+
target: local-vllm
|
|
189
|
+
color: "#5ba8ff"
|
|
177
190
|
agentBindings: {}
|
|
178
191
|
maxRetries: 2
|
|
179
192
|
onPermission: deny
|
|
@@ -208,6 +221,11 @@ terminal:
|
|
|
208
221
|
tuiMode: regular # regular terminal scrollback or fullscreen sticky layout
|
|
209
222
|
fullscreenScrollbar: auto # hidden, auto, or always in fullscreen mode
|
|
210
223
|
smoothStreaming: off # off, conservative auto, or explicit on
|
|
224
|
+
notify: false # content-free desktop notification, interactive TTY only
|
|
225
|
+
watchdog:
|
|
226
|
+
enabled: false # opt-in read-only review of every mutating turn
|
|
227
|
+
# target: local-lmstudio # route the review at a cheap model
|
|
228
|
+
# cadenceToolCalls: 20 # also review every N tool calls inside a turn
|
|
211
229
|
skills:
|
|
212
230
|
trustProjectCompatRoots: false
|
|
213
231
|
delegation:
|
|
@@ -467,7 +485,8 @@ The Settings Center organizes all configuration under four non-selectable group
|
|
|
467
485
|
| **RUNTIME** | Budget (`budget`) | `budget.sessionCeilingUsd`, `defaults.maxTokens`, and `budget.concurrency` (restart required). |
|
|
468
486
|
| **RUNTIME** | Compaction (`compaction`) | `compaction.auto`, `compaction.threshold`, and `compaction.excludeLastTurns`. |
|
|
469
487
|
| **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`. |
|
|
488
|
+
| **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`. |
|
|
489
|
+
| **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
490
|
| **EXPERIENCE** | Advanced (`advanced`) | `runtimePlugins`, `attribution.gitCommits`, `compaction.model`, `compaction.systemPrompt`, `delegation.defaults.connectTimeoutMs`, `delegation.defaults.turnTimeoutMs`, `delegation.defaults.permissionTimeoutMs`, `keybindings`, and `delegation.agents`. |
|
|
472
491
|
|
|
473
492
|
`retry.streamStallMs` has no Settings Center row; edit it in `settings.yaml`.
|
|
@@ -517,6 +536,10 @@ Label to config path mapping:
|
|
|
517
536
|
| TUI mode | `terminal.tuiMode` (`regular` or `fullscreen`, restart required) |
|
|
518
537
|
| Fullscreen scrollbar | `terminal.fullscreenScrollbar` (`hidden`, `auto`, or `always`, restart required) |
|
|
519
538
|
| Smooth streaming | `terminal.smoothStreaming` (`off`, `auto`, or `on`, live) |
|
|
539
|
+
| Desktop notifications | `terminal.notify` |
|
|
540
|
+
| Turn-end watchdog | `watchdog.enabled` |
|
|
541
|
+
| Watchdog target | `watchdog.target` (blank clears the key) |
|
|
542
|
+
| Watchdog cadence (tools) | `watchdog.cadenceToolCalls` (integer ≥ 1; blank clears the key) |
|
|
520
543
|
| Theme | `theme` |
|
|
521
544
|
| Runtime plugins | `runtimePlugins` |
|
|
522
545
|
| Clio commit provenance | `attribution.gitCommits` (`enabled` or `disabled`, live) |
|
|
@@ -555,6 +578,15 @@ These are saved defaults, not a live control surface. See [Live routing vs saved
|
|
|
555
578
|
|
|
556
579
|
### Safety and worker policy
|
|
557
580
|
|
|
581
|
+
`workers.rosters.<name>.members` defines council membership beside
|
|
582
|
+
`workers.profiles`. Every member accepts `label`, `target`, and the optional
|
|
583
|
+
keys `model`, `thinking`, and `color`. Labels must match
|
|
584
|
+
`[a-z][a-z0-9_-]{0,31}` and must be unique inside the roster. A roster contains
|
|
585
|
+
two to five members. Colors accept a theme token such as `accent`, `success`,
|
|
586
|
+
or `reason`, or a six-digit hexadecimal value such as `#5ba8ff`. Unknown roster
|
|
587
|
+
and member keys are rejected during configuration load. The existing settings
|
|
588
|
+
watcher validates and publishes roster changes with every other hot reload.
|
|
589
|
+
|
|
558
590
|
| Key | Default | Validation | When it applies |
|
|
559
591
|
| --- | --- | --- | --- |
|
|
560
592
|
| `autonomy` | `auto-edit` | `read-only`, `suggest`, `auto-edit`, `full-auto` | immediately |
|
|
@@ -564,8 +596,13 @@ These are saved defaults, not a live control surface. See [Live routing vs saved
|
|
|
564
596
|
| `workers.maxRetries` | `2` | integer ≥ 0 | next dispatch |
|
|
565
597
|
| `workers.resilienceCooldownMs` | `15000` | integer ≥ 0 | next dispatch |
|
|
566
598
|
| `workers.profiles` | `{}` | map of profile name to a target/model/thinking choice | next dispatch |
|
|
599
|
+
| `workers.rosters` | `{}` | map of roster name to 2 to 5 council members | next dispatch |
|
|
567
600
|
| `workers.agentBindings` | `{}` | map of agent id to a key present in `workers.profiles` | next dispatch |
|
|
568
601
|
| `skills.trustProjectCompatRoots` | `false` | boolean | restart |
|
|
602
|
+
| `library.catalog` | `null` | string or null | immediately |
|
|
603
|
+
| `library.remote` | `null` | string or null | immediately |
|
|
604
|
+
| `library.confirmedRemote` | `null` | string or null | immediately |
|
|
605
|
+
| `library.sync` | `false` | boolean | immediately |
|
|
569
606
|
|
|
570
607
|
### Git commit provenance
|
|
571
608
|
|
|
@@ -623,6 +660,34 @@ Generic provider and transport errors are classified by transient retry rules, i
|
|
|
623
660
|
| `memory.intervention.maxTokens` | `400` | integer ≥ 1 | next turn |
|
|
624
661
|
| `memory.intervention.timeoutMs` | `180000` | integer ≥ 1 | next turn |
|
|
625
662
|
|
|
663
|
+
### Turn-end watchdog
|
|
664
|
+
|
|
665
|
+
| Key | Default | Validation | When it applies |
|
|
666
|
+
| --- | --- | --- | --- |
|
|
667
|
+
| `watchdog.enabled` | `false` | boolean | immediately |
|
|
668
|
+
| `watchdog.target` | unset | non-empty target id | immediately |
|
|
669
|
+
| `watchdog.cadenceToolCalls` | unset | integer ≥ 1 | immediately |
|
|
670
|
+
|
|
671
|
+
The watchdog is off by default because it spends one worker run per mutating
|
|
672
|
+
turn. With `enabled: true`, a turn that changed the tree is handed to one
|
|
673
|
+
read-only `verifier` run briefed with the turn's coalesced diff and the task
|
|
674
|
+
board's current scope. Its blockers become one transcript notice naming the
|
|
675
|
+
count and the first three failed checks, and nothing else: it never follows up,
|
|
676
|
+
never queues a turn, and never mutates. A passing report emits nothing at all. A
|
|
677
|
+
turn with no file mutations never fires it.
|
|
678
|
+
|
|
679
|
+
`watchdog.target` routes the run at a named target, which is how a cheap local
|
|
680
|
+
model reviews turns run on a subscription route; unset, the run takes the
|
|
681
|
+
session's active target. `watchdog.cadenceToolCalls: N` additionally fires the
|
|
682
|
+
watchdog after every N tool calls inside a turn, with the same diff-and-scope
|
|
683
|
+
briefing, so mid-turn scope drift is visible before the turn ends. At most one
|
|
684
|
+
watchdog run is in flight at a time; a trigger that arrives while one is running
|
|
685
|
+
is dropped and counted rather than queued. Headless and ACP runs never fire the
|
|
686
|
+
watchdog regardless of the setting, because neither has an operator reading a
|
|
687
|
+
transcript. The block has its own Settings Center section under EXPERIENCE ›
|
|
688
|
+
Watchdog; clearing the target or the cadence row removes that key from
|
|
689
|
+
`settings.yaml` rather than writing an empty value.
|
|
690
|
+
|
|
626
691
|
### Delegation
|
|
627
692
|
|
|
628
693
|
| Key | Default | Validation | When it applies |
|
|
@@ -645,10 +710,22 @@ Generic provider and transport errors are classified by transient retry rules, i
|
|
|
645
710
|
| `terminal.tuiMode` | `regular` | `regular`, `fullscreen` | restart |
|
|
646
711
|
| `terminal.fullscreenScrollbar` | `auto` | `hidden`, `auto`, `always` | restart |
|
|
647
712
|
| `terminal.smoothStreaming` | `off` | `off`, `auto`, `on` | immediately |
|
|
713
|
+
| `terminal.notify` | `false` | boolean | immediately |
|
|
648
714
|
| `modelSelector.favorites` | `[]` | list of strings | immediately |
|
|
649
715
|
| `modelSelector.recentLimit` | `12` | integer ≥ 1 | immediately |
|
|
650
716
|
| `keybindings` | `{}` | map of binding id to a key string or list of them | restart |
|
|
651
717
|
|
|
718
|
+
`terminal.notify` turns on a content-free desktop notification for the three
|
|
719
|
+
moments an operator is waiting: a turn ends, a detached fleet batch settles, and
|
|
720
|
+
a worker permission or `ask_user` request parks. The payload is fixed. The title
|
|
721
|
+
is always `clio-coder` and the body comes from a closed vocabulary (`turn
|
|
722
|
+
finished`, `batch <shortId> settled`, `approval needed`), so no prompt text, file
|
|
723
|
+
path, or model output ever leaves the process in a notification. Clio emits OSC
|
|
724
|
+
777 by default and OSC 9 on iTerm2, Windows Terminal, and ConEmu, never both for
|
|
725
|
+
one event. Headless, ACP, and non-TTY runs never emit one regardless of the
|
|
726
|
+
setting. The knob has a Settings Center row under EXPERIENCE › Terminal,
|
|
727
|
+
labeled `Desktop notifications`.
|
|
728
|
+
|
|
652
729
|
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
730
|
|
|
654
731
|
### Structural and catalog keys
|
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.7).
|
|
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.7).
|
|
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.7).
|
|
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.7).
|
|
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
|