@iowarp/clio-coder 0.3.8 → 0.4.0
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 +102 -0
- package/NOTICE +33 -0
- package/README.md +12 -3
- package/dist/{acp-U67UHUK2.js → acp-G5WJBNCT.js} +13 -12
- package/dist/{agents-YU6SGALZ.js → agents-FMV2Q5G4.js} +41 -36
- package/dist/assets/codewiki.json +1 -1
- package/dist/{auth-5ZPJOIVG.js → auth-3IDSJEIK.js} +18 -18
- package/dist/{builtins-C6JMZVV6.js → builtins-XCZWXSC7.js} +5 -5
- package/dist/{chunk-IFBNV6H6.js → chunk-2ANTL7MR.js} +3 -3
- package/dist/{chunk-5FR74PWO.js → chunk-2JDWVJND.js} +2 -2
- package/dist/{chunk-XWSF374K.js → chunk-2OQE55CK.js} +3 -3
- package/dist/{chunk-5H3GB5BO.js → chunk-32KWKNSF.js} +8 -384
- package/dist/{chunk-KTYTFRMB.js → chunk-36EJLSQQ.js} +34 -36
- package/dist/{chunk-FHJEP5SW.js → chunk-3BT2XMV4.js} +19 -13
- package/dist/chunk-3DPEIQKN.js +113 -0
- package/dist/{chunk-GU2UIAFZ.js → chunk-3URVFKWK.js} +7 -7
- package/dist/{chunk-WEH5XRJQ.js → chunk-3XML7CDN.js} +3 -3
- package/dist/chunk-42FMPA75.js +101 -0
- package/dist/{chunk-A2NJGIB3.js → chunk-5LXZXPKX.js} +2 -2
- package/dist/{chunk-VCBR6CU7.js → chunk-5PSMVOLM.js} +2 -2
- package/dist/{chunk-NMPKI6XL.js → chunk-6DB53AJS.js} +203 -25
- package/dist/{chunk-3BINW3FP.js → chunk-76ONBSIA.js} +2 -2
- package/dist/{chunk-26LEYJZH.js → chunk-7MCTRUCE.js} +2 -2
- package/dist/{chunk-TYPGUK6W.js → chunk-AB44T6BB.js} +111 -5
- package/dist/{chunk-K4XHGFR5.js → chunk-B7OBL7PK.js} +317 -721
- package/dist/{chunk-B5CSFE7B.js → chunk-BBVJUZHB.js} +2 -2
- package/dist/{chunk-EQ63NRB7.js → chunk-BBVYXMFO.js} +2 -2
- package/dist/{chunk-ZVJ5BLO2.js → chunk-BKFJHQCA.js} +154 -16
- package/dist/chunk-BKFM6EJV.js +462 -0
- package/dist/chunk-BMS5RKQY.js +27 -0
- package/dist/{chunk-ZNLWCMVZ.js → chunk-BPKCPIL7.js} +2 -2
- package/dist/{chunk-TLQJPP24.js → chunk-BUMFYQFY.js} +1394 -1349
- package/dist/{chunk-BNAZZHFG.js → chunk-BYP5D4HI.js} +1 -1
- package/dist/chunk-C2LTL2W6.js +2447 -0
- package/dist/{chunk-ME6CCNFO.js → chunk-CODPRO7Q.js} +8 -8
- package/dist/{chunk-E77JEWSD.js → chunk-CTJ4RNAA.js} +7 -37
- package/dist/{chunk-ODFEOB4F.js → chunk-CY6FY24N.js} +26 -8
- package/dist/{chunk-7RFXX52T.js → chunk-DQITNCXG.js} +642 -172
- package/dist/{chunk-TTHACPOM.js → chunk-DYJP44XW.js} +578 -117
- package/dist/{chunk-2HFZQUHL.js → chunk-F4CKPOEQ.js} +18 -8
- package/dist/{chunk-DGSYXYMX.js → chunk-FEFIFZTL.js} +3 -3
- package/dist/{chunk-GWS3VEIW.js → chunk-FWDFM5ZU.js} +24 -3
- package/dist/{chunk-MV3K5QF2.js → chunk-GCSMB2KY.js} +2 -2
- package/dist/chunk-GKF55TAZ.js +391 -0
- package/dist/{chunk-VWZOAB7K.js → chunk-GR5G2PVF.js} +9 -8
- package/dist/{chunk-4DGYLA73.js → chunk-GXNLGKAB.js} +80 -9
- package/dist/chunk-HHV2GANA.js +88 -0
- package/dist/{chunk-IIZWH4XA.js → chunk-HI63TFOG.js} +5 -4
- package/dist/{chunk-WLFILSD5.js → chunk-HJJTYUHX.js} +113 -83
- package/dist/{chunk-TT36MB5S.js → chunk-HLW2MRKE.js} +3 -1
- package/dist/{chunk-PMDBGQSJ.js → chunk-HWHKMHUA.js} +7 -7
- package/dist/chunk-HZHHCK24.js +1631 -0
- package/dist/{chunk-WSB3FPX7.js → chunk-I5VEOC6I.js} +39 -143
- package/dist/chunk-IBEBSCYA.js +564 -0
- package/dist/chunk-IQ7KR472.js +362 -0
- package/dist/{chunk-A3WNZD3P.js → chunk-J4W7KFM7.js} +949 -972
- package/dist/{chunk-TB5666IT.js → chunk-JDG2WCRO.js} +5 -5
- package/dist/{chunk-N22QMJKY.js → chunk-K5C3NCBD.js} +4 -4
- package/dist/{chunk-CGKSTWHD.js → chunk-K6BSR66V.js} +2 -1
- package/dist/{chunk-5C3AQNDW.js → chunk-KFZI4NIL.js} +216 -38
- package/dist/chunk-KMVISBZR.js +132 -0
- package/dist/{chunk-WXY7KU3G.js → chunk-LDQ2ZF2M.js} +2 -2
- package/dist/{chunk-XN3L4EYL.js → chunk-LQ3DZAMX.js} +3 -3
- package/dist/{chunk-U6MBIEMB.js → chunk-LY4S7GJC.js} +173 -144
- package/dist/{chunk-4SPRNWDE.js → chunk-MLKNTWH2.js} +19 -19
- package/dist/{chunk-MVVUPGPW.js → chunk-MXHC5QYU.js} +6 -6
- package/dist/chunk-NEKRRTYW.js +56 -0
- package/dist/{chunk-SPULKLCF.js → chunk-NHCZP4K7.js} +3 -3
- package/dist/chunk-NHLBIGRH.js +1506 -0
- package/dist/chunk-NQQH3YT7.js +302 -0
- package/dist/chunk-NYS75XW5.js +15 -0
- package/dist/{chunk-GN57SG4G.js → chunk-O4XIVISU.js} +10 -8
- package/dist/{chunk-EMYUUSFG.js → chunk-O6TL7WWY.js} +6 -6
- package/dist/chunk-OQBA45DZ.js +97 -0
- package/dist/{chunk-LU7P4LHA.js → chunk-P3FOHJT4.js} +2 -2
- package/dist/chunk-PMZCIOCJ.js +25 -0
- package/dist/{chunk-I4HZDVNP.js → chunk-PQEFIJ36.js} +2 -2
- package/dist/{chunk-J3YUBZWY.js → chunk-QBJA7R7N.js} +62 -6
- package/dist/chunk-QDC3K2U3.js +262 -0
- package/dist/{chunk-2HEJ2F35.js → chunk-QLFS5GO2.js} +22 -10
- package/dist/{chunk-7RGZWPB6.js → chunk-QLL7ILRG.js} +95 -32
- package/dist/{chunk-YS5VLNH5.js → chunk-QREDIESB.js} +6 -6
- package/dist/chunk-QSNYB6ZV.js +195 -0
- package/dist/{chunk-GOXNB3AO.js → chunk-RAPCMZL4.js} +75 -4
- package/dist/chunk-RKKLTLYB.js +45 -0
- package/dist/{chunk-P43ETTHK.js → chunk-SJ5ZKQ4S.js} +2 -2
- package/dist/{chunk-GPIEI3LY.js → chunk-SP2RXXYO.js} +6 -54
- package/dist/chunk-SUCTJL45.js +45 -0
- package/dist/{chunk-DYIM5TJT.js → chunk-SUW5DORT.js} +263 -7
- package/dist/chunk-T56WDKA5.js +183 -0
- package/dist/chunk-TVHHYFHE.js +255 -0
- package/dist/{chunk-FJ3H4MN5.js → chunk-TZ3SGWZZ.js} +3 -3
- package/dist/{chunk-MXKJU4JB.js → chunk-U77AMWDL.js} +91 -10
- package/dist/{chunk-5DHKRSMQ.js → chunk-ULC6OTWO.js} +11 -7
- package/dist/{chunk-RWSI4YD7.js → chunk-UM7N4G5A.js} +33 -12
- package/dist/{chunk-FCSXB6T2.js → chunk-UOSL25KY.js} +14 -2
- package/dist/{chunk-IGWKHNIQ.js → chunk-UXMFQ54G.js} +44 -37
- package/dist/{chunk-HFSBBKSQ.js → chunk-V5DHCITQ.js} +171 -3
- package/dist/{chunk-5WIGXA4T.js → chunk-VAZSBTKF.js} +111 -4
- package/dist/{chunk-VHN4MY6O.js → chunk-VEO4AP2K.js} +2 -2
- package/dist/{chunk-IJ7RPIYJ.js → chunk-VFA6GDY5.js} +65 -4
- package/dist/{chunk-PT7HYKEM.js → chunk-VO2LKSTM.js} +2 -2
- package/dist/chunk-VO67MWHC.js +75 -0
- package/dist/{chunk-XK56QHLX.js → chunk-VPKWYKEY.js} +19 -5
- package/dist/{chunk-TANS5ZJS.js → chunk-VYMXRQI6.js} +36 -22
- package/dist/{chunk-WWCZ5F23.js → chunk-W5VSYASO.js} +77 -16
- package/dist/{chunk-WNIJTQQK.js → chunk-WZR7K7ZX.js} +72 -116
- package/dist/{chunk-5Q2VVUKB.js → chunk-X3YGUTOB.js} +4 -4
- package/dist/chunk-X75E3D2N.js +686 -0
- package/dist/{chunk-VAWNZU7Z.js → chunk-YDFRH54B.js} +4 -4
- package/dist/chunk-YJX4SHTD.js +40 -0
- package/dist/{chunk-ZI647VB5.js → chunk-YPI3QQCF.js} +2 -2
- package/dist/chunk-Z2RR6MAK.js +127 -0
- package/dist/{chunk-FBVTI2TJ.js → chunk-Z4TXYIEG.js} +12 -131
- package/dist/cli/index.js +47 -36
- package/dist/{clio-QVTYJ57A.js → clio-2JXHBBY5.js} +7 -7
- package/dist/{code-nav-FGGFIE7L.js → code-nav-3YYRMYNF.js} +8 -8
- package/dist/{compile-cache-CVJMMODC.js → compile-cache-7FPE6PS3.js} +3 -3
- package/dist/{components-ZFA3SAER.js → components-RYZV4JGP.js} +5 -5
- package/dist/{config-LW5IJFQN.js → config-QZPCMYSO.js} +99 -63
- package/dist/{configure-7XIZCOU4.js → configure-TEGEBYCA.js} +23 -22
- package/dist/{context-Y6Y7QPR6.js → context-AV7OEZ4D.js} +12 -12
- package/dist/{context-L3WL3X7K.js → context-E6H5RNMC.js} +56 -47
- package/dist/{context-N52ZA626.js → context-GSXUE4CT.js} +29 -27
- package/dist/{context-clear-MBQRLSDQ.js → context-clear-SHIBYK6T.js} +55 -46
- package/dist/{context-index-HVMFQHK3.js → context-index-HNG3MOME.js} +2 -2
- package/dist/{context-working-set-GS6DSO7F.js → context-working-set-5ZGKPGZQ.js} +13 -13
- package/dist/{dispatch-runner-22ZCNOM3.js → dispatch-runner-EFMJT4LD.js} +93 -64
- package/dist/{docs-7LQ23DLM.js → docs-23KQS3XK.js} +5 -5
- package/dist/doctor-QOA5FNY5.js +313 -0
- package/dist/{eval-BEC2WHDA.js → eval-TFBYQH4H.js} +2032 -156
- package/dist/eval-inventory-SXH7PDKX.js +316 -0
- package/dist/{evidence-REJUMSKM.js → evidence-ERGESKGN.js} +203 -48
- package/dist/{evolve-PY5ZBA5K.js → evolve-VDXTSYCJ.js} +52 -43
- package/dist/{extensions-HVKU65YU.js → extensions-7BGBHN57.js} +13 -7
- package/dist/{fleet-7WZEWRFA.js → fleet-2RRVDF2V.js} +228 -108
- package/dist/{fleet-commands-UVHWM76J.js → fleet-commands-VJ726XIA.js} +11 -11
- package/dist/fleet-decisions-EPAPM3XJ.js +157 -0
- package/dist/{fleet-graph-6ULH7PES.js → fleet-graph-JF5QOATM.js} +18 -15
- package/dist/fleet-inspect-VLY4S7QM.js +442 -0
- package/dist/{fleet-preflight-J53T6CCE.js → fleet-preflight-AIZUEJOY.js} +5 -5
- package/dist/{fleet-validate-72PC4SLA.js → fleet-validate-AJRPDMDV.js} +22 -19
- package/dist/fleet-verify-JFEL2L3H.js +175 -0
- package/dist/fleet-view-ZCON35AG.js +102 -0
- package/dist/{init-OG3TPGQG.js → init-DN2WWLFE.js} +72 -62
- package/dist/install-XGLBQY5E.js +13 -0
- package/dist/interop-OZBKXAYL.js +114 -0
- package/dist/{library-CNTMPLRF.js → library-YWZG7IMW.js} +21 -18
- package/dist/{memory-6IS7F275.js → memory-I4C4HMLW.js} +54 -45
- package/dist/{models-ENRJDA5W.js → models-CEYXJBO6.js} +33 -30
- package/dist/{monitor-XLDVO7TN.js → monitor-NZ6GCI3P.js} +59 -52
- package/dist/{orchestrator-6KSPYRHA.js → orchestrator-GCGQ4N5I.js} +7827 -7328
- package/dist/panes-HMABYVO4.js +58 -0
- package/dist/panes-KY6W3V2E.js +103 -0
- package/dist/{paths-DBXMZMDU.js → paths-II4K7DNR.js} +5 -5
- package/dist/{reset-RZ4ER727.js → reset-DQ6FGCSH.js} +13 -11
- package/dist/resources-BB3MVJMD.js +111 -0
- package/dist/{run-Y2CNK5RU.js → run-H2GQDUER.js} +119 -87
- package/dist/{share-A55GYP6Z.js → share-GTJN6A5O.js} +20 -17
- package/dist/{skills-ALC5J6AT.js → skills-L55TEW6R.js} +33 -24
- package/dist/{skills-eval-JPBEBYQU.js → skills-eval-XVXPH2JI.js} +67 -56
- package/dist/skills-inventory-S4MXPJFV.js +126 -0
- package/dist/slash-commands-ZSGASKJC.js +77 -0
- package/dist/{steer-GGWFUJUD.js → steer-RZGSCY4R.js} +4 -4
- package/dist/{support-MIETYA5E.js → support-PKEUNNQL.js} +6 -6
- package/dist/{targets-VGNXIR3S.js → targets-NCPZ644J.js} +68 -40
- package/dist/{terminal-lease-WOBR64YA.js → terminal-lease-44SV3YCN.js} +6 -4
- package/dist/tools-DAF3DI3C.js +27 -0
- package/dist/{trace-PNCASAXC.js → trace-FYVW2MQA.js} +207 -10
- package/dist/tui-primitives-2AKXQNZK.js +13 -0
- package/dist/{uninstall-ZJF5H5ZN.js → uninstall-DW2PNOIC.js} +5 -5
- package/dist/{upgrade-FUSUAGHR.js → upgrade-3XPP6OQL.js} +27 -24
- package/dist/{usage-N4MKVHKD.js → usage-3NLHGTU2.js} +114 -62
- package/dist/{verifiers-YAWOJ3H2.js → verifiers-SSQONKRT.js} +172 -13
- package/dist/{verify-LTDHYBGY.js → verify-3U6J7FZI.js} +10 -10
- package/dist/{web-fetch-2YHJ3KTG.js → web-fetch-S7RR6GZ7.js} +3 -3
- package/dist/{wiki-generate-6M7GHTBJ.js → wiki-generate-CEHYGPGQ.js} +75 -65
- package/dist/with-panes-MKB46MPQ.js +782 -0
- package/dist/worker/entry.js +106 -75
- package/docs/README.md +3 -2
- package/docs/acp.md +24 -3
- package/docs/alcf-provider.md +1 -1
- package/docs/architecture.md +2 -2
- package/docs/artifact-versions.md +9 -1
- package/docs/built-in-agents.md +1 -1
- package/docs/capacity-and-scheduling.md +62 -3
- package/docs/commands-and-modes.md +31 -2
- package/docs/configuration-and-targets.md +69 -12
- package/docs/context-engine.md +63 -4
- package/docs/development-pipeline.md +19 -0
- package/docs/dispatch-typed-intent.md +385 -0
- package/docs/documentation-coverage.md +5 -5
- package/docs/documentation-guide.md +1 -1
- package/docs/environment-variables.md +3 -0
- package/docs/eval-runner.md +262 -11
- package/docs/evals-internal.md +72 -2
- package/docs/evidence-and-memory.md +12 -11
- package/docs/evolution.md +1 -1
- package/docs/exit-codes-and-output.md +1 -1
- package/docs/extensions-and-sharing.md +27 -1
- package/docs/fleet-dispatch.md +25 -4
- package/docs/installation-and-lifecycle.md +15 -2
- package/docs/middleware-and-components.md +1 -1
- package/docs/model-catalog.md +10 -1
- package/docs/observability.md +55 -4
- package/docs/proactive-memory.md +127 -14
- package/docs/prompt-envelope-and-tools.md +19 -1
- package/docs/provider-adapter-cookbook.md +1 -1
- package/docs/release-cut-checklist.md +19 -3
- package/docs/safety-model.md +2 -2
- package/docs/scientific-validation.md +3 -3
- package/docs/session-lifecycle.md +1 -1
- package/docs/skills-marketplace.md +1 -1
- package/docs/tool-usage.md +18 -8
- package/docs/trace-store.md +1 -1
- package/docs/troubleshooting.md +88 -1
- package/docs/tui-design.md +1 -1
- package/docs/worker-dispatch-mechanics.md +1 -1
- package/package.json +5 -2
- package/src/cli/acp.ts +6 -2
- package/src/cli/agents.ts +1 -1
- package/src/cli/argv.ts +25 -0
- package/src/cli/config-inspect.ts +33 -6
- package/src/cli/config.ts +1 -1
- package/src/cli/configure.ts +23 -21
- package/src/cli/doctor-panes.ts +124 -0
- package/src/cli/doctor-state-size.ts +82 -0
- package/src/cli/doctor-toolchain.ts +57 -0
- package/src/cli/doctor.ts +22 -1
- package/src/cli/eval-inventory.ts +436 -0
- package/src/cli/eval.ts +93 -16
- package/src/cli/evidence-detail.ts +88 -0
- package/src/cli/evidence-inventory.ts +183 -0
- package/src/cli/evidence.ts +30 -5
- package/src/cli/extensions.ts +5 -1
- package/src/cli/fleet-decisions.ts +69 -0
- package/src/cli/fleet-inspect.ts +334 -0
- package/src/cli/fleet-verify.ts +133 -0
- package/src/cli/fleet-view.ts +810 -0
- package/src/cli/fleet.ts +179 -39
- package/src/cli/index.ts +14 -2
- package/src/cli/interop-inspect.ts +128 -0
- package/src/cli/interop.ts +34 -0
- package/src/cli/panes.ts +35 -0
- package/src/cli/reset.ts +5 -2
- package/src/cli/run.ts +58 -0
- package/src/cli/skills-inventory.ts +185 -0
- package/src/cli/skills.ts +16 -13
- package/src/cli/targets.ts +44 -13
- package/src/cli/tools.ts +321 -0
- package/src/cli/trace-inspect.ts +252 -0
- package/src/cli/trace.ts +85 -5
- package/src/cli/usage.ts +63 -14
- package/src/cli/verifiers-inspect.ts +347 -0
- package/src/cli/verifiers.ts +9 -0
- package/src/core/bus-events.ts +33 -1
- package/src/core/cache-telemetry.ts +42 -0
- package/src/core/config.ts +67 -0
- package/src/core/defaults.ts +124 -8
- package/src/core/endpoint-key.ts +27 -0
- package/src/core/residency-target-key.ts +25 -0
- package/src/core/response-schema.ts +80 -6
- package/src/core/theme-token-hex.ts +43 -0
- package/src/core/tool-names.ts +2 -1
- package/src/core/xdg.ts +1 -1
- package/src/domains/agents/fleets/build-review.md +0 -3
- package/src/domains/agents/fleets/build-test.md +0 -3
- package/src/domains/agents/result-contract-filesystem.ts +32 -0
- package/src/domains/agents/result-contract.ts +164 -35
- package/src/domains/config/classify.ts +6 -0
- package/src/domains/context/codewiki/coordinator.ts +12 -4
- package/src/domains/dispatch/admission-error.ts +9 -0
- package/src/domains/dispatch/admission.ts +52 -14
- package/src/domains/dispatch/capacity-lease.ts +118 -9
- package/src/domains/dispatch/contract.ts +11 -0
- package/src/domains/dispatch/council-topology.ts +398 -0
- package/src/domains/dispatch/execution-plan.ts +44 -4
- package/src/domains/dispatch/extension.ts +378 -82
- package/src/domains/dispatch/fleet-node-prompt.ts +62 -0
- package/src/domains/dispatch/fleet-plan.ts +7 -2
- package/src/domains/dispatch/fleet-run.ts +87 -4
- package/src/domains/dispatch/gate-decisions.ts +11 -1
- package/src/domains/dispatch/gate-role-prompts.ts +9 -0
- package/src/domains/dispatch/gate-topology.ts +289 -0
- package/src/domains/dispatch/heartbeat.ts +32 -8
- package/src/domains/dispatch/index.ts +22 -0
- package/src/domains/dispatch/intent-compatibility.ts +330 -0
- package/src/domains/dispatch/intent.ts +85 -1
- package/src/domains/dispatch/orphan-recovery.ts +5 -0
- package/src/domains/dispatch/reservation-store.ts +139 -11
- package/src/domains/dispatch/run-event-journal-bridge.ts +149 -0
- package/src/domains/dispatch/run-event-journal.ts +598 -0
- package/src/domains/dispatch/state.ts +49 -1
- package/src/domains/dispatch/types.ts +13 -0
- package/src/domains/dispatch/validation.ts +33 -8
- package/src/domains/dispatch/worker-spawn.ts +25 -11
- package/src/domains/dispatch/write-boundary-enforcer.ts +20 -3
- package/src/domains/dispatch/write-boundary.ts +62 -1
- package/src/domains/eval/artifacts/store.ts +62 -0
- package/src/domains/eval/compare/behavioral.ts +224 -0
- package/src/domains/eval/compare/compare.ts +342 -2
- package/src/domains/eval/compare/envelope.ts +128 -0
- package/src/domains/eval/compare/gates.ts +24 -6
- package/src/domains/eval/compare/thresholds.ts +30 -3
- package/src/domains/eval/execution-provenance.ts +240 -0
- package/src/domains/eval/inventory.ts +113 -0
- package/src/domains/eval/metrics/aggregate.ts +136 -0
- package/src/domains/eval/metrics/call-ledger-stream.ts +112 -0
- package/src/domains/eval/metrics/tracked.ts +413 -0
- package/src/domains/eval/provenance.ts +117 -0
- package/src/domains/eval/reports/comparison.ts +128 -0
- package/src/domains/eval/reports/junit.ts +17 -3
- package/src/domains/eval/reports/markdown.ts +3 -3
- package/src/domains/eval/reports/text.ts +14 -0
- package/src/domains/eval/run-compare.ts +20 -0
- package/src/domains/eval/runners/clio-run.ts +127 -0
- package/src/domains/eval/runners/external-command.ts +28 -3
- package/src/domains/eval/schema/adapter.ts +111 -0
- package/src/domains/eval/schema/artifact.ts +20 -0
- package/src/domains/eval/schema/behavioral-metrics.ts +204 -0
- package/src/domains/eval/schema/behavioral.ts +520 -0
- package/src/domains/eval/schema/execution-envelope.ts +194 -0
- package/src/domains/eval/schema/serving.ts +105 -0
- package/src/domains/eval/schema/suite.ts +38 -8
- package/src/domains/eval/schema/validate.ts +58 -3
- package/src/domains/eval/schema/verdict.ts +237 -0
- package/src/domains/eval/suites/resolve.ts +2 -0
- package/src/domains/eval/suites/run.ts +264 -33
- package/src/domains/eval/verifiers/command.ts +2 -1
- package/src/domains/eval/workspaces/temp-copy.ts +145 -13
- package/src/domains/evidence/build.ts +2 -13
- package/src/domains/evidence/eval.ts +2 -12
- package/src/domains/evidence/findings-markdown.ts +33 -0
- package/src/domains/evidence/run-trust.ts +7 -113
- package/src/domains/evidence/store.ts +6 -0
- package/src/domains/evidence/trust-projection.ts +2 -2
- package/src/domains/extensions/compatibility.ts +285 -0
- package/src/domains/extensions/discovery.ts +38 -3
- package/src/domains/extensions/resources.ts +1 -1
- package/src/domains/extensions/state.ts +12 -3
- package/src/domains/extensions/types.ts +2 -0
- package/src/domains/lifecycle/doctor.ts +69 -1
- package/src/domains/memory/index.ts +14 -1
- package/src/domains/memory/task-bank-promotion.ts +64 -0
- package/src/domains/memory/task-memory-policy.ts +82 -17
- package/src/domains/memory/task-memory-spend.ts +131 -0
- package/src/domains/memory/task-memory-status.ts +7 -0
- package/src/domains/memory/task-memory-telemetry.ts +3 -0
- package/src/domains/middleware/index.ts +1 -0
- package/src/domains/middleware/memory-intervention.ts +97 -21
- package/src/domains/middleware/memory-step-endpoint.ts +71 -0
- package/src/domains/mux/contract.ts +434 -0
- package/src/domains/mux/detect.ts +158 -0
- package/src/domains/mux/extension.ts +47 -0
- package/src/domains/mux/index.ts +96 -0
- package/src/domains/mux/manifest.ts +6 -0
- package/src/domains/mux/operations.ts +164 -0
- package/src/domains/mux/pane-registry.ts +90 -0
- package/src/domains/mux/protocol.ts +49 -0
- package/src/domains/mux/socket-client.ts +816 -0
- package/src/domains/mux/types.ts +222 -0
- package/src/domains/mux/viewer-command.ts +59 -0
- package/src/domains/mux/yazi/assets/init.lua +2 -0
- package/src/domains/mux/yazi/assets/plugins/git.yazi/LICENSE +21 -0
- package/src/domains/mux/yazi/assets/plugins/git.yazi/README.md +78 -0
- package/src/domains/mux/yazi/assets/plugins/git.yazi/main.lua +255 -0
- package/src/domains/mux/yazi/assets/plugins/git.yazi/types.lua +12 -0
- package/src/domains/mux/yazi/assets/yazi.toml +17 -0
- package/src/domains/mux/yazi/event-stream.ts +180 -0
- package/src/domains/mux/yazi/profile.ts +299 -0
- package/src/domains/mux/yazi/session.ts +228 -0
- package/src/domains/mux/yazi/theme.ts +30 -0
- package/src/domains/observability/background-memory-usage.ts +140 -0
- package/src/domains/observability/cost.ts +22 -1
- package/src/domains/observability/index.ts +9 -0
- package/src/domains/observability/out-of-turn-usage.ts +51 -2
- package/src/domains/observability/trace-store.ts +234 -2
- package/src/domains/prompts/compiler.ts +100 -13
- package/src/domains/providers/endpoint-capacity.ts +228 -0
- package/src/domains/providers/endpoint-slots-store.ts +189 -0
- package/src/domains/providers/extension.ts +20 -3
- package/src/domains/providers/index.ts +32 -0
- package/src/domains/providers/model-runtime-capabilities.ts +32 -0
- package/src/domains/providers/models/local-models/clio-local-coding-targets.yaml +243 -1
- package/src/domains/providers/runtime-resolution.ts +8 -1
- package/src/domains/providers/runtimes/boot-manifest.ts +1 -0
- package/src/domains/providers/runtimes/builtins.ts +2 -0
- package/src/domains/providers/runtimes/common/probe-helpers.ts +31 -9
- package/src/domains/providers/runtimes/local-native/llamacpp-anthropic.ts +1 -1
- package/src/domains/providers/runtimes/local-native/llamacpp-completion.ts +1 -1
- package/src/domains/providers/runtimes/local-native/llamacpp-embed.ts +1 -1
- package/src/domains/providers/runtimes/local-native/llamacpp-rerank.ts +1 -1
- package/src/domains/providers/runtimes/local-native/llamacpp.ts +4 -1
- package/src/domains/providers/runtimes/local-native/lmstudio.ts +4 -1
- package/src/domains/providers/runtimes/local-native/ollama-native.ts +6 -1
- package/src/domains/providers/runtimes/protocol/litellm.ts +375 -0
- package/src/domains/providers/support.ts +1 -0
- package/src/domains/providers/target-model-cache.ts +124 -0
- package/src/domains/providers/types/capability-flags.ts +2 -0
- package/src/domains/providers/types/target-descriptor.ts +2 -0
- package/src/domains/resources/index.ts +3 -0
- package/src/domains/resources/prompts/loader.ts +95 -33
- package/src/domains/resources/skills/loader.ts +33 -0
- package/src/domains/safety/action-classifier.ts +6 -0
- package/src/domains/safety/call-target.ts +52 -0
- package/src/domains/safety/run-effects.ts +35 -4
- package/src/domains/session/context-accounting.ts +52 -1
- package/src/domains/session/context-ledger.ts +37 -13
- package/src/domains/session/index.ts +6 -0
- package/src/domains/session/prompt-cache.ts +140 -0
- package/src/domains/session/prompt-manifest.ts +42 -0
- package/src/domains/toolchain/archive.ts +175 -0
- package/src/domains/toolchain/contract.ts +28 -0
- package/src/domains/toolchain/extension.ts +47 -0
- package/src/domains/toolchain/index.ts +39 -0
- package/src/domains/toolchain/install.ts +327 -0
- package/src/domains/toolchain/manifest.ts +8 -0
- package/src/domains/toolchain/paths.ts +34 -0
- package/src/domains/toolchain/registry.ts +265 -0
- package/src/domains/toolchain/remove.ts +218 -0
- package/src/domains/toolchain/resolve.ts +182 -0
- package/src/domains/toolchain/types.ts +113 -0
- package/src/domains/toolchain/version.ts +88 -0
- package/src/engine/acp/adapter.ts +18 -3
- package/src/engine/acp/server.ts +413 -70
- package/src/engine/acp/types.ts +19 -1
- package/src/engine/ai.ts +35 -0
- package/src/engine/apis/llamacpp-residency.ts +55 -3
- package/src/engine/apis/lmstudio.ts +25 -5
- package/src/engine/apis/ollama-native.ts +2 -1
- package/src/engine/apis/openai-completions.ts +80 -17
- package/src/engine/apis/residency-lock.ts +3 -1
- package/src/engine/apis/residency.ts +34 -1
- package/src/engine/claude/sdk-module.ts +98 -0
- package/src/engine/claude/sdk-runtime.ts +19 -11
- package/src/engine/provider-payload.ts +29 -1
- package/src/engine/tui-primitives.ts +21 -0
- package/src/engine/tui.ts +1 -0
- package/src/engine/worker-runtime.ts +2 -13
- package/src/entry/boot-options.ts +2 -0
- package/src/entry/orchestrator.ts +279 -35
- package/src/entry/panes-activation.ts +31 -0
- package/src/entry/with-panes.ts +20 -0
- package/src/interactive/chat-loop-messages.ts +26 -7
- package/src/interactive/chat-loop.ts +318 -41
- package/src/interactive/chat-panel.ts +62 -8
- package/src/interactive/clio-editor.ts +45 -8
- package/src/interactive/context-activity.ts +5 -1
- package/src/interactive/context-meter.ts +1 -1
- package/src/interactive/context-overlay.ts +41 -10
- package/src/interactive/cost-overlay.ts +66 -6
- package/src/interactive/council-grid.ts +1 -3
- package/src/interactive/council.ts +11 -0
- package/src/interactive/dispatch-board.ts +102 -20
- package/src/interactive/fleet-run-preview.ts +41 -15
- package/src/interactive/handoff-round.ts +41 -2
- package/src/interactive/interactive-application.ts +177 -7
- package/src/interactive/interactive-input-runtime.ts +15 -0
- package/src/interactive/interactive-presentation.ts +4 -0
- package/src/interactive/interactive-shell.ts +20 -17
- package/src/interactive/interactive-slash-runtime.ts +63 -10
- package/src/interactive/memory-overlay.ts +9 -0
- package/src/interactive/modal-marker.ts +170 -0
- package/src/interactive/mutation-preview.ts +295 -0
- package/src/interactive/mux-bridge.ts +214 -0
- package/src/interactive/overlay-frame.ts +58 -2
- package/src/interactive/overlay-general-openers.ts +17 -0
- package/src/interactive/overlay-key-routing.ts +52 -3
- package/src/interactive/overlay-lifecycle.ts +56 -7
- package/src/interactive/overlay-model-selectors.ts +40 -3
- package/src/interactive/overlay-permission-lifecycle.ts +112 -24
- package/src/interactive/overlay-session-lifecycle.ts +73 -9
- package/src/interactive/overlay-transitions.ts +18 -4
- package/src/interactive/overlays/agents.ts +1 -0
- package/src/interactive/overlays/ask-user.ts +227 -49
- package/src/interactive/overlays/auth-dialog.ts +1 -0
- package/src/interactive/overlays/context-reset.ts +1 -0
- package/src/interactive/overlays/cwd-fallback.ts +1 -0
- package/src/interactive/overlays/decisions.ts +11 -11
- package/src/interactive/overlays/extensions.ts +1 -0
- package/src/interactive/overlays/fleet-run-approval.ts +1 -0
- package/src/interactive/overlays/handoff-review.ts +1 -0
- package/src/interactive/overlays/help-reference.ts +6 -0
- package/src/interactive/overlays/interop.ts +1 -0
- package/src/interactive/overlays/library-install-confirm.ts +1 -0
- package/src/interactive/overlays/library-tabs.ts +28 -0
- package/src/interactive/overlays/list-overlay.ts +10 -1
- package/src/interactive/overlays/message-picker.ts +1 -0
- package/src/interactive/overlays/model-scope.ts +86 -0
- package/src/interactive/overlays/model-selector.ts +1 -0
- package/src/interactive/overlays/prompts.ts +12 -1
- package/src/interactive/overlays/session-selector.ts +1 -0
- package/src/interactive/overlays/settings-sections.ts +30 -0
- package/src/interactive/overlays/settings.ts +614 -45
- package/src/interactive/overlays/side-question.ts +1 -0
- package/src/interactive/overlays/skills-hub.ts +3 -11
- package/src/interactive/overlays/tree-selector.ts +1 -0
- package/src/interactive/pane-policy.ts +46 -0
- package/src/interactive/panes-runtime.ts +292 -0
- package/src/interactive/permission-hint.ts +34 -2
- package/src/interactive/permission-overlay.ts +159 -9
- package/src/interactive/prewarm.ts +197 -0
- package/src/interactive/render-trace.ts +162 -15
- package/src/interactive/renderers/compaction-summary.ts +29 -0
- package/src/interactive/renderers/tool-execution.ts +4 -0
- package/src/interactive/renderers/worker-entry.ts +122 -14
- package/src/interactive/side-question.ts +58 -1
- package/src/interactive/slash-commands.ts +251 -15
- package/src/interactive/status/controller.ts +11 -0
- package/src/interactive/status/state-machine.ts +54 -2
- package/src/interactive/status/types.ts +7 -0
- package/src/interactive/tasks-overlay.ts +1 -0
- package/src/interactive/terminal-lease.ts +2 -0
- package/src/interactive/theme/tokens.ts +3 -14
- package/src/interactive/turn-context.ts +346 -33
- package/src/interactive/turn-persistence.ts +14 -4
- package/src/interactive/turn-prewarm.ts +364 -0
- package/src/interactive/turn-queues.ts +7 -4
- package/src/interactive/turn-runtime.ts +8 -1
- package/src/interactive/turn-state.ts +23 -0
- package/src/interactive/view/artifacts.ts +109 -1
- package/src/interactive/view/view-overlay.ts +29 -3
- package/src/interactive/watch-pane.ts +152 -0
- package/src/interactive/worker-progress.ts +7 -1
- package/src/interactive/worker-receipts.ts +19 -1
- package/src/interactive/worker-stream.ts +5 -0
- package/src/interactive/yazi-bridge.ts +444 -0
- package/src/tools/ask-user.ts +43 -2
- package/src/tools/bootstrap.ts +26 -2
- package/src/tools/builtin-tool-catalog.ts +15 -0
- package/src/tools/compete-worktrees.ts +83 -2
- package/src/tools/core-bootstrap.ts +2 -1
- package/src/tools/dispatch-admission.ts +14 -3
- package/src/tools/dispatch-arguments.ts +20 -20
- package/src/tools/dispatch-plan.ts +17 -9
- package/src/tools/dispatch-run-events.ts +134 -19
- package/src/tools/dispatch-runner.ts +29 -7
- package/src/tools/dispatch-scout.ts +1 -1
- package/src/tools/dispatch-types.ts +15 -3
- package/src/tools/dispatch.ts +1 -1
- package/src/tools/executables.ts +17 -14
- package/src/tools/observation.ts +54 -4
- package/src/tools/panes-surface.ts +38 -0
- package/src/tools/panes.ts +112 -0
- package/src/tools/policy.ts +10 -1
- package/src/tools/presentation.ts +1 -0
- package/src/tools/registry.ts +16 -0
- package/dist/chunk-AOCYTWAV.js +0 -449
- package/dist/chunk-HLE42MG7.js +0 -37
- package/dist/chunk-HWUFFB6L.js +0 -83
- package/dist/chunk-JOZYP4GM.js +0 -279
- package/dist/doctor-M7YEDGAE.js +0 -91
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { createRequire as __clioCreateRequire } from "node:module"; const require = __clioCreateRequire(import.meta.url);
|
|
2
2
|
import {
|
|
3
3
|
verifyTool
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-3URVFKWK.js";
|
|
5
5
|
import {
|
|
6
6
|
discoverDeclaredChecksAtRoot,
|
|
7
7
|
discoverDeclaredProjectEntriesAtRoot
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-YDFRH54B.js";
|
|
9
9
|
import {
|
|
10
10
|
parseTomlDocument,
|
|
11
11
|
tomlTableAt
|
|
@@ -16,14 +16,14 @@ import {
|
|
|
16
16
|
PROJECT_VERIFIER_CATALOG_VERSION,
|
|
17
17
|
compareCodepoints,
|
|
18
18
|
parseProjectVerifierCatalogText
|
|
19
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-5LXZXPKX.js";
|
|
20
20
|
import {
|
|
21
21
|
isVerificationScriptName
|
|
22
22
|
} from "./chunk-UL3WSD3F.js";
|
|
23
23
|
import {
|
|
24
24
|
SAFE_EXEC_DEFAULT_TIMEOUT_MS,
|
|
25
25
|
resolveSafeCwd
|
|
26
|
-
} from "./chunk-
|
|
26
|
+
} from "./chunk-BBVJUZHB.js";
|
|
27
27
|
import {
|
|
28
28
|
require_dist
|
|
29
29
|
} from "./chunk-APJ265NV.js";
|
|
@@ -960,4 +960,4 @@ export {
|
|
|
960
960
|
previewVerifierDraft,
|
|
961
961
|
runVerifierAuthoringWorkflow
|
|
962
962
|
};
|
|
963
|
-
//# sourceMappingURL=chunk-
|
|
963
|
+
//# sourceMappingURL=chunk-JDG2WCRO.js.map
|
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
import { createRequire as __clioCreateRequire } from "node:module"; const require = __clioCreateRequire(import.meta.url);
|
|
2
2
|
import {
|
|
3
3
|
receiptResponseModelIdObservationLabel
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-BUMFYQFY.js";
|
|
5
5
|
import {
|
|
6
6
|
adaptRunReceiptTrustStatus,
|
|
7
7
|
formatTrustAxes,
|
|
8
8
|
formatTrustSummary
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-B7OBL7PK.js";
|
|
10
10
|
import {
|
|
11
11
|
formatBudgetPolicy,
|
|
12
12
|
formatBudgetReasons,
|
|
13
13
|
formatBudgetRequest,
|
|
14
14
|
formatEffectiveBudget
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-J4W7KFM7.js";
|
|
16
16
|
import {
|
|
17
17
|
mentionsWorkerToolCallCap
|
|
18
18
|
} from "./chunk-4ZG3XFUR.js";
|
|
@@ -173,4 +173,4 @@ export {
|
|
|
173
173
|
workerTextLabel,
|
|
174
174
|
workerTextNonEvidenceNotices
|
|
175
175
|
};
|
|
176
|
-
//# sourceMappingURL=chunk-
|
|
176
|
+
//# sourceMappingURL=chunk-K5C3NCBD.js.map
|
|
@@ -27,6 +27,7 @@ var ToolNames = {
|
|
|
27
27
|
Steer: "steer",
|
|
28
28
|
Tasks: "tasks",
|
|
29
29
|
Ledger: "ledger",
|
|
30
|
+
Panes: "panes",
|
|
30
31
|
// RETRIEVE
|
|
31
32
|
WebFetch: "web_fetch",
|
|
32
33
|
// INTERACT
|
|
@@ -51,4 +52,4 @@ export {
|
|
|
51
52
|
ToolNames,
|
|
52
53
|
isBuiltinToolName
|
|
53
54
|
};
|
|
54
|
-
//# sourceMappingURL=chunk-
|
|
55
|
+
//# sourceMappingURL=chunk-K6BSR66V.js.map
|
|
@@ -568,6 +568,70 @@ init_esm_shims();
|
|
|
568
568
|
|
|
569
569
|
// src/interactive/overlay-frame.ts
|
|
570
570
|
init_esm_shims();
|
|
571
|
+
|
|
572
|
+
// src/interactive/modal-marker.ts
|
|
573
|
+
init_esm_shims();
|
|
574
|
+
var MODAL_MARKER_BASE_TITLE = "clio";
|
|
575
|
+
function formatModalMarkerTitle(stack) {
|
|
576
|
+
const top = stack.at(-1);
|
|
577
|
+
if (top === void 0) return MODAL_MARKER_BASE_TITLE;
|
|
578
|
+
const beneath = stack.length - 1;
|
|
579
|
+
return `${MODAL_MARKER_BASE_TITLE} [modal:${top}${beneath > 0 ? `+${beneath}` : ""}]`;
|
|
580
|
+
}
|
|
581
|
+
function createModalMarkerRegistry() {
|
|
582
|
+
const entries = [];
|
|
583
|
+
let sink = null;
|
|
584
|
+
let published = null;
|
|
585
|
+
function activeIds() {
|
|
586
|
+
return entries.filter((entry) => entry.active).map((entry) => entry.id);
|
|
587
|
+
}
|
|
588
|
+
function publish() {
|
|
589
|
+
if (sink === null) return;
|
|
590
|
+
const title = formatModalMarkerTitle(activeIds());
|
|
591
|
+
if (published === null && title === MODAL_MARKER_BASE_TITLE) return;
|
|
592
|
+
if (title === published) return;
|
|
593
|
+
published = title;
|
|
594
|
+
sink.setTitle(title);
|
|
595
|
+
}
|
|
596
|
+
function enter(id, nextSink) {
|
|
597
|
+
if (nextSink) sink = nextSink;
|
|
598
|
+
const entry = { id, active: true };
|
|
599
|
+
entries.push(entry);
|
|
600
|
+
publish();
|
|
601
|
+
let released = false;
|
|
602
|
+
return {
|
|
603
|
+
release() {
|
|
604
|
+
if (released) return;
|
|
605
|
+
released = true;
|
|
606
|
+
const index = entries.indexOf(entry);
|
|
607
|
+
if (index !== -1) entries.splice(index, 1);
|
|
608
|
+
publish();
|
|
609
|
+
},
|
|
610
|
+
setActive(active) {
|
|
611
|
+
if (released || entry.active === active) return;
|
|
612
|
+
entry.active = active;
|
|
613
|
+
publish();
|
|
614
|
+
},
|
|
615
|
+
raise() {
|
|
616
|
+
if (released) return;
|
|
617
|
+
entry.active = true;
|
|
618
|
+
const index = entries.indexOf(entry);
|
|
619
|
+
if (index !== -1 && index !== entries.length - 1) {
|
|
620
|
+
entries.splice(index, 1);
|
|
621
|
+
entries.push(entry);
|
|
622
|
+
}
|
|
623
|
+
publish();
|
|
624
|
+
}
|
|
625
|
+
};
|
|
626
|
+
}
|
|
627
|
+
return { enter, stack: () => activeIds() };
|
|
628
|
+
}
|
|
629
|
+
var registry = createModalMarkerRegistry();
|
|
630
|
+
function enterModal(id, sink) {
|
|
631
|
+
return registry.enter(id, sink);
|
|
632
|
+
}
|
|
633
|
+
|
|
634
|
+
// src/interactive/overlay-frame.ts
|
|
571
635
|
var DEFAULT_SELECT_THEME = selectListTheme(clioTheme());
|
|
572
636
|
var DEFAULT_SETTINGS_THEME = settingsListTheme(clioTheme());
|
|
573
637
|
var FocusBox = class extends Box {
|
|
@@ -800,10 +864,10 @@ var ClioOverlayFrame = class {
|
|
|
800
864
|
}
|
|
801
865
|
};
|
|
802
866
|
function showClioOverlayFrame(tui, child, options) {
|
|
803
|
-
const { title, footerHint, tone, width, visible, maxHeight, margin, ...overlayOptions } = options;
|
|
867
|
+
const { title, footerHint, tone, width, visible, maxHeight, margin, markerId, ...overlayOptions } = options;
|
|
804
868
|
const boxWidth = typeof width === "number" ? width : 0;
|
|
805
869
|
const frame2 = new ClioOverlayFrame(child, title, footerHint, boxWidth, frameAlignForAnchor(options.anchor), tone);
|
|
806
|
-
|
|
870
|
+
const handle = tui.showOverlay(frame2, {
|
|
807
871
|
...overlayOptions,
|
|
808
872
|
...margin !== void 0 ? { margin } : {},
|
|
809
873
|
width: "100%",
|
|
@@ -816,6 +880,32 @@ function showClioOverlayFrame(tui, child, options) {
|
|
|
816
880
|
return shown;
|
|
817
881
|
}
|
|
818
882
|
});
|
|
883
|
+
const marker = enterModal(markerId, modalMarkerSink(tui));
|
|
884
|
+
return {
|
|
885
|
+
hide() {
|
|
886
|
+
marker.release();
|
|
887
|
+
handle.hide();
|
|
888
|
+
},
|
|
889
|
+
setHidden(hidden) {
|
|
890
|
+
marker.setActive(!hidden);
|
|
891
|
+
handle.setHidden(hidden);
|
|
892
|
+
},
|
|
893
|
+
isHidden: () => handle.isHidden(),
|
|
894
|
+
focus() {
|
|
895
|
+
marker.raise();
|
|
896
|
+
handle.focus();
|
|
897
|
+
},
|
|
898
|
+
// A pure passthrough on purpose. The engine hands focus to the next
|
|
899
|
+
// visible capturing overlay, which is another modal, so the stack is
|
|
900
|
+
// unchanged; the surface that gives the keyboard back to the composer
|
|
901
|
+
// does it by hiding, which `setHidden` already reports.
|
|
902
|
+
unfocus: (unfocusOptions) => unfocusOptions ? handle.unfocus(unfocusOptions) : handle.unfocus(),
|
|
903
|
+
isFocused: () => handle.isFocused()
|
|
904
|
+
};
|
|
905
|
+
}
|
|
906
|
+
function modalMarkerSink(tui) {
|
|
907
|
+
const terminal = tui.terminal;
|
|
908
|
+
return typeof terminal?.setTitle === "function" ? terminal : null;
|
|
819
909
|
}
|
|
820
910
|
function resolveRowSize(value, termHeight) {
|
|
821
911
|
if (typeof value === "number") return Math.max(1, Math.floor(value));
|
|
@@ -827,9 +917,14 @@ function resolveRowSize(value, termHeight) {
|
|
|
827
917
|
|
|
828
918
|
// src/interactive/permission-hint.ts
|
|
829
919
|
init_esm_shims();
|
|
830
|
-
|
|
920
|
+
var MUTATION_PREVIEW_KEY = "v";
|
|
921
|
+
function permissionHintEntries(composerHasDraft = false, inspection = "none") {
|
|
831
922
|
return [
|
|
832
923
|
composerHasDraft ? { key: "Backspace", verb: "clear the draft to allow", short: "clear draft", critical: true } : { key: "Enter", verb: "allow once", short: "allow", critical: true },
|
|
924
|
+
...inspection === "none" ? [] : inspection === "open" ? [
|
|
925
|
+
{ key: "\u2191\u2193", verb: "scroll", critical: false },
|
|
926
|
+
{ key: MUTATION_PREVIEW_KEY, verb: "hide mutation", short: "hide", critical: false }
|
|
927
|
+
] : [{ key: MUTATION_PREVIEW_KEY, verb: "inspect mutation", short: "inspect", critical: false }],
|
|
833
928
|
{ key: "s", verb: "stop turn", short: "stop", critical: true },
|
|
834
929
|
// With a draft, deny and stop are the only immediate answers, so Esc
|
|
835
930
|
// outranks the narrowing that would otherwise drop it first.
|
|
@@ -841,6 +936,8 @@ function permissionHintEntries(composerHasDraft = false) {
|
|
|
841
936
|
var REVERSE_VIDEO_BLANK = `${String.fromCharCode(27)}[7m ${String.fromCharCode(27)}[0m`;
|
|
842
937
|
var EMPTY_PROMPT = "Ask Clio\u2026 / for commands";
|
|
843
938
|
var CONFIRM_PROMPT = "A parked call is waiting for your decision";
|
|
939
|
+
var PREPARING_PROMPT = "Clio has your prompt and is preparing the turn";
|
|
940
|
+
var COMPACTING_PROMPT = "Clio has your prompt and is compacting the context first";
|
|
844
941
|
var MIN_HINT_WIDTH = 60;
|
|
845
942
|
function hasScrollIndicator(line) {
|
|
846
943
|
const stripped = stripTerminalSequences(line);
|
|
@@ -870,7 +967,12 @@ function styledRailLabel(theme, chrome) {
|
|
|
870
967
|
}
|
|
871
968
|
function composerMode(chrome, text) {
|
|
872
969
|
if (chrome.isAwaitingApproval?.() ?? false) return "CONFIRM";
|
|
873
|
-
if (!(chrome.isStreaming?.() ?? false))
|
|
970
|
+
if (!(chrome.isStreaming?.() ?? false)) {
|
|
971
|
+
const preparation = chrome.getTurnPreparation?.() ?? "idle";
|
|
972
|
+
if (preparation === "compacting") return "COMPACTING";
|
|
973
|
+
if (preparation === "preparing") return "PREPARING";
|
|
974
|
+
return "MESSAGE";
|
|
975
|
+
}
|
|
874
976
|
const willSteer = chrome.willEnterSteer?.(text) ?? text.trim().length > 0;
|
|
875
977
|
return willSteer ? "STEER" : "FOLLOW-UP";
|
|
876
978
|
}
|
|
@@ -880,14 +982,20 @@ function lowerRailHint(theme, chrome) {
|
|
|
880
982
|
`${chrome.getSubmitKeyLabel?.() ?? "Enter"} send \xB7 ${chrome.getNewlineKeyLabel?.() ?? "Shift+Enter"} newline`
|
|
881
983
|
);
|
|
882
984
|
}
|
|
883
|
-
function confirmRailHint(theme, width, hasDraft) {
|
|
884
|
-
return theme.fg("warning", fitHintEntries(permissionHintEntries(hasDraft), Math.max(1, width - 3)));
|
|
985
|
+
function confirmRailHint(theme, width, hasDraft, inspection) {
|
|
986
|
+
return theme.fg("warning", fitHintEntries(permissionHintEntries(hasDraft, inspection), Math.max(1, width - 3)));
|
|
885
987
|
}
|
|
886
988
|
function modeToken(mode) {
|
|
887
|
-
if (mode === "STEER") return "action";
|
|
989
|
+
if (mode === "STEER" || mode === "PREPARING" || mode === "COMPACTING") return "action";
|
|
888
990
|
if (mode === "CONFIRM") return "warning";
|
|
889
991
|
return "accentDeep";
|
|
890
992
|
}
|
|
993
|
+
function emptyPromptFor(mode) {
|
|
994
|
+
if (mode === "CONFIRM") return CONFIRM_PROMPT;
|
|
995
|
+
if (mode === "PREPARING") return PREPARING_PROMPT;
|
|
996
|
+
if (mode === "COMPACTING") return COMPACTING_PROMPT;
|
|
997
|
+
return EMPTY_PROMPT;
|
|
998
|
+
}
|
|
891
999
|
function renderEmptyPrompt(line, width, theme, text = EMPTY_PROMPT) {
|
|
892
1000
|
const cursorAt = line.indexOf(REVERSE_VIDEO_BLANK);
|
|
893
1001
|
if (cursorAt < 0) return line;
|
|
@@ -931,12 +1039,12 @@ var ClioEditor = class extends Editor {
|
|
|
931
1039
|
});
|
|
932
1040
|
}
|
|
933
1041
|
if (text.length === 0 && lines[1]) {
|
|
934
|
-
lines[1] = renderEmptyPrompt(lines[1], safeWidth, theme, mode
|
|
1042
|
+
lines[1] = renderEmptyPrompt(lines[1], safeWidth, theme, emptyPromptFor(mode));
|
|
935
1043
|
}
|
|
936
1044
|
const bottomRail = findBottomRail(lines, safeWidth);
|
|
937
1045
|
if (bottomRail >= 0 && mode === "CONFIRM") {
|
|
938
1046
|
lines[bottomRail] = rule(theme, safeWidth, {
|
|
939
|
-
right: confirmRailHint(theme, safeWidth, text.length > 0),
|
|
1047
|
+
right: confirmRailHint(theme, safeWidth, text.length > 0, this.chrome.getPermissionInspection?.() ?? "none"),
|
|
940
1048
|
fillToken: "frameStrong",
|
|
941
1049
|
rightRaw: true,
|
|
942
1050
|
rightTail: theme.style("frameStrong", "\u2500", { bold: true })
|
|
@@ -977,10 +1085,49 @@ init_esm_shims();
|
|
|
977
1085
|
|
|
978
1086
|
// src/interactive/render-trace.ts
|
|
979
1087
|
init_esm_shims();
|
|
980
|
-
import { mkdirSync, writeFileSync } from "node:fs";
|
|
1088
|
+
import { mkdirSync, readdirSync, rmSync, writeFileSync } from "node:fs";
|
|
981
1089
|
import { appendFile } from "node:fs/promises";
|
|
982
|
-
import { dirname } from "node:path";
|
|
1090
|
+
import { dirname, join } from "node:path";
|
|
983
1091
|
var RENDER_TRACE_VERSION = 2;
|
|
1092
|
+
var INPUT_WEDGE_RING_CAPACITY = 256;
|
|
1093
|
+
var INPUT_WEDGE_DUMP_DIRNAME = "input-wedge";
|
|
1094
|
+
var INPUT_WEDGE_DUMP_RETAINED = 5;
|
|
1095
|
+
function createRing(capacity) {
|
|
1096
|
+
const slots = [];
|
|
1097
|
+
let next = 0;
|
|
1098
|
+
return {
|
|
1099
|
+
push(value) {
|
|
1100
|
+
if (slots.length < capacity) slots.push(value);
|
|
1101
|
+
else slots[next] = value;
|
|
1102
|
+
next = (next + 1) % capacity;
|
|
1103
|
+
},
|
|
1104
|
+
toArray() {
|
|
1105
|
+
if (slots.length < capacity) return [...slots];
|
|
1106
|
+
return [...slots.slice(next), ...slots.slice(0, next)];
|
|
1107
|
+
}
|
|
1108
|
+
};
|
|
1109
|
+
}
|
|
1110
|
+
function classifyInputWedge(inputIngress, frames) {
|
|
1111
|
+
const newest = [...inputIngress].reverse().find((record) => record.visualExpected) ?? inputIngress.at(-1);
|
|
1112
|
+
if (newest === void 0) return "no-input-recorded";
|
|
1113
|
+
return frames.some((frame2) => frame2.inputHighWater >= newest.inputSeq) ? "input-committed" : "input-not-committed";
|
|
1114
|
+
}
|
|
1115
|
+
function writeInputWedgeDump(stateDir, snapshot) {
|
|
1116
|
+
const directory = join(stateDir, INPUT_WEDGE_DUMP_DIRNAME);
|
|
1117
|
+
mkdirSync(directory, { recursive: true });
|
|
1118
|
+
const stamp = new Date(snapshot.atEpochMs).toISOString().replace(/[:.]/gu, "-");
|
|
1119
|
+
const path = join(directory, `${stamp}-${snapshot.pid}.json`);
|
|
1120
|
+
writeFileSync(path, `${JSON.stringify(snapshot, null, 2)}
|
|
1121
|
+
`, "utf8");
|
|
1122
|
+
try {
|
|
1123
|
+
const existing = readdirSync(directory).filter((name) => name.endsWith(".json")).sort();
|
|
1124
|
+
for (const name of existing.slice(0, Math.max(0, existing.length - INPUT_WEDGE_DUMP_RETAINED))) {
|
|
1125
|
+
rmSync(join(directory, name), { force: true });
|
|
1126
|
+
}
|
|
1127
|
+
} catch {
|
|
1128
|
+
}
|
|
1129
|
+
return path;
|
|
1130
|
+
}
|
|
984
1131
|
function createAsyncTraceWriter(path, options = {}) {
|
|
985
1132
|
const maxRecords = options.maxRecords ?? 4096;
|
|
986
1133
|
const batchRecords = options.batchRecords ?? 128;
|
|
@@ -1073,11 +1220,16 @@ function renderTracePath(env = process.env) {
|
|
|
1073
1220
|
return raw && raw.length > 0 ? raw : null;
|
|
1074
1221
|
}
|
|
1075
1222
|
function createRenderTrace(path, now = () => performance.now(), writerOptions = {}) {
|
|
1076
|
-
|
|
1077
|
-
|
|
1223
|
+
if (path !== null) {
|
|
1224
|
+
mkdirSync(dirname(path), { recursive: true });
|
|
1225
|
+
writeFileSync(path, "", "utf8");
|
|
1226
|
+
}
|
|
1078
1227
|
const openedAt = now();
|
|
1228
|
+
const openedAtEpochMs = Date.now();
|
|
1079
1229
|
const at = () => rounded(now() - openedAt);
|
|
1080
|
-
const writer = createAsyncTraceWriter(path, { ...writerOptions, recordTime: at });
|
|
1230
|
+
const writer = path === null ? null : createAsyncTraceWriter(path, { ...writerOptions, recordTime: at });
|
|
1231
|
+
const inputRing = createRing(INPUT_WEDGE_RING_CAPACITY);
|
|
1232
|
+
const frameRing = createRing(INPUT_WEDGE_RING_CAPACITY);
|
|
1081
1233
|
let frameSeq = 0;
|
|
1082
1234
|
let writeSeq = 0;
|
|
1083
1235
|
let eventSeq = 0;
|
|
@@ -1093,7 +1245,7 @@ function createRenderTrace(path, now = () => performance.now(), writerOptions =
|
|
|
1093
1245
|
let firstCommitDelivered = false;
|
|
1094
1246
|
const ranges = /* @__PURE__ */ new Map();
|
|
1095
1247
|
const pendingDrains = /* @__PURE__ */ new Map();
|
|
1096
|
-
writer
|
|
1248
|
+
writer?.enqueue({ type: "trace_start", version: RENDER_TRACE_VERSION, at: 0 });
|
|
1097
1249
|
const trace = {
|
|
1098
1250
|
recordPanelRender(metrics) {
|
|
1099
1251
|
pendingPanel = metrics;
|
|
@@ -1104,12 +1256,13 @@ function createRenderTrace(path, now = () => performance.now(), writerOptions =
|
|
|
1104
1256
|
},
|
|
1105
1257
|
recordVisibleEvent(fields) {
|
|
1106
1258
|
eventSeq += 1;
|
|
1259
|
+
if (writer === null) return eventSeq;
|
|
1107
1260
|
const key = `${generation}:${fields.kind}:${fields.contentIndex}`;
|
|
1108
1261
|
const previous = ranges.get(key) ?? { codeUnits: 0, graphemes: 0 };
|
|
1109
1262
|
const graphemes = graphemeCount(fields.delta);
|
|
1110
1263
|
const next = { codeUnits: previous.codeUnits + fields.delta.length, graphemes: previous.graphemes + graphemes };
|
|
1111
1264
|
ranges.set(key, next);
|
|
1112
|
-
writer
|
|
1265
|
+
writer?.enqueue({
|
|
1113
1266
|
type: "event_ingress",
|
|
1114
1267
|
version: RENDER_TRACE_VERSION,
|
|
1115
1268
|
eventSeq,
|
|
@@ -1127,7 +1280,7 @@ function createRenderTrace(path, now = () => performance.now(), writerOptions =
|
|
|
1127
1280
|
},
|
|
1128
1281
|
recordQueue(sequence, action) {
|
|
1129
1282
|
queueDepth = Math.max(0, queueDepth + (action === "admit" ? 1 : -1));
|
|
1130
|
-
writer
|
|
1283
|
+
writer?.enqueue({
|
|
1131
1284
|
type: "queue",
|
|
1132
1285
|
version: RENDER_TRACE_VERSION,
|
|
1133
1286
|
eventSeq: sequence,
|
|
@@ -1138,7 +1291,7 @@ function createRenderTrace(path, now = () => performance.now(), writerOptions =
|
|
|
1138
1291
|
},
|
|
1139
1292
|
recordPanelApplied(sequence) {
|
|
1140
1293
|
panelHighWater = Math.max(panelHighWater, sequence);
|
|
1141
|
-
writer
|
|
1294
|
+
writer?.enqueue({
|
|
1142
1295
|
type: "panel",
|
|
1143
1296
|
version: RENDER_TRACE_VERSION,
|
|
1144
1297
|
eventSeq: sequence,
|
|
@@ -1149,7 +1302,7 @@ function createRenderTrace(path, now = () => performance.now(), writerOptions =
|
|
|
1149
1302
|
recordInputIngress(action, bytes, visualExpected = action !== "no-visual-change") {
|
|
1150
1303
|
inputSeq += 1;
|
|
1151
1304
|
if (visualExpected) inputHighWater = inputSeq;
|
|
1152
|
-
|
|
1305
|
+
const record = {
|
|
1153
1306
|
type: "input_ingress",
|
|
1154
1307
|
version: RENDER_TRACE_VERSION,
|
|
1155
1308
|
inputSeq,
|
|
@@ -1157,7 +1310,9 @@ function createRenderTrace(path, now = () => performance.now(), writerOptions =
|
|
|
1157
1310
|
at: at(),
|
|
1158
1311
|
bytes,
|
|
1159
1312
|
visualExpected
|
|
1160
|
-
}
|
|
1313
|
+
};
|
|
1314
|
+
inputRing.push(record);
|
|
1315
|
+
writer?.enqueue(record);
|
|
1161
1316
|
return inputSeq;
|
|
1162
1317
|
},
|
|
1163
1318
|
beginFrame(fields) {
|
|
@@ -1205,8 +1360,9 @@ function createRenderTrace(path, now = () => performance.now(), writerOptions =
|
|
|
1205
1360
|
},
|
|
1206
1361
|
commits: frame2.commits
|
|
1207
1362
|
};
|
|
1208
|
-
writer
|
|
1363
|
+
writer?.enqueue(record);
|
|
1209
1364
|
if (frame2.commits.length > 0) {
|
|
1365
|
+
frameRing.push(record);
|
|
1210
1366
|
lastCommitAt = frame2.commits.at(-1)?.at ?? endAt;
|
|
1211
1367
|
if (!firstCommitDelivered) {
|
|
1212
1368
|
firstCommitDelivered = true;
|
|
@@ -1241,6 +1397,7 @@ function createRenderTrace(path, now = () => performance.now(), writerOptions =
|
|
|
1241
1397
|
backpressured: !fields.returned
|
|
1242
1398
|
};
|
|
1243
1399
|
currentFrame?.commits.push(commit);
|
|
1400
|
+
if (writer === null) return writeSeq;
|
|
1244
1401
|
writer.enqueue({ type: "terminal_write", version: RENDER_TRACE_VERSION, frameId, ...commit });
|
|
1245
1402
|
if (!fields.returned) pendingDrains.set(writeSeq, { frameId, at: commit.at });
|
|
1246
1403
|
return writeSeq;
|
|
@@ -1250,7 +1407,7 @@ function createRenderTrace(path, now = () => performance.now(), writerOptions =
|
|
|
1250
1407
|
if (!pending) return;
|
|
1251
1408
|
pendingDrains.delete(writeId);
|
|
1252
1409
|
const drainAt = at();
|
|
1253
|
-
writer
|
|
1410
|
+
writer?.enqueue({
|
|
1254
1411
|
type: "terminal_drain",
|
|
1255
1412
|
version: RENDER_TRACE_VERSION,
|
|
1256
1413
|
writeId,
|
|
@@ -1263,7 +1420,28 @@ function createRenderTrace(path, now = () => performance.now(), writerOptions =
|
|
|
1263
1420
|
onFirstFrameCommit(listener) {
|
|
1264
1421
|
firstCommitListener = listener;
|
|
1265
1422
|
},
|
|
1266
|
-
|
|
1423
|
+
snapshotInputWedge() {
|
|
1424
|
+
const inputIngress = inputRing.toArray();
|
|
1425
|
+
const frames = frameRing.toArray();
|
|
1426
|
+
const nowAt = at();
|
|
1427
|
+
const lastIngressAt = inputIngress.at(-1)?.at;
|
|
1428
|
+
const lastFrame = frames.at(-1);
|
|
1429
|
+
const lastFrameCommitAt = lastFrame?.commits.at(-1)?.at ?? lastFrame?.endAt;
|
|
1430
|
+
return {
|
|
1431
|
+
version: RENDER_TRACE_VERSION,
|
|
1432
|
+
capacity: INPUT_WEDGE_RING_CAPACITY,
|
|
1433
|
+
pid: process.pid,
|
|
1434
|
+
openedAtEpochMs,
|
|
1435
|
+
atEpochMs: Date.now(),
|
|
1436
|
+
at: nowAt,
|
|
1437
|
+
classification: classifyInputWedge(inputIngress, frames),
|
|
1438
|
+
msSinceLastInputIngress: lastIngressAt === void 0 ? null : rounded(nowAt - lastIngressAt),
|
|
1439
|
+
msSinceLastCommittedFrame: lastFrameCommitAt === void 0 ? null : rounded(nowAt - lastFrameCommitAt),
|
|
1440
|
+
inputIngress,
|
|
1441
|
+
frames
|
|
1442
|
+
};
|
|
1443
|
+
},
|
|
1444
|
+
close: () => writer?.close() ?? Promise.resolve()
|
|
1267
1445
|
};
|
|
1268
1446
|
return trace;
|
|
1269
1447
|
}
|
|
@@ -1490,20 +1668,18 @@ function createProcessInteractiveShell(options = {}) {
|
|
|
1490
1668
|
let restoreRoot = null;
|
|
1491
1669
|
let backpressure = null;
|
|
1492
1670
|
let observedBackpressure = false;
|
|
1493
|
-
|
|
1494
|
-
|
|
1495
|
-
|
|
1496
|
-
|
|
1497
|
-
|
|
1498
|
-
|
|
1499
|
-
|
|
1500
|
-
|
|
1501
|
-
|
|
1502
|
-
|
|
1503
|
-
|
|
1504
|
-
|
|
1505
|
-
}
|
|
1506
|
-
} else activeRenderTrace = null;
|
|
1671
|
+
let candidate = null;
|
|
1672
|
+
try {
|
|
1673
|
+
candidate = createRenderTrace(tracePath);
|
|
1674
|
+
restoreStdout = traceProcessStdout(candidate);
|
|
1675
|
+
activeRenderTrace = candidate;
|
|
1676
|
+
} catch {
|
|
1677
|
+
restoreStdout?.();
|
|
1678
|
+
restoreStdout = null;
|
|
1679
|
+
void candidate?.close().catch(() => {
|
|
1680
|
+
});
|
|
1681
|
+
activeRenderTrace = null;
|
|
1682
|
+
}
|
|
1507
1683
|
const trace = activeRenderTrace;
|
|
1508
1684
|
if (trace && options.onFirstFrameCommit) trace.onFirstFrameCommit(options.onFirstFrameCommit);
|
|
1509
1685
|
let firstFrameDelivered = false;
|
|
@@ -2187,8 +2363,10 @@ export {
|
|
|
2187
2363
|
formatRuntimeResolutionDiagnostic,
|
|
2188
2364
|
runtimeResolutionDiagnosticLine,
|
|
2189
2365
|
showClioOverlayFrame,
|
|
2366
|
+
MUTATION_PREVIEW_KEY,
|
|
2190
2367
|
permissionHintEntries,
|
|
2191
2368
|
ClioEditor,
|
|
2369
|
+
writeInputWedgeDump,
|
|
2192
2370
|
getActiveRenderTrace,
|
|
2193
2371
|
createProcessInteractiveShell,
|
|
2194
2372
|
validateKeybindings,
|
|
@@ -2198,4 +2376,4 @@ export {
|
|
|
2198
2376
|
formatPlatformKeybindingNotice,
|
|
2199
2377
|
createKeybindingManager
|
|
2200
2378
|
};
|
|
2201
|
-
//# sourceMappingURL=chunk-
|
|
2379
|
+
//# sourceMappingURL=chunk-KFZI4NIL.js.map
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
import { createRequire as __clioCreateRequire } from "node:module"; const require = __clioCreateRequire(import.meta.url);
|
|
2
|
+
import {
|
|
3
|
+
init_esm_shims
|
|
4
|
+
} from "./chunk-3R73A4XB.js";
|
|
5
|
+
|
|
6
|
+
// src/domains/eval/schema/suite.ts
|
|
7
|
+
init_esm_shims();
|
|
8
|
+
var EVAL_SUITE_V2_VERSION = 2;
|
|
9
|
+
var CANONICAL_METRICS = [
|
|
10
|
+
"tokens.input",
|
|
11
|
+
"tokens.output",
|
|
12
|
+
"tokens.total",
|
|
13
|
+
"tokens.cacheRead",
|
|
14
|
+
"tokens.cacheWrite",
|
|
15
|
+
// False when the runner observed no provider usage at all. The counts above
|
|
16
|
+
// are absent in that case rather than zero, so a gate on cost can require
|
|
17
|
+
// measurement instead of reading silence as free.
|
|
18
|
+
"tokens.measured",
|
|
19
|
+
"latency.wallMs",
|
|
20
|
+
"latency.modelMs",
|
|
21
|
+
"tools.totalCalls",
|
|
22
|
+
"tools.failed",
|
|
23
|
+
"tools.blocked",
|
|
24
|
+
"tools.read.distinctPaths",
|
|
25
|
+
"tools.read.outsideAllowed",
|
|
26
|
+
"tools.read.decoyHits",
|
|
27
|
+
"tools.calls.dispatch",
|
|
28
|
+
"tools.blocked.bash",
|
|
29
|
+
"claims.unsupported",
|
|
30
|
+
"completion.reported",
|
|
31
|
+
"context.indexedFiles",
|
|
32
|
+
"context.coverage",
|
|
33
|
+
"context.structuralHash",
|
|
34
|
+
"context.digestTokens",
|
|
35
|
+
"context.clioMdBytes",
|
|
36
|
+
"context.initMode",
|
|
37
|
+
"context.initParserOutcome",
|
|
38
|
+
"context.initFallback",
|
|
39
|
+
"context.initPromptBytes",
|
|
40
|
+
"context.initOutputBytes",
|
|
41
|
+
"context.initTargetId",
|
|
42
|
+
"context.initModelId",
|
|
43
|
+
"context.initRuntimeId",
|
|
44
|
+
"context.initRuntimeKind",
|
|
45
|
+
"context.initThinkingLevel",
|
|
46
|
+
"context.initStructuredOutputMode",
|
|
47
|
+
"verifier.exitCode",
|
|
48
|
+
"patch.bytes",
|
|
49
|
+
"patch.filesChanged",
|
|
50
|
+
"patch.testFilesModified",
|
|
51
|
+
"result.pass",
|
|
52
|
+
"result.failureClass",
|
|
53
|
+
// Receipt-derived evidence metrics. Sourced only from the sealed receipt
|
|
54
|
+
// (never dispatch/monitor prose labels); absent receipt leaves them
|
|
55
|
+
// unresolved so gates fail closed.
|
|
56
|
+
"evidence.verification",
|
|
57
|
+
"evidence.firstPassSuccess",
|
|
58
|
+
"cost.usd",
|
|
59
|
+
// Invariant checks: what Clio promised about its own machinery, read from
|
|
60
|
+
// the journal the item's run left behind. These are true or false about
|
|
61
|
+
// Clio and say nothing about whether the model solved the task. A check
|
|
62
|
+
// the runner could not compute is absent, so a threshold on it fails
|
|
63
|
+
// closed rather than reading silence as compliance.
|
|
64
|
+
"receipt.count",
|
|
65
|
+
"receipt.rootCount",
|
|
66
|
+
"receipt.sealed",
|
|
67
|
+
"receipt.integrityValid",
|
|
68
|
+
"receipt.outcomeMatchesExit",
|
|
69
|
+
"ledger.formatVersion",
|
|
70
|
+
"ledger.toolPairsUnmatched",
|
|
71
|
+
"ledger.assistantBetweenCallAndResult",
|
|
72
|
+
"ledger.sessionCount",
|
|
73
|
+
"continuity.compactionSummaryPresent",
|
|
74
|
+
"continuity.answeredFromPreCompaction",
|
|
75
|
+
"continuity.turnsAfterCompaction",
|
|
76
|
+
"process.attestedWorkers",
|
|
77
|
+
"process.orphanedChildren",
|
|
78
|
+
// Write-boundary enforcement, read from the verdicts the run sealed. The
|
|
79
|
+
// promise is not that nothing escaped the allowlist; it is that Clio saw what
|
|
80
|
+
// did, named it, rolled back what git could restore, and left a signed record
|
|
81
|
+
// against the baseline it measured.
|
|
82
|
+
"boundary.verdictCount",
|
|
83
|
+
"boundary.verdictSealed",
|
|
84
|
+
"boundary.violationsDetected",
|
|
85
|
+
"boundary.violationsRolledBack",
|
|
86
|
+
"boundary.rollbackIncomplete",
|
|
87
|
+
// Bounded loops. The declared bound is the promise: attempts never exceed it,
|
|
88
|
+
// every attempt after the first seals its own recovery receipt, and a bound
|
|
89
|
+
// spent without a pass reports loop_bound_exhausted rather than a false green.
|
|
90
|
+
// `loop.resolved` is the model's result, measured beside them and never a gate.
|
|
91
|
+
"loop.count",
|
|
92
|
+
"loop.attemptsSpent",
|
|
93
|
+
"loop.repairsSpent",
|
|
94
|
+
"loop.resolved",
|
|
95
|
+
"loop.reasonExhausted",
|
|
96
|
+
// The terminal reason is one Clio declares and agrees with `resolved`. This
|
|
97
|
+
// is the promise that holds across every ending, including the ones that
|
|
98
|
+
// never spend the bound, so it is the one a suite can gate unconditionally.
|
|
99
|
+
"loop.reasonDeclared",
|
|
100
|
+
"loop.unneededNodes",
|
|
101
|
+
"loop.skippedNodes",
|
|
102
|
+
"loop.receiptsMatchRepairs",
|
|
103
|
+
"receipt.recoveryCount",
|
|
104
|
+
// Receipt-derived accounting. A different observation from `tokens.*` above,
|
|
105
|
+
// with a different provenance: what Clio sealed and authenticated, rather
|
|
106
|
+
// than what a provider was watched reporting on the runner's own stdout. A
|
|
107
|
+
// surface that publishes no usage stream (`clio-coder fleet run --json` drains its
|
|
108
|
+
// workers' events) still seals the cost, so this is how a bounded loop's cost
|
|
109
|
+
// is read. The two are never merged, and this family never enters
|
|
110
|
+
// `summary.tokens`. Counts appear only beside `measured: true`; an
|
|
111
|
+
// incomplete or unauthenticated receipt set reports false and no counts.
|
|
112
|
+
"receiptUsage.measured",
|
|
113
|
+
"receiptUsage.receiptCount",
|
|
114
|
+
"receiptUsage.totalTokens",
|
|
115
|
+
"receiptUsage.costUsd",
|
|
116
|
+
"stream.messageUpdateCount",
|
|
117
|
+
"stream.usageDoubleCounted",
|
|
118
|
+
"stream.segmentUsageMatchesMessages",
|
|
119
|
+
// The task outcome: whether the model solved the workload. Its exit code is
|
|
120
|
+
// recorded beside the machinery invariants so a failed final result can still
|
|
121
|
+
// say "the grader failed and Clio behaved" rather than conflating the two.
|
|
122
|
+
"task.exitCode",
|
|
123
|
+
"task.solved"
|
|
124
|
+
];
|
|
125
|
+
var CANONICAL_METRIC_PREFIXES = ["tools.calls.", "tools.blocked."];
|
|
126
|
+
|
|
127
|
+
export {
|
|
128
|
+
EVAL_SUITE_V2_VERSION,
|
|
129
|
+
CANONICAL_METRICS,
|
|
130
|
+
CANONICAL_METRIC_PREFIXES
|
|
131
|
+
};
|
|
132
|
+
//# sourceMappingURL=chunk-KMVISBZR.js.map
|
|
@@ -4,7 +4,7 @@ import {
|
|
|
4
4
|
} from "./chunk-ZGVHUX3M.js";
|
|
5
5
|
import {
|
|
6
6
|
BusChannels
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-HLW2MRKE.js";
|
|
8
8
|
import {
|
|
9
9
|
init_esm_shims
|
|
10
10
|
} from "./chunk-3R73A4XB.js";
|
|
@@ -226,4 +226,4 @@ export {
|
|
|
226
226
|
runWithBudget,
|
|
227
227
|
getTerminationCoordinator
|
|
228
228
|
};
|
|
229
|
-
//# sourceMappingURL=chunk-
|
|
229
|
+
//# sourceMappingURL=chunk-LDQ2ZF2M.js.map
|
|
@@ -4,10 +4,10 @@ import {
|
|
|
4
4
|
} from "./chunk-5B2AEOW5.js";
|
|
5
5
|
import {
|
|
6
6
|
ToolNames
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-K6BSR66V.js";
|
|
8
8
|
import {
|
|
9
9
|
StringEnum
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-UOSL25KY.js";
|
|
11
11
|
import {
|
|
12
12
|
init_esm_shims
|
|
13
13
|
} from "./chunk-3R73A4XB.js";
|
|
@@ -43,4 +43,4 @@ export {
|
|
|
43
43
|
CODE_NAV_MAX_LIMIT,
|
|
44
44
|
codeNavToolSurface
|
|
45
45
|
};
|
|
46
|
-
//# sourceMappingURL=chunk-
|
|
46
|
+
//# sourceMappingURL=chunk-LQ3DZAMX.js.map
|