@poetic-ai/poetic 1.42.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/.github/SECURITY.md +47 -0
- package/.nvmrc +1 -0
- package/.poetic/README.md +37 -0
- package/.poetic/providers/catalog.json +12051 -0
- package/.poetic/providers/pricing.json +1272 -0
- package/.poetic/providers/registry.json +3369 -0
- package/CHANGELOG.md +552 -0
- package/CODE_OF_CONDUCT.md +40 -0
- package/CONTRIBUTING.md +23 -0
- package/INSTALL.md +454 -0
- package/LICENSE +21 -0
- package/README.md +474 -0
- package/dist/BasicOptimizationCompetitionRunner-5H5TBYO4.js +153 -0
- package/dist/ExecutionTracker-UVONC4C6.js +16 -0
- package/dist/OptimizationConfig-7DFY2TST.js +17 -0
- package/dist/OptimizationEngine-JIMGP3LY.js +1597 -0
- package/dist/PromptStore-U6ZD3ZMQ.js +18 -0
- package/dist/actions-LUJPINLJ.js +322 -0
- package/dist/agent-ingest-3DJUJ7FU.js +53 -0
- package/dist/aggregator-DNCBINFO.js +12 -0
- package/dist/ai-judge-5QT5QJVU.js +156 -0
- package/dist/allowlist-grounding-RO6HKUFI.js +16 -0
- package/dist/allowlist-utils-23V7TJ3G.js +28 -0
- package/dist/anchored-turn-service-JULUCUIK.js +489 -0
- package/dist/api-transport-4TYTNLTJ.js +1087 -0
- package/dist/apply-completion-mode-AW2MOS3R.js +89 -0
- package/dist/artifact-migrator-23L45ISD.js +267 -0
- package/dist/ask-HWVV6QFR.js +135 -0
- package/dist/auth-5KEDKAPP.js +67 -0
- package/dist/auth-7TT3JINV.js +78 -0
- package/dist/auth-E6XUNZ5M.js +68 -0
- package/dist/auth-H3XDZE22.js +134 -0
- package/dist/auth-OC4E6633.js +71 -0
- package/dist/auth-S4CTX4GQ.js +44 -0
- package/dist/auth-YLH3S7EY.js +69 -0
- package/dist/auth-liveness-TDDEZY3T.js +46 -0
- package/dist/auto-optimizer-VPRWOWGU.js +80 -0
- package/dist/autoloop-cleanup-JOGKTLWA.js +109 -0
- package/dist/autoloop-evidence-gates-PCDALGVJ.js +38 -0
- package/dist/autoloop-gate-policy-Z7FVJVXV.js +175 -0
- package/dist/autoloop-helpers-2KTK43GL.js +22 -0
- package/dist/autoloop-ledger-W7QO62PX.js +96 -0
- package/dist/autoloop-ledger-subscriber-Z5RW5EIE.js +162 -0
- package/dist/autoloop-run-defaults-FERGRZGP.js +19 -0
- package/dist/autoloop-run-lock-CT2NWSV3.js +197 -0
- package/dist/autoloop-success-J2VKKBXQ.js +85 -0
- package/dist/autoloop-termination-summary-RN75F422.js +58 -0
- package/dist/autoloop-trajectory-XFIEXP5Z.js +282 -0
- package/dist/autoloop-wall-clock-T7ZVIQOC.js +12 -0
- package/dist/autonomous-loop-controller-PW4XVFGQ.js +4120 -0
- package/dist/backend-P3DAYRP7.js +29 -0
- package/dist/background-executor-CBN552V4.js +257 -0
- package/dist/backlog-execution-intent-U4XYPTV6.js +15 -0
- package/dist/backup-active-store-5WXG6SXT.js +17 -0
- package/dist/backup-telemetry-db-XGLXAA3N.js +254 -0
- package/dist/basic-competition-master-VCSBJVRN.js +344 -0
- package/dist/branch-archive-manager-RP6FP3ZC.js +254 -0
- package/dist/branch-cleanup-manager-RSHAI7YR.js +20 -0
- package/dist/build-gate-YHGRB4QB.js +71 -0
- package/dist/change-summary-WY7J5TOX.js +33 -0
- package/dist/chunk-23A26CSN.js +123 -0
- package/dist/chunk-27UTJD3M.js +265 -0
- package/dist/chunk-2A5CILN3.js +310 -0
- package/dist/chunk-2AQUWJPW.js +225 -0
- package/dist/chunk-2BZ53J6J.js +2344 -0
- package/dist/chunk-2DY5KNVM.js +276 -0
- package/dist/chunk-2EIA4RBE.js +659 -0
- package/dist/chunk-2IUXIGQD.js +1064 -0
- package/dist/chunk-2N42MS2Z.js +2193 -0
- package/dist/chunk-2QJ3H3L7.js +42 -0
- package/dist/chunk-2QLYTVYX.js +791 -0
- package/dist/chunk-2VSQMRCB.js +18 -0
- package/dist/chunk-2XQXYBM2.js +130 -0
- package/dist/chunk-2YFUIER7.js +426 -0
- package/dist/chunk-34CNP2HB.js +148 -0
- package/dist/chunk-35P3W3JX.js +456 -0
- package/dist/chunk-36PEBZAF.js +18 -0
- package/dist/chunk-3AOKYKA7.js +22 -0
- package/dist/chunk-3BCUNHKF.js +475 -0
- package/dist/chunk-3FLXLLB7.js +26 -0
- package/dist/chunk-3FOZ2VHV.js +100 -0
- package/dist/chunk-3G6FZCRF.js +106 -0
- package/dist/chunk-3M57DADF.js +44 -0
- package/dist/chunk-3S62LLWJ.js +543 -0
- package/dist/chunk-3ZPQLGV7.js +2904 -0
- package/dist/chunk-44N5WZZH.js +45 -0
- package/dist/chunk-45FPSA3B.js +125 -0
- package/dist/chunk-4BJ3O4RQ.js +929 -0
- package/dist/chunk-4BOP7T6L.js +2321 -0
- package/dist/chunk-4BTDUT2S.js +42 -0
- package/dist/chunk-4CSS7WVI.js +143 -0
- package/dist/chunk-4CUY7AFY.js +247 -0
- package/dist/chunk-4GSN5O5J.js +62 -0
- package/dist/chunk-4HN6DF7V.js +1027 -0
- package/dist/chunk-4IAPOG5V.js +415 -0
- package/dist/chunk-4IYIZQWV.js +48 -0
- package/dist/chunk-4NXPXE62.js +84 -0
- package/dist/chunk-4RCCF5BR.js +712 -0
- package/dist/chunk-4V7NAQ4R.js +19527 -0
- package/dist/chunk-4VJITV4P.js +445 -0
- package/dist/chunk-4YX7J6QL.js +1859 -0
- package/dist/chunk-527OBWQB.js +338 -0
- package/dist/chunk-5D4A7E3D.js +448 -0
- package/dist/chunk-5DLKYTQX.js +4003 -0
- package/dist/chunk-5EERLVZB.js +139 -0
- package/dist/chunk-5H72XE4H.js +256 -0
- package/dist/chunk-5HDP7XZG.js +91 -0
- package/dist/chunk-5LAMRH4X.js +969 -0
- package/dist/chunk-5LTN43AS.js +1972 -0
- package/dist/chunk-5RBHQYDB.js +2206 -0
- package/dist/chunk-5WCQRDRB.js +588 -0
- package/dist/chunk-5WRLK5KW.js +700 -0
- package/dist/chunk-5ZCXC23G.js +595 -0
- package/dist/chunk-6BM72ZMG.js +31 -0
- package/dist/chunk-6EDAJH2I.js +68 -0
- package/dist/chunk-6EQKFDBH.js +457 -0
- package/dist/chunk-6MFRHTRI.js +115 -0
- package/dist/chunk-6TZJRKNW.js +321 -0
- package/dist/chunk-6V7HGQFZ.js +20 -0
- package/dist/chunk-6VWVO2TU.js +3746 -0
- package/dist/chunk-6Y5TWI7H.js +146 -0
- package/dist/chunk-6Y5U7UFY.js +91 -0
- package/dist/chunk-6ZLAK3XG.js +14 -0
- package/dist/chunk-72XCRQED.js +34 -0
- package/dist/chunk-72YTZMAM.js +589 -0
- package/dist/chunk-73BBJOKA.js +263 -0
- package/dist/chunk-73NCTWKL.js +188 -0
- package/dist/chunk-77I6G4CO.js +1 -0
- package/dist/chunk-7DHRDWFS.js +3104 -0
- package/dist/chunk-7DNSNKJV.js +78 -0
- package/dist/chunk-7FMJVYBS.js +307 -0
- package/dist/chunk-7GDRQBQC.js +419 -0
- package/dist/chunk-7GPCEFUV.js +270 -0
- package/dist/chunk-7IL4A2PP.js +948 -0
- package/dist/chunk-7MMLMXO6.js +3679 -0
- package/dist/chunk-7QCZSLBH.js +1 -0
- package/dist/chunk-7R2WLDOS.js +62 -0
- package/dist/chunk-7T7RUJI7.js +949 -0
- package/dist/chunk-A2WKSVX7.js +43 -0
- package/dist/chunk-A3YGID55.js +133 -0
- package/dist/chunk-A722DEVA.js +14 -0
- package/dist/chunk-ACDIT7OP.js +1376 -0
- package/dist/chunk-ACKIPAOJ.js +302 -0
- package/dist/chunk-APPNGGN7.js +365 -0
- package/dist/chunk-APV6MK5E.js +137 -0
- package/dist/chunk-ASEP3M2W.js +968 -0
- package/dist/chunk-AT4TNPWW.js +2931 -0
- package/dist/chunk-ATVKCSGT.js +250 -0
- package/dist/chunk-AURFMVCD.js +899 -0
- package/dist/chunk-AX6GWE7V.js +47 -0
- package/dist/chunk-AY5EWJPF.js +385 -0
- package/dist/chunk-BAV2HJXS.js +194 -0
- package/dist/chunk-BBHRN366.js +89 -0
- package/dist/chunk-BBPSTTPA.js +1004 -0
- package/dist/chunk-BDATUDDJ.js +992 -0
- package/dist/chunk-BKE5PG5L.js +20414 -0
- package/dist/chunk-BLPHWMDK.js +797 -0
- package/dist/chunk-BSE4R6XD.js +322 -0
- package/dist/chunk-BXGMAU4A.js +396 -0
- package/dist/chunk-BXI4NXL3.js +507 -0
- package/dist/chunk-BZU2O43F.js +1125 -0
- package/dist/chunk-C3L6YQ7P.js +147 -0
- package/dist/chunk-C57KJOUQ.js +121 -0
- package/dist/chunk-CCV7BPSY.js +118 -0
- package/dist/chunk-CD7ISXA4.js +826 -0
- package/dist/chunk-CE5OZBYY.js +21 -0
- package/dist/chunk-CFBIG37O.js +154 -0
- package/dist/chunk-CJC6GZ46.js +457 -0
- package/dist/chunk-CKCDGXIV.js +408 -0
- package/dist/chunk-CKNX3TTP.js +10338 -0
- package/dist/chunk-CLKSETWE.js +10 -0
- package/dist/chunk-CP7H3HSP.js +1552 -0
- package/dist/chunk-CPLEWXNZ.js +66 -0
- package/dist/chunk-CQM3A35X.js +844 -0
- package/dist/chunk-CS6P76D3.js +103 -0
- package/dist/chunk-CTLUBNCW.js +622 -0
- package/dist/chunk-CUSRN6RJ.js +632 -0
- package/dist/chunk-D5EP5D2W.js +26 -0
- package/dist/chunk-D5RYINO7.js +412 -0
- package/dist/chunk-DBFS4HMH.js +751 -0
- package/dist/chunk-DC4ZYMXJ.js +115 -0
- package/dist/chunk-DCBZP442.js +9243 -0
- package/dist/chunk-DCYF7EKG.js +26 -0
- package/dist/chunk-DDMAFNUK.js +5351 -0
- package/dist/chunk-DF5SLDE4.js +966 -0
- package/dist/chunk-DJFW7SMX.js +348 -0
- package/dist/chunk-DQFLLBJW.js +121 -0
- package/dist/chunk-DSFM56OA.js +1203 -0
- package/dist/chunk-DTY4APYV.js +218 -0
- package/dist/chunk-DXH5JBRS.js +437 -0
- package/dist/chunk-E3NTPHEO.js +194 -0
- package/dist/chunk-E74LUIID.js +302 -0
- package/dist/chunk-EI57M5BI.js +194 -0
- package/dist/chunk-EJ4ZAWLV.js +305 -0
- package/dist/chunk-EJGCZGUF.js +1483 -0
- package/dist/chunk-EK2U3YEG.js +486 -0
- package/dist/chunk-ELMFYNV7.js +109 -0
- package/dist/chunk-ENRGKNR5.js +25 -0
- package/dist/chunk-ETYDXCK7.js +679 -0
- package/dist/chunk-EYRH3W74.js +239 -0
- package/dist/chunk-F23DIWNN.js +1024 -0
- package/dist/chunk-F5JO7HAS.js +94 -0
- package/dist/chunk-F7ER6ANO.js +174 -0
- package/dist/chunk-FATUVIIN.js +374 -0
- package/dist/chunk-FC23CTXV.js +322 -0
- package/dist/chunk-FD4ERYEG.js +22 -0
- package/dist/chunk-FH7WOJAE.js +79 -0
- package/dist/chunk-FHOWVDF5.js +1342 -0
- package/dist/chunk-FKAUPHMR.js +96 -0
- package/dist/chunk-FONNFJXA.js +137 -0
- package/dist/chunk-FQ7FSZRW.js +75 -0
- package/dist/chunk-FRG57FPM.js +240 -0
- package/dist/chunk-FUVP64ER.js +31 -0
- package/dist/chunk-FYOILAN5.js +6818 -0
- package/dist/chunk-G35UYQ6Z.js +69 -0
- package/dist/chunk-G36W2T2S.js +1143 -0
- package/dist/chunk-G3L2L5XZ.js +49 -0
- package/dist/chunk-G4THLFV3.js +148 -0
- package/dist/chunk-GAFJEYLK.js +29 -0
- package/dist/chunk-GFGYB2ZU.js +1689 -0
- package/dist/chunk-GG6KJYW6.js +85 -0
- package/dist/chunk-GHHFDU2U.js +55 -0
- package/dist/chunk-GHTZSQB7.js +57 -0
- package/dist/chunk-GK37ILCX.js +1231 -0
- package/dist/chunk-GKN3HMN4.js +2809 -0
- package/dist/chunk-GNVDBVJP.js +156 -0
- package/dist/chunk-GPEL3FBM.js +924 -0
- package/dist/chunk-GPSNGPZS.js +1604 -0
- package/dist/chunk-GSGD5E4C.js +30 -0
- package/dist/chunk-GSUQJJXQ.js +331 -0
- package/dist/chunk-GSV226X6.js +110 -0
- package/dist/chunk-H2AYQIHW.js +224 -0
- package/dist/chunk-H66DXFS5.js +1374 -0
- package/dist/chunk-H6G7QRMQ.js +35 -0
- package/dist/chunk-H7JAGHZT.js +59 -0
- package/dist/chunk-H7ZEFECA.js +316 -0
- package/dist/chunk-HAC6EHZZ.js +79 -0
- package/dist/chunk-HIO33P3G.js +19 -0
- package/dist/chunk-HMVQIPH3.js +547 -0
- package/dist/chunk-HOYBYAOA.js +257 -0
- package/dist/chunk-HX5P3CSP.js +1784 -0
- package/dist/chunk-I46EG2XQ.js +65 -0
- package/dist/chunk-I4NPDSCB.js +279 -0
- package/dist/chunk-I5WRT7ZR.js +514 -0
- package/dist/chunk-IC7I6YIJ.js +301 -0
- package/dist/chunk-IDCSOZVN.js +78 -0
- package/dist/chunk-IFCBYECK.js +112 -0
- package/dist/chunk-IFZCPEY2.js +66 -0
- package/dist/chunk-IKFP2KUR.js +48 -0
- package/dist/chunk-IRFBN336.js +878 -0
- package/dist/chunk-IUXNGKA6.js +152 -0
- package/dist/chunk-IV2RVAN7.js +1356 -0
- package/dist/chunk-IZYIQQ7X.js +53 -0
- package/dist/chunk-J3UUR7DE.js +210 -0
- package/dist/chunk-J54VUAY2.js +566 -0
- package/dist/chunk-J62KPGII.js +464 -0
- package/dist/chunk-J6P3FWWW.js +130 -0
- package/dist/chunk-JKBHJQMT.js +434 -0
- package/dist/chunk-JLS65NUQ.js +14 -0
- package/dist/chunk-JOSYEJKY.js +141 -0
- package/dist/chunk-JPKSXKNB.js +94 -0
- package/dist/chunk-JQNJB2BB.js +2440 -0
- package/dist/chunk-JRVNSWSQ.js +2626 -0
- package/dist/chunk-JSWMRQYG.js +28 -0
- package/dist/chunk-JZKNBBIB.js +152 -0
- package/dist/chunk-K54Y7MLK.js +160 -0
- package/dist/chunk-K65546RE.js +183 -0
- package/dist/chunk-KM3F7SYE.js +702 -0
- package/dist/chunk-KNDYMVWN.js +102 -0
- package/dist/chunk-KNT72VR6.js +132 -0
- package/dist/chunk-KP6YILMU.js +482 -0
- package/dist/chunk-KQEBSK3T.js +274 -0
- package/dist/chunk-KT6VHSPF.js +84 -0
- package/dist/chunk-KTMW65UX.js +14 -0
- package/dist/chunk-KZ5CJVBP.js +1813 -0
- package/dist/chunk-L4427KOE.js +26 -0
- package/dist/chunk-L6OM4A22.js +189 -0
- package/dist/chunk-L7E6XCRA.js +1042 -0
- package/dist/chunk-L7JZLXQL.js +173 -0
- package/dist/chunk-LAMKBTXX.js +40 -0
- package/dist/chunk-LDCF2MKN.js +132 -0
- package/dist/chunk-LEIIWPWQ.js +78 -0
- package/dist/chunk-LFTQVYBB.js +31 -0
- package/dist/chunk-LG3PDRTR.js +2872 -0
- package/dist/chunk-LGHII5ET.js +23 -0
- package/dist/chunk-LH5QY22X.js +1205 -0
- package/dist/chunk-LIVJ6266.js +438 -0
- package/dist/chunk-LKRAR3IH.js +276 -0
- package/dist/chunk-LO23NABI.js +3063 -0
- package/dist/chunk-LO3X5NLS.js +326 -0
- package/dist/chunk-LPITVM7M.js +339 -0
- package/dist/chunk-LR5IJIGV.js +810 -0
- package/dist/chunk-LRGMHROI.js +79 -0
- package/dist/chunk-LUVKFFWR.js +315 -0
- package/dist/chunk-LWCBNGH6.js +35 -0
- package/dist/chunk-LWTN3WRV.js +260 -0
- package/dist/chunk-M3HQYKQX.js +308 -0
- package/dist/chunk-M6GVSPEH.js +1016 -0
- package/dist/chunk-MF5HP6XV.js +221 -0
- package/dist/chunk-MHLCBZJB.js +328 -0
- package/dist/chunk-MN6PL4AN.js +120 -0
- package/dist/chunk-MOEY65Z6.js +5678 -0
- package/dist/chunk-MQ4WA34C.js +206 -0
- package/dist/chunk-MWHF5V7U.js +223 -0
- package/dist/chunk-MWHLBPNU.js +211 -0
- package/dist/chunk-MWK5UZQ3.js +1068 -0
- package/dist/chunk-MYLH2S4G.js +64 -0
- package/dist/chunk-MZ5WYKNA.js +28 -0
- package/dist/chunk-N4VTRA7K.js +131 -0
- package/dist/chunk-N5DX4JAK.js +12 -0
- package/dist/chunk-N65O4XTH.js +5011 -0
- package/dist/chunk-NEQUQHOX.js +223 -0
- package/dist/chunk-NGK6PEOG.js +25 -0
- package/dist/chunk-NJVD4PWE.js +1033 -0
- package/dist/chunk-NM6PMYY4.js +768 -0
- package/dist/chunk-NN4PJDHP.js +708 -0
- package/dist/chunk-NP2V3L7K.js +226 -0
- package/dist/chunk-NRLY536M.js +260 -0
- package/dist/chunk-NRNE225N.js +1270 -0
- package/dist/chunk-NS2K2GTP.js +605 -0
- package/dist/chunk-NS33V3IM.js +51 -0
- package/dist/chunk-NSHASMZZ.js +71 -0
- package/dist/chunk-NWOYOA6H.js +378 -0
- package/dist/chunk-NWRUSEXG.js +322 -0
- package/dist/chunk-NZGDAWIP.js +1905 -0
- package/dist/chunk-O47UOKU3.js +395 -0
- package/dist/chunk-O4G2W3ST.js +9831 -0
- package/dist/chunk-O6V4PNLO.js +63 -0
- package/dist/chunk-OA4GPILI.js +624 -0
- package/dist/chunk-OGMSYL6J.js +227 -0
- package/dist/chunk-OIS7J26S.js +319 -0
- package/dist/chunk-OMX5VL43.js +79 -0
- package/dist/chunk-ON3G73BU.js +264 -0
- package/dist/chunk-OPYFYTWQ.js +220 -0
- package/dist/chunk-OQ6K46CK.js +1734 -0
- package/dist/chunk-OYZYO7TV.js +47 -0
- package/dist/chunk-OZ4REHIN.js +4386 -0
- package/dist/chunk-P47VN5F4.js +282 -0
- package/dist/chunk-P5I4X7A7.js +353 -0
- package/dist/chunk-P6VQROCO.js +594 -0
- package/dist/chunk-P7CQGPLS.js +30 -0
- package/dist/chunk-PCAGC5MR.js +1763 -0
- package/dist/chunk-PFTQBXS6.js +5181 -0
- package/dist/chunk-PGSPX4SU.js +15 -0
- package/dist/chunk-PIKLF7BM.js +432 -0
- package/dist/chunk-PJWJ3SAV.js +22 -0
- package/dist/chunk-PKIFMV72.js +100 -0
- package/dist/chunk-PL37JDNA.js +189 -0
- package/dist/chunk-PTH5E5XO.js +195 -0
- package/dist/chunk-PW6AXLQC.js +4128 -0
- package/dist/chunk-PYITM4N2.js +79 -0
- package/dist/chunk-PZ5AY32C.js +10 -0
- package/dist/chunk-Q3RO7N35.js +45 -0
- package/dist/chunk-Q3WIC6GQ.js +2670 -0
- package/dist/chunk-Q5XIXSHX.js +271 -0
- package/dist/chunk-QGJDMEOV.js +34 -0
- package/dist/chunk-QNOB37UH.js +58 -0
- package/dist/chunk-QOCOVLUH.js +462 -0
- package/dist/chunk-QTCJ5CC5.js +172 -0
- package/dist/chunk-QVFV5IP2.js +232 -0
- package/dist/chunk-QVZMFDYG.js +29 -0
- package/dist/chunk-R35PEUKH.js +511 -0
- package/dist/chunk-R4UWBC35.js +200 -0
- package/dist/chunk-R6MLCREW.js +44 -0
- package/dist/chunk-R6W23LKN.js +254 -0
- package/dist/chunk-R7XDDX2A.js +4007 -0
- package/dist/chunk-RDFRCT64.js +168 -0
- package/dist/chunk-RE5VZDFQ.js +58 -0
- package/dist/chunk-RGROYC2G.js +638 -0
- package/dist/chunk-RGWHUI5E.js +68 -0
- package/dist/chunk-RHVG6UNL.js +205 -0
- package/dist/chunk-RI4EX2QE.js +18 -0
- package/dist/chunk-RJAAKDRX.js +17 -0
- package/dist/chunk-ROMHOSMQ.js +185 -0
- package/dist/chunk-RWREC3KJ.js +517 -0
- package/dist/chunk-RYNETRDJ.js +118 -0
- package/dist/chunk-RZY7RKM5.js +500 -0
- package/dist/chunk-S2MNWFAG.js +52 -0
- package/dist/chunk-S2VQCZO4.js +22 -0
- package/dist/chunk-S54MKU6V.js +117 -0
- package/dist/chunk-S5OIDFRM.js +302 -0
- package/dist/chunk-SCW4ZF6R.js +150 -0
- package/dist/chunk-SLS2N4PH.js +2213 -0
- package/dist/chunk-SNLBO4BF.js +247 -0
- package/dist/chunk-SP3LFU6B.js +60 -0
- package/dist/chunk-SQQTDDQA.js +537 -0
- package/dist/chunk-STV6LYYE.js +45 -0
- package/dist/chunk-SURZ2WFE.js +326 -0
- package/dist/chunk-SZ7DL357.js +1047 -0
- package/dist/chunk-T5E4NQCM.js +5742 -0
- package/dist/chunk-TAJPCXSB.js +13 -0
- package/dist/chunk-TAOOYK3P.js +358 -0
- package/dist/chunk-TDSEX5CF.js +24 -0
- package/dist/chunk-TFTGP7Z7.js +174 -0
- package/dist/chunk-TGON4N4O.js +197 -0
- package/dist/chunk-TGQZHDY2.js +2373 -0
- package/dist/chunk-TJJZ2OKV.js +6783 -0
- package/dist/chunk-TRSVUPCX.js +25 -0
- package/dist/chunk-TSXGRLPR.js +107 -0
- package/dist/chunk-U2S3YEX3.js +224 -0
- package/dist/chunk-U45RTRGY.js +818 -0
- package/dist/chunk-U6C3VVWS.js +13 -0
- package/dist/chunk-UDMS5AD3.js +307 -0
- package/dist/chunk-UGX7GI37.js +94 -0
- package/dist/chunk-UH3JJSHK.js +1 -0
- package/dist/chunk-UHRBTZYY.js +208 -0
- package/dist/chunk-UHT2KRG5.js +193 -0
- package/dist/chunk-UI2F6DJ5.js +118 -0
- package/dist/chunk-UMAKSB4Z.js +284 -0
- package/dist/chunk-UR2IBGIM.js +521 -0
- package/dist/chunk-UUH2RVKS.js +585 -0
- package/dist/chunk-UVJ4PJDK.js +4533 -0
- package/dist/chunk-V53UG2OT.js +9924 -0
- package/dist/chunk-V72RMBM4.js +48 -0
- package/dist/chunk-VBNCKCCI.js +16 -0
- package/dist/chunk-VNSYKC25.js +24 -0
- package/dist/chunk-VPHVFK4A.js +1984 -0
- package/dist/chunk-VTLNJQ44.js +133 -0
- package/dist/chunk-VTW7HP3R.js +100 -0
- package/dist/chunk-VVGEPBPS.js +218 -0
- package/dist/chunk-VVLLL7I4.js +166 -0
- package/dist/chunk-VX3UMWB7.js +483 -0
- package/dist/chunk-VXF4Q3FW.js +20 -0
- package/dist/chunk-W3JMT2YY.js +712 -0
- package/dist/chunk-WDUORIHF.js +877 -0
- package/dist/chunk-WDVTY4U6.js +148 -0
- package/dist/chunk-WIFZCHEG.js +12566 -0
- package/dist/chunk-WIRN3F75.js +736 -0
- package/dist/chunk-WMPU2UOV.js +82 -0
- package/dist/chunk-WTOKKE2V.js +784 -0
- package/dist/chunk-WX5IRLF6.js +740 -0
- package/dist/chunk-WZ6U3O7I.js +1581 -0
- package/dist/chunk-XAONGNST.js +57 -0
- package/dist/chunk-XB5YLCLB.js +13 -0
- package/dist/chunk-XEP5NQ5Y.js +688 -0
- package/dist/chunk-XGYF2QMZ.js +351 -0
- package/dist/chunk-XHEKQENB.js +255 -0
- package/dist/chunk-XNO4FM6X.js +1124 -0
- package/dist/chunk-XPHKYHO4.js +878 -0
- package/dist/chunk-XPK2I4NC.js +405 -0
- package/dist/chunk-XPU2XADL.js +2175 -0
- package/dist/chunk-XQD2B6BB.js +507 -0
- package/dist/chunk-XT2ZQVTC.js +558 -0
- package/dist/chunk-XTXJGGUV.js +351 -0
- package/dist/chunk-XUXVDPSZ.js +50 -0
- package/dist/chunk-XV7NZL4B.js +57 -0
- package/dist/chunk-XZE4XARH.js +563 -0
- package/dist/chunk-XZYR5EDO.js +152 -0
- package/dist/chunk-Y3J4JMTU.js +61 -0
- package/dist/chunk-Y55LZN5U.js +52 -0
- package/dist/chunk-Y5VN7DMP.js +112 -0
- package/dist/chunk-Y67VAHN4.js +459 -0
- package/dist/chunk-YAXSKEUH.js +3544 -0
- package/dist/chunk-YB3JD4E6.js +975 -0
- package/dist/chunk-YESZJFK6.js +220 -0
- package/dist/chunk-YGXKOBQQ.js +292 -0
- package/dist/chunk-YMX76IOS.js +31 -0
- package/dist/chunk-YOTXESEH.js +257 -0
- package/dist/chunk-YTYIEZQY.js +119 -0
- package/dist/chunk-YVORHQ2S.js +579 -0
- package/dist/chunk-Z2CUQDAR.js +3429 -0
- package/dist/chunk-Z2KYOFHS.js +7000 -0
- package/dist/chunk-Z6PC7QX6.js +161 -0
- package/dist/chunk-ZDTGECTN.js +235 -0
- package/dist/chunk-ZIPWI2LY.js +151 -0
- package/dist/chunk-ZSKKMTQJ.js +554 -0
- package/dist/chunk-ZTT5IVPY.js +1160 -0
- package/dist/chunk-ZX65UI5W.js +78 -0
- package/dist/chunk-ZYG7GGKO.js +218 -0
- package/dist/chunk-ZZZUL4OF.js +38 -0
- package/dist/cli-utils-IXL26KJT.js +40 -0
- package/dist/cli-validation-WLXWLUJL.js +111 -0
- package/dist/commit-utils-P7CRJF5N.js +202 -0
- package/dist/compete-config-resolver-R5ULXMYH.js +76 -0
- package/dist/compete-request-62JESVET.js +364 -0
- package/dist/compete-results-QEPG6FZX.js +208 -0
- package/dist/competition-outcome-tracker-R32OOZ43.js +38 -0
- package/dist/config-JCOKXOQT.js +166 -0
- package/dist/config-audit-EL3GHXS7.js +360 -0
- package/dist/config-explain-TNILDEVJ.js +12 -0
- package/dist/config-loader-VPFPFO4B.js +38 -0
- package/dist/config-manager-7T4E2BQO.js +67 -0
- package/dist/config-validator-KKOHOW7O.js +72 -0
- package/dist/cost-YC42XUF3.js +53 -0
- package/dist/coverage-orchestrator-CISNKJC2.js +772 -0
- package/dist/coverage-scanner-YVD62MLH.js +12 -0
- package/dist/createCompetitionRunner-LJG6ZQSO.js +46 -0
- package/dist/data-migration-state-VJK64DLT.js +31 -0
- package/dist/db-migrator-XSEIOGWY.js +34 -0
- package/dist/discovery-JGYGDD25.js +25 -0
- package/dist/doctor-GJOYE7AE.js +186 -0
- package/dist/domain-analyzer-AWF3RP6E.js +29 -0
- package/dist/ensure-initialized-744DIZEZ.js +52 -0
- package/dist/entry.js +940 -0
- package/dist/environment-YS45U5ZI.js +81 -0
- package/dist/error-parser-core-PPZ36A4S.js +50 -0
- package/dist/escalation-ladder-MKTCEGSA.js +130 -0
- package/dist/evaluation-context-KV4GZNN7.js +35 -0
- package/dist/evidence-plan-resolver-GBSYSAPX.js +85 -0
- package/dist/execution-data-writer-3ODTBDLH.js +53 -0
- package/dist/execution-policy-applier-ZHD3DCF3.js +31 -0
- package/dist/execution-preflight-Z4Y64V3I.js +209 -0
- package/dist/execution-roles-R3DPPMD3.js +66 -0
- package/dist/exit-code-error-Z4SW2DVK.js +14 -0
- package/dist/external-temp-cleanup-N2RZH4QP.js +311 -0
- package/dist/factory-XBN7DFIM.js +149 -0
- package/dist/file-utils-XIVR2ZMA.js +47 -0
- package/dist/flywheel-autoloop-executor-UILGOFFK.js +249 -0
- package/dist/flywheel-competition-executor-JOBEXTRB.js +259 -0
- package/dist/flywheel-executor-6JFLA6J5.js +369 -0
- package/dist/flywheel-git-isolation-UC5NIEVU.js +48 -0
- package/dist/flywheel-manifest-5UC4VBMA.js +108 -0
- package/dist/flywheel-model-defaults-7CVKP53V.js +27 -0
- package/dist/flywheel-preflight-XEY5SHM6.js +104 -0
- package/dist/flywheel-resume-7HELH7QS.js +23 -0
- package/dist/flywheel-safety-7U7DPOAP.js +28 -0
- package/dist/flywheel-scope-decision-ZHKF6ZIN.js +11 -0
- package/dist/get-telemetry-logger-DPVWWIYY.js +73 -0
- package/dist/git-worktree-IY6V6DUO.js +18 -0
- package/dist/github-pr-manager-4LXEKJTA.js +211 -0
- package/dist/guidance-profile-config-E7XJL2VP.js +117 -0
- package/dist/guidance-profile-renderer-QK2YMAAP.js +21 -0
- package/dist/index-query-4JEUKA44.js +31 -0
- package/dist/index.js +108661 -0
- package/dist/instructions-6BURLQJC.js +64 -0
- package/dist/invoke-provider-auth-GRUYP44M.js +223 -0
- package/dist/judge-scoring.json +80 -0
- package/dist/judge-test.js +555 -0
- package/dist/lab-mode-OTWVHN63.js +39 -0
- package/dist/lab-utils-BJRFLGK4.js +23 -0
- package/dist/linux-host-class-UY4KVLFD.js +29 -0
- package/dist/llm-judge-executor-F7Z3HO77.js +133 -0
- package/dist/local-executor-CEHWE2PL.js +223 -0
- package/dist/logger-33TR6EE5.js +72 -0
- package/dist/loop-spec-XTLQAVZ7.js +191 -0
- package/dist/manager-2HJG5CLT.js +25 -0
- package/dist/matrix-prompt-builder-6UDN5X3F.js +497 -0
- package/dist/matrix-result-parser-7W35EUOV.js +15 -0
- package/dist/metadata-HQ43NDEK.js +22 -0
- package/dist/model-invocations-db-QBO4Y7WZ.js +38 -0
- package/dist/monitor-XGYBG2DW.js +72 -0
- package/dist/next-PB5ZXZKB.js +90 -0
- package/dist/next-ZBDK725T.js +69 -0
- package/dist/optimization-config-resolver-O6WKR47U.js +75 -0
- package/dist/package-3YCWIQQ5.js +10 -0
- package/dist/parallel-orchestrator-NL7YJJU2.js +297 -0
- package/dist/parallel-worker.js +279 -0
- package/dist/parse-git-status-PIAF3OTP.js +10 -0
- package/dist/path-security-ETTH6TZL.js +39 -0
- package/dist/pattern-bank-UNJR5ADV.js +15 -0
- package/dist/plan-backlog-list-fast-VAGYBV3J.js +270 -0
- package/dist/plan-backlog-show-fast-SG2CZPW3.js +406 -0
- package/dist/plan-sprint-list-fast-LURAX47V.js +162 -0
- package/dist/plan-sprint-status-fast-FJAODCHD.js +208 -0
- package/dist/plan-task-status-fast-HNYBMQI4.js +349 -0
- package/dist/plan-to-flywheel-Z4U3GWPN.js +456 -0
- package/dist/planning-backlog-3CQ5QQBQ.js +319 -0
- package/dist/poetic-root-V5DNXEAE.js +17 -0
- package/dist/preflight-OPANWMME.js +12 -0
- package/dist/process-registry-PDZJPTAS.js +27 -0
- package/dist/process-scanner-C22SYXYD.js +22 -0
- package/dist/processes-KMQUD7HY.js +29 -0
- package/dist/processes-json-fast-IBDXZ6WW.js +135 -0
- package/dist/profile-SE5EVXAP.js +149 -0
- package/dist/prompts-WZZPGWBX.js +168 -0
- package/dist/protected-branches-RNTEX7ET.js +57 -0
- package/dist/provider-aware-resource-manager-QBTZJMNP.js +18 -0
- package/dist/provider-matrix-N5X57V3Y.js +154 -0
- package/dist/provider-matrix-renderer-MZDWKKID.js +139 -0
- package/dist/provider-output-forwarding-DERID3TP.js +30 -0
- package/dist/provider-registry-J5NRBJKI.js +128 -0
- package/dist/provider-temp-cleanup-KYGLF6YU.js +14 -0
- package/dist/prune-engine-Q6E2DXBN.js +451 -0
- package/dist/quality-gate-YRHMQAEI.js +70 -0
- package/dist/quickstart-FIRLKGJI.js +62 -0
- package/dist/readiness-VZTMSG6J.js +96 -0
- package/dist/registry-YODFY77A.js +153 -0
- package/dist/repair-helpers-TTV5FEF4.js +117 -0
- package/dist/repo-root-2IGD4H7X.js +22 -0
- package/dist/resolution-engine-D6TX6FRG.js +127 -0
- package/dist/resolve-provider-cli-O2P6XZBZ.js +35 -0
- package/dist/restore-telemetry-db-BQL6DTQF.js +360 -0
- package/dist/result-streamer-WEHW476R.js +19 -0
- package/dist/routing-events-DHPUZDDF.js +27 -0
- package/dist/routing-history-store-UWCEXAP3.js +46 -0
- package/dist/routing-planner-F5WQEUOM.js +160 -0
- package/dist/run-poetic-tui-J6LWRJUP.js +13517 -0
- package/dist/run-simulation.js +376 -0
- package/dist/runner-CS2TNGHA.js +1092 -0
- package/dist/runner-HHH7ZN2Z.js +1571 -0
- package/dist/safety-OCC4KJJR.js +64 -0
- package/dist/safety-stanza-7SV3HGG3.js +60 -0
- package/dist/sandbox-32QXJEMV.js +81 -0
- package/dist/sandbox-RSO7VP6V.js +94 -0
- package/dist/schema-extensions.sql +234 -0
- package/dist/security-2KI5XNDG.js +17 -0
- package/dist/setup-bb-plugin-QAQWZCV5.js +738 -0
- package/dist/setup-claude-code-P7BTTSPO.js +317 -0
- package/dist/setup-temp-cleanup-GASCWZ2I.js +20 -0
- package/dist/shared-utils-D6U6UREP.js +37 -0
- package/dist/simple-artifact-goal-OTXNGZY6.js +25 -0
- package/dist/sprint-UIXPYOXQ.js +338 -0
- package/dist/sprint-bridge-4BHMSC3M.js +68 -0
- package/dist/sprint-execution-service-2B7WHL5L.js +311 -0
- package/dist/sprint-manager-IDQUDNQI.js +91 -0
- package/dist/sqlite-wrapper-UDWCTNLJ.js +17 -0
- package/dist/stale-cleanup-orchestrator-XWXV7KCZ.js +62 -0
- package/dist/storage-access-F6ALDN4S.js +22 -0
- package/dist/synthesis-XD6EDVHF.js +185 -0
- package/dist/task-classifier-LNLXSHOM.js +494 -0
- package/dist/task-list-fast-PTMA4LUC.js +147 -0
- package/dist/task-manager-XAT7GOWB.js +93 -0
- package/dist/task-splitter-U7DJ7W6A.js +79 -0
- package/dist/task-type-detector-OLVOMXZO.js +21 -0
- package/dist/task-type-resolver-KKNQYSB4.js +42 -0
- package/dist/telemetry-5HWBBXLX.js +131 -0
- package/dist/telemetry-health-tracker-DMSSGBZ2.js +11 -0
- package/dist/telemetry-path-resolver-7ICSG276.js +28 -0
- package/dist/telemetry-reliability-XUOZNZZ6.js +125 -0
- package/dist/token-estimator-MEQUL3EJ.js +37 -0
- package/dist/transports-KNSSV2V4.js +255 -0
- package/dist/unified-cost-tracker-4TFRBVPR.js +35 -0
- package/dist/unified-state-cleanup-LJPF2BOW.js +276 -0
- package/dist/universal-cost-calculator-BAJV35GA.js +42 -0
- package/dist/user-agents-GHUGCSKN.js +22 -0
- package/dist/variant-delivery-state-KLRNG6XA.js +33 -0
- package/dist/variant-state-cleanup-MZGGLQAJ.js +280 -0
- package/dist/variant-success-PJXWE3ZV.js +12 -0
- package/dist/variant-worker-KUWKBLAH.js +4196 -0
- package/dist/variant-worker.js +24 -0
- package/dist/variants-JE2FSAQS.js +233 -0
- package/dist/verification-toolchains-V24UHW6Q.js +28 -0
- package/dist/verify-commands-H3DTCSGI.js +37 -0
- package/dist/warning-EGQGUUIO.js +12 -0
- package/dist/work-edge-RWEDWJZF.js +49 -0
- package/dist/work-item-writer-WHAVZXAY.js +19 -0
- package/dist/worker-7SA2VS2Y.js +1435 -0
- package/dist/worker.js +19 -0
- package/dist/worktree-metrics-3DFUYVYE.js +26 -0
- package/dist/writeback-VZKHYHSN.js +44 -0
- package/docs/CLI_REFERENCE.md +7042 -0
- package/docs/PROVIDER_SETUP.md +1570 -0
- package/docs/README.md +96 -0
- package/docs/TROUBLESHOOTING.md +2232 -0
- package/docs/getting-started/QUICK_START.md +294 -0
- package/docs/getting-started/README.md +188 -0
- package/docs/getting-started/SETUP.md +52 -0
- package/docs/reference/AGENT_CONTEXT.md +38 -0
- package/docs/reference/PROVIDER_RELEASE_TIERS.md +34 -0
- package/docs/reference/README.md +381 -0
- package/docs/reference/SECURITY.md +262 -0
- package/integrations/bb-plugin-poetic/README.md +362 -0
- package/integrations/bb-plugin-poetic/app.css +341 -0
- package/integrations/bb-plugin-poetic/app.tsx +5059 -0
- package/integrations/bb-plugin-poetic/package.json +45 -0
- package/integrations/bb-plugin-poetic/server.ts +444 -0
- package/integrations/bb-plugin-poetic/src/adapter.ts +3312 -0
- package/integrations/bb-plugin-poetic/src/backlog-authoring-model.ts +150 -0
- package/integrations/bb-plugin-poetic/src/backlog-authoring-schema.ts +355 -0
- package/integrations/bb-plugin-poetic/src/backlog-authoring-service.ts +419 -0
- package/integrations/bb-plugin-poetic/src/backlog-authoring-view.ts +1026 -0
- package/integrations/bb-plugin-poetic/src/competition-defaults-schema.ts +122 -0
- package/integrations/bb-plugin-poetic/src/competition-defaults-service.ts +105 -0
- package/integrations/bb-plugin-poetic/src/competition-defaults-view.ts +138 -0
- package/integrations/bb-plugin-poetic/src/contract.ts +615 -0
- package/integrations/bb-plugin-poetic/src/finalize-model.ts +205 -0
- package/integrations/bb-plugin-poetic/src/finalize-schema.ts +158 -0
- package/integrations/bb-plugin-poetic/src/finalize-service.ts +382 -0
- package/integrations/bb-plugin-poetic/src/finalize-view.ts +159 -0
- package/integrations/bb-plugin-poetic/src/judge-operations-readback.ts +303 -0
- package/integrations/bb-plugin-poetic/src/judge-operations-schema.ts +33 -0
- package/integrations/bb-plugin-poetic/src/judge-operations-view.ts +459 -0
- package/integrations/bb-plugin-poetic/src/model.ts +1302 -0
- package/integrations/bb-plugin-poetic/src/monitor-service.ts +233 -0
- package/integrations/bb-plugin-poetic/src/panel-read-ux.ts +97 -0
- package/integrations/bb-plugin-poetic/src/patch-preview-schema.ts +166 -0
- package/integrations/bb-plugin-poetic/src/patch-preview-service.ts +480 -0
- package/integrations/bb-plugin-poetic/src/patch-preview-view.ts +109 -0
- package/integrations/bb-plugin-poetic/src/planning-readback.ts +204 -0
- package/integrations/bb-plugin-poetic/src/planning-service.ts +594 -0
- package/integrations/bb-plugin-poetic/src/planning-workspace-schema.ts +95 -0
- package/integrations/bb-plugin-poetic/src/planning-workspace.ts +323 -0
- package/integrations/bb-plugin-poetic/src/poll-handoff.ts +136 -0
- package/integrations/bb-plugin-poetic/src/project-target-server.ts +21 -0
- package/integrations/bb-plugin-poetic/src/project-target.ts +45 -0
- package/integrations/bb-plugin-poetic/src/reference-index.ts +192 -0
- package/integrations/bb-plugin-poetic/src/repository-schema.ts +30 -0
- package/integrations/bb-plugin-poetic/src/result-explorer-view.ts +597 -0
- package/integrations/bb-plugin-poetic/src/result-readback-model.ts +163 -0
- package/integrations/bb-plugin-poetic/src/result-readback-schema.ts +319 -0
- package/integrations/bb-plugin-poetic/src/result-readback-service.ts +333 -0
- package/integrations/bb-plugin-poetic/src/run-page-view.ts +177 -0
- package/integrations/bb-plugin-poetic/src/setup-config-schema.ts +291 -0
- package/integrations/bb-plugin-poetic/src/setup-config-service.ts +590 -0
- package/integrations/bb-plugin-poetic/src/setup-config-view.ts +413 -0
- package/integrations/bb-plugin-poetic/src/sprint-close-model.ts +150 -0
- package/integrations/bb-plugin-poetic/src/sprint-close-schema.ts +136 -0
- package/integrations/bb-plugin-poetic/src/sprint-close-service.ts +341 -0
- package/integrations/bb-plugin-poetic/src/sprint-close-view.ts +116 -0
- package/integrations/bb-plugin-poetic/src/sprint-composition-model.ts +714 -0
- package/integrations/bb-plugin-poetic/src/sprint-composition-readback.ts +231 -0
- package/integrations/bb-plugin-poetic/src/sprint-composition-schema.ts +601 -0
- package/integrations/bb-plugin-poetic/src/sprint-composition-service.ts +775 -0
- package/integrations/bb-plugin-poetic/src/sprint-composition-view.ts +1221 -0
- package/integrations/bb-plugin-poetic/src/task-authoring-model.ts +567 -0
- package/integrations/bb-plugin-poetic/src/task-authoring-schema.ts +635 -0
- package/integrations/bb-plugin-poetic/src/task-authoring-service.ts +842 -0
- package/integrations/bb-plugin-poetic/src/task-authoring-view.ts +1227 -0
- package/integrations/bb-plugin-poetic/src/task-detail-readback.ts +56 -0
- package/integrations/bb-plugin-poetic/src/task-detail-schema.ts +144 -0
- package/integrations/bb-plugin-poetic/src/task-navigation.ts +446 -0
- package/integrations/bb-plugin-poetic/src/workbench-route.ts +74 -0
- package/integrations/bb-plugin-poetic/tests/host-contract.test.ts +773 -0
- package/integrations/bb-plugin-poetic/tsconfig.json +18 -0
- package/integrations/bb-plugin-poetic/types/PROVENANCE.json +52 -0
- package/integrations/bb-plugin-poetic/types/bb-plugin-sdk-app.d.ts +1444 -0
- package/integrations/bb-plugin-poetic/types/bb-plugin-sdk.d.ts +13030 -0
- package/integrations/bb-plugin-poetic/vitest.host.config.ts +71 -0
- package/npm-shrinkwrap.json +4950 -0
- package/package.json +331 -0
- package/schemas/README.md +80 -0
- package/schemas/config-v1.schema.json +136 -0
- package/schemas/execution-config.schema.json +47 -0
- package/schemas/judge-scoring.schema.json +370 -0
- package/schemas/poetic.config.schema.json +2214 -0
- package/schemas/provider-config.schema.json +203 -0
- package/schemas/telemetry-config.schema.json +79 -0
- package/schemas/user-preferences.schema.json +141 -0
- package/scripts/assert-node-runtime.mjs +140 -0
- package/scripts/preflight-native.mjs +49 -0
- package/scripts/preinstall-node-check.mjs +78 -0
- package/scripts/setup-git-hooks.mjs +24 -0
- package/scripts/sync.sh +2722 -0
- package/scripts/write-node-launcher.sh +108 -0
- package/src/resources/gemini/slash-packs/default/plan.toml +15 -0
- package/src/resources/gemini/slash-packs/default/summary.toml +16 -0
- package/src/resources/gemini/slash-packs/default/tests.toml +16 -0
- package/templates/.poetic/README.md +37 -0
- package/templates/.poetic/agents/README.md +296 -0
- package/templates/.poetic/agents/api-documenter.md +147 -0
- package/templates/.poetic/agents/backend-architect.md +31 -0
- package/templates/.poetic/agents/code-reviewer.md +157 -0
- package/templates/.poetic/agents/data-scientist.md +179 -0
- package/templates/.poetic/agents/database-optimizer.md +145 -0
- package/templates/.poetic/agents/debugger.md +31 -0
- package/templates/.poetic/agents/deployment-engineer.md +164 -0
- package/templates/.poetic/agents/devops-troubleshooter.md +139 -0
- package/templates/.poetic/agents/frontend-developer.md +150 -0
- package/templates/.poetic/agents/javascript-pro.md +36 -0
- package/templates/.poetic/agents/performance-engineer.md +151 -0
- package/templates/.poetic/agents/python-pro.md +137 -0
- package/templates/.poetic/agents/test-automator.md +147 -0
- package/templates/.poetic/agents/typescript-pro.md +34 -0
- package/templates/.poetic/config/poetic.config.jsonc +69 -0
- package/templates/.poetic/config/project-context.template.json +6 -0
- package/templates/.poetic/config/task-type-aliases.presets/kanban.yaml +14 -0
- package/templates/.poetic/config/task-type-aliases.presets/scrum.yaml +17 -0
- package/templates/.poetic/config/task-type-aliases.presets/xp.yaml +12 -0
- package/templates/.poetic/config/task-type-aliases.yaml +28 -0
- package/templates/.poetic/gitignore.template +55 -0
- package/templates/.poetic/task-types/analysis.yaml +40 -0
- package/templates/.poetic/task-types/architecture.yaml +38 -0
- package/templates/.poetic/task-types/doc.yaml +35 -0
- package/templates/.poetic/task-types/feature.yaml +23 -0
- package/templates/.poetic/task-types/general.yaml +6 -0
- package/templates/.poetic/task-types/security.yaml +39 -0
- package/templates/AGENTS.template.md +99 -0
- package/templates/CLAUDE.template.md +1 -0
- package/templates/GEMINI.template.md +1 -0
- package/templates/builtin-workflows/code-review.yaml +73 -0
- package/templates/builtin-workflows/compete-streak.yaml +78 -0
- package/templates/builtin-workflows/hello-verify.yaml +10 -0
- package/templates/builtin-workflows/judge-regression.yaml +114 -0
- package/templates/builtin-workflows/skills/code-review/SKILL.md +60 -0
- package/templates/builtin-workflows/skills/hello-verify/SKILL.md +6 -0
- package/templates/guard-kit/GUARD_SETUP.md.template +255 -0
- package/templates/guard-kit/check.mjs.template +777 -0
- package/templates/guard-kit/config.json.template +6 -0
- package/templates/guard-kit/poetic-guard.yml.template +189 -0
- package/templates/profiles/README.md +56 -0
- package/templates/profiles/frontier-claude.json +27 -0
- package/templates/profiles/frontier-codex.json +26 -0
|
@@ -0,0 +1,381 @@
|
|
|
1
|
+
# Reference Documentation
|
|
2
|
+
|
|
3
|
+
> **Quick reference materials for Poetic developers**
|
|
4
|
+
|
|
5
|
+
This directory contains comprehensive reference guides for developers working with the Poetic AI orchestration platform. These documents provide detailed technical specifications, conventions, and best practices.
|
|
6
|
+
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
## Reference Guides
|
|
10
|
+
|
|
11
|
+
### Core References
|
|
12
|
+
|
|
13
|
+
| Guide | Purpose | When to Use |
|
|
14
|
+
|-------|---------|-------------|
|
|
15
|
+
| [AI Orchestration Testing Guide](./AI_ORCHESTRATION_TESTING_GUIDE.md) | Comprehensive best practices for testing AI platforms | Designing quality strategies, security reviews, cost optimization |
|
|
16
|
+
| [AI Testing Quick Reference](./AI_TESTING_QUICK_REFERENCE.md) | Copy-paste patterns for common testing scenarios | Quick implementation, patterns lookup |
|
|
17
|
+
| [Testing Guide](./TESTING_GUIDE.md) | Comprehensive testing strategy and utilities | Writing tests, debugging test failures, setting up CI/CD |
|
|
18
|
+
| [Type System](./TYPE_SYSTEM.md) | TypeScript type definitions and patterns | Understanding type hierarchies, adding new types |
|
|
19
|
+
| [Naming Conventions](./NAMING_CONVENTIONS.md) | Naming standards for code and files | Creating new files, naming variables/functions |
|
|
20
|
+
| [Terminology](./TERMINOLOGY.md) | Glossary of Poetic-specific terms | Understanding domain concepts, documentation |
|
|
21
|
+
| [Coordination Kernel](./COORDINATION.md) | Shipped coordination kernel contracts (locks, claims, CAS) | Multi-process planning writes, claim protocol, lock ordering |
|
|
22
|
+
|
|
23
|
+
### Specialized References
|
|
24
|
+
|
|
25
|
+
| Guide | Purpose | When to Use |
|
|
26
|
+
|-------|---------|-------------|
|
|
27
|
+
| [.poetic/ Directory](./POETIC_DIRECTORY.md) | Instance directory structure (tracked instance data + ignored runtime) and gitignore rules | Understanding what's tracked vs ignored, fixing accidental commits |
|
|
28
|
+
| [Extensions](./EXTENSIONS.md) | Extension list/path/remove and storage layout | Listing or removing installed extensions, `POETIC_EXTENSIONS_DIR` |
|
|
29
|
+
| [CLI Prompt Commands](./CLI_PROMPT_COMMANDS.md) | Complete prompt management CLI reference | Managing prompts, versions, optimization |
|
|
30
|
+
| [Security Reference](./SECURITY.md) | Security policy and best practices | Reporting vulnerabilities, security reviews |
|
|
31
|
+
| [Telemetry And Privacy Reference](./TELEMETRY_PRIVACY.md) | Local telemetry contents, retention, disable, cleanup, and deletion | Reviewing privacy impact, cleaning local telemetry |
|
|
32
|
+
| [Deprecations](./DEPRECATIONS.md) | Deprecated features and migration paths | Updating legacy code, understanding warnings |
|
|
33
|
+
|
|
34
|
+
---
|
|
35
|
+
|
|
36
|
+
## When to Use This Section
|
|
37
|
+
|
|
38
|
+
### You're in the Right Place If...
|
|
39
|
+
|
|
40
|
+
- You need to look up **specific technical details**
|
|
41
|
+
- You're **writing tests** and need mocking strategies
|
|
42
|
+
- You're **naming new components** and want consistency
|
|
43
|
+
- You're **using TypeScript types** and need definitions
|
|
44
|
+
- You're **managing prompts** via CLI commands
|
|
45
|
+
- You need to understand **domain terminology**
|
|
46
|
+
- You're dealing with **deprecated features**
|
|
47
|
+
- You're conducting a **security review**
|
|
48
|
+
- You need to understand the **`.poetic/` directory structure**
|
|
49
|
+
- You need **coordination kernel** lock ordering or claim lifecycle rules
|
|
50
|
+
|
|
51
|
+
### Look Elsewhere If...
|
|
52
|
+
|
|
53
|
+
- You want architectural overview → [ARCHITECTURE.md](https://github.com/ebrindley/Poetic/blob/main/ARCHITECTURE.md)
|
|
54
|
+
- You need development workflows → [AGENTS.md](../../AGENTS.md)
|
|
55
|
+
- You want to understand strategy → [STRATEGY.md](https://github.com/ebrindley/Poetic/blob/main/STRATEGY.md)
|
|
56
|
+
- You need current managed work and sprint status → [Sprint Planning Guide](../SPRINT_PLANNING_GUIDE.md)
|
|
57
|
+
- You want feature guides → [docs/](../) (feature-specific docs)
|
|
58
|
+
- You need CLI usage → [CLI_REFERENCE.md](../CLI_REFERENCE.md)
|
|
59
|
+
|
|
60
|
+
Root-level telemetry and provider documents predate the current placement policy. They
|
|
61
|
+
remain indexed from the [documentation hub](../README.md) until a dedicated, link-safe
|
|
62
|
+
rehome campaign moves them. New shipped-behavior references should be added here rather
|
|
63
|
+
than expanding the root-doc cluster.
|
|
64
|
+
|
|
65
|
+
---
|
|
66
|
+
|
|
67
|
+
## Guide Details
|
|
68
|
+
|
|
69
|
+
### AI Orchestration Testing Guide
|
|
70
|
+
**File**: [AI_ORCHESTRATION_TESTING_GUIDE.md](./AI_ORCHESTRATION_TESTING_GUIDE.md)
|
|
71
|
+
|
|
72
|
+
Comprehensive research-backed best practices for testing, validating, and securing AI orchestration platforms covering:
|
|
73
|
+
- Multi-provider LLM integration testing patterns
|
|
74
|
+
- Security hardening (API keys, prompt injection, safe execution)
|
|
75
|
+
- Non-deterministic output validation strategies
|
|
76
|
+
- Performance testing and benchmarking
|
|
77
|
+
- Cost monitoring and optimization
|
|
78
|
+
- Production observability with OpenTelemetry
|
|
79
|
+
- Resilience patterns (retry, fallback, circuit breaker)
|
|
80
|
+
|
|
81
|
+
**Based on**: 20+ authoritative 2024-2025 sources including OWASP, Trail of Bits, OpenTelemetry, Portkey, academic research
|
|
82
|
+
|
|
83
|
+
**Example Use Cases**:
|
|
84
|
+
- "How do I test multi-provider LLM systems?"
|
|
85
|
+
- "What are the OWASP LLM Top 10 risks?"
|
|
86
|
+
- "How do I validate non-deterministic AI outputs?"
|
|
87
|
+
- "How do I prevent prompt injection attacks?"
|
|
88
|
+
- "What's the best way to sandbox code generation?"
|
|
89
|
+
- "How can I reduce AI API costs by 80%?"
|
|
90
|
+
|
|
91
|
+
---
|
|
92
|
+
|
|
93
|
+
### AI Testing Quick Reference
|
|
94
|
+
**File**: [AI_TESTING_QUICK_REFERENCE.md](./AI_TESTING_QUICK_REFERENCE.md)
|
|
95
|
+
|
|
96
|
+
Copy-paste code patterns and templates for immediate implementation:
|
|
97
|
+
- Multi-provider testing matrix
|
|
98
|
+
- Non-deterministic testing patterns
|
|
99
|
+
- API key security patterns
|
|
100
|
+
- Prompt injection prevention
|
|
101
|
+
- Safe shell command execution
|
|
102
|
+
- LLM code generation safety
|
|
103
|
+
- Cost tracking and optimization
|
|
104
|
+
- Performance testing patterns
|
|
105
|
+
- OpenTelemetry instrumentation
|
|
106
|
+
- Resilience patterns (retry, fallback, circuit breaker)
|
|
107
|
+
|
|
108
|
+
**Example Use Cases**:
|
|
109
|
+
- "I need a template for testing non-deterministic outputs"
|
|
110
|
+
- "Show me how to track costs per request"
|
|
111
|
+
- "How do I implement circuit breaker pattern?"
|
|
112
|
+
- "What's the pattern for safe command execution?"
|
|
113
|
+
|
|
114
|
+
---
|
|
115
|
+
|
|
116
|
+
### Testing Guide
|
|
117
|
+
**File**: [TESTING_GUIDE.md](./TESTING_GUIDE.md)
|
|
118
|
+
|
|
119
|
+
Complete testing strategy covering:
|
|
120
|
+
- Test structure (unit, integration, E2E)
|
|
121
|
+
- Running tests (`npm test`, coverage, watch mode)
|
|
122
|
+
- Writing tests (patterns, utilities, assertions)
|
|
123
|
+
- Mocking providers (realistic mocks, no API keys)
|
|
124
|
+
- Debugging failures (verbose output, isolation)
|
|
125
|
+
- CI/CD integration (GitHub Actions)
|
|
126
|
+
- Coverage requirements (>80% overall, >90% new code)
|
|
127
|
+
|
|
128
|
+
**Example Use Cases**:
|
|
129
|
+
- "How do I mock OpenAI responses?"
|
|
130
|
+
- "What's the test structure?"
|
|
131
|
+
- "How do I debug a flaky test?"
|
|
132
|
+
- "What coverage is required?"
|
|
133
|
+
|
|
134
|
+
---
|
|
135
|
+
|
|
136
|
+
### Type System
|
|
137
|
+
**File**: [TYPE_SYSTEM.md](./TYPE_SYSTEM.md)
|
|
138
|
+
|
|
139
|
+
TypeScript type definitions including:
|
|
140
|
+
- Core types (Task, Variant, Result)
|
|
141
|
+
- Provider interfaces (BaseProvider, ProviderConfig)
|
|
142
|
+
- Telemetry types (Execution, Metrics)
|
|
143
|
+
- Configuration types (PoeticConfig)
|
|
144
|
+
- Type utilities (guards, narrowing)
|
|
145
|
+
- Type hierarchies and relationships
|
|
146
|
+
|
|
147
|
+
**Example Use Cases**:
|
|
148
|
+
- "What's the structure of a Variant?"
|
|
149
|
+
- "How do I define a new provider?"
|
|
150
|
+
- "What telemetry data is captured?"
|
|
151
|
+
- "How do I use type guards?"
|
|
152
|
+
|
|
153
|
+
---
|
|
154
|
+
|
|
155
|
+
### Naming Conventions
|
|
156
|
+
**File**: [NAMING_CONVENTIONS.md](./NAMING_CONVENTIONS.md)
|
|
157
|
+
|
|
158
|
+
Naming standards for:
|
|
159
|
+
- Files (kebab-case for modules, PascalCase for classes)
|
|
160
|
+
- Functions (camelCase, verb prefixes)
|
|
161
|
+
- Variables (camelCase, descriptive)
|
|
162
|
+
- Types/Interfaces (PascalCase)
|
|
163
|
+
- Constants (UPPER_SNAKE_CASE)
|
|
164
|
+
- Test files (*.test.ts)
|
|
165
|
+
- Configuration files
|
|
166
|
+
|
|
167
|
+
**Example Use Cases**:
|
|
168
|
+
- "How should I name this utility module?"
|
|
169
|
+
- "What's the pattern for test files?"
|
|
170
|
+
- "Should I use a verb prefix here?"
|
|
171
|
+
- "How do I name constants?"
|
|
172
|
+
|
|
173
|
+
---
|
|
174
|
+
|
|
175
|
+
### Terminology
|
|
176
|
+
**File**: [TERMINOLOGY.md](./TERMINOLOGY.md)
|
|
177
|
+
|
|
178
|
+
Glossary of terms:
|
|
179
|
+
- **Orchestrator**: Core engine coordinating tasks
|
|
180
|
+
- **Variant**: AI agent with specific strategy
|
|
181
|
+
- **Strategy**: Approach for solving tasks
|
|
182
|
+
- **Provider**: AI service (OpenAI, Anthropic, etc.)
|
|
183
|
+
- **Judge**: Quality evaluator for results
|
|
184
|
+
- **Synthesis**: Combining multiple solutions
|
|
185
|
+
- **Telemetry**: Execution tracking and metrics
|
|
186
|
+
- Additional domain-specific terms
|
|
187
|
+
|
|
188
|
+
**Example Use Cases**:
|
|
189
|
+
- "What's a 'variant'?"
|
|
190
|
+
- "What does 'synthesis' mean in Poetic?"
|
|
191
|
+
- "What's the difference between provider and variant?"
|
|
192
|
+
- "What is telemetry?"
|
|
193
|
+
|
|
194
|
+
---
|
|
195
|
+
|
|
196
|
+
### CLI Prompt Commands
|
|
197
|
+
**File**: [CLI_PROMPT_COMMANDS.md](./CLI_PROMPT_COMMANDS.md)
|
|
198
|
+
|
|
199
|
+
Complete reference for prompt management:
|
|
200
|
+
- 8 CLI commands (list, status, history, optimize, activate, rollback, generate, export)
|
|
201
|
+
- Options and arguments for each command
|
|
202
|
+
- Analytics integration (trend detection, forecasting, regression detection)
|
|
203
|
+
- Auto-tuning capabilities with safety checks
|
|
204
|
+
- Workflow examples and use cases
|
|
205
|
+
- Quick start guide
|
|
206
|
+
- Troubleshooting
|
|
207
|
+
|
|
208
|
+
**Example Use Cases**:
|
|
209
|
+
- "How do I list all prompts?"
|
|
210
|
+
- "How do I optimize a prompt?"
|
|
211
|
+
- "What's the syntax for activating a version?"
|
|
212
|
+
- "How does auto-tuning work?"
|
|
213
|
+
|
|
214
|
+
---
|
|
215
|
+
|
|
216
|
+
### Security Reference
|
|
217
|
+
**File**: [SECURITY.md](./SECURITY.md)
|
|
218
|
+
|
|
219
|
+
Security policy including:
|
|
220
|
+
- Supported versions
|
|
221
|
+
- Vulnerability reporting process
|
|
222
|
+
- Security best practices
|
|
223
|
+
- API key management
|
|
224
|
+
- Code review guidelines
|
|
225
|
+
- Response timelines
|
|
226
|
+
|
|
227
|
+
**Example Use Cases**:
|
|
228
|
+
- "How do I report a security vulnerability?"
|
|
229
|
+
- "Which versions are supported?"
|
|
230
|
+
- "What are the security best practices?"
|
|
231
|
+
- "How should I handle API keys?"
|
|
232
|
+
|
|
233
|
+
---
|
|
234
|
+
|
|
235
|
+
### Deprecations
|
|
236
|
+
**File**: [DEPRECATIONS.md](./DEPRECATIONS.md)
|
|
237
|
+
|
|
238
|
+
Deprecated features and migrations:
|
|
239
|
+
- Deprecated APIs and functions
|
|
240
|
+
- Migration paths to new APIs
|
|
241
|
+
- Deprecation timeline
|
|
242
|
+
- Removal schedule
|
|
243
|
+
- Breaking changes
|
|
244
|
+
|
|
245
|
+
**Example Use Cases**:
|
|
246
|
+
- "Why am I getting a deprecation warning?"
|
|
247
|
+
- "How do I migrate from old API X to new API Y?"
|
|
248
|
+
- "When will this feature be removed?"
|
|
249
|
+
- "What's the replacement for this?"
|
|
250
|
+
|
|
251
|
+
---
|
|
252
|
+
|
|
253
|
+
## Cross-Reference Hints
|
|
254
|
+
|
|
255
|
+
### For Testing
|
|
256
|
+
1. Start with [Testing Guide](./TESTING_GUIDE.md) for strategies
|
|
257
|
+
2. Check [Type System](./TYPE_SYSTEM.md) for mock type definitions
|
|
258
|
+
3. Reference [Naming Conventions](./NAMING_CONVENTIONS.md) for test file names
|
|
259
|
+
|
|
260
|
+
### For New Features
|
|
261
|
+
1. Review [Naming Conventions](./NAMING_CONVENTIONS.md) for file/function names
|
|
262
|
+
2. Check [Type System](./TYPE_SYSTEM.md) for type definitions
|
|
263
|
+
3. Reference [Terminology](./TERMINOLOGY.md) for consistent language
|
|
264
|
+
4. Check [Deprecations](./DEPRECATIONS.md) to avoid deprecated patterns
|
|
265
|
+
|
|
266
|
+
### For CLI Work
|
|
267
|
+
1. Start with [CLI Prompt Commands](./CLI_PROMPT_COMMANDS.md) for prompt management
|
|
268
|
+
2. Reference [CLI_REFERENCE.md](../CLI_REFERENCE.md) for general CLI usage
|
|
269
|
+
3. Check [Type System](./TYPE_SYSTEM.md) for command types
|
|
270
|
+
|
|
271
|
+
### For Security
|
|
272
|
+
1. Review [Security Reference](./SECURITY.md) for policies
|
|
273
|
+
2. Check [Testing Guide](./TESTING_GUIDE.md) for security test patterns
|
|
274
|
+
3. Reference [ARCHITECTURE.md](https://github.com/ebrindley/Poetic/blob/main/ARCHITECTURE.md) for security architecture
|
|
275
|
+
|
|
276
|
+
---
|
|
277
|
+
|
|
278
|
+
## Quick Look-ups
|
|
279
|
+
|
|
280
|
+
### Common Patterns
|
|
281
|
+
|
|
282
|
+
**"How do I name a new module?"**
|
|
283
|
+
→ [Naming Conventions](./NAMING_CONVENTIONS.md#files)
|
|
284
|
+
|
|
285
|
+
**"How do I mock a provider in tests?"**
|
|
286
|
+
→ [Testing Guide](./TESTING_GUIDE.md#mocking-providers)
|
|
287
|
+
|
|
288
|
+
**"What's the type for a task result?"**
|
|
289
|
+
→ [Type System](./TYPE_SYSTEM.md#result-types)
|
|
290
|
+
|
|
291
|
+
**"What does 'synthesis' mean?"**
|
|
292
|
+
→ [Terminology](./TERMINOLOGY.md#synthesis)
|
|
293
|
+
|
|
294
|
+
**"How do I optimize a prompt?"**
|
|
295
|
+
→ [CLI Prompt Commands](./CLI_PROMPT_COMMANDS.md#4-poetic-prompt-optimize-promptid)
|
|
296
|
+
|
|
297
|
+
**"How do I report a security issue?"**
|
|
298
|
+
→ [Security Reference](./SECURITY.md#reporting-a-vulnerability)
|
|
299
|
+
|
|
300
|
+
**"Is feature X deprecated?"**
|
|
301
|
+
→ [Deprecations](./DEPRECATIONS.md)
|
|
302
|
+
|
|
303
|
+
**"What .poetic/ directories should be gitignored?"**
|
|
304
|
+
→ [.poetic/ Directory](./POETIC_DIRECTORY.md#gitignored-directories-local-only)
|
|
305
|
+
|
|
306
|
+
**"What is the mandatory planning-lock vs entity-lock ordering?"**
|
|
307
|
+
→ [Coordination Kernel](./COORDINATION.md#1-mandatory-lock-ordering-planning-lock-outermost-entity-lock-inside)
|
|
308
|
+
|
|
309
|
+
**"Can stale locks from another machine be auto-broken?"**
|
|
310
|
+
→ [Coordination Kernel](./COORDINATION.md#2-cross-machine-locks-are-never-auto-broken)
|
|
311
|
+
|
|
312
|
+
**"I accidentally committed lab artifacts"**
|
|
313
|
+
→ [.poetic/ Directory](./POETIC_DIRECTORY.md#common-issues)
|
|
314
|
+
|
|
315
|
+
---
|
|
316
|
+
|
|
317
|
+
## Related Documentation
|
|
318
|
+
|
|
319
|
+
### Architecture & Design
|
|
320
|
+
- [ARCHITECTURE.md](https://github.com/ebrindley/Poetic/blob/main/ARCHITECTURE.md) - System architecture and structure
|
|
321
|
+
- [STRATEGY.md](https://github.com/ebrindley/Poetic/blob/main/STRATEGY.md) - Development philosophy
|
|
322
|
+
- [Sprint Planning Guide](../SPRINT_PLANNING_GUIDE.md) - Current phase and progress
|
|
323
|
+
|
|
324
|
+
### Workflows & Guides
|
|
325
|
+
- [AGENTS.md](../../AGENTS.md) - Development guide and AI sessions
|
|
326
|
+
- [CLI_REFERENCE.md](../CLI_REFERENCE.md) - Complete CLI command reference
|
|
327
|
+
- [WORKFLOW_CHECKLIST.md](../WORKFLOW_CHECKLIST.md) - Development checklists
|
|
328
|
+
|
|
329
|
+
### Feature-Specific
|
|
330
|
+
- [PARALLEL_EXECUTION.md](../PARALLEL_EXECUTION.md) - Parallel task execution
|
|
331
|
+
- [TELEMETRY_ARCHITECTURE.md](../TELEMETRY_ARCHITECTURE.md) - Telemetry system
|
|
332
|
+
|
|
333
|
+
---
|
|
334
|
+
|
|
335
|
+
## Document Maintenance
|
|
336
|
+
|
|
337
|
+
### Adding New References
|
|
338
|
+
|
|
339
|
+
When adding a new reference document:
|
|
340
|
+
|
|
341
|
+
1. **Create the file** in `docs/reference/`
|
|
342
|
+
2. **Follow the template**:
|
|
343
|
+
- Clear title and purpose
|
|
344
|
+
- Table of contents
|
|
345
|
+
- Detailed sections
|
|
346
|
+
- Examples and use cases
|
|
347
|
+
- Cross-references
|
|
348
|
+
3. **Update this README**:
|
|
349
|
+
- Add entry to appropriate table
|
|
350
|
+
- Add guide details section
|
|
351
|
+
- Add cross-reference hints
|
|
352
|
+
- Add quick look-up entries
|
|
353
|
+
4. **Update related docs** with links to new reference
|
|
354
|
+
|
|
355
|
+
### Reference Document Guidelines
|
|
356
|
+
|
|
357
|
+
- **Be concise**: Reference, not tutorial
|
|
358
|
+
- **Be specific**: Exact syntax, types, patterns
|
|
359
|
+
- **Be complete**: Cover all variations
|
|
360
|
+
- **Be current**: Update with code changes
|
|
361
|
+
- **Use examples**: Show, don't just tell
|
|
362
|
+
- **Cross-reference**: Link to related docs
|
|
363
|
+
- **Avoid duplication**: Link to authoritative source
|
|
364
|
+
- **Avoid narrative**: Keep it factual
|
|
365
|
+
- **Avoid opinions**: Show best practices objectively
|
|
366
|
+
|
|
367
|
+
---
|
|
368
|
+
|
|
369
|
+
## Still Can't Find It?
|
|
370
|
+
|
|
371
|
+
1. **Check the main docs directory**: [docs/](../)
|
|
372
|
+
2. **Search the codebase**: Look for inline documentation
|
|
373
|
+
3. **Check git history**: `git log -- path/to/file`
|
|
374
|
+
4. **Ask in discussion**: Create a GitHub discussion
|
|
375
|
+
5. **Check related links**: Follow cross-references
|
|
376
|
+
|
|
377
|
+
---
|
|
378
|
+
|
|
379
|
+
**Last Updated**: 2024-11-05
|
|
380
|
+
|
|
381
|
+
**Maintenance**: Keep this index updated when adding/removing reference documents
|
|
@@ -0,0 +1,262 @@
|
|
|
1
|
+
# Security Reference
|
|
2
|
+
|
|
3
|
+
This reference summarizes Poetic's public-release security policy and the main
|
|
4
|
+
runtime security boundaries that affect users of the public npm package.
|
|
5
|
+
|
|
6
|
+
Poetic telemetry is local-first but can include prompts, repository paths,
|
|
7
|
+
provider metadata, output and error tails, token usage, and costs. See
|
|
8
|
+
[Telemetry And Privacy Reference](https://github.com/ebrindley/Poetic/blob/main/docs/reference/TELEMETRY_PRIVACY.md) for storage,
|
|
9
|
+
retention, disable, cleanup, and deletion details.
|
|
10
|
+
|
|
11
|
+
## Reporting Vulnerabilities
|
|
12
|
+
|
|
13
|
+
Do not open public issues for security vulnerabilities. Report them privately
|
|
14
|
+
through GitHub Security Advisories:
|
|
15
|
+
|
|
16
|
+
https://github.com/ebrindley/Poetic/security/advisories/new
|
|
17
|
+
|
|
18
|
+
Include the Poetic version from `poetic --version`, your operating system, the
|
|
19
|
+
provider or command involved, and the smallest reproduction you can share
|
|
20
|
+
privately.
|
|
21
|
+
|
|
22
|
+
The canonical project policy lives in [.github/SECURITY.md](../../.github/SECURITY.md).
|
|
23
|
+
Only the latest published minor release line receives security fixes.
|
|
24
|
+
|
|
25
|
+
## User Responsibilities
|
|
26
|
+
|
|
27
|
+
- Keep provider API keys and tokens out of the repository.
|
|
28
|
+
- Prefer provider-native authentication stores over committed environment files.
|
|
29
|
+
- Review generated code and commands before applying changes from untrusted
|
|
30
|
+
prompts or third-party repositories.
|
|
31
|
+
- Run release and package checks before publishing a build.
|
|
32
|
+
- Report suspicious provider output or sandbox bypass behavior through the
|
|
33
|
+
private advisory channel.
|
|
34
|
+
|
|
35
|
+
## Runtime Security Boundaries
|
|
36
|
+
|
|
37
|
+
Poetic orchestrates external provider CLIs. Those CLIs may read project files,
|
|
38
|
+
spawn subprocesses, and access the network according to the active provider and
|
|
39
|
+
platform configuration. Treat provider execution as delegated code execution
|
|
40
|
+
inside the configured workspace, not as a confidentiality boundary.
|
|
41
|
+
|
|
42
|
+
### macOS Sandbox
|
|
43
|
+
|
|
44
|
+
On macOS, Poetic can wrap provider CLI processes with `sandbox-exec`. This
|
|
45
|
+
boundary is intended to reduce unintended writes outside approved locations and
|
|
46
|
+
to protect selected credential paths from filesystem access.
|
|
47
|
+
|
|
48
|
+
Important limits:
|
|
49
|
+
|
|
50
|
+
- It is not an outbound network filter.
|
|
51
|
+
- It is not a complete confidentiality boundary for every readable file.
|
|
52
|
+
- Provider processes may still receive credentials from inherited environment
|
|
53
|
+
variables or provider authentication stores.
|
|
54
|
+
- Custom sandbox profiles replace the generated profile, so review them before
|
|
55
|
+
use.
|
|
56
|
+
|
|
57
|
+
Use `poetic sandbox status` and the telemetry commands documented in the CLI
|
|
58
|
+
reference to confirm whether a provider run was sandboxed or authorized by
|
|
59
|
+
Linux host class.
|
|
60
|
+
|
|
61
|
+
Runtime sandbox settings:
|
|
62
|
+
|
|
63
|
+
- `POETIC_SANDBOX_ENABLED=0` is an incomplete emergency hatch. It disables
|
|
64
|
+
Poetic's sandbox wrapper for that process. It does not authorize provider
|
|
65
|
+
internal-sandbox bypass. Host class is the Linux write path; do not use this
|
|
66
|
+
variable as the Linux write opt-in.
|
|
67
|
+
- `POETIC_SANDBOX_<PROVIDER>_ENABLED=0` disables the wrapper for one provider,
|
|
68
|
+
such as `POETIC_SANDBOX_CLAUDE_ENABLED=0` or
|
|
69
|
+
`POETIC_SANDBOX_COPILOT_ENABLED=0`. Same hatch limits as the global flag.
|
|
70
|
+
- `POETIC_SANDBOX_PROFILE_PATH=/path/to/profile.sb` uses a custom macOS
|
|
71
|
+
sandbox profile. A custom profile fully replaces Poetic's generated profile.
|
|
72
|
+
- `POETIC_SANDBOX_BOUNDARY_POLICY` sets boundary acceptance policy. The default
|
|
73
|
+
(`attested_outer_ok`) accepts a self-generated seatbelt, an attested
|
|
74
|
+
container, an attested inherited-outer boundary, or a Linux host class on
|
|
75
|
+
Linux. `strict` still rejects an inherited-outer boundary, but Linux host
|
|
76
|
+
class remains accepted on Linux under both policies. Host class is a Seatbelt
|
|
77
|
+
substitute, not an inherited-outer. Darwin ignores a forged linux proof pair.
|
|
78
|
+
Every boundary decision consults the policy uniformly: the provider bypass
|
|
79
|
+
gate, the wrapper path, and the will-be-active predicate.
|
|
80
|
+
- `POETIC_SANDBOX_LINUX_HOST_CLASS=isolated|desktop` is the Linux-only launch
|
|
81
|
+
declaration. `isolated` is the supported empty-home / cloud-agent contract.
|
|
82
|
+
`desktop` forces the desktop consent path even inside a container. Ignored on
|
|
83
|
+
macOS. Provider children never inherit this variable.
|
|
84
|
+
- `POETIC_SANDBOX_CONTAINER_ATTESTED` and
|
|
85
|
+
`POETIC_SANDBOX_PROVENANCE=container` are container-boundary claims. Poetic
|
|
86
|
+
accepts them only when the host also provides a runtime-created container
|
|
87
|
+
signal; environment variables alone cannot attest a container. Existing
|
|
88
|
+
attested containers remain a valid isolated-class signal.
|
|
89
|
+
- `POETIC_SANDBOX_FORCE_INHERITED_OUTER` is a deprecated legacy test key. It is
|
|
90
|
+
ignored by sandbox policy and retained as deprecated compatibility metadata.
|
|
91
|
+
Provider child environments independently scrub all Poetic sandbox-authority
|
|
92
|
+
variables. Do not use it to configure a runtime boundary.
|
|
93
|
+
|
|
94
|
+
### Supported write-capable provider boundaries
|
|
95
|
+
|
|
96
|
+
Write-capable provider automation needs an accepted sandbox/policy boundary.
|
|
97
|
+
On macOS that is still a confinement boundary plus proof that required state
|
|
98
|
+
paths are writable under it. On Linux, host class is the write policy: it
|
|
99
|
+
authorizes writes without claiming a Seatbelt-equivalent filesystem allowlist.
|
|
100
|
+
|
|
101
|
+
Supported paths:
|
|
102
|
+
|
|
103
|
+
- **macOS Seatbelt** — Poetic's generated seatbelt profile (`sandbox-exec`) is
|
|
104
|
+
the default self-authored boundary on macOS and proves the policy allowlist by
|
|
105
|
+
construction. Missing Seatbelt, an accepted container, or an inherited outer
|
|
106
|
+
still fails closed. Unchanged.
|
|
107
|
+
- **Attested container** — container provenance is accepted only when a
|
|
108
|
+
container-boundary claim is paired with a runtime-created container signal
|
|
109
|
+
(`POETIC_SANDBOX_CONTAINER_ATTESTED` / `POETIC_SANDBOX_PROVENANCE=container`
|
|
110
|
+
above). Container acceptance still requires the provider's required write
|
|
111
|
+
paths to be writable under that outer boundary. Existing attested containers
|
|
112
|
+
remain valid.
|
|
113
|
+
- **Linux host class** — Linux has no self-generated Seatbelt. Isolated or
|
|
114
|
+
acknowledged Linux means provider CLIs can write anywhere `$USER` can. That
|
|
115
|
+
is not Seatbelt-sandboxed. All three write gates honor `linux_isolated` /
|
|
116
|
+
`linux_acknowledged` plus `linux_host_class` on Linux only. Accepted under
|
|
117
|
+
both `strict` and `attested_outer_ok`.
|
|
118
|
+
- **isolated** (VM, container, cloud, CI): writes just work. Classify with
|
|
119
|
+
`poetic sandbox trust linux --host isolated` or launch env
|
|
120
|
+
`POETIC_SANDBOX_LINUX_HOST_CLASS=isolated` (supported empty-home /
|
|
121
|
+
cloud-agent contract). Isolated never expires except
|
|
122
|
+
`poetic sandbox trust linux --revoke`. Auto-isolate on container OS
|
|
123
|
+
markers, well-known CI vendor vars, and Codespaces/Gitpod. Not DMI /
|
|
124
|
+
hypervisor. Not `CI=true` alone. Not unverified `CURSOR_AGENT`.
|
|
125
|
+
- **desktop**: warn plus informed override
|
|
126
|
+
(`poetic sandbox trust linux --ack-desktop` or a TTY prompt). Never a
|
|
127
|
+
platform ban. Missing consent fails this run with
|
|
128
|
+
`linux_desktop_consent_required`. WSL is treated as a desktop.
|
|
129
|
+
- Consent is user-scoped (`getStateDir()` /
|
|
130
|
+
`~/.poetic/state/linux-host-policy.json`), never repo `.poetic/`.
|
|
131
|
+
|
|
132
|
+
```bash
|
|
133
|
+
poetic sandbox status [--json] [--probe] [--provider] [--all]
|
|
134
|
+
poetic sandbox classify [--json]
|
|
135
|
+
poetic sandbox trust linux --host isolated
|
|
136
|
+
poetic sandbox trust linux --ack-desktop
|
|
137
|
+
poetic sandbox trust linux --revoke
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
`status --json` includes `linuxHost`. `--ack-desktop` always prints the full
|
|
141
|
+
risk paragraph to stderr (the flag is the consent; the paragraph is the
|
|
142
|
+
record). `poetic doctor` keeps `sandboxCapable` as a path-writability probe;
|
|
143
|
+
desktop-unacked is a warning, not sandbox-blocked.
|
|
144
|
+
|
|
145
|
+
Install, readiness (`provider list`, `doctor`), orientation (`plan next`),
|
|
146
|
+
telemetry/cost reads, and other read-only or non-provider-write CLI commands
|
|
147
|
+
remain available on Linux without host-class consent.
|
|
148
|
+
|
|
149
|
+
The write-capable subprocess paths — headless provider automation through the
|
|
150
|
+
shared base runner, the tmux transport, and the API transport's `bash` tool —
|
|
151
|
+
honor the same contract (macOS Seatbelt / attested container / inherited outer,
|
|
152
|
+
or Linux host class). Other sandbox-wrapped subprocesses — auth, model
|
|
153
|
+
discovery, `doctor`, and readiness probes — are still wrapped but are not
|
|
154
|
+
refused when no confinement boundary is available, which is what keeps them
|
|
155
|
+
usable on Linux without host-class consent (some of them, such as provider
|
|
156
|
+
auth, do write provider configuration).
|
|
157
|
+
|
|
158
|
+
It also does not cover the API transport's in-process `write_file` and
|
|
159
|
+
`edit_file` tools, which write files directly from the Poetic process rather
|
|
160
|
+
than through a sandboxed subprocess. Those writes are confined by a path jail
|
|
161
|
+
instead: the target path is resolved against the run's working directory, and
|
|
162
|
+
paths — or symlinks — resolving outside it are rejected. That containment is
|
|
163
|
+
enforced when the path is validated, not at the moment of the write, so it is
|
|
164
|
+
not resistant to a concurrent rename or symlink swap inside the working
|
|
165
|
+
directory between the two steps.
|
|
166
|
+
|
|
167
|
+
The API transport is opt-in, and reaching those write tools takes a deliberate
|
|
168
|
+
configuration. `resolveTransportType` selects `api` only from a `+api` variant
|
|
169
|
+
suffix, `POETIC_PROVIDER_<ID>_TRANSPORT=api`, or a provider's configured
|
|
170
|
+
`transport` field; every shipped provider that can execute work defaults to
|
|
171
|
+
`transport: cli`. (The catalog does contain a `transport: api` entry, but it is
|
|
172
|
+
`enabled: false` and is a pricing data source rather than an execution
|
|
173
|
+
provider.) Analysis-only provider runs additionally narrow the API tool roster to
|
|
174
|
+
the read-only tools, so `write_file` and `edit_file` are neither advertised nor
|
|
175
|
+
executable there. Runs that go through the shared provider runner derive that
|
|
176
|
+
narrowing from the run's execution intent rather than relying on each caller to
|
|
177
|
+
pass it. A few paths call a provider engine directly, bypassing that runner, and
|
|
178
|
+
remain responsible for setting the flag themselves. Where the narrowing applies
|
|
179
|
+
it is enforced at the dispatch boundary as well as in what is advertised: a
|
|
180
|
+
response naming a tool outside the resolved set is refused rather than run.
|
|
181
|
+
|
|
182
|
+
Where the transport is selected for write-capable work, two consequences follow.
|
|
183
|
+
On bare Linux those specific writes can proceed without an accepted sandbox
|
|
184
|
+
boundary, confined by the working directory rather than by the boundary
|
|
185
|
+
described above. On macOS, where a seatbelt profile is generated, they also
|
|
186
|
+
bypass that profile's write denials on `.git/hooks` and `core.hooksPath` — the
|
|
187
|
+
`bash` tool obeys those denials, the in-process write tools never reach the
|
|
188
|
+
profile. Those tools write with ordinary file permissions and cannot set an
|
|
189
|
+
executable bit, so a newly created hook file is inert; the deferred-execution
|
|
190
|
+
consequence needs an already-executable hook to overwrite, or `.git/config` and
|
|
191
|
+
`core.hooksPath` redirection to an existing executable.
|
|
192
|
+
|
|
193
|
+
### Project Verification Executes Target-Repository Code
|
|
194
|
+
|
|
195
|
+
Poetic's verification path runs the target repository's own test, build, lint, and
|
|
196
|
+
typecheck commands. On macOS, those commands use the generated `sandbox-exec`
|
|
197
|
+
boundary with worktree writes allowed and Git metadata writes disabled. On
|
|
198
|
+
unsupported platforms or when the sandbox is explicitly disabled, verification
|
|
199
|
+
remains an ordinary child process.
|
|
200
|
+
|
|
201
|
+
Without an active boundary, code reached through a verification command can write
|
|
202
|
+
anywhere your user account can write, including `$HOME`, and can read credential
|
|
203
|
+
paths. With the generated macOS profile, filesystem effects are confined to the
|
|
204
|
+
worktree, approved runtime state, caches, and temporary directories.
|
|
205
|
+
|
|
206
|
+
Mitigations that do apply, and what each does not cover:
|
|
207
|
+
|
|
208
|
+
- Verification children receive a narrow environment allowlist rather than the
|
|
209
|
+
parent environment. AI and provider API keys, cloud credentials, `GIT_*`
|
|
210
|
+
routing, and `GH_*` and `GITHUB_*` tokens are excluded. This is credential
|
|
211
|
+
scrubbing, not filesystem isolation; `HOME` and `PATH` are preserved. The two
|
|
212
|
+
callers differ: the local CI gate excludes ambient `POETIC_*` authority
|
|
213
|
+
variables, forces `CI=1`, and injects only authority-derived values, while
|
|
214
|
+
orchestrator verification inherits ambient `CI`. Verified code can therefore
|
|
215
|
+
tell the two contexts apart.
|
|
216
|
+
- A command-safety allowlist rejects shell metacharacters, `sh`/`bash`/`zsh` and
|
|
217
|
+
similar shell executables, inline `node -e`, install and remote-exec verbs such
|
|
218
|
+
as `npm ci`, and `npx` without `--no-install` or `--offline`. It constrains the
|
|
219
|
+
command string, not what the invoked script does. `npm test`, `pytest`,
|
|
220
|
+
`cargo test`, and `make test` are all accepted, and each then runs whatever the
|
|
221
|
+
repository defines. Some interpreters are admitted for a specific narrow verb,
|
|
222
|
+
such as `pwsh` limited to `Invoke-Pester`, which still executes the
|
|
223
|
+
repository's own test code.
|
|
224
|
+
- Dependency materialization passes `--ignore-scripts` for npm, pnpm, and bun, so
|
|
225
|
+
install lifecycle scripts are suppressed. Yarn is excluded because Yarn Berry
|
|
226
|
+
rejects the flag, the Python path uses `pip install`, which can execute build
|
|
227
|
+
backends, and `--ignore-scripts` has no effect on what a test script runs
|
|
228
|
+
later.
|
|
229
|
+
|
|
230
|
+
Realistic exposure paths are a compromised dependency pulled into the target
|
|
231
|
+
project, or agent-authored or prompt-injected code that reaches a verification
|
|
232
|
+
script. Neither requires a hostile third-party contribution.
|
|
233
|
+
|
|
234
|
+
This is not limited to the local CI gate. Orchestrator verification also uses the
|
|
235
|
+
same runner as local CI (wrapped when a boundary is available), including
|
|
236
|
+
progress validation, the typecheck gate, post-execution checks, and
|
|
237
|
+
competition verification.
|
|
238
|
+
|
|
239
|
+
Treat running Poetic against an untrusted or unfamiliar repository as running
|
|
240
|
+
that repository's code on your machine.
|
|
241
|
+
|
|
242
|
+
### Package Contents
|
|
243
|
+
|
|
244
|
+
The public npm package uses an explicit `package.json#files` allowlist.
|
|
245
|
+
User docs are included by path instead of shipping the whole
|
|
246
|
+
`docs/` tree, and package guards reject internal security session notes,
|
|
247
|
+
validation reports, and audit artifacts.
|
|
248
|
+
|
|
249
|
+
Relevant local checks:
|
|
250
|
+
|
|
251
|
+
```bash
|
|
252
|
+
npm run -s check:package-docs
|
|
253
|
+
npm run -s verify:dist
|
|
254
|
+
npm run -s release:pack-smoke
|
|
255
|
+
```
|
|
256
|
+
|
|
257
|
+
## Security Review Scope
|
|
258
|
+
|
|
259
|
+
Security audit notes, validation reports, and investigation drafts belong in
|
|
260
|
+
internal planning or security-audit locations, not in the public npm package
|
|
261
|
+
or its reference docs. Packaged docs should describe
|
|
262
|
+
shipped behavior, reporting channels, and user-facing security boundaries.
|