@iowarp/clio-coder 0.4.7 → 0.4.9
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/.claude-plugin/marketplace.json +1 -1
- package/CHANGELOG.md +111 -0
- package/CONTRIBUTING.md +83 -74
- package/README.md +69 -47
- package/dist/{acp-W3Y3TRHD.js → acp-ZWZCPS2A.js} +15 -15
- package/dist/{agents-J4ICNLQ3.js → agents-LYSOWZUE.js} +61 -59
- package/dist/assets/codewiki.json +1 -1
- package/dist/assets/web-notices/@hono__node-server-LICENSE +21 -0
- package/dist/assets/web-notices/hono-LICENSE +21 -0
- package/dist/{auth-X2UJUMOC.js → auth-WBQGKWQ5.js} +27 -27
- package/dist/background-BUMOBAQN.js +37 -0
- package/dist/{builtins-XLXWWSRF.js → builtins-ODRJOEDI.js} +7 -7
- package/dist/{chunk-C3G5PNUO.js → chunk-2DRRZ57Q.js} +36 -27
- package/dist/chunk-2JBZYUPY.js +105 -0
- package/dist/chunk-2KUBKL63.js +336 -0
- package/dist/chunk-2VBWFXYE.js +198 -0
- package/dist/{chunk-XZ6UFQ52.js → chunk-2X2R3UTH.js} +25 -15
- package/dist/{chunk-M6Z2V6YU.js → chunk-37LW32LZ.js} +5 -5
- package/dist/{chunk-6LRLOJHQ.js → chunk-3AND2EFU.js} +11 -62
- package/dist/{chunk-FQOOGXBH.js → chunk-3RDHGNU7.js} +101 -33
- package/dist/{chunk-D2T66PDV.js → chunk-3SUDBGEI.js} +41 -208
- package/dist/{chunk-5AJPUR72.js → chunk-3TQN67I2.js} +9 -9
- package/dist/{chunk-LBFQMYS3.js → chunk-3U4BL2EV.js} +5 -3
- package/dist/{chunk-UFYNOQK4.js → chunk-3UQADNG2.js} +7 -7
- package/dist/{chunk-V4ZKOKRB.js → chunk-434LRQ6Z.js} +61 -53
- package/dist/{chunk-NO7J45X6.js → chunk-4ATBOFRP.js} +713 -218
- package/dist/{chunk-ECOMVOHP.js → chunk-4DNL43EZ.js} +3 -3
- package/dist/{chunk-WT5TRMO4.js → chunk-4HFJKRGZ.js} +255 -82
- package/dist/{chunk-5A6XR3RJ.js → chunk-555E2WVV.js} +16 -2
- package/dist/{chunk-WURGVOZJ.js → chunk-5RTEFNBP.js} +18 -14
- package/dist/{config-YXARKGTX.js → chunk-64XJW7NT.js} +24 -268
- package/dist/{chunk-24S3DN22.js → chunk-6TKOFFGE.js} +4 -4
- package/dist/{chunk-YKRJTYNP.js → chunk-6UJ7RDI7.js} +4 -4
- package/dist/{chunk-MZNWZUJM.js → chunk-7FBCRWVT.js} +288 -288
- package/dist/{chunk-UA6W4XFJ.js → chunk-7JSOSVLP.js} +2 -2
- package/dist/chunk-7N3OLLSL.js +637 -0
- package/dist/{chunk-KKEYGFX4.js → chunk-7QQRPB2E.js} +11 -11
- package/dist/{chunk-N37QC5FV.js → chunk-A6DULIMH.js} +21 -9
- package/dist/{fleet-decisions-S3PTZV2D.js → chunk-AB3QXXBC.js} +5 -41
- package/dist/chunk-ACCECAH4.js +49 -0
- package/dist/{chunk-CP3HIR5H.js → chunk-AM6CEP2K.js} +20 -19
- package/dist/chunk-AUHVBIDW.js +19 -0
- package/dist/{chunk-BQQ5MXUC.js → chunk-AY4XE6GN.js} +19 -13
- package/dist/{chunk-ISNCCX42.js → chunk-BBA2TAWV.js} +10 -9
- package/dist/chunk-BFPHMSK7.js +169 -0
- package/dist/{chunk-LVFANMOH.js → chunk-BHJMMCXS.js} +4 -4
- package/dist/{chunk-DO7M3LSX.js → chunk-BMNVVKEW.js} +40 -93
- package/dist/{chunk-VTYHHQ57.js → chunk-CTGZCEI6.js} +2 -2
- package/dist/{chunk-RTLNFZMD.js → chunk-DIAJYJYG.js} +3 -3
- package/dist/chunk-EHZRAB4U.js +63 -0
- package/dist/{chunk-KS7ETA3P.js → chunk-EM2DIQAJ.js} +3 -3
- package/dist/{chunk-MNQN3X6Y.js → chunk-ETF4ROKH.js} +5 -5
- package/dist/{chunk-WN552PKN.js → chunk-F2YM3JY4.js} +744 -1134
- package/dist/{chunk-7EEGBKV4.js → chunk-FEBQWHJT.js} +24 -19
- package/dist/{chunk-4QKAITQT.js → chunk-FPS4R2RN.js} +74 -10
- package/dist/chunk-G5R53COU.js +68 -0
- package/dist/chunk-GHXGMFQ5.js +40 -0
- package/dist/{chunk-GFQ7P2UF.js → chunk-GJDRMBDI.js} +10 -10
- package/dist/{chunk-LZBMXNLP.js → chunk-GM4TY6VN.js} +43 -6
- package/dist/{chunk-NCCQ6DVS.js → chunk-GREYLTZ5.js} +8 -8
- package/dist/{chunk-HOX4YZ2K.js → chunk-H2WSCZZT.js} +19 -3
- package/dist/{chunk-3LXJOICS.js → chunk-H6IUCY6Q.js} +2 -2
- package/dist/{chunk-BO4XV5VX.js → chunk-H72DCH3E.js} +95 -206
- package/dist/{chunk-SEDI5K5B.js → chunk-H7TXJR23.js} +20 -20
- package/dist/chunk-HBJQQTKM.js +40 -0
- package/dist/chunk-HCVKSGNZ.js +990 -0
- package/dist/chunk-HVCAY2FH.js +67 -0
- package/dist/{chunk-34XHRVKG.js → chunk-I47EJPYL.js} +3 -3
- package/dist/{chunk-4N2RZ4TO.js → chunk-IALGWTLO.js} +3 -3
- package/dist/{chunk-IQCNVLO6.js → chunk-IALZJE37.js} +10 -7
- package/dist/{chunk-DLIYANB7.js → chunk-IC7JXLOM.js} +16 -11
- package/dist/{chunk-G4LGUTOE.js → chunk-IOSVTTCD.js} +5 -5
- package/dist/{chunk-DBREN25X.js → chunk-IPTPMLA6.js} +8 -3
- package/dist/{chunk-V552WL53.js → chunk-IZZI3SKQ.js} +3 -67
- package/dist/{chunk-TN5FW4XY.js → chunk-JIYWMQZ5.js} +12 -9
- package/dist/{chunk-T7QQBNLH.js → chunk-JKU34ACI.js} +10 -8
- package/dist/chunk-JOBN2YQQ.js +176 -0
- package/dist/chunk-JOL2QRLE.js +152 -0
- package/dist/{chunk-GXIWHXDB.js → chunk-JTR3VSV3.js} +3 -3
- package/dist/{chunk-T334FW2H.js → chunk-JU6MAMRJ.js} +7 -7
- package/dist/chunk-JURMQWVJ.js +15 -0
- package/dist/{chunk-CULVKYTK.js → chunk-K3XN4LZ4.js} +5 -5
- package/dist/{chunk-3T4DXWP6.js → chunk-KIVFXGBM.js} +27 -7
- package/dist/chunk-KKRXONXG.js +43 -0
- package/dist/{chunk-YPRSNUTC.js → chunk-KOAHT3N2.js} +2 -2
- package/dist/chunk-KP5BPXR3.js +73 -0
- package/dist/{chunk-UA3W4FGC.js → chunk-KRJQG47M.js} +6 -6
- package/dist/{chunk-GI5RRMAH.js → chunk-KW6OJ7IY.js} +19 -21
- package/dist/{chunk-A46ILRS2.js → chunk-L3NBWLSN.js} +4 -4
- package/dist/{chunk-MZHXENL7.js → chunk-L4RUTLRL.js} +8 -8
- package/dist/{chunk-P5SC4DLJ.js → chunk-LGTVWPRN.js} +2 -2
- package/dist/{chunk-65BGHOUR.js → chunk-LSQW6KZO.js} +5 -5
- package/dist/{chunk-TZHN5ITX.js → chunk-LWJYOHT3.js} +8 -8
- package/dist/{chunk-U3TPUXOQ.js → chunk-M6YLF66Z.js} +74 -40
- package/dist/chunk-MJ4QEJVT.js +185 -0
- package/dist/{chunk-T4TY5GG3.js → chunk-MO65K5CH.js} +5 -5
- package/dist/{chunk-TZ6UVP2H.js → chunk-MTOZEQHL.js} +8 -8
- package/dist/chunk-MZDPF35R.js +45 -0
- package/dist/{chunk-P4DL2LM5.js → chunk-MZKYVIWW.js} +8 -119
- package/dist/{chunk-KAFMW7WM.js → chunk-NBPA5QM6.js} +2 -2
- package/dist/{chunk-EUEXGXXR.js → chunk-NMBEW4PP.js} +5 -5
- package/dist/{chunk-SELG4SUR.js → chunk-NPLLK3HO.js} +72 -89
- package/dist/{chunk-VCRVEDUC.js → chunk-NSYGPIVW.js} +5 -5
- package/dist/{context-7HJEWTTP.js → chunk-NXTV5OI5.js} +36 -90
- package/dist/{chunk-IMOD2YPV.js → chunk-NYDG4QP4.js} +9 -19
- package/dist/{chunk-6CA2BHOR.js → chunk-OA2GDACN.js} +5 -5
- package/dist/{chunk-A67NR5AT.js → chunk-PJI57EC6.js} +14 -11
- package/dist/{chunk-IJMW64DX.js → chunk-PJJBUGMR.js} +50 -50
- package/dist/{chunk-CPXGJI2A.js → chunk-PNJE7JPS.js} +20 -5
- package/dist/chunk-PP23PZEV.js +1347 -0
- package/dist/chunk-PPIFDSBK.js +409 -0
- package/dist/{chunk-T52TPHYC.js → chunk-PTFISXQO.js} +8 -7
- package/dist/{chunk-C6GEXX4L.js → chunk-QB33Z5S7.js} +5 -5
- package/dist/{chunk-VMATUZB6.js → chunk-QGNII5VC.js} +10 -10
- package/dist/{chunk-TLTGZTXI.js → chunk-QI72X67S.js} +104 -27
- package/dist/chunk-QKHZZFKH.js +98 -0
- package/dist/{chunk-PFLOULP3.js → chunk-RDKX2PME.js} +4 -4
- package/dist/{chunk-B5ZTR6KZ.js → chunk-RL7LJYN4.js} +1 -1
- package/dist/chunk-RPMNIFRY.js +65 -0
- package/dist/{chunk-L3Z5ANCV.js → chunk-RQROVOV3.js} +13 -11
- package/dist/{chunk-6YHPAAZR.js → chunk-S34A7BSP.js} +3 -3
- package/dist/{chunk-5ZSZEYJK.js → chunk-SJETVJHX.js} +2 -2
- package/dist/{chunk-77CZRFTE.js → chunk-SJMNU4ZS.js} +2 -2
- package/dist/chunk-SLLG2G44.js +85 -0
- package/dist/{chunk-GVZFCJHE.js → chunk-SQAZN2V3.js} +48 -22
- package/dist/{chunk-2O2LVQQK.js → chunk-SQBT46OF.js} +2 -2
- package/dist/{chunk-ZGIGW4ZG.js → chunk-TCUOGIL2.js} +5 -5
- package/dist/{chunk-DACXIVVF.js → chunk-TIWPKCVO.js} +5 -5
- package/dist/{chunk-5CMARGPF.js → chunk-UIU7MGZ3.js} +11 -2
- package/dist/chunk-USBBEKHW.js +177 -0
- package/dist/{chunk-WLHX3MM5.js → chunk-V4XJWDHR.js} +21 -11
- package/dist/{chunk-MBJO5VNZ.js → chunk-VPWGADBG.js} +33 -33
- package/dist/{chunk-UUQ5G6EZ.js → chunk-VWFCAK34.js} +6 -6
- package/dist/{chunk-6CB2IL4N.js → chunk-W5RM7YAH.js} +1 -1
- package/dist/{chunk-4MFBBY2Z.js → chunk-W72LLZAV.js} +3 -3
- package/dist/{chunk-4UHVS5T7.js → chunk-WGRDABW7.js} +8 -8
- package/dist/{chunk-XR3XJN2M.js → chunk-WWRV5RJI.js} +4 -4
- package/dist/{chunk-24TOGHPO.js → chunk-X6FLVUM5.js} +4 -4
- package/dist/{chunk-6YA46L5A.js → chunk-XFLSL7BT.js} +2 -2
- package/dist/{chunk-QKWL7SYE.js → chunk-XJZEDCNT.js} +50 -39
- package/dist/{chunk-UWD3JD5X.js → chunk-XLLEL3K7.js} +10 -10
- package/dist/{chunk-2GPGAE5W.js → chunk-XNIZBOFV.js} +15 -1
- package/dist/chunk-XNZWWDC3.js +686 -0
- package/dist/{chunk-WBVKKTUT.js → chunk-XRECG65F.js} +2 -2
- package/dist/chunk-XTQ7MEJG.js +457 -0
- package/dist/{chunk-GEVQNST4.js → chunk-XZWSP67B.js} +2 -2
- package/dist/{chunk-WB7POC6M.js → chunk-Y3M2T5RO.js} +6 -6
- package/dist/{chunk-RXFPB32E.js → chunk-YJCCMYYT.js} +2 -2
- package/dist/{chunk-EUZRMP4Y.js → chunk-YPQOPFP7.js} +20 -20
- package/dist/{chunk-USZA7GWL.js → chunk-YQ3GFEUY.js} +2 -2
- package/dist/{chunk-BAU36233.js → chunk-YQYINEJI.js} +9 -9
- package/dist/{chunk-CE64C5K5.js → chunk-ZF6CV4WZ.js} +1356 -235
- package/dist/{chunk-3XE4NRLF.js → chunk-ZKJU55MX.js} +4 -2
- package/dist/{chunk-IZYTT3CD.js → chunk-ZKQ63XZ5.js} +16 -39
- package/dist/{chunk-6TAATXXH.js → chunk-ZKVMDNAN.js} +7 -7
- package/dist/chunk-ZST3FRCV.js +132 -0
- package/dist/cli/index.js +50 -38
- package/dist/{clio-L2P7S2R2.js → clio-JUDCLNHC.js} +11 -11
- package/dist/clio-context-tools-FT672MNZ.js +136 -0
- package/dist/{code-nav-B5LNX4KU.js → code-nav-7OVCTP2Z.js} +39 -37
- package/dist/{components-63MMQKUT.js → components-OZXZMDWU.js} +11 -11
- package/dist/config-P3ZQVF63.js +275 -0
- package/dist/config-graph-GKAOBAS5.js +160 -0
- package/dist/{configure-LMVQJ46J.js → configure-25LRYZJG.js} +56 -55
- package/dist/context-72VQV7JX.js +73 -0
- package/dist/{context-YG2LZDYZ.js → context-COWRWXP3.js} +89 -83
- package/dist/{context-XSZKKFBW.js → context-WB3D474G.js} +16 -16
- package/dist/{context-clear-AC5NXHM2.js → context-clear-Y4LYMWC6.js} +88 -82
- package/dist/{context-index-KKTPRV5G.js → context-index-W6A4V7OC.js} +4 -4
- package/dist/{context-map-T7ROR5D5.js → context-map-DKL3QT6D.js} +3 -3
- package/dist/{context-working-set-F4Q4J3NS.js → context-working-set-TMZYVC7A.js} +27 -25
- package/dist/data-tool-KMBWKKWR.js +2987 -0
- package/dist/{detail-H73BEF2N.js → detail-4GLROGY5.js} +89 -83
- package/dist/{dispatch-runner-3RY5FSJC.js → dispatch-runner-TR3LBP5P.js} +113 -107
- package/dist/docs-ZK777W2G.js +101 -0
- package/dist/{doctor-EQYJOGUG.js → doctor-WC4OV2OB.js} +76 -73
- package/dist/{eval-4P7O6CCE.js → eval-FUNWJNUJ.js} +88 -73
- package/dist/{eval-inventory-QOYZERXJ.js → eval-inventory-CX24K2JT.js} +5 -60
- package/dist/evals-L73EBHSU.js +104 -0
- package/dist/{evidence-O76QF7TZ.js → evidence-AVJ2RTHX.js} +99 -93
- package/dist/{evidence-D6GUSYJW.js → evidence-P4NZOAK7.js} +88 -82
- package/dist/evidence-Y55WKYHH.js +246 -0
- package/dist/{evolve-H47BCETS.js → evolve-MAWKRYWF.js} +93 -87
- package/dist/{extensions-NNL3ZOCU.js → extensions-PYQH3H47.js} +14 -13
- package/dist/fleet-M4H2QBWT.js +268 -0
- package/dist/{fleet-KMNS6NOM.js → fleet-ULBXXRDR.js} +146 -138
- package/dist/{fleet-commands-DOWSYCBX.js → fleet-commands-7NNC4JZU.js} +18 -17
- package/dist/fleet-decisions-EHEY7KPU.js +52 -0
- package/dist/{fleet-graph-F2DE2TME.js → fleet-graph-LQ2AHZT3.js} +24 -24
- package/dist/{fleet-inspect-EN2Q6IVB.js → fleet-inspect-5IGBIIYZ.js} +98 -258
- package/dist/{fleet-preflight-FRLETDD3.js → fleet-preflight-UTTNOKMG.js} +9 -4
- package/dist/{fleet-validate-B2XDLS57.js → fleet-validate-YGILJKA6.js} +29 -29
- package/dist/{fleet-verify-4JKUWGJ7.js → fleet-verify-AUWTCDKR.js} +88 -82
- package/dist/{fleet-view-BHJFW26B.js → fleet-view-TGUFCY5A.js} +90 -84
- package/dist/{init-XAT5N5YM.js → init-GFN2Z7NF.js} +111 -104
- package/dist/install-6PIF6F6W.js +19 -0
- package/dist/{interop-FVECHFKG.js → interop-EF5JUWWK.js} +29 -29
- package/dist/{inventory-7KFQGLCV.js → inventory-I6VJDDYF.js} +90 -84
- package/dist/library-3J5IO2OJ.js +75 -0
- package/dist/{library-QAPAO23R.js → library-IJTOFTDS.js} +20 -19
- package/dist/{library-NY2XOT75.js → library-Z3KZSHPE.js} +35 -35
- package/dist/{library-import-5Y6MAS3R.js → library-import-IMKFLDHX.js} +29 -29
- package/dist/{library-inventory-JT6HWITQ.js → library-inventory-CQP5D6GU.js} +21 -21
- package/dist/{library-validation-EQUH25DC.js → library-validation-33UTX7AI.js} +19 -19
- package/dist/mcp-5FWZKUS6.js +26 -0
- package/dist/{memory-DYVTTCP6.js → memory-36CWN67Y.js} +93 -87
- package/dist/{models-MASFJ6Y2.js → models-KQ6PQJJQ.js} +57 -56
- package/dist/{monitor-YMP4NXJJ.js → monitor-XX6ZD6KC.js} +98 -91
- package/dist/{orchestrator-AFQRRTEI.js → orchestrator-SK6HDAOP.js} +1537 -832
- package/dist/{panes-NICTHQCV.js → panes-L27QRXUH.js} +14 -14
- package/dist/{panes-D3Y2KFG5.js → panes-LXZIWNOZ.js} +4 -4
- package/dist/{paths-PSFAUIGO.js → paths-7DJDU4P4.js} +6 -6
- package/dist/{preload-5Q7VXRFJ.js → preload-K2TDYI4Y.js} +88 -82
- package/dist/{reset-7NKZK7JN.js → reset-73VU3XNT.js} +13 -13
- package/dist/{resources-NILSIZAT.js → resources-3BYJYVYL.js} +24 -24
- package/dist/{run-BPZGEBZV.js → run-AR7PY6GW.js} +144 -136
- package/dist/run-script-H2KUDIII.js +41 -0
- package/dist/settings-3VMBMWID.js +72 -0
- package/dist/{share-EZ6ERBMH.js → share-HVWH4FPF.js} +30 -30
- package/dist/{skills-BTVVNYVM.js → skills-5TYEY75Q.js} +30 -30
- package/dist/{skills-eval-UY34MNK7.js → skills-eval-CK3MD63Z.js} +114 -103
- package/dist/{skills-inventory-JDHSIA7I.js → skills-inventory-KSFYG3I6.js} +24 -24
- package/dist/{slash-commands-K4FNQ2AT.js → slash-commands-DMVHML7P.js} +60 -57
- package/dist/{steer-2B3EQGFH.js → steer-XCD6V3EW.js} +4 -4
- package/dist/{support-L2SOL3IE.js → support-JAZL6VBR.js} +7 -7
- package/dist/system-3TDQRMZZ.js +116 -0
- package/dist/{targets-44VKGFLN.js → targets-EZKHAYRN.js} +74 -72
- package/dist/{tasks-3KODKFU7.js → tasks-SNEFHWYW.js} +18 -18
- package/dist/{terminal-lease-LXA7MMPO.js → terminal-lease-BNLFA4OF.js} +8 -7
- package/dist/{tools-3UB7TEVR.js → tools-7IM6BDCE.js} +12 -12
- package/dist/{trace-TAMIU4OJ.js → trace-C3MBGD4S.js} +16 -65
- package/dist/{tui-primitives-A6MUW32V.js → tui-primitives-36BY2774.js} +2 -2
- package/dist/{uninstall-QYVRPEM4.js → uninstall-WWLOSZ42.js} +35 -10
- package/dist/{upgrade-7PMKM2JH.js → upgrade-ETK2JNSJ.js} +42 -51
- package/dist/{usage-6EQV7EQK.js → usage-S2HOB7BZ.js} +112 -102
- package/dist/{verifiers-JLITWSHU.js → verifiers-QDTEVH7R.js} +26 -24
- package/dist/{verify-T7NAEVIG.js → verify-SUKUK6XM.js} +16 -15
- package/dist/web/client/THIRD_PARTY_LICENSES.md +1809 -0
- package/dist/web/client/assets/abnfDiagram-VCTEODGH-BznNOe_I.js +1 -0
- package/dist/web/client/assets/arc-Pry-7G1_.js +1 -0
- package/dist/web/client/assets/architecture-7GRP2DOG-BQO9DL_y.js +1 -0
- package/dist/web/client/assets/architectureDiagram-5GKGNRK7-CKPbdvyx.js +36 -0
- package/dist/web/client/assets/array-BifhSqXX.js +1 -0
- package/dist/web/client/assets/atkinson-hyperlegible-next-latin-ext-wght-normal-C6vrW8VD.woff2 +0 -0
- package/dist/web/client/assets/atkinson-hyperlegible-next-latin-wght-normal-BcXVPD7q.woff2 +0 -0
- package/dist/web/client/assets/blockDiagram-I7D4REHJ-prINbpbM.js +129 -0
- package/dist/web/client/assets/c4Diagram-7LVT6UL2-DkVRKtyU.js +38 -0
- package/dist/web/client/assets/channel-c4EeUUqA.js +1 -0
- package/dist/web/client/assets/chunk-2Q5K7J3B-C1jixKkw.js +1 -0
- package/dist/web/client/assets/chunk-4HAMMTFA-CV0Z1ApC.js +62 -0
- package/dist/web/client/assets/chunk-5VM5RSS4-ZNzvKenW.js +15 -0
- package/dist/web/client/assets/chunk-75Z2AOVW-D34Nohxq.js +2 -0
- package/dist/web/client/assets/chunk-DU6HZSFF-Das_cS-O.js +125 -0
- package/dist/web/client/assets/chunk-F27PBJKO-CmRojxkG.js +1 -0
- package/dist/web/client/assets/chunk-FOHPRMQF-CoA4358r.js +161 -0
- package/dist/web/client/assets/chunk-GMAD6QVW-ClYZmc73.js +72 -0
- package/dist/web/client/assets/chunk-GVQU2GXP-B2BiHFt-.js +1 -0
- package/dist/web/client/assets/chunk-IMKFNOWR-BGApZ8nP.js +231 -0
- package/dist/web/client/assets/chunk-JWPE2WC7-DVXcaiue.js +1 -0
- package/dist/web/client/assets/chunk-L3NEJ4N5-DIzCgpkY.js +1 -0
- package/dist/web/client/assets/chunk-OSK3NFVY-BPT-yePv.js +10 -0
- package/dist/web/client/assets/chunk-P2QGCYS3-BC1WTc2t.js +1 -0
- package/dist/web/client/assets/chunk-POPQ4Y6H-BSjzBmZU.js +1 -0
- package/dist/web/client/assets/chunk-PWAF6VOD-BIjLs86Z.js +1 -0
- package/dist/web/client/assets/chunk-SHT3W25Y-CduDz2cm.js +168 -0
- package/dist/web/client/assets/chunk-SVP7TREG-XUn4pPAP.js +88 -0
- package/dist/web/client/assets/chunk-TICWLB2K-DcBy2DKy.js +206 -0
- package/dist/web/client/assets/chunk-XXDRQBXY-DqAYeljN.js +1 -0
- package/dist/web/client/assets/chunk-Y2CYZVJY-DsF7k-Jl.js +1 -0
- package/dist/web/client/assets/classDiagram-ZZMXUADV-C0HR7YKN.js +1 -0
- package/dist/web/client/assets/classDiagram-v2-VYDZK3BY-C0HR7YKN.js +1 -0
- package/dist/web/client/assets/commit-mono-latin-400-normal-s0S3qwFW.woff +0 -0
- package/dist/web/client/assets/commit-mono-latin-400-normal-wzhe4RuD.woff2 +0 -0
- package/dist/web/client/assets/cose-bilkent-JH36ORCC-CVh1icwb.js +1 -0
- package/dist/web/client/assets/cynefin-OW5HDTMX-BecPbyM6.js +1 -0
- package/dist/web/client/assets/cynefinDiagram-5FMLGOSQ-BzMzFwyT.js +62 -0
- package/dist/web/client/assets/cytoscape.esm-c2aL46s-.js +321 -0
- package/dist/web/client/assets/dagre-C-rnJpZF.js +1 -0
- package/dist/web/client/assets/dagre-GXQ25YYZ-CAWJmRMG.js +4 -0
- package/dist/web/client/assets/defaultLocale-BFoDCU3G.js +1 -0
- package/dist/web/client/assets/diagram-S7CK7UJ4--lp0ALmn.js +30 -0
- package/dist/web/client/assets/diagram-UQ7AKVKN-gKUnsjcj.js +41 -0
- package/dist/web/client/assets/diagram-VSXAHHWV-BoN5D1Gh.js +3 -0
- package/dist/web/client/assets/diagram-VX7I27RA-BMtuswQ6.js +24 -0
- package/dist/web/client/assets/diagram-Z3DM3KII-DtU8LXrA.js +24 -0
- package/dist/web/client/assets/dist-v5Q1xZ2K.js +1 -0
- package/dist/web/client/assets/ebnfDiagram-PWID7BFC-DDcnv9BH.js +1 -0
- package/dist/web/client/assets/erDiagram-RLTQ6QDP-DvRb4iDL.js +99 -0
- package/dist/web/client/assets/eventmodeling-NTZA5JFV-01h4SbTc.js +1 -0
- package/dist/web/client/assets/flowDiagram-HODETNUW-Bll_YZ6T.js +1 -0
- package/dist/web/client/assets/framework-YGoR34M4.js +9 -0
- package/dist/web/client/assets/ganttDiagram-EL5Y4UJY-DdFZ9hvH.js +292 -0
- package/dist/web/client/assets/gitGraph-4MIJSDKK-DjD_AAMj.js +1 -0
- package/dist/web/client/assets/gitGraphDiagram-WWUBYQGX-CDyN9n2u.js +106 -0
- package/dist/web/client/assets/graphlib-DS17s2tU.js +1 -0
- package/dist/web/client/assets/index-CVcy0FAn.js +75 -0
- package/dist/web/client/assets/index-Dsi52apB.css +1 -0
- package/dist/web/client/assets/info-A6RAGUB7-C_XK8Hq0.js +1 -0
- package/dist/web/client/assets/infoDiagram-27XIBGKW-DIe4tJ1i.js +2 -0
- package/dist/web/client/assets/init-C-OQMol4.js +1 -0
- package/dist/web/client/assets/ishikawaDiagram-5VMMS53U-CVl5unKI.js +70 -0
- package/dist/web/client/assets/journeyDiagram-3NMN7TZE-CPEB1Vt8.js +139 -0
- package/dist/web/client/assets/kanban-definition-UXKFOSKX-j-9WXjYQ.js +89 -0
- package/dist/web/client/assets/katex-ZlcWpGUi.js +257 -0
- package/dist/web/client/assets/line-BIDAcEtX.js +1 -0
- package/dist/web/client/assets/linear-SzVmGSw4.js +1 -0
- package/dist/web/client/assets/mermaid-parser.core-Ux4vssh0.js +7 -0
- package/dist/web/client/assets/mermaid.core-CDuwVKeh.js +44 -0
- package/dist/web/client/assets/mindmap-definition-YA3MSWOX-5MlQEeQ6.js +96 -0
- package/dist/web/client/assets/newsreader-latin-ext-wght-normal-C-3rgBeH.woff2 +0 -0
- package/dist/web/client/assets/newsreader-latin-wght-normal-CCVVNp6i.woff2 +0 -0
- package/dist/web/client/assets/newsreader-vietnamese-wght-normal-Czsa-EzN.woff2 +0 -0
- package/dist/web/client/assets/ordinal-BDEzSJ7C.js +1 -0
- package/dist/web/client/assets/packet-AYTQ26CC-DRO66c9Q.js +1 -0
- package/dist/web/client/assets/path-fybaL0A-.js +1 -0
- package/dist/web/client/assets/pegDiagram-XKGWAZYB-BakZnSjM.js +1 -0
- package/dist/web/client/assets/pie-WAS4IAKB-BEzcmhz8.js +1 -0
- package/dist/web/client/assets/pieDiagram-E7YTZNPT-DpmqgoPt.js +39 -0
- package/dist/web/client/assets/prism-bash-D6zCJ74D.js +1 -0
- package/dist/web/client/assets/prism-c-04YixN25.js +1 -0
- package/dist/web/client/assets/prism-clike-DapgWyxx.js +1 -0
- package/dist/web/client/assets/prism-core-BtsZdCS6.js +1 -0
- package/dist/web/client/assets/prism-cpp-C-lJbC-6.js +1 -0
- package/dist/web/client/assets/prism-css-CPgOzxXp.js +1 -0
- package/dist/web/client/assets/prism-diff-BF8m0_mq.js +3 -0
- package/dist/web/client/assets/prism-docker-DkT6yOFj.js +1 -0
- package/dist/web/client/assets/prism-fortran-Be5x3y1V.js +1 -0
- package/dist/web/client/assets/prism-go-C_8qAH5n.js +1 -0
- package/dist/web/client/assets/prism-ini-BESK3y0r.js +1 -0
- package/dist/web/client/assets/prism-javascript-BnO-swvr.js +1 -0
- package/dist/web/client/assets/prism-json-Dp_-W-Hv.js +1 -0
- package/dist/web/client/assets/prism-jsx-D-D0NWtC.js +1 -0
- package/dist/web/client/assets/prism-julia-DIjOgiAV.js +1 -0
- package/dist/web/client/assets/prism-latex-DNMbqcH_.js +1 -0
- package/dist/web/client/assets/prism-makefile-CRKWLQ8l.js +1 -0
- package/dist/web/client/assets/prism-markdown-C0FPJ1Iz.js +1 -0
- package/dist/web/client/assets/prism-markup-Cp04rIa1.js +1 -0
- package/dist/web/client/assets/prism-matlab-D-nk08al.js +1 -0
- package/dist/web/client/assets/prism-python-CfiSVtM6.js +1 -0
- package/dist/web/client/assets/prism-r-QmNGR8LX.js +1 -0
- package/dist/web/client/assets/prism-rust-Bu9N8X3N.js +1 -0
- package/dist/web/client/assets/prism-shell-session-Be4UuYoM.js +1 -0
- package/dist/web/client/assets/prism-sql-CYhVDMEE.js +1 -0
- package/dist/web/client/assets/prism-toml-DKb54GAT.js +1 -0
- package/dist/web/client/assets/prism-tsx-p6J2Kc_4.js +1 -0
- package/dist/web/client/assets/prism-typescript-BMqONzxf.js +1 -0
- package/dist/web/client/assets/prism-yaml-C0JHu8gr.js +1 -0
- package/dist/web/client/assets/purify.es-ChwZkWde.js +3 -0
- package/dist/web/client/assets/quadrantDiagram-AXDQQJYC-DuMPwwV2.js +7 -0
- package/dist/web/client/assets/radar-RG4KPBEZ-Djm3oXl5.js +1 -0
- package/dist/web/client/assets/railroad-74A4TZTK-Cpvkwsao.js +1 -0
- package/dist/web/client/assets/railroad-abnf-HS5TGJTU-CpRQ3ruG.js +1 -0
- package/dist/web/client/assets/railroad-ebnf-LZEXJU2U-1Rm5a5eJ.js +1 -0
- package/dist/web/client/assets/railroad-peg-WCYAUIDC-C8344cTh.js +1 -0
- package/dist/web/client/assets/railroadDiagram-O6MQD6OU-CgMS4B6R.js +1 -0
- package/dist/web/client/assets/requirementDiagram-BXWQKSXE-CX5eoNdN.js +84 -0
- package/dist/web/client/assets/rolldown-runtime-hePW80VL.js +1 -0
- package/dist/web/client/assets/rough.esm-Dy-Kn_BL.js +1 -0
- package/dist/web/client/assets/sankeyDiagram-P5KCCOFB-CODBX2N3.js +40 -0
- package/dist/web/client/assets/sequenceDiagram-WJ2MYXX4-eUhhF8OR.js +162 -0
- package/dist/web/client/assets/sizeCapture-INFHLROL-B0uUizjq.js +1 -0
- package/dist/web/client/assets/src-B6xuSHsQ.js +1 -0
- package/dist/web/client/assets/stateDiagram-D77RDMKH-vR6l0NC2.js +1 -0
- package/dist/web/client/assets/stateDiagram-v2-MP3YSRHH-BYUm8jLY.js +1 -0
- package/dist/web/client/assets/swimlanes-42K2YHIH-v9Tw_zX7.js +1 -0
- package/dist/web/client/assets/swimlanesDiagram-VR7AAH4N-B2jdCvhD.js +8 -0
- package/dist/web/client/assets/timeline-definition-24CTP7MA-DxianbhU.js +120 -0
- package/dist/web/client/assets/treeView-Q6P3EWNA-DLxnZb9R.js +1 -0
- package/dist/web/client/assets/treemap-WGGIJYW6-I7UnZ6xJ.js +1 -0
- package/dist/web/client/assets/vennDiagram-4TSXK5OY-Ar7M8Mrj.js +34 -0
- package/dist/web/client/assets/wardley-WFR3VGLG-B8ZSHeDu.js +1 -0
- package/dist/web/client/assets/wardleyDiagram-VM6X3IG4-Qks2FmIn.js +78 -0
- package/dist/web/client/assets/xychartDiagram-S5SC5T6Z-BBBjRtiE.js +7 -0
- package/dist/web/client/clio-coder-logo.webp +0 -0
- package/dist/web/client/icon-192.png +0 -0
- package/dist/web/client/icon-512.png +0 -0
- package/dist/web/client/index.html +6 -0
- package/dist/web/client/manifest.webmanifest +15 -0
- package/dist/web/client/offline.css +55 -0
- package/dist/web/client/offline.html +5 -0
- package/dist/web/client/offline.js +27 -0
- package/dist/web/client/sw.js +34 -0
- package/dist/web/ops-worker.js +37 -0
- package/dist/web/reads-worker.js +1726 -0
- package/dist/web/server.js +8499 -0
- package/dist/web-EMGUGGEI.js +13 -0
- package/dist/{web-fetch-W4TNW4Q7.js → web-fetch-6BRRVQON.js} +22 -5
- package/dist/{wiki-generate-T2TJQJUA.js → wiki-generate-XHSJTDOP.js} +120 -113
- package/dist/{with-panes-CHFC7HGI.js → with-panes-Z6BTEHMZ.js} +12 -12
- package/dist/worker/entry.js +113 -99
- package/docs/README.md +28 -27
- package/docs/architecture/acp.md +5 -9
- package/docs/architecture/alcf-provider.md +0 -3
- package/docs/architecture/architecture.md +0 -3
- package/docs/architecture/artifact-placement.md +12 -4
- package/docs/architecture/artifact-versions.md +0 -3
- package/docs/architecture/capacity-and-scheduling.md +0 -3
- package/docs/architecture/context-engine.md +0 -3
- package/docs/architecture/context-working-set.md +0 -3
- package/docs/architecture/dispatch-architecture-rationale.md +0 -3
- package/docs/architecture/dispatch-typed-intent.md +0 -3
- package/docs/architecture/evidence-and-memory.md +0 -3
- package/docs/architecture/library.md +1 -3
- package/docs/architecture/middleware-and-components.md +0 -3
- package/docs/architecture/model-catalog.md +1 -4
- package/docs/architecture/observability.md +0 -3
- package/docs/architecture/pi-boundary.md +6 -9
- package/docs/architecture/prompt-envelope-and-tools.md +37 -30
- package/docs/architecture/provider-adapter-cookbook.md +1 -4
- package/docs/architecture/safety-model.md +19 -9
- package/docs/architecture/session-lifecycle.md +10 -7
- package/docs/architecture/time-conventions.md +0 -3
- package/docs/architecture/trace-store.md +28 -20
- package/docs/architecture/tui-design.md +38 -18
- package/docs/architecture/worker-context.md +1 -3
- package/docs/architecture/worker-dispatch-mechanics.md +1 -4
- package/docs/guide/authoring-plugins.md +1 -3
- package/docs/guide/built-in-agents.md +0 -3
- package/docs/guide/commands-and-modes.md +41 -25
- package/docs/guide/configuration-and-targets.md +204 -9
- package/docs/guide/configuration-reference.md +125 -17
- package/docs/guide/environment-variables.md +2 -8
- package/docs/guide/exit-codes-and-output.md +0 -3
- package/docs/guide/extensions-and-sharing.md +0 -3
- package/docs/guide/fleet-dispatch.md +3 -5
- package/docs/guide/glossary.md +1 -4
- package/docs/guide/harness-extensions.md +0 -2
- package/docs/guide/installation-and-lifecycle.md +3 -6
- package/docs/guide/interop.md +0 -2
- package/docs/guide/panes-and-files.md +0 -3
- package/docs/guide/plugins.md +0 -3
- package/docs/guide/proactive-memory.md +0 -3
- package/docs/guide/resource-library.md +1 -3
- package/docs/guide/skills-marketplace.md +0 -2
- package/docs/guide/tool-usage.md +166 -67
- package/docs/guide/troubleshooting.md +1 -4
- package/docs/history/config-knobs-audit.md +0 -3
- package/docs/history/release-cut-checklist.md +0 -3
- package/docs/process/development-pipeline.md +0 -3
- package/docs/process/documentation-coverage.md +3 -3
- package/docs/process/documentation-guide.md +16 -22
- package/docs/process/eval-runner.md +0 -3
- package/docs/process/evals-internal.md +0 -3
- package/docs/process/evolution.md +0 -3
- package/docs/process/fleet-demo-runbook.md +6 -9
- package/docs/process/git-commit-provenance.md +0 -3
- package/docs/process/performance-methodology.md +1 -4
- package/docs/process/release-cut-checklist.md +114 -221
- package/docs/process/scientific-validation.md +23 -6
- package/docs/process/tool-audit-v0.4.9.md +357 -0
- package/library/registry.yaml +2 -2
- package/library/skills/meta/clio-coder-test/SKILL.md +25 -15
- package/library/skills/meta/clio-coder-test/evals.md +16 -2
- package/library/skills/meta/clio-coder-test/plugin.json +1 -1
- package/library/skills/meta/clio-coder-test/references/test-map.md +19 -18
- package/library/skills/registry.yaml +2 -2
- package/library/skills/skill-marketplace.json +1 -1
- package/package.json +13 -11
- package/src/cli/argv.ts +31 -0
- package/src/cli/clio.ts +17 -13
- package/src/cli/config.ts +4 -0
- package/src/cli/docs.ts +65 -328
- package/src/cli/doctor-panes.ts +1 -1
- package/src/cli/doctor.ts +3 -1
- package/src/cli/index.ts +17 -2
- package/src/cli/mcp.ts +106 -0
- package/src/cli/skills-eval.ts +8 -2
- package/src/cli/trace.ts +4 -65
- package/src/cli/uninstall.ts +26 -0
- package/src/cli/upgrade.ts +34 -38
- package/src/cli/usage.ts +3 -0
- package/src/cli/verifiers.ts +1 -1
- package/src/cli/web.ts +79 -0
- package/src/core/bash-exec.ts +27 -4
- package/src/core/bus-events.ts +3 -4
- package/src/core/config.ts +73 -1
- package/src/core/defaults.ts +10 -1
- package/src/core/domain-loader.ts +37 -28
- package/src/core/event-bus.ts +1 -1
- package/src/core/run-records.ts +438 -0
- package/src/core/safe-exec.ts +506 -56
- package/src/core/skill-activation.ts +5 -3
- package/src/core/termination.ts +16 -12
- package/src/core/tool-names.ts +33 -12
- package/src/domains/agents/contract.ts +1 -1
- package/src/domains/agents/extension.ts +18 -10
- package/src/domains/config/extension.ts +5 -4
- package/src/domains/context/clio-md.ts +1 -1
- package/src/domains/context/worker/pressure.ts +6 -2
- package/src/domains/context/working-set/path-index.ts +7 -2
- package/src/domains/dispatch/code-step.ts +7 -2
- package/src/domains/dispatch/contract.ts +7 -0
- package/src/domains/dispatch/execution-role.ts +3 -3
- package/src/domains/dispatch/execution-scheduler.ts +204 -79
- package/src/domains/dispatch/extension.ts +206 -26
- package/src/domains/dispatch/fleet-preflight.ts +18 -3
- package/src/domains/dispatch/fleet-run.ts +1 -0
- package/src/domains/dispatch/gate-decisions.ts +3 -3
- package/src/domains/dispatch/heartbeat.ts +1 -1
- package/src/domains/dispatch/host-verification.ts +16 -14
- package/src/domains/dispatch/index.ts +1 -0
- package/src/domains/dispatch/orphan-recovery.ts +1 -0
- package/src/domains/dispatch/receipt-findings.ts +3 -4
- package/src/domains/dispatch/receipt-integrity.ts +3 -0
- package/src/domains/dispatch/reservation-store.ts +7 -9
- package/src/domains/dispatch/route-facts.ts +1 -1
- package/src/domains/dispatch/state.ts +4 -5
- package/src/domains/dispatch/types.ts +3 -1
- package/src/domains/eval/metrics/tracked.ts +22 -2
- package/src/domains/evidence/build.ts +35 -7
- package/src/domains/extensions/operator-runtime.ts +3 -1
- package/src/domains/gateway/mcp/client.ts +923 -0
- package/src/domains/gateway/mcp/config.ts +456 -0
- package/src/domains/gateway/mcp/index.ts +88 -0
- package/src/domains/gateway/mcp/protocol.ts +273 -0
- package/src/domains/gateway/mcp/trust.ts +263 -0
- package/src/domains/lifecycle/doctor.ts +17 -3
- package/src/domains/middleware/hooks.ts +2 -2
- package/src/domains/mux/contract.ts +5 -9
- package/src/domains/mux/detect.ts +1 -1
- package/src/domains/mux/extension.ts +1 -1
- package/src/domains/mux/protocol.ts +5 -7
- package/src/domains/mux/socket-client.ts +3 -3
- package/src/domains/observability/accountability.ts +2 -2
- package/src/domains/observability/background-memory-usage.ts +3 -0
- package/src/domains/observability/compaction-usage.ts +2 -0
- package/src/domains/observability/contract.ts +7 -3
- package/src/domains/observability/cost.ts +5 -0
- package/src/domains/observability/evidence-index.ts +2 -2
- package/src/domains/observability/extension.ts +1 -0
- package/src/domains/observability/out-of-turn-usage.ts +2 -0
- package/src/domains/observability/projection.ts +10 -0
- package/src/domains/observability/trace-store.ts +65 -5
- package/src/domains/prompts/compiler.ts +41 -23
- package/src/domains/prompts/extension.ts +4 -17
- package/src/domains/prompts/fragments/identity/docs-routing.md +2 -2
- package/src/domains/prompts/fragments/operating/skills.md +12 -10
- package/src/domains/providers/cache-deployment.ts +147 -0
- package/src/domains/providers/catalog.ts +12 -7
- package/src/domains/providers/extension.ts +27 -5
- package/src/domains/providers/index.ts +6 -1
- package/src/domains/providers/models/local-models/clio-coder-local-coding-targets.yaml +42 -10
- package/src/domains/providers/plugins.ts +3 -13
- package/src/domains/providers/probe/http.ts +44 -59
- package/src/domains/providers/probe/reasoning.ts +2 -0
- package/src/domains/providers/runtimes/common/local-synth.ts +4 -0
- package/src/domains/providers/runtimes/local-native/llamacpp-embed.ts +20 -31
- package/src/domains/providers/runtimes/local-native/llamacpp-rerank.ts +9 -4
- package/src/domains/providers/types/target-descriptor.ts +17 -0
- package/src/domains/safety/action-classifier.ts +17 -1
- package/src/domains/safety/call-target.ts +14 -0
- package/src/domains/safety/contract.ts +1 -1
- package/src/domains/safety/finish-contract.ts +9 -3
- package/src/domains/safety/loop-detector.ts +1 -1
- package/src/domains/safety/policy-engine.ts +7 -0
- package/src/domains/safety/protected-artifacts.ts +3 -4
- package/src/domains/safety/rejection-feedback.ts +1 -1
- package/src/domains/safety/scope.ts +2 -3
- package/src/domains/safety/validation-contract.ts +3 -2
- package/src/domains/scheduling/budget.ts +5 -3
- package/src/domains/scheduling/contract.ts +2 -1
- package/src/domains/scheduling/extension.ts +3 -3
- package/src/domains/session/compaction/branch-summary.ts +1 -1
- package/src/domains/session/compaction/compact.ts +29 -3
- package/src/domains/session/compaction/cut-point.ts +1 -1
- package/src/domains/session/compaction/tokens.ts +5 -10
- package/src/domains/session/contract.ts +1 -1
- package/src/domains/session/cwd-fallback.ts +2 -2
- package/src/domains/session/entries.ts +1 -0
- package/src/domains/session/handoff.ts +5 -1
- package/src/domains/session/history.ts +6 -0
- package/src/domains/session/manager.ts +14 -7
- package/src/domains/session/retry.ts +2 -1
- package/src/domains/session/session-artifacts.ts +12 -7
- package/src/domains/session/task-board.ts +2 -3
- package/src/domains/session/usage.ts +6 -7
- package/src/engine/acp/server.ts +11 -0
- package/src/engine/ai.ts +2 -0
- package/src/engine/apis/openai-completions.ts +17 -4
- package/src/engine/loop-guard.ts +7 -0
- package/src/engine/prewarm.ts +232 -0
- package/src/engine/provider-diagnostics.ts +6 -1
- package/src/engine/provider-error-body.ts +65 -0
- package/src/engine/session.ts +118 -29
- package/src/engine/worker-runtime.ts +3 -0
- package/src/entry/boot-options.ts +2 -0
- package/src/entry/orchestrator.ts +38 -18
- package/src/interactive/chat-loop-messages.ts +3 -0
- package/src/interactive/chat-loop-policy.ts +1 -0
- package/src/interactive/chat-loop.ts +10 -12
- package/src/interactive/chat-panel.ts +23 -9
- package/src/interactive/chat-renderer.ts +33 -11
- package/src/interactive/clio-editor.ts +13 -5
- package/src/interactive/dispatch-board.ts +70 -30
- package/src/interactive/editor-submit.ts +30 -25
- package/src/interactive/footer/widgets.ts +12 -9
- package/src/interactive/interactive-presentation.ts +2 -3
- package/src/interactive/mux-bridge.ts +3 -7
- package/src/interactive/overlay-general-openers.ts +14 -7
- package/src/interactive/overlays/cwd-fallback.ts +1 -1
- package/src/interactive/overlays/library-model.ts +114 -35
- package/src/interactive/overlays/library.ts +52 -5
- package/src/interactive/overlays/list-overlay.ts +4 -1
- package/src/interactive/overlays/session-selector.ts +28 -23
- package/src/interactive/overlays/settings.ts +20 -1
- package/src/interactive/overlays/tree-selector.ts +47 -10
- package/src/interactive/panes-runtime.ts +1 -1
- package/src/interactive/prewarm.ts +11 -197
- package/src/interactive/renderers/compaction-summary.ts +1 -1
- package/src/interactive/renderers/provider-error.ts +118 -0
- package/src/interactive/renderers/retry-status.ts +59 -23
- package/src/interactive/renderers/tool-execution.ts +67 -7
- package/src/interactive/renderers/worker-answer.ts +198 -0
- package/src/interactive/renderers/worker-entry.ts +57 -163
- package/src/interactive/session-usage-reseed.ts +2 -0
- package/src/interactive/side-question.ts +2 -0
- package/src/interactive/slash-commands.ts +26 -1
- package/src/interactive/slash-spec.ts +2 -2
- package/src/interactive/theme/labels.ts +66 -30
- package/src/interactive/turn-context.ts +1 -0
- package/src/interactive/turn-persistence.ts +9 -1
- package/src/interactive/turn-prewarm.ts +126 -19
- package/src/interactive/turn-recovery.ts +2 -1
- package/src/interactive/turn-runtime.ts +36 -5
- package/src/interactive/view/artifacts.ts +3 -2
- package/src/interactive/view/view-overlay.ts +96 -20
- package/src/tools/agent-tools.ts +21 -7
- package/src/tools/artifact.ts +16 -8
- package/src/tools/bash.ts +90 -11
- package/src/tools/bootstrap.ts +42 -4
- package/src/tools/builtin-tool-catalog.ts +80 -11
- package/src/tools/context/index.ts +27 -31
- package/src/tools/context/library.ts +3 -1
- package/src/tools/context/surface.ts +12 -26
- package/src/tools/core-bootstrap.ts +72 -1
- package/src/tools/data/csv.ts +1189 -0
- package/src/tools/data/index.ts +308 -0
- package/src/tools/data/json.ts +1799 -0
- package/src/tools/data/jsonl.ts +561 -0
- package/src/tools/data/shared.ts +452 -0
- package/src/tools/edit-diff.ts +0 -7
- package/src/tools/edit.ts +115 -18
- package/src/tools/file-mutation-queue.ts +114 -4
- package/src/tools/find.ts +108 -29
- package/src/tools/gateway/caps.ts +11 -0
- package/src/tools/gateway/clio-context-surface.ts +41 -0
- package/src/tools/gateway/clio-context-tools.ts +77 -0
- package/src/tools/gateway/data-surface.ts +138 -0
- package/src/tools/gateway/data-tool.ts +201 -0
- package/src/tools/gateway/index.ts +342 -0
- package/src/tools/gateway/mcp-capabilities.ts +469 -0
- package/src/tools/grep.ts +88 -33
- package/src/tools/harness-extensions.ts +3 -0
- package/src/tools/ignore-policy.ts +7 -5
- package/src/tools/ls.ts +111 -20
- package/src/tools/policy.ts +35 -13
- package/src/tools/presentation.ts +6 -0
- package/src/tools/read.ts +634 -156
- package/src/tools/registry.ts +106 -8
- package/src/tools/run-script.ts +997 -0
- package/src/tools/spawn-hygiene.ts +157 -5
- package/src/tools/surface.ts +163 -0
- package/src/tools/verify/authoring.ts +8 -3
- package/src/tools/verify/catalog.ts +14 -1
- package/src/tools/verify/numeric.ts +367 -59
- package/src/tools/verify/perf.ts +171 -9
- package/src/tools/verify/scripts.ts +178 -26
- package/src/tools/web-fetch-surface.ts +22 -0
- package/src/tools/web-fetch.ts +26 -1
- package/src/tools/write.ts +45 -19
- package/src/worker/spec-contract.ts +27 -0
- package/dist/chunk-B6UM3OZC.js +0 -15
- package/dist/chunk-GJ24ODAX.js +0 -196
- package/dist/chunk-HRAKUPIH.js +0 -57
- package/dist/docs-BL7ROUFN.js +0 -292
|
@@ -0,0 +1,357 @@
|
|
|
1
|
+
# Individual Tool Audit for v0.4.9
|
|
2
|
+
|
|
3
|
+
This is the landed disposition of each builtin tool and each dynamic capability family. It replaces the pre-implementation findings with the current contract, without treating placement as proof of correctness. Source references name the implementation; [Tool usage](../guide/tool-usage.md) supplies detailed arguments and examples. `src/tools/surface.ts` owns placement and `src/tools/policy.ts` owns action class/concurrency. There are 30 builtin names, plus extension and MCP families whose individual schemas are discovered at runtime.
|
|
4
|
+
|
|
5
|
+
The implementation commits are on the candidate branch; this document does not claim that the version has been published. Scientific integrity below describes evidence and limits, not an empirical certification of each tool. Existing orchestration and interaction behavior was checked for its documentation contract; no new scientific benchmark or full source re-audit is claimed.
|
|
6
|
+
|
|
7
|
+
## read
|
|
8
|
+
|
|
9
|
+
- **Purpose:** Retrieve cited text windows or supported images from a known file.
|
|
10
|
+
- **Placement:** Direct OBSERVE, read class, parallel.
|
|
11
|
+
- **Contract:** `path`, `offset`, `limit`, `tail`, `line_numbers`; bounded text and file identity/change details; refuse binary or invalid UTF-8 with byte offsets.
|
|
12
|
+
- **Implementation:** `src/tools/read.ts` uses bounded fd windows and backward tail scans. Exact counts stop above 32 MiB; images keep a 20 MB (20000000 bytes) ceiling. Observation bytes and lines are bounded. Tail numbering is refused when the total is unknown.
|
|
13
|
+
- **Scientific integrity:** `N+` and continuation distinguish a window from a dataset. Observed changes do not create snapshot isolation; unread bytes are not validated.
|
|
14
|
+
- **Disposition:** Redesign the whole-file reader; retain explicit pagination and image behavior.
|
|
15
|
+
|
|
16
|
+
Status: landed in `30826041`.
|
|
17
|
+
|
|
18
|
+
## write
|
|
19
|
+
|
|
20
|
+
- **Purpose:** Create or regenerate a complete UTF-8 file.
|
|
21
|
+
- **Placement:** Direct MUTATE, write class, sequential.
|
|
22
|
+
- **Contract:** `path`, `content`; byte count, eligible diff, paths, before/after identity, and possible durability warning. Existing targets are overwritten.
|
|
23
|
+
- **Implementation:** `src/tools/write.ts` and `src/tools/file-mutation-queue.ts` serialize same-target writes and publish by temporary file, fsync, and real-target rename. Previous-content comparison is bounded; either version above 1 MiB skips diff generation. Symlink targets and mode bits are preserved.
|
|
24
|
+
- **Scientific integrity:** No partial publication before rename, but external writers are unlocked and last rename wins. Ownership, ACLs, xattrs, and original timestamps are not preserved. A write is not data validation.
|
|
25
|
+
- **Disposition:** Repair publication and evidence; retain full-file replacement semantics.
|
|
26
|
+
|
|
27
|
+
Status: landed in `82ebee28`.
|
|
28
|
+
|
|
29
|
+
## edit
|
|
30
|
+
|
|
31
|
+
- **Purpose:** Apply disjoint targeted replacements to one existing text file.
|
|
32
|
+
- **Placement:** Direct MUTATE, write class, sequential.
|
|
33
|
+
- **Contract:** `path`, `edits`; refuse absent/ambiguous matches, overlaps, no-ops, NUL, invalid UTF-8, mixed endings, and bare CR. Preserve BOM and uniform LF/CRLF.
|
|
34
|
+
- **Implementation:** `src/tools/edit.ts`, `edit-diff.ts`, and `file-mutation-queue.ts`. Small files try exact, normalized punctuation/whitespace, then indentation-relaxed matching. Above 1 MiB only exact matching is allowed. Atomic publication and identity reporting match write; large diffs are skipped before construction.
|
|
35
|
+
- **Scientific integrity:** Invalid bytes are never silently repaired. Editing still holds source/replacement in memory; file identity does not enforce an earlier-read precondition or lock external writers.
|
|
36
|
+
- **Disposition:** Repair encoding, publication, and large-file allocation behavior.
|
|
37
|
+
|
|
38
|
+
Status: landed in `82ebee28`.
|
|
39
|
+
|
|
40
|
+
## bash
|
|
41
|
+
|
|
42
|
+
- **Purpose:** Execute shell workflows that require shell semantics.
|
|
43
|
+
- **Placement:** Direct EXECUTE, execute class, sequential; command classification can escalate authority.
|
|
44
|
+
- **Contract:** `command`, `cwd`, `timeout_ms`, `output_policy`; combined result with separate termination and disposition facts. The combined 16 MiB output ceiling stops the child.
|
|
45
|
+
- **Implementation:** `src/tools/bash.ts`, `src/core/bash-exec.ts`, and result shaping retain the existing process lifecycle and login-environment snapshot. Cap handling distinguishes raw observed and retained bytes, decoded retention, actual offload, and discarded bytes.
|
|
46
|
+
- **Scientific integrity:** Summary and metadata-only projections preserve failure/retrieval facts. A cap is unsuccessful partial execution, not a complete dataset; use run_script for streaming.
|
|
47
|
+
- **Disposition:** Retain the cap and repair diagnostic and retention honesty.
|
|
48
|
+
|
|
49
|
+
Status: landed in `bde78f76`.
|
|
50
|
+
|
|
51
|
+
## grep
|
|
52
|
+
|
|
53
|
+
- **Purpose:** Locate content matches with source-line citations.
|
|
54
|
+
- **Placement:** Direct OBSERVE, read class, parallel.
|
|
55
|
+
- **Contract:** Pattern/path, content/files/count modes, glob, context, limits, and ignore options; partial results carry `details.search` completeness, reason, skipped counts/samples, and unknown coverage.
|
|
56
|
+
- **Implementation:** `src/tools/grep.ts` and `spawn-hygiene.ts` preserve collected native results on timeout, cancellation, and recoverable errors. Native diagnostics have bounded decoding; fallback traversal/read work is asynchronous and skips oversized, binary, or unreadable inputs explicitly.
|
|
57
|
+
- **Scientific integrity:** Complete empty and incomplete searches are distinct. Native `.gitignore` and fallback generated-directory-only semantics are disclosed; counts never imply unseen paths were searched.
|
|
58
|
+
- **Disposition:** Repair completeness, diagnostics, and responsiveness.
|
|
59
|
+
|
|
60
|
+
Status: landed in `17e2de0b`; ignore-policy clarification in `bde78f76`.
|
|
61
|
+
|
|
62
|
+
## find
|
|
63
|
+
|
|
64
|
+
- **Purpose:** Locate paths using filename/glob or bounded recent-change selection.
|
|
65
|
+
- **Placement:** Direct OBSERVE, read class, parallel.
|
|
66
|
+
- **Contract:** `pattern`, `path`, `order`, `limit`, `include_ignored`; paths, continuation, candidate bounds, and `details.search`.
|
|
67
|
+
- **Implementation:** `src/tools/find.ts` keeps fd's glob/smart-case filtering and native result cap. The fallback is asynchronous. Mtime selection stats only a bounded candidate set; neither traversal follows symlinked directories.
|
|
68
|
+
- **Scientific integrity:** Mtime order can be approximate. Native skipped symlink-directory counts are explicitly unavailable (`counted=false`); fallback counts them. Native and fallback matching/ignore semantics are not guaranteed identical.
|
|
69
|
+
- **Disposition:** Retain native filtering and repair incomplete-search evidence.
|
|
70
|
+
|
|
71
|
+
Status: landed in `17e2de0b`.
|
|
72
|
+
|
|
73
|
+
## ls
|
|
74
|
+
|
|
75
|
+
- **Purpose:** Inspect one directory, including symlinks and broken entries.
|
|
76
|
+
- **Placement:** Direct OBSERVE, read class, parallel.
|
|
77
|
+
- **Contract:** `path`, `limit`; alphabetical entries, `name@ -> target` or `name@ (broken)`, failure markers, `details.skipped`, and `details.selection`.
|
|
78
|
+
- **Implementation:** `src/tools/ls.ts` asynchronously enumerates, keeps O(limit) selected names in a heap, and stats only selected entries. Case-insensitive ties preserve enumeration order. Listing still scans the directory to select its prefix.
|
|
79
|
+
- **Scientific integrity:** Broken or unreadable entries do not disappear silently. Bounded retained state is not a claim of constant total work.
|
|
80
|
+
- **Disposition:** Repair link truthfulness and selection allocation.
|
|
81
|
+
|
|
82
|
+
Status: landed in `17e2de0b`.
|
|
83
|
+
|
|
84
|
+
## code_nav
|
|
85
|
+
|
|
86
|
+
- **Purpose:** Retrieve indexed repository symbols, paths, outlines, dependencies, entries, and generated wiki context.
|
|
87
|
+
- **Placement:** Direct OBSERVE, read class, parallel; worker profile/recipe policy can omit it.
|
|
88
|
+
- **Contract:** Mode, query, and bounded limit select structured index results with citations, omissions, and continuation; unavailable index/invalid queries return actionable failures.
|
|
89
|
+
- **Implementation:** `src/tools/codewiki/code-nav.ts` and `code-nav-surface.ts` use the codewiki index and a 16KB observation cap. Result selection is bounded, but the loaded index and index searches are not a streaming live filesystem scan.
|
|
90
|
+
- **Scientific integrity:** Index freshness and source citations bound the claim. Navigation is neither executed validation nor evidence that a dataset is complete.
|
|
91
|
+
- **Disposition:** Retain the existing indexed navigation contract; no release-specific numerical processing is added.
|
|
92
|
+
|
|
93
|
+
Status: unchanged in v0.4.9 because the existing indexed navigation and freshness contract remains appropriate.
|
|
94
|
+
|
|
95
|
+
## context
|
|
96
|
+
|
|
97
|
+
- **Purpose:** Retrieve workspace state, activate installed skills, and recall persisted observations.
|
|
98
|
+
- **Placement:** Direct OBSERVE, read class, parallel.
|
|
99
|
+
- **Contract:** `scope=workspace|skills|recall`; skill name/tree and recall query/ref/limit/offset arguments. Workspace needs session wiring; skill activation obeys operator and recipe policy.
|
|
100
|
+
- **Implementation:** `src/tools/context/surface.ts` and `index.ts` retain existing engines with the narrower permanent schema. Workspace/skills use the observation envelope; recall resolves persisted evidence.
|
|
101
|
+
- **Scientific integrity:** Recall identifies historical observations without presenting them as current file reads. Skill availability is separate from permission to activate or install.
|
|
102
|
+
- **Disposition:** Redesign the permanent schema; move secondary docs/library retrieval to named gateway capabilities.
|
|
103
|
+
|
|
104
|
+
Status: landed in `021ec049`.
|
|
105
|
+
|
|
106
|
+
## verify
|
|
107
|
+
|
|
108
|
+
- **Purpose:** Execute declared checks and inspect explicit validation judgements.
|
|
109
|
+
- **Placement:** Direct EXECUTE, execute class, sequential.
|
|
110
|
+
- **Contract:** Package scripts, strict project catalog entries, or frontend verification. Numeric checks use explicit tolerance combination/non-finite policy; performance checks use budgets or baselines. Execution failure prevents judgement.
|
|
111
|
+
- **Implementation:** `src/tools/verify/numeric.ts`, `perf.ts`, and `scripts.ts` cap judged capture and references at 32 MiB; ULP tolerance cannot exceed Number.MAX_SAFE_INTEGER. Version-2 baselines record environment; direct and host paths retain provenance and judgement axes.
|
|
112
|
+
- **Scientific integrity:** Non-finite report values serialize by name. Hashes identify reference/actual bytes; environment mismatches are informational. `scientificValidity` stays `not established by this check` even on pass.
|
|
113
|
+
- **Disposition:** Repair mathematical policy and evidence instead of equating execution with scientific validity.
|
|
114
|
+
|
|
115
|
+
Status: landed in `2968271a`; host-verification parity and authoring/help closures in `bde78f76`.
|
|
116
|
+
|
|
117
|
+
## evidence
|
|
118
|
+
|
|
119
|
+
- **Purpose:** Inspect canonical bundles, per-run trust axes, gate decisions, and findings.
|
|
120
|
+
- **Placement:** Gateway OBSERVE, read class, sequential.
|
|
121
|
+
- **Contract:** `mode=list|inspect|run`, `id` or `runId`; bounded JSON. Run mode may build a missing bundle; absent ledger runs report artifact absence.
|
|
122
|
+
- **Implementation:** `src/tools/evidence.ts` shares evidence-domain projections and caps the result at 16KB with valid JSON preview on truncation. Sequential execution protects materialization ordering; gateway evidence export resolves the underlying identity.
|
|
123
|
+
- **Scientific integrity:** Integrity, validation grounding, provenance, and completion remain separate axes. A trusted bundle does not establish the truth of every worker claim.
|
|
124
|
+
- **Disposition:** Retain the bounded evidence engine and repair routing/consumer identity for gateway invocation.
|
|
125
|
+
|
|
126
|
+
Status: placement and evidence projection landed in `021ec049`.
|
|
127
|
+
|
|
128
|
+
## credential_present
|
|
129
|
+
|
|
130
|
+
- **Purpose:** Check credential availability without returning its value.
|
|
131
|
+
- **Placement:** Gateway OBSERVE, read class, parallel.
|
|
132
|
+
- **Contract:** Credential `name`, optional environment/file source and file path; booleans, checked sources, and missing-file state. Invalid names or unusable reads fail.
|
|
133
|
+
- **Implementation:** `src/tools/credential-present.ts` returns a small presence projection rather than the observation envelope. File access remains subject to the capability's admitted read contract.
|
|
134
|
+
- **Scientific integrity:** Presence does not validate a credential, establish external access, or expose secret contents. No numerical interpretation occurs.
|
|
135
|
+
- **Disposition:** Retain the minimal result and move its schema off the permanent direct surface.
|
|
136
|
+
|
|
137
|
+
Status: placement landed in `021ec049`.
|
|
138
|
+
|
|
139
|
+
## git
|
|
140
|
+
|
|
141
|
+
- **Purpose:** Inspect repository status, diffs, and history without a free-form shell.
|
|
142
|
+
- **Placement:** Gateway EXECUTE plane, read class, parallel.
|
|
143
|
+
- **Contract:** `op=status|diff|log`, optional path/cwd, diff flags, log limit, timeout, and output cap. Nonzero, capped, timed-out, or aborted execution returns failure facts.
|
|
144
|
+
- **Implementation:** `src/tools/safe-exec.ts` builds fixed git argv vectors on safe-exec; default timeout 120000 ms and capture 600000 bytes, followed by bounded result shaping. Log count caps at 200.
|
|
145
|
+
- **Scientific integrity:** Command/argv/cwd/exit/timing identify the observation; truncation is not a complete change inventory. Git inspection does not validate scientific output.
|
|
146
|
+
- **Disposition:** Retain fixed-vector inspection and preserve recipe attestation through gateway placement.
|
|
147
|
+
|
|
148
|
+
Status: placement/attestation landed in `021ec049`; shared safe-exec cleanup strengthened in `4ef9277e`.
|
|
149
|
+
|
|
150
|
+
## web_fetch
|
|
151
|
+
|
|
152
|
+
- **Purpose:** Make full HTTP requests and retrieve bounded textual content.
|
|
153
|
+
- **Placement:** Gateway RETRIEVE, read base class, parallel; non-GET or body requests retain outward-action classification.
|
|
154
|
+
- **Contract:** URL, method, headers, body, format, timeout, and byte limit. Unsupported/binary content and disallowed private-network targets are refused.
|
|
155
|
+
- **Implementation:** `src/tools/web-fetch.ts` and its helpers share the existing fetcher, default 600KB read allowance, 5MB hard read cap, and 16KB shaped result. Abort/timeout and network policy remain in force.
|
|
156
|
+
- **Scientific integrity:** HTML conversion and arXiv/repository summaries are derived views, not raw source identity or independent corroboration. Request success is not evidence that a remote claim is correct.
|
|
157
|
+
- **Disposition:** Retain full requests behind the gateway and split GET-only reading into web_read.
|
|
158
|
+
|
|
159
|
+
Status: landed in `021ec049`.
|
|
160
|
+
|
|
161
|
+
## web_read
|
|
162
|
+
|
|
163
|
+
- **Purpose:** Read public web content without full-request argument authority.
|
|
164
|
+
- **Placement:** Gateway RETRIEVE, read class, parallel.
|
|
165
|
+
- **Contract:** `url`, `timeout_ms`, `max_bytes`, `format`; GET only, without headers, method, or body arguments.
|
|
166
|
+
- **Implementation:** `src/tools/web-fetch.ts` and `web-fetch-surface.ts` delegates to the existing web fetch implementation and inherits its byte caps, cancellation, conversion, and private-network policy.
|
|
167
|
+
- **Scientific integrity:** Bounded/converted content must be distinguished from the complete original. A GET-only tool is not a guarantee that remote content is trustworthy.
|
|
168
|
+
- **Disposition:** Split the read-only request surface from full web_fetch while sharing implementation.
|
|
169
|
+
|
|
170
|
+
Status: landed in `021ec049`.
|
|
171
|
+
|
|
172
|
+
## artifact
|
|
173
|
+
|
|
174
|
+
- **Purpose:** Publish a requested terminal plan, review, or report.
|
|
175
|
+
- **Placement:** Gateway ARTIFACT, write class, sequential.
|
|
176
|
+
- **Contract:** `kind`, `content`, optional title/path; default `.clio-coder/artifacts/{PLAN,REVIEW,REPORT}.md`, workspace-contained overrides, and terminal turn completion.
|
|
177
|
+
- **Implementation:** `src/tools/artifact.ts` uses the atomic publisher. Gateway preserves `terminate`, `details.kind`, and `details.paths`; ledger/artifact consumers unwrap capability identity. Post-publication durability warnings remain visible.
|
|
178
|
+
- **Scientific integrity:** Successful publication establishes document delivery, not correctness of its claims. Pre-rename failure is not presented as an artifact; terminal content must contain the full answer.
|
|
179
|
+
- **Disposition:** Retain the terminal document contract, repair publication, and move behind gateway.
|
|
180
|
+
|
|
181
|
+
Status: landed in `021ec049` using publisher from `82ebee28`.
|
|
182
|
+
|
|
183
|
+
## clio_docs
|
|
184
|
+
|
|
185
|
+
- **Purpose:** Retrieve cited bundled documentation on demand.
|
|
186
|
+
- **Placement:** Gateway OBSERVE, read class, parallel.
|
|
187
|
+
- **Contract:** Optional query and section limit (default 5, max 12); omitted query lists corpus; searches return ranked cited sections and follow-up guidance.
|
|
188
|
+
- **Implementation:** `src/tools/gateway/clio-context-tools.ts` reuses `src/tools/context/docs-engine.ts`, with a 16KB observation cap and valid JSON offload behavior. It reads the shipped corpus without network access.
|
|
189
|
+
- **Scientific integrity:** Rankings are retrieval hints, not proofs. File/section/line citations let callers inspect the source; omitted sections remain explicitly omitted.
|
|
190
|
+
- **Disposition:** Move the existing docs engine out of context's permanent schema.
|
|
191
|
+
|
|
192
|
+
Status: landed in `021ec049`.
|
|
193
|
+
|
|
194
|
+
## clio_library
|
|
195
|
+
|
|
196
|
+
- **Purpose:** Inspect loaded recipes and installable package claims without activation or installation.
|
|
197
|
+
- **Placement:** Gateway OBSERVE, read class, parallel; unavailable inside workers.
|
|
198
|
+
- **Contract:** Query, kind, ref, limit (20 default, 50 max), offset; tagged resource/hint/package rows with continuation and lower-bound totals where needed.
|
|
199
|
+
- **Implementation:** `src/tools/gateway/clio-context-tools.ts` and `src/tools/context/library.ts` reuse bounded inventory and fit pages to a 16KB observation allowance. No recipe body or installation side effect is returned.
|
|
200
|
+
- **Scientific integrity:** Installed resources have real invocation information; catalog hints do not pretend to be loaded tools. Availability does not confer trust or validate a package's scientific claims.
|
|
201
|
+
- **Disposition:** Move read-only catalog browsing out of the permanent context schema.
|
|
202
|
+
|
|
203
|
+
Status: landed in `021ec049`.
|
|
204
|
+
|
|
205
|
+
## data
|
|
206
|
+
|
|
207
|
+
- **Purpose:** Inspect, select, or validate explicitly supported structured formats without rewriting them.
|
|
208
|
+
- **Placement:** Gateway OBSERVE, read class, parallel.
|
|
209
|
+
- **Contract:** CSV/TSV/JSON/JSONL op/path, format-specific selectors, sample/scan limits; view flags, schema/counts, precision issues, and actionable refusals.
|
|
210
|
+
- **Implementation:** `src/tools/data/` streams with bounded CSV field/record, JSON depth/capture, and JSONL line budgets. `src/tools/gateway/data-tool.ts` normalizes the protected read path before admission and applies a 32 KiB observation cap.
|
|
211
|
+
- **Scientific integrity:** Preserve numeric literals and sentinels; disclose sampling, approximate extrema, duplicate-tracking limits, and cut values. `exact=false, sampled=false` denotes a complete scan with a value cut to budget, not a complete selection. Validation is format validation only.
|
|
212
|
+
- **Disposition:** Add bounded structured-data inspection; refuse unsupported binary formats and direct them to a supplied script/library.
|
|
213
|
+
|
|
214
|
+
Status: readers landed in `7623ce27`; gateway/admission integration in `021ec049`.
|
|
215
|
+
|
|
216
|
+
## dispatch
|
|
217
|
+
|
|
218
|
+
- **Purpose:** Run explicitly bounded tasks on fleet workers and collect durable receipts.
|
|
219
|
+
- **Placement:** Direct ORCHESTRATE, dispatch class, sequential; requires a dispatch contract.
|
|
220
|
+
- **Contract:** Singular/batch tasks, recipe/route, typed intent, budgets, timeout, topology, and optional detach. Nonzero terminal attempts fail; detached ids require collection before final synthesis.
|
|
221
|
+
- **Implementation:** `src/tools/dispatch.ts` delegates to the dispatch domain's admission and lifecycle. Summaries are bounded; cancellation and receipts are owned there. Gateway capabilities remain in the admitted worker list while schemas and attestation use the direct projection.
|
|
222
|
+
- **Scientific integrity:** Receipt integrity, worker evidence, host verification, and project/briefing provenance remain distinct. Worker prose is advisory; successful execution alone is not a scientific result.
|
|
223
|
+
- **Disposition:** Retain orchestration and direct placement; adapt worker capability projection and host evidence integration.
|
|
224
|
+
|
|
225
|
+
Status: gateway worker integration landed in `021ec049`; host verification closures in `bde78f76`. Existing dispatch workflow is retained.
|
|
226
|
+
|
|
227
|
+
## monitor
|
|
228
|
+
|
|
229
|
+
- **Purpose:** Observe dispatched runs and collect detached results.
|
|
230
|
+
- **Placement:** Direct ORCHESTRATE, read class, parallel; requires dispatch wiring.
|
|
231
|
+
- **Contract:** List/status/peek/receipt/wait/collect/tools, run/batch identifiers and bounded waiting. Wait never cancels; collect resolves terminal attempts.
|
|
232
|
+
- **Implementation:** `src/tools/monitor.ts` uses the dispatch ledger and live snapshot. Peek uses bounded in-process tails (100 events/run, 64 runs, 8KB output); receipts are bounded projections with retrieval paths.
|
|
233
|
+
- **Scientific integrity:** Process-local event absence is disclosed, not treated as proof of no tool activity. Receipt integrity and validation evidence are separate, and an unfinished run is never a completed result.
|
|
234
|
+
- **Disposition:** Retain observation and collection; it does not process scientific values.
|
|
235
|
+
|
|
236
|
+
Status: unchanged in v0.4.9 because existing bounded run observation and collection remain the required contract.
|
|
237
|
+
|
|
238
|
+
## steer
|
|
239
|
+
|
|
240
|
+
- **Purpose:** Correct or cancel a worker with an already-known run id.
|
|
241
|
+
- **Placement:** Direct ORCHESTRATE, dispatch class, sequential.
|
|
242
|
+
- **Contract:** `run_id`, `action=guide|cancel`, message for guide. Unsupported live-input runtimes and terminal-run cancellation return structured failures.
|
|
243
|
+
- **Implementation:** `src/tools/steer.ts` uses the dispatch contract's stdin steer/cancel path. Guidance acknowledgement follows runtime acceptance; parent-model mid-run control needs detached ids.
|
|
244
|
+
- **Scientific integrity:** Guidance records ordered byte/hash/timestamp and acknowledgement provenance, not validation of the changed work. Cancellation yields a cancelled outcome instead of a successful deliverable.
|
|
245
|
+
- **Disposition:** Retain the explicit control surface and supported-runtime boundary.
|
|
246
|
+
|
|
247
|
+
Status: unchanged in v0.4.9 because existing steering/cancellation contracts suffice.
|
|
248
|
+
|
|
249
|
+
## tasks
|
|
250
|
+
|
|
251
|
+
- **Purpose:** Maintain a session work board and linked operator-task state.
|
|
252
|
+
- **Placement:** Direct ORCHESTRATE, read class, sequential bookkeeping.
|
|
253
|
+
- **Contract:** plan/add/pick/start/done/block/drop/list with title, tasks, id, and note. Done requires evidence text; block requires a reason. Invalid state transitions fail.
|
|
254
|
+
- **Implementation:** `src/tools/tasks.ts` updates the board and durable full-snapshot task ledger; operator inbox reconciliation/pick/done can update Clio-owned state. Sequential execution prevents interleaved board changes.
|
|
255
|
+
- **Scientific integrity:** A completion note is an attributable claim, not an executed check or operator authorization. Linked operator status must be inspected before claiming completion.
|
|
256
|
+
- **Disposition:** Retain the explicit bookkeeping exception to read-class semantics; do not equate it with source mutation authority.
|
|
257
|
+
|
|
258
|
+
Status: unchanged in v0.4.9 because the existing board and operator correlation contract is retained.
|
|
259
|
+
|
|
260
|
+
## ledger
|
|
261
|
+
|
|
262
|
+
- **Purpose:** Exchange typed claims, findings, and reviews among peer workers.
|
|
263
|
+
- **Placement:** Direct ORCHESTRATE, read class, sequential; only workers with a bound agent-ledger port.
|
|
264
|
+
- **Contract:** Read with filters/watermark or post required kind-specific fields. Each run is limited to 20 posts; duplicate posts are not retry-safe.
|
|
265
|
+
- **Implementation:** `src/tools/ledger.ts` reads a local mirror and posts through the dispatch control lane, returning a bounded board and sequence watermark. It does not mutate the source workspace.
|
|
266
|
+
- **Scientific integrity:** Peer state may be stale. Findings and reviews carry provenance but remain untrusted data, not instructions or independent empirical proof.
|
|
267
|
+
- **Disposition:** Retain typed coordination and its explicit availability/post bounds.
|
|
268
|
+
|
|
269
|
+
Status: unchanged in v0.4.9 because coordination does not require scientific-data processing changes.
|
|
270
|
+
|
|
271
|
+
## panes
|
|
272
|
+
|
|
273
|
+
- **Purpose:** Display Clio-owned runs and fixed utility panes.
|
|
274
|
+
- **Placement:** Direct ORCHESTRATE, read class, sequential; requires detected host and live mux.
|
|
275
|
+
- **Contract:** show/open/close/list, target, and fixed files/logs/shell presets. Arbitrary argv stays operator-only; close is limited to owned panes.
|
|
276
|
+
- **Implementation:** `src/tools/panes.ts` and `panes-surface.ts` delegate to the mux. Sequential calls protect pane inventory; an unavailable host omits the tool rather than advertising a working pane layer.
|
|
277
|
+
- **Scientific integrity:** Display visibility is not execution evidence or validation. Pane operations cannot justify claims about worker completion beyond the displayed run facts.
|
|
278
|
+
- **Disposition:** Retain the bounded owned-pane interface and direct placement.
|
|
279
|
+
|
|
280
|
+
Status: unchanged in v0.4.9 because no data or evidence interpretation change is required.
|
|
281
|
+
|
|
282
|
+
## limitation
|
|
283
|
+
|
|
284
|
+
- **Purpose:** Record a typed statement of what could not be verified.
|
|
285
|
+
- **Placement:** Direct ORCHESTRATE, read class, parallel.
|
|
286
|
+
- **Contract:** Scope, enumerated reason, optional paths; successful receipt is its effect. Empty/invalid calls do not count.
|
|
287
|
+
- **Implementation:** `src/tools/limitation.ts` is pure and runs no process or file mutation. The finish contract recognizes its successful ledger receipt within the mutation window.
|
|
288
|
+
- **Scientific integrity:** It explicitly marks absent validation; it never converts missing or failed checks into a pass. Free-form final prose is not an equivalent receipt.
|
|
289
|
+
- **Disposition:** Retain the precise limitation-evidence boundary.
|
|
290
|
+
|
|
291
|
+
Status: unchanged in v0.4.9 because the existing receipt already preserves uncertainty honestly.
|
|
292
|
+
|
|
293
|
+
## decide
|
|
294
|
+
|
|
295
|
+
- **Purpose:** Record an agent-authored design choice beside operator decisions.
|
|
296
|
+
- **Placement:** Direct ORCHESTRATE, read class, sequential; needs a session decision board.
|
|
297
|
+
- **Contract:** Key, value, alternatives, rationale, optional label with byte/count bounds. A repeat agent key supersedes; an operator-owned key cannot be overwritten; worker calls are refused.
|
|
298
|
+
- **Implementation:** `src/tools/decide.ts` appends a decision-ledger entry. Sequential lookup/write prevents supersede races; dispatch and commit seams carry active decision references.
|
|
299
|
+
- **Scientific integrity:** Provenance records who chose what and why. It does not grant authorization, independently review the choice, or establish scientific validity.
|
|
300
|
+
- **Disposition:** Retain bounded decision provenance and direct placement.
|
|
301
|
+
|
|
302
|
+
Status: unchanged in v0.4.9 because the existing decision-board contract remains suitable.
|
|
303
|
+
|
|
304
|
+
## ask_user
|
|
305
|
+
|
|
306
|
+
- **Purpose:** Resolve missing operator choices through host-owned interviews.
|
|
307
|
+
- **Placement:** Direct INTERACT, read class, sequential; interactive handler required.
|
|
308
|
+
- **Contract:** Ask/complete, round/single-question mode, questions/options, decisions, summary, round bound, and local/outward exposure. Cancellation is an explicit host outcome.
|
|
309
|
+
- **Implementation:** `src/tools/ask-user.ts` bounds questions/rounds and records interview decisions. Exposure participates in autonomy admission; caller prose cannot choose authority or consequence tier.
|
|
310
|
+
- **Scientific integrity:** An operator answer establishes an attributed decision, not validation of a scientific claim. Missing answers and cancelled interviews are not fabricated approval.
|
|
311
|
+
- **Disposition:** Retain the direct host interaction surface and its admission boundary.
|
|
312
|
+
|
|
313
|
+
Status: unchanged in v0.4.9 because the operator explicitly retained INTERACT placement and the existing interview contract.
|
|
314
|
+
|
|
315
|
+
## gateway
|
|
316
|
+
|
|
317
|
+
- **Purpose:** Discover secondary capabilities without attaching every schema to every turn.
|
|
318
|
+
- **Placement:** Direct GATEWAY, read outer class, sequential.
|
|
319
|
+
- **Contract:** Find/describe/call with query/capability/args. Bounded listings, full described schemas, and capability results; unavailable/disallowed/invalid calls fail explicitly.
|
|
320
|
+
- **Implementation:** `src/tools/gateway/index.ts`, `registry.ts`, and `surface.ts` reuse inner admission, cancellation, authority decisions, result shaping, terminal propagation, and effective evidence identity. Nested accounting counts one model call; worker allowlists apply to discovery and invocation.
|
|
321
|
+
- **Scientific integrity:** Gateway success retains the underlying operation's facts instead of hiding them. The 31,272-byte measurement covers 19 attached fixture tools excluding ask_user/panes; a derived full-surface total is not comparable measurement evidence for overall shrinkage.
|
|
322
|
+
- **Disposition:** Add a stable router without introducing new authority or sandbox claims.
|
|
323
|
+
|
|
324
|
+
Status: landed in `021ec049`.
|
|
325
|
+
|
|
326
|
+
## run_script
|
|
327
|
+
|
|
328
|
+
- **Purpose:** Execute an inspectable scientific script with large logs streamed to disk and bounded model progress.
|
|
329
|
+
- **Placement:** Direct EXECUTE, execute class, sequential.
|
|
330
|
+
- **Contract:** Allowlisted PATH interpreter, workspace script/cwd, explicit argv/env, positive-integer timeout capped at six hours, and provenance-only input/output declarations. Records logs, manifest, identities, output states, and honest unsuccessful outcomes.
|
|
331
|
+
- **Implementation:** `src/tools/run-script.ts`, `src/core/safe-exec.ts`, and `run-records.ts` reuse the execution substrate with streaming sinks, 250 ms progress, bounded tails/hashes, and retention of 100 completed runs. Retention metadata reads cap at 64 KiB and skip nonregular entries explicitly.
|
|
332
|
+
- **Scientific integrity:** `exitCode` is effective status while `leaderExit` is observed process status. Original-group cleanup and one-second pipe draining can fail independently; escaped processes remain outside containment. ESRCH permanently closes ownership, but the probe-to-signal race remains accepted. Logs/argv can carry literal secrets; env values are omitted from manifest. Execute success is not scientific validation.
|
|
333
|
+
- **Disposition:** Add the streaming provenance contract; no installs, automatic retries, script-to-tool calling, or OS sandboxing.
|
|
334
|
+
|
|
335
|
+
Status: execution landed in `4ef9277e`; direct registration/policy integration in `021ec049`.
|
|
336
|
+
|
|
337
|
+
## extension_<id>__<name>
|
|
338
|
+
|
|
339
|
+
- **Purpose:** Expose operator-installed command capabilities under declared schemas.
|
|
340
|
+
- **Placement:** Gateway dynamic extension family; execute class and sequential command execution.
|
|
341
|
+
- **Contract:** Each installed descriptor supplies its schema; JSON arguments go to the command and bounded JSON/text results return. Invalid trust/digest, arguments, execution, or output fail rather than fabricating capability availability.
|
|
342
|
+
- **Implementation:** `src/tools/harness-extensions.ts` freezes schemas at registry construction, re-verifies the extension digest per call, projects safety through command argv, and uses safe-exec with timeout/output bounds and cancellation.
|
|
343
|
+
- **Scientific integrity:** Installation/trust and provenance identify the extension but cannot certify its scientific implementation. Each capability's described contract must state its own precision and validation semantics.
|
|
344
|
+
- **Disposition:** Retain existing command execution and move discovery/attestation to the gateway. This family record cannot pre-audit arbitrary future installed commands.
|
|
345
|
+
|
|
346
|
+
Status: placement and worker integration landed in `021ec049`; existing command engine retained.
|
|
347
|
+
|
|
348
|
+
## mcp_<id>__<tool>
|
|
349
|
+
|
|
350
|
+
- **Purpose:** Call explicitly trusted local stdio MCP capabilities.
|
|
351
|
+
- **Placement:** Gateway dynamic MCP family, session-owned; action class comes from trust, not server annotations.
|
|
352
|
+
- **Contract:** Discover/describe server schemas and call with validated arguments; bounded normalized results, protocol errors, timeouts, and cancellation. Project declarations cannot spawn without digest-bound operator trust.
|
|
353
|
+
- **Implementation:** `src/domains/gateway/mcp/` bounds framing, outbound queues, result text, stderr, pages/tools, and config/trust reads. `src/tools/gateway/mcp-capabilities.ts` bounds one call result to 16 KiB in model context (offloading larger results to external artifacts) and shares connection/close ownership. Discovery cancellation closes the shared connection without session restart; shutdown awaits teardown, and the client owns exit cleanup. ESRCH and bounded release permanently end signalling ownership.
|
|
354
|
+
- **Scientific integrity:** Trust authorizes launching an unsandboxed local process, not trusting its results. Incomplete cleanup is reported; residual PGID reuse and escaped-process limitations remain. Unknown external numerical semantics must be checked in each discovered capability's contract.
|
|
355
|
+
- **Disposition:** Add local stdio integration with explicit trust and bounded lifecycle; defer remote MCP/OAuth and OS isolation.
|
|
356
|
+
|
|
357
|
+
Status: client/config/trust landed in `d7b0edee`, CLI/slash in `bde78f76`, gateway cancellation/shutdown/exit ownership in `021ec049`.
|
package/library/registry.yaml
CHANGED
|
@@ -185,9 +185,9 @@ entries:
|
|
|
185
185
|
- run Clio contract tests
|
|
186
186
|
- test ACP over stdio
|
|
187
187
|
- Clio mock provider harness
|
|
188
|
-
version: 0.3.
|
|
188
|
+
version: 0.3.1
|
|
189
189
|
sourceUrl: skills/meta/clio-coder-test
|
|
190
|
-
sha256:
|
|
190
|
+
sha256: fc8b0f3f7748070456bcf5366a0cf0bb41bf1737549592d3064b7b81cc9b0512
|
|
191
191
|
provides:
|
|
192
192
|
- kind: skill
|
|
193
193
|
name: clio-coder-test
|
|
@@ -7,7 +7,7 @@ triggers:
|
|
|
7
7
|
- run Clio contract tests
|
|
8
8
|
- test ACP over stdio
|
|
9
9
|
- Clio mock provider harness
|
|
10
|
-
version: 0.3.
|
|
10
|
+
version: 0.3.1
|
|
11
11
|
license: Apache-2.0
|
|
12
12
|
clio-coder:
|
|
13
13
|
registry-id: iowarp/clio-coder
|
|
@@ -20,10 +20,11 @@ clio-coder:
|
|
|
20
20
|
|
|
21
21
|
# Clio Test
|
|
22
22
|
|
|
23
|
-
The root Node suite has
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
23
|
+
The root Node suite has a small required contract/process lane, an installed-package
|
|
24
|
+
qualification lane, and explicit extended development regressions. Contract tests
|
|
25
|
+
import source through tsx; CLI tests use the current built binary. Lint owns static
|
|
26
|
+
import boundaries and library pins. Publication performs only an exact-candidate
|
|
27
|
+
preflight after successful qualification.
|
|
27
28
|
|
|
28
29
|
For the question of whether a change may leave your machine (commit, push, or
|
|
29
30
|
PR), use `clio-coder-dev`. **REQUIRED SUB-SKILL:** `clio-coder-dev` for the
|
|
@@ -38,15 +39,24 @@ npm run skills:check # catalog pins and marketplace index
|
|
|
38
39
|
npm run test:file -- tests/contracts/<file>.test.ts
|
|
39
40
|
npm run build # tsup plus the codewiki asset
|
|
40
41
|
npm run test:file -- tests/smoke/<file>.test.ts # requires a current build
|
|
41
|
-
npm run test #
|
|
42
|
-
npm run test:
|
|
42
|
+
npm run test # required contracts and three process smoke files
|
|
43
|
+
npm run test:full # explicit extended root investigation
|
|
44
|
+
npm run test:web:full # explicit extended web investigation
|
|
45
|
+
pnpm --filter @iowarp/clio-coder-web verify # app types, lint, tests, build, browser
|
|
43
46
|
npm run ci # deterministic root gate
|
|
44
|
-
npm run ci:release #
|
|
47
|
+
npm run ci:release # qualify clean committed source and exact installed tarball
|
|
48
|
+
npm run release:preflight # fast check of the unchanged qualified package
|
|
45
49
|
```
|
|
46
50
|
|
|
47
|
-
The
|
|
48
|
-
|
|
49
|
-
|
|
51
|
+
The required web tests cover authentication, permissions, cancellation, worker RPC,
|
|
52
|
+
egress and process ownership. The installed-package lane includes one real browser
|
|
53
|
+
boot/reconnect against the installed server. The full web `verify` command is an
|
|
54
|
+
explicit development investigation, including its viewport/accessibility matrix.
|
|
55
|
+
Do not run full development tests repeatedly during release or publication.
|
|
56
|
+
|
|
57
|
+
The separate trace viewer is retired. `apps/workbench/` is retained reference
|
|
58
|
+
source, excluded from builds, publication and product gates. Use `test:web` for
|
|
59
|
+
the required app tests alone; app `verify` requires headless Chrome.
|
|
50
60
|
|
|
51
61
|
No deterministic gate contacts a real model. When a task explicitly requires
|
|
52
62
|
live validation, build first and run `node dist/cli/index.js run` against a
|
|
@@ -63,8 +73,7 @@ settings with the result.
|
|
|
63
73
|
| Any import edit under `src/` | `npm run lint` | Hygiene invokes all six boundary rules. |
|
|
64
74
|
| CLI, entry, process lifecycle, or ACP stdio flow | Build, then the closest file under `tests/smoke/` | Smoke executes the built binary. |
|
|
65
75
|
| Published package contents | Build, then `tests/smoke/installed-package.test.ts` | The test packs and installs the actual artifact. |
|
|
66
|
-
|
|
|
67
|
-
| Workbench | `deno task verify` in `apps/workbench` | Its Deno/Vite gate is independent of the root npm gate. |
|
|
76
|
+
| Unified web application | `npm run test:web` | Required authentication/runtime boundaries; full `verify` is optional development work. |
|
|
68
77
|
|
|
69
78
|
Read `references/test-map.md` for the current file map and exact subset
|
|
70
79
|
commands.
|
|
@@ -93,7 +102,7 @@ The authoritative definitions and exceptions are in
|
|
|
93
102
|
## Source and configuration reload
|
|
94
103
|
|
|
95
104
|
Contract tests and hygiene read current source, so they need no build. Smoke
|
|
96
|
-
tests run `dist/`, so rebuild first or keep `npm run dev` (`
|
|
105
|
+
tests run `dist/`, so rebuild first or keep `npm run dev` (`scripts/build.ts --watch`)
|
|
97
106
|
running. A running Clio process does not reload changed ESM modules; restart it
|
|
98
107
|
after a fresh build.
|
|
99
108
|
|
|
@@ -115,7 +124,8 @@ three buckets:
|
|
|
115
124
|
3. Run the narrowest related contract or application test.
|
|
116
125
|
4. If the built boundary changed, build and run the closest smoke file.
|
|
117
126
|
5. Run `npm run ci` before handing back a broad root change. Use
|
|
118
|
-
`npm run ci:release` when
|
|
127
|
+
`npm run ci:release` on the clean committed candidate when packaging is in scope.
|
|
128
|
+
It records the exact source/artifact; use only `release:preflight` afterward.
|
|
119
129
|
6. Report exactly what ran and what remains unverified.
|
|
120
130
|
|
|
121
131
|
For one test file or an `it.only` while debugging:
|
|
@@ -18,14 +18,14 @@ Expected:
|
|
|
18
18
|
Prompt: "I edited `src/cli/run.ts`. How do I verify end-to-end?"
|
|
19
19
|
Expected:
|
|
20
20
|
- Builds (or relies on `npm run dev` watch), then starts with
|
|
21
|
-
`npm run test:file -- tests/smoke/cli-core.test.ts`.
|
|
21
|
+
`npm run test:file -- tests/extended-smoke/cli-core.test.ts`.
|
|
22
22
|
- Explains smoke spawns `dist/cli/index.js`, so it only sees built code.
|
|
23
23
|
|
|
24
24
|
## T3 — hot reload
|
|
25
25
|
Prompt: "How do I keep testing without rebuilding every time?"
|
|
26
26
|
Expected:
|
|
27
27
|
- Fast loop (contracts/boundaries, tsx, no build) for logic/contracts.
|
|
28
|
-
- `npm run dev` (`
|
|
28
|
+
- `npm run dev` (`scripts/build.ts --watch`) keeps `dist/` fresh for smoke.
|
|
29
29
|
- States there is no in-process code reload of a running session; restart for
|
|
30
30
|
interactive testing. Distinguishes this from config hot-reload (classify.ts).
|
|
31
31
|
|
|
@@ -46,3 +46,17 @@ Expected:
|
|
|
46
46
|
|
|
47
47
|
One representative scenario via `clio-coder eval skill` against Nemo-3.5-Lightning
|
|
48
48
|
(30B local, llamacpp on mini), full-auto sandbox. NOT CLEANLY RUN: scenario id is T1; driver's --scenario S1 exited 2; re-run did not land before the time-box.
|
|
49
|
+
|
|
50
|
+
## T5 — current application gates
|
|
51
|
+
Prompt: "The web API changed. Which checks belong to this release?"
|
|
52
|
+
Expected:
|
|
53
|
+
- Builds the root CLI for ACP fixtures, then runs
|
|
54
|
+
`pnpm --filter @iowarp/clio-coder-web verify` with temporary state outside the checkout.
|
|
55
|
+
- Names app type, API/worker boundary, test, client build and headless-browser checks.
|
|
56
|
+
- Explains root `ci:release` includes web tests and the installed package audit.
|
|
57
|
+
- Does not run the retired trace viewer or reference-only Workbench gates.
|
|
58
|
+
|
|
59
|
+
RED: the prior 0.3.0 instructions prescribe both obsolete application lanes.
|
|
60
|
+
GREEN: the current instructions name only the unified app lane and retain the
|
|
61
|
+
independent CLI/TUI/headless checks. This is a source/command reconciliation,
|
|
62
|
+
not a claim of a new live-model skill evaluation.
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
|
|
3
3
|
"name": "clio-coder-test",
|
|
4
|
-
"version": "0.3.
|
|
4
|
+
"version": "0.3.1",
|
|
5
5
|
"description": "Verifies a Clio Coder source change against the current contract, smoke, boundary, and application test lanes, including temporary-state and local-provider harnesses. Not for deciding what may change; use clio-coder-dev.",
|
|
6
6
|
"license": "Apache-2.0",
|
|
7
7
|
"extensions": {
|
|
@@ -1,27 +1,28 @@
|
|
|
1
1
|
# Where Clio's tests live
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
3
|
+
Routine contracts and three process smoke files protect core product boundaries.
|
|
4
|
+
The installed-package and real native timing checks belong to qualification.
|
|
5
|
+
Extended regressions are explicit development investigations.
|
|
6
6
|
|
|
7
7
|
## Layout
|
|
8
8
|
|
|
9
|
-
| Lane | Path |
|
|
9
|
+
| Lane | Path | Command | Build needed |
|
|
10
10
|
|---|---|---|---|
|
|
11
|
-
|
|
|
12
|
-
|
|
|
13
|
-
|
|
|
14
|
-
|
|
|
15
|
-
|
|
|
16
|
-
|
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
11
|
+
| Required contracts | `tests/contracts/*.test.ts` | `npm run test:file -- <file>` | CLI tests require current dist |
|
|
12
|
+
| Required process smoke | ACP, binary boot, process lifecycle under `tests/smoke/` | `npm run test` includes them | Yes |
|
|
13
|
+
| Package qualification | Installed package and native call timing under `tests/smoke/` | `npm run ci:release` | Built once by qualification |
|
|
14
|
+
| Extended regressions | `tests/extended/`, `tests/extended-smoke/` | `npm run test:full` or a focused `test:file` | Yes for CLI scenarios |
|
|
15
|
+
| Static boundaries and pins | `scripts/check-hygiene.ts` | `npm run lint` | No |
|
|
16
|
+
| Required web boundaries | Selected files in `apps/clio-coder-web/tests/` | `npm run test:web` | Root build |
|
|
17
|
+
| Full web investigation | All web tests and browser matrix | `pnpm --filter @iowarp/clio-coder-web verify` | Yes |
|
|
18
|
+
|
|
19
|
+
`npm run ci` runs the routine lane. `npm run ci:release` qualifies a clean,
|
|
20
|
+
committed candidate and its exact tarball; `npm run release:preflight` checks
|
|
21
|
+
that qualification without repeating development tests. See CONTRIBUTING.md.
|
|
21
22
|
|
|
22
23
|
## Contract files
|
|
23
24
|
|
|
24
|
-
| Area |
|
|
25
|
+
| Area | Required or extended focused files |
|
|
25
26
|
|---|---|
|
|
26
27
|
| Authentication | `auth-login-write-failure`, `auth-storage-durability` |
|
|
27
28
|
| Context, session, and state | `context-lifecycle`, `memory-scope`, `project-bootstrap`, `session-durability`, `state-file-lock`, `task-board-done`, `working-set-core` |
|
|
@@ -32,7 +33,7 @@ Workbench gate is separate.
|
|
|
32
33
|
| Safety and tools | `bash-exec-settlement`, `rejection-feedback`, `safe-resource-write`, `safety-gates`, `tool-boundaries` |
|
|
33
34
|
| Evidence, eval, and release | `eval-boundary`, `evidence-integrity`, `metering-integrity`, `release-boundary` |
|
|
34
35
|
| Extensions, interop, and skills | `extension-compatibility`, `extension-reload-coordinator`, `extension-reload-slash`, `extension-resources`, `extension-snapshot`, `interop-boundary`, `marketplace-offer`, `skill-install` |
|
|
35
|
-
| Documentation
|
|
36
|
+
| Documentation navigation | `docs-server` |
|
|
36
37
|
|
|
37
38
|
Append `.test.ts` to every stem in the table. Use `rg` over the files before
|
|
38
39
|
choosing a lane; related behavior can span more than one focused contract.
|
|
@@ -70,12 +71,12 @@ Child fixtures in `tests/fixtures/` are
|
|
|
70
71
|
|
|
71
72
|
```bash
|
|
72
73
|
# all contracts (the shell expands the file pattern)
|
|
73
|
-
npm run test:
|
|
74
|
+
npm run test:full
|
|
74
75
|
|
|
75
76
|
# one contract or smoke file
|
|
76
77
|
npm run test:file -- tests/contracts/skill-install.test.ts
|
|
77
78
|
npm run build
|
|
78
|
-
npm run test:file -- tests/smoke/cli-core.test.ts
|
|
79
|
+
npm run test:file -- tests/extended-smoke/cli-core.test.ts
|
|
79
80
|
|
|
80
81
|
# only it.only or describe.only within one file
|
|
81
82
|
npm run test:file -- --test-only tests/contracts/skill-install.test.ts
|
|
@@ -65,8 +65,8 @@ skills:
|
|
|
65
65
|
sha256: 8980f3bed0f06c24685bc0a02f3ffbbcdac9442616dc3ce54122265b666ae0d7
|
|
66
66
|
- name: clio-coder-test
|
|
67
67
|
path: meta/clio-coder-test
|
|
68
|
-
version: 0.3.
|
|
69
|
-
sha256:
|
|
68
|
+
version: 0.3.1
|
|
69
|
+
sha256: 1e8c839b3668e50cd8ed7c69e7ae3ccc5afa15a1db72eb2b8babb1672134fba1
|
|
70
70
|
- name: credentials
|
|
71
71
|
path: meta/credentials
|
|
72
72
|
version: 0.2.0
|