@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.
Files changed (782) hide show
  1. package/.github/SECURITY.md +47 -0
  2. package/.nvmrc +1 -0
  3. package/.poetic/README.md +37 -0
  4. package/.poetic/providers/catalog.json +12051 -0
  5. package/.poetic/providers/pricing.json +1272 -0
  6. package/.poetic/providers/registry.json +3369 -0
  7. package/CHANGELOG.md +552 -0
  8. package/CODE_OF_CONDUCT.md +40 -0
  9. package/CONTRIBUTING.md +23 -0
  10. package/INSTALL.md +454 -0
  11. package/LICENSE +21 -0
  12. package/README.md +474 -0
  13. package/dist/BasicOptimizationCompetitionRunner-5H5TBYO4.js +153 -0
  14. package/dist/ExecutionTracker-UVONC4C6.js +16 -0
  15. package/dist/OptimizationConfig-7DFY2TST.js +17 -0
  16. package/dist/OptimizationEngine-JIMGP3LY.js +1597 -0
  17. package/dist/PromptStore-U6ZD3ZMQ.js +18 -0
  18. package/dist/actions-LUJPINLJ.js +322 -0
  19. package/dist/agent-ingest-3DJUJ7FU.js +53 -0
  20. package/dist/aggregator-DNCBINFO.js +12 -0
  21. package/dist/ai-judge-5QT5QJVU.js +156 -0
  22. package/dist/allowlist-grounding-RO6HKUFI.js +16 -0
  23. package/dist/allowlist-utils-23V7TJ3G.js +28 -0
  24. package/dist/anchored-turn-service-JULUCUIK.js +489 -0
  25. package/dist/api-transport-4TYTNLTJ.js +1087 -0
  26. package/dist/apply-completion-mode-AW2MOS3R.js +89 -0
  27. package/dist/artifact-migrator-23L45ISD.js +267 -0
  28. package/dist/ask-HWVV6QFR.js +135 -0
  29. package/dist/auth-5KEDKAPP.js +67 -0
  30. package/dist/auth-7TT3JINV.js +78 -0
  31. package/dist/auth-E6XUNZ5M.js +68 -0
  32. package/dist/auth-H3XDZE22.js +134 -0
  33. package/dist/auth-OC4E6633.js +71 -0
  34. package/dist/auth-S4CTX4GQ.js +44 -0
  35. package/dist/auth-YLH3S7EY.js +69 -0
  36. package/dist/auth-liveness-TDDEZY3T.js +46 -0
  37. package/dist/auto-optimizer-VPRWOWGU.js +80 -0
  38. package/dist/autoloop-cleanup-JOGKTLWA.js +109 -0
  39. package/dist/autoloop-evidence-gates-PCDALGVJ.js +38 -0
  40. package/dist/autoloop-gate-policy-Z7FVJVXV.js +175 -0
  41. package/dist/autoloop-helpers-2KTK43GL.js +22 -0
  42. package/dist/autoloop-ledger-W7QO62PX.js +96 -0
  43. package/dist/autoloop-ledger-subscriber-Z5RW5EIE.js +162 -0
  44. package/dist/autoloop-run-defaults-FERGRZGP.js +19 -0
  45. package/dist/autoloop-run-lock-CT2NWSV3.js +197 -0
  46. package/dist/autoloop-success-J2VKKBXQ.js +85 -0
  47. package/dist/autoloop-termination-summary-RN75F422.js +58 -0
  48. package/dist/autoloop-trajectory-XFIEXP5Z.js +282 -0
  49. package/dist/autoloop-wall-clock-T7ZVIQOC.js +12 -0
  50. package/dist/autonomous-loop-controller-PW4XVFGQ.js +4120 -0
  51. package/dist/backend-P3DAYRP7.js +29 -0
  52. package/dist/background-executor-CBN552V4.js +257 -0
  53. package/dist/backlog-execution-intent-U4XYPTV6.js +15 -0
  54. package/dist/backup-active-store-5WXG6SXT.js +17 -0
  55. package/dist/backup-telemetry-db-XGLXAA3N.js +254 -0
  56. package/dist/basic-competition-master-VCSBJVRN.js +344 -0
  57. package/dist/branch-archive-manager-RP6FP3ZC.js +254 -0
  58. package/dist/branch-cleanup-manager-RSHAI7YR.js +20 -0
  59. package/dist/build-gate-YHGRB4QB.js +71 -0
  60. package/dist/change-summary-WY7J5TOX.js +33 -0
  61. package/dist/chunk-23A26CSN.js +123 -0
  62. package/dist/chunk-27UTJD3M.js +265 -0
  63. package/dist/chunk-2A5CILN3.js +310 -0
  64. package/dist/chunk-2AQUWJPW.js +225 -0
  65. package/dist/chunk-2BZ53J6J.js +2344 -0
  66. package/dist/chunk-2DY5KNVM.js +276 -0
  67. package/dist/chunk-2EIA4RBE.js +659 -0
  68. package/dist/chunk-2IUXIGQD.js +1064 -0
  69. package/dist/chunk-2N42MS2Z.js +2193 -0
  70. package/dist/chunk-2QJ3H3L7.js +42 -0
  71. package/dist/chunk-2QLYTVYX.js +791 -0
  72. package/dist/chunk-2VSQMRCB.js +18 -0
  73. package/dist/chunk-2XQXYBM2.js +130 -0
  74. package/dist/chunk-2YFUIER7.js +426 -0
  75. package/dist/chunk-34CNP2HB.js +148 -0
  76. package/dist/chunk-35P3W3JX.js +456 -0
  77. package/dist/chunk-36PEBZAF.js +18 -0
  78. package/dist/chunk-3AOKYKA7.js +22 -0
  79. package/dist/chunk-3BCUNHKF.js +475 -0
  80. package/dist/chunk-3FLXLLB7.js +26 -0
  81. package/dist/chunk-3FOZ2VHV.js +100 -0
  82. package/dist/chunk-3G6FZCRF.js +106 -0
  83. package/dist/chunk-3M57DADF.js +44 -0
  84. package/dist/chunk-3S62LLWJ.js +543 -0
  85. package/dist/chunk-3ZPQLGV7.js +2904 -0
  86. package/dist/chunk-44N5WZZH.js +45 -0
  87. package/dist/chunk-45FPSA3B.js +125 -0
  88. package/dist/chunk-4BJ3O4RQ.js +929 -0
  89. package/dist/chunk-4BOP7T6L.js +2321 -0
  90. package/dist/chunk-4BTDUT2S.js +42 -0
  91. package/dist/chunk-4CSS7WVI.js +143 -0
  92. package/dist/chunk-4CUY7AFY.js +247 -0
  93. package/dist/chunk-4GSN5O5J.js +62 -0
  94. package/dist/chunk-4HN6DF7V.js +1027 -0
  95. package/dist/chunk-4IAPOG5V.js +415 -0
  96. package/dist/chunk-4IYIZQWV.js +48 -0
  97. package/dist/chunk-4NXPXE62.js +84 -0
  98. package/dist/chunk-4RCCF5BR.js +712 -0
  99. package/dist/chunk-4V7NAQ4R.js +19527 -0
  100. package/dist/chunk-4VJITV4P.js +445 -0
  101. package/dist/chunk-4YX7J6QL.js +1859 -0
  102. package/dist/chunk-527OBWQB.js +338 -0
  103. package/dist/chunk-5D4A7E3D.js +448 -0
  104. package/dist/chunk-5DLKYTQX.js +4003 -0
  105. package/dist/chunk-5EERLVZB.js +139 -0
  106. package/dist/chunk-5H72XE4H.js +256 -0
  107. package/dist/chunk-5HDP7XZG.js +91 -0
  108. package/dist/chunk-5LAMRH4X.js +969 -0
  109. package/dist/chunk-5LTN43AS.js +1972 -0
  110. package/dist/chunk-5RBHQYDB.js +2206 -0
  111. package/dist/chunk-5WCQRDRB.js +588 -0
  112. package/dist/chunk-5WRLK5KW.js +700 -0
  113. package/dist/chunk-5ZCXC23G.js +595 -0
  114. package/dist/chunk-6BM72ZMG.js +31 -0
  115. package/dist/chunk-6EDAJH2I.js +68 -0
  116. package/dist/chunk-6EQKFDBH.js +457 -0
  117. package/dist/chunk-6MFRHTRI.js +115 -0
  118. package/dist/chunk-6TZJRKNW.js +321 -0
  119. package/dist/chunk-6V7HGQFZ.js +20 -0
  120. package/dist/chunk-6VWVO2TU.js +3746 -0
  121. package/dist/chunk-6Y5TWI7H.js +146 -0
  122. package/dist/chunk-6Y5U7UFY.js +91 -0
  123. package/dist/chunk-6ZLAK3XG.js +14 -0
  124. package/dist/chunk-72XCRQED.js +34 -0
  125. package/dist/chunk-72YTZMAM.js +589 -0
  126. package/dist/chunk-73BBJOKA.js +263 -0
  127. package/dist/chunk-73NCTWKL.js +188 -0
  128. package/dist/chunk-77I6G4CO.js +1 -0
  129. package/dist/chunk-7DHRDWFS.js +3104 -0
  130. package/dist/chunk-7DNSNKJV.js +78 -0
  131. package/dist/chunk-7FMJVYBS.js +307 -0
  132. package/dist/chunk-7GDRQBQC.js +419 -0
  133. package/dist/chunk-7GPCEFUV.js +270 -0
  134. package/dist/chunk-7IL4A2PP.js +948 -0
  135. package/dist/chunk-7MMLMXO6.js +3679 -0
  136. package/dist/chunk-7QCZSLBH.js +1 -0
  137. package/dist/chunk-7R2WLDOS.js +62 -0
  138. package/dist/chunk-7T7RUJI7.js +949 -0
  139. package/dist/chunk-A2WKSVX7.js +43 -0
  140. package/dist/chunk-A3YGID55.js +133 -0
  141. package/dist/chunk-A722DEVA.js +14 -0
  142. package/dist/chunk-ACDIT7OP.js +1376 -0
  143. package/dist/chunk-ACKIPAOJ.js +302 -0
  144. package/dist/chunk-APPNGGN7.js +365 -0
  145. package/dist/chunk-APV6MK5E.js +137 -0
  146. package/dist/chunk-ASEP3M2W.js +968 -0
  147. package/dist/chunk-AT4TNPWW.js +2931 -0
  148. package/dist/chunk-ATVKCSGT.js +250 -0
  149. package/dist/chunk-AURFMVCD.js +899 -0
  150. package/dist/chunk-AX6GWE7V.js +47 -0
  151. package/dist/chunk-AY5EWJPF.js +385 -0
  152. package/dist/chunk-BAV2HJXS.js +194 -0
  153. package/dist/chunk-BBHRN366.js +89 -0
  154. package/dist/chunk-BBPSTTPA.js +1004 -0
  155. package/dist/chunk-BDATUDDJ.js +992 -0
  156. package/dist/chunk-BKE5PG5L.js +20414 -0
  157. package/dist/chunk-BLPHWMDK.js +797 -0
  158. package/dist/chunk-BSE4R6XD.js +322 -0
  159. package/dist/chunk-BXGMAU4A.js +396 -0
  160. package/dist/chunk-BXI4NXL3.js +507 -0
  161. package/dist/chunk-BZU2O43F.js +1125 -0
  162. package/dist/chunk-C3L6YQ7P.js +147 -0
  163. package/dist/chunk-C57KJOUQ.js +121 -0
  164. package/dist/chunk-CCV7BPSY.js +118 -0
  165. package/dist/chunk-CD7ISXA4.js +826 -0
  166. package/dist/chunk-CE5OZBYY.js +21 -0
  167. package/dist/chunk-CFBIG37O.js +154 -0
  168. package/dist/chunk-CJC6GZ46.js +457 -0
  169. package/dist/chunk-CKCDGXIV.js +408 -0
  170. package/dist/chunk-CKNX3TTP.js +10338 -0
  171. package/dist/chunk-CLKSETWE.js +10 -0
  172. package/dist/chunk-CP7H3HSP.js +1552 -0
  173. package/dist/chunk-CPLEWXNZ.js +66 -0
  174. package/dist/chunk-CQM3A35X.js +844 -0
  175. package/dist/chunk-CS6P76D3.js +103 -0
  176. package/dist/chunk-CTLUBNCW.js +622 -0
  177. package/dist/chunk-CUSRN6RJ.js +632 -0
  178. package/dist/chunk-D5EP5D2W.js +26 -0
  179. package/dist/chunk-D5RYINO7.js +412 -0
  180. package/dist/chunk-DBFS4HMH.js +751 -0
  181. package/dist/chunk-DC4ZYMXJ.js +115 -0
  182. package/dist/chunk-DCBZP442.js +9243 -0
  183. package/dist/chunk-DCYF7EKG.js +26 -0
  184. package/dist/chunk-DDMAFNUK.js +5351 -0
  185. package/dist/chunk-DF5SLDE4.js +966 -0
  186. package/dist/chunk-DJFW7SMX.js +348 -0
  187. package/dist/chunk-DQFLLBJW.js +121 -0
  188. package/dist/chunk-DSFM56OA.js +1203 -0
  189. package/dist/chunk-DTY4APYV.js +218 -0
  190. package/dist/chunk-DXH5JBRS.js +437 -0
  191. package/dist/chunk-E3NTPHEO.js +194 -0
  192. package/dist/chunk-E74LUIID.js +302 -0
  193. package/dist/chunk-EI57M5BI.js +194 -0
  194. package/dist/chunk-EJ4ZAWLV.js +305 -0
  195. package/dist/chunk-EJGCZGUF.js +1483 -0
  196. package/dist/chunk-EK2U3YEG.js +486 -0
  197. package/dist/chunk-ELMFYNV7.js +109 -0
  198. package/dist/chunk-ENRGKNR5.js +25 -0
  199. package/dist/chunk-ETYDXCK7.js +679 -0
  200. package/dist/chunk-EYRH3W74.js +239 -0
  201. package/dist/chunk-F23DIWNN.js +1024 -0
  202. package/dist/chunk-F5JO7HAS.js +94 -0
  203. package/dist/chunk-F7ER6ANO.js +174 -0
  204. package/dist/chunk-FATUVIIN.js +374 -0
  205. package/dist/chunk-FC23CTXV.js +322 -0
  206. package/dist/chunk-FD4ERYEG.js +22 -0
  207. package/dist/chunk-FH7WOJAE.js +79 -0
  208. package/dist/chunk-FHOWVDF5.js +1342 -0
  209. package/dist/chunk-FKAUPHMR.js +96 -0
  210. package/dist/chunk-FONNFJXA.js +137 -0
  211. package/dist/chunk-FQ7FSZRW.js +75 -0
  212. package/dist/chunk-FRG57FPM.js +240 -0
  213. package/dist/chunk-FUVP64ER.js +31 -0
  214. package/dist/chunk-FYOILAN5.js +6818 -0
  215. package/dist/chunk-G35UYQ6Z.js +69 -0
  216. package/dist/chunk-G36W2T2S.js +1143 -0
  217. package/dist/chunk-G3L2L5XZ.js +49 -0
  218. package/dist/chunk-G4THLFV3.js +148 -0
  219. package/dist/chunk-GAFJEYLK.js +29 -0
  220. package/dist/chunk-GFGYB2ZU.js +1689 -0
  221. package/dist/chunk-GG6KJYW6.js +85 -0
  222. package/dist/chunk-GHHFDU2U.js +55 -0
  223. package/dist/chunk-GHTZSQB7.js +57 -0
  224. package/dist/chunk-GK37ILCX.js +1231 -0
  225. package/dist/chunk-GKN3HMN4.js +2809 -0
  226. package/dist/chunk-GNVDBVJP.js +156 -0
  227. package/dist/chunk-GPEL3FBM.js +924 -0
  228. package/dist/chunk-GPSNGPZS.js +1604 -0
  229. package/dist/chunk-GSGD5E4C.js +30 -0
  230. package/dist/chunk-GSUQJJXQ.js +331 -0
  231. package/dist/chunk-GSV226X6.js +110 -0
  232. package/dist/chunk-H2AYQIHW.js +224 -0
  233. package/dist/chunk-H66DXFS5.js +1374 -0
  234. package/dist/chunk-H6G7QRMQ.js +35 -0
  235. package/dist/chunk-H7JAGHZT.js +59 -0
  236. package/dist/chunk-H7ZEFECA.js +316 -0
  237. package/dist/chunk-HAC6EHZZ.js +79 -0
  238. package/dist/chunk-HIO33P3G.js +19 -0
  239. package/dist/chunk-HMVQIPH3.js +547 -0
  240. package/dist/chunk-HOYBYAOA.js +257 -0
  241. package/dist/chunk-HX5P3CSP.js +1784 -0
  242. package/dist/chunk-I46EG2XQ.js +65 -0
  243. package/dist/chunk-I4NPDSCB.js +279 -0
  244. package/dist/chunk-I5WRT7ZR.js +514 -0
  245. package/dist/chunk-IC7I6YIJ.js +301 -0
  246. package/dist/chunk-IDCSOZVN.js +78 -0
  247. package/dist/chunk-IFCBYECK.js +112 -0
  248. package/dist/chunk-IFZCPEY2.js +66 -0
  249. package/dist/chunk-IKFP2KUR.js +48 -0
  250. package/dist/chunk-IRFBN336.js +878 -0
  251. package/dist/chunk-IUXNGKA6.js +152 -0
  252. package/dist/chunk-IV2RVAN7.js +1356 -0
  253. package/dist/chunk-IZYIQQ7X.js +53 -0
  254. package/dist/chunk-J3UUR7DE.js +210 -0
  255. package/dist/chunk-J54VUAY2.js +566 -0
  256. package/dist/chunk-J62KPGII.js +464 -0
  257. package/dist/chunk-J6P3FWWW.js +130 -0
  258. package/dist/chunk-JKBHJQMT.js +434 -0
  259. package/dist/chunk-JLS65NUQ.js +14 -0
  260. package/dist/chunk-JOSYEJKY.js +141 -0
  261. package/dist/chunk-JPKSXKNB.js +94 -0
  262. package/dist/chunk-JQNJB2BB.js +2440 -0
  263. package/dist/chunk-JRVNSWSQ.js +2626 -0
  264. package/dist/chunk-JSWMRQYG.js +28 -0
  265. package/dist/chunk-JZKNBBIB.js +152 -0
  266. package/dist/chunk-K54Y7MLK.js +160 -0
  267. package/dist/chunk-K65546RE.js +183 -0
  268. package/dist/chunk-KM3F7SYE.js +702 -0
  269. package/dist/chunk-KNDYMVWN.js +102 -0
  270. package/dist/chunk-KNT72VR6.js +132 -0
  271. package/dist/chunk-KP6YILMU.js +482 -0
  272. package/dist/chunk-KQEBSK3T.js +274 -0
  273. package/dist/chunk-KT6VHSPF.js +84 -0
  274. package/dist/chunk-KTMW65UX.js +14 -0
  275. package/dist/chunk-KZ5CJVBP.js +1813 -0
  276. package/dist/chunk-L4427KOE.js +26 -0
  277. package/dist/chunk-L6OM4A22.js +189 -0
  278. package/dist/chunk-L7E6XCRA.js +1042 -0
  279. package/dist/chunk-L7JZLXQL.js +173 -0
  280. package/dist/chunk-LAMKBTXX.js +40 -0
  281. package/dist/chunk-LDCF2MKN.js +132 -0
  282. package/dist/chunk-LEIIWPWQ.js +78 -0
  283. package/dist/chunk-LFTQVYBB.js +31 -0
  284. package/dist/chunk-LG3PDRTR.js +2872 -0
  285. package/dist/chunk-LGHII5ET.js +23 -0
  286. package/dist/chunk-LH5QY22X.js +1205 -0
  287. package/dist/chunk-LIVJ6266.js +438 -0
  288. package/dist/chunk-LKRAR3IH.js +276 -0
  289. package/dist/chunk-LO23NABI.js +3063 -0
  290. package/dist/chunk-LO3X5NLS.js +326 -0
  291. package/dist/chunk-LPITVM7M.js +339 -0
  292. package/dist/chunk-LR5IJIGV.js +810 -0
  293. package/dist/chunk-LRGMHROI.js +79 -0
  294. package/dist/chunk-LUVKFFWR.js +315 -0
  295. package/dist/chunk-LWCBNGH6.js +35 -0
  296. package/dist/chunk-LWTN3WRV.js +260 -0
  297. package/dist/chunk-M3HQYKQX.js +308 -0
  298. package/dist/chunk-M6GVSPEH.js +1016 -0
  299. package/dist/chunk-MF5HP6XV.js +221 -0
  300. package/dist/chunk-MHLCBZJB.js +328 -0
  301. package/dist/chunk-MN6PL4AN.js +120 -0
  302. package/dist/chunk-MOEY65Z6.js +5678 -0
  303. package/dist/chunk-MQ4WA34C.js +206 -0
  304. package/dist/chunk-MWHF5V7U.js +223 -0
  305. package/dist/chunk-MWHLBPNU.js +211 -0
  306. package/dist/chunk-MWK5UZQ3.js +1068 -0
  307. package/dist/chunk-MYLH2S4G.js +64 -0
  308. package/dist/chunk-MZ5WYKNA.js +28 -0
  309. package/dist/chunk-N4VTRA7K.js +131 -0
  310. package/dist/chunk-N5DX4JAK.js +12 -0
  311. package/dist/chunk-N65O4XTH.js +5011 -0
  312. package/dist/chunk-NEQUQHOX.js +223 -0
  313. package/dist/chunk-NGK6PEOG.js +25 -0
  314. package/dist/chunk-NJVD4PWE.js +1033 -0
  315. package/dist/chunk-NM6PMYY4.js +768 -0
  316. package/dist/chunk-NN4PJDHP.js +708 -0
  317. package/dist/chunk-NP2V3L7K.js +226 -0
  318. package/dist/chunk-NRLY536M.js +260 -0
  319. package/dist/chunk-NRNE225N.js +1270 -0
  320. package/dist/chunk-NS2K2GTP.js +605 -0
  321. package/dist/chunk-NS33V3IM.js +51 -0
  322. package/dist/chunk-NSHASMZZ.js +71 -0
  323. package/dist/chunk-NWOYOA6H.js +378 -0
  324. package/dist/chunk-NWRUSEXG.js +322 -0
  325. package/dist/chunk-NZGDAWIP.js +1905 -0
  326. package/dist/chunk-O47UOKU3.js +395 -0
  327. package/dist/chunk-O4G2W3ST.js +9831 -0
  328. package/dist/chunk-O6V4PNLO.js +63 -0
  329. package/dist/chunk-OA4GPILI.js +624 -0
  330. package/dist/chunk-OGMSYL6J.js +227 -0
  331. package/dist/chunk-OIS7J26S.js +319 -0
  332. package/dist/chunk-OMX5VL43.js +79 -0
  333. package/dist/chunk-ON3G73BU.js +264 -0
  334. package/dist/chunk-OPYFYTWQ.js +220 -0
  335. package/dist/chunk-OQ6K46CK.js +1734 -0
  336. package/dist/chunk-OYZYO7TV.js +47 -0
  337. package/dist/chunk-OZ4REHIN.js +4386 -0
  338. package/dist/chunk-P47VN5F4.js +282 -0
  339. package/dist/chunk-P5I4X7A7.js +353 -0
  340. package/dist/chunk-P6VQROCO.js +594 -0
  341. package/dist/chunk-P7CQGPLS.js +30 -0
  342. package/dist/chunk-PCAGC5MR.js +1763 -0
  343. package/dist/chunk-PFTQBXS6.js +5181 -0
  344. package/dist/chunk-PGSPX4SU.js +15 -0
  345. package/dist/chunk-PIKLF7BM.js +432 -0
  346. package/dist/chunk-PJWJ3SAV.js +22 -0
  347. package/dist/chunk-PKIFMV72.js +100 -0
  348. package/dist/chunk-PL37JDNA.js +189 -0
  349. package/dist/chunk-PTH5E5XO.js +195 -0
  350. package/dist/chunk-PW6AXLQC.js +4128 -0
  351. package/dist/chunk-PYITM4N2.js +79 -0
  352. package/dist/chunk-PZ5AY32C.js +10 -0
  353. package/dist/chunk-Q3RO7N35.js +45 -0
  354. package/dist/chunk-Q3WIC6GQ.js +2670 -0
  355. package/dist/chunk-Q5XIXSHX.js +271 -0
  356. package/dist/chunk-QGJDMEOV.js +34 -0
  357. package/dist/chunk-QNOB37UH.js +58 -0
  358. package/dist/chunk-QOCOVLUH.js +462 -0
  359. package/dist/chunk-QTCJ5CC5.js +172 -0
  360. package/dist/chunk-QVFV5IP2.js +232 -0
  361. package/dist/chunk-QVZMFDYG.js +29 -0
  362. package/dist/chunk-R35PEUKH.js +511 -0
  363. package/dist/chunk-R4UWBC35.js +200 -0
  364. package/dist/chunk-R6MLCREW.js +44 -0
  365. package/dist/chunk-R6W23LKN.js +254 -0
  366. package/dist/chunk-R7XDDX2A.js +4007 -0
  367. package/dist/chunk-RDFRCT64.js +168 -0
  368. package/dist/chunk-RE5VZDFQ.js +58 -0
  369. package/dist/chunk-RGROYC2G.js +638 -0
  370. package/dist/chunk-RGWHUI5E.js +68 -0
  371. package/dist/chunk-RHVG6UNL.js +205 -0
  372. package/dist/chunk-RI4EX2QE.js +18 -0
  373. package/dist/chunk-RJAAKDRX.js +17 -0
  374. package/dist/chunk-ROMHOSMQ.js +185 -0
  375. package/dist/chunk-RWREC3KJ.js +517 -0
  376. package/dist/chunk-RYNETRDJ.js +118 -0
  377. package/dist/chunk-RZY7RKM5.js +500 -0
  378. package/dist/chunk-S2MNWFAG.js +52 -0
  379. package/dist/chunk-S2VQCZO4.js +22 -0
  380. package/dist/chunk-S54MKU6V.js +117 -0
  381. package/dist/chunk-S5OIDFRM.js +302 -0
  382. package/dist/chunk-SCW4ZF6R.js +150 -0
  383. package/dist/chunk-SLS2N4PH.js +2213 -0
  384. package/dist/chunk-SNLBO4BF.js +247 -0
  385. package/dist/chunk-SP3LFU6B.js +60 -0
  386. package/dist/chunk-SQQTDDQA.js +537 -0
  387. package/dist/chunk-STV6LYYE.js +45 -0
  388. package/dist/chunk-SURZ2WFE.js +326 -0
  389. package/dist/chunk-SZ7DL357.js +1047 -0
  390. package/dist/chunk-T5E4NQCM.js +5742 -0
  391. package/dist/chunk-TAJPCXSB.js +13 -0
  392. package/dist/chunk-TAOOYK3P.js +358 -0
  393. package/dist/chunk-TDSEX5CF.js +24 -0
  394. package/dist/chunk-TFTGP7Z7.js +174 -0
  395. package/dist/chunk-TGON4N4O.js +197 -0
  396. package/dist/chunk-TGQZHDY2.js +2373 -0
  397. package/dist/chunk-TJJZ2OKV.js +6783 -0
  398. package/dist/chunk-TRSVUPCX.js +25 -0
  399. package/dist/chunk-TSXGRLPR.js +107 -0
  400. package/dist/chunk-U2S3YEX3.js +224 -0
  401. package/dist/chunk-U45RTRGY.js +818 -0
  402. package/dist/chunk-U6C3VVWS.js +13 -0
  403. package/dist/chunk-UDMS5AD3.js +307 -0
  404. package/dist/chunk-UGX7GI37.js +94 -0
  405. package/dist/chunk-UH3JJSHK.js +1 -0
  406. package/dist/chunk-UHRBTZYY.js +208 -0
  407. package/dist/chunk-UHT2KRG5.js +193 -0
  408. package/dist/chunk-UI2F6DJ5.js +118 -0
  409. package/dist/chunk-UMAKSB4Z.js +284 -0
  410. package/dist/chunk-UR2IBGIM.js +521 -0
  411. package/dist/chunk-UUH2RVKS.js +585 -0
  412. package/dist/chunk-UVJ4PJDK.js +4533 -0
  413. package/dist/chunk-V53UG2OT.js +9924 -0
  414. package/dist/chunk-V72RMBM4.js +48 -0
  415. package/dist/chunk-VBNCKCCI.js +16 -0
  416. package/dist/chunk-VNSYKC25.js +24 -0
  417. package/dist/chunk-VPHVFK4A.js +1984 -0
  418. package/dist/chunk-VTLNJQ44.js +133 -0
  419. package/dist/chunk-VTW7HP3R.js +100 -0
  420. package/dist/chunk-VVGEPBPS.js +218 -0
  421. package/dist/chunk-VVLLL7I4.js +166 -0
  422. package/dist/chunk-VX3UMWB7.js +483 -0
  423. package/dist/chunk-VXF4Q3FW.js +20 -0
  424. package/dist/chunk-W3JMT2YY.js +712 -0
  425. package/dist/chunk-WDUORIHF.js +877 -0
  426. package/dist/chunk-WDVTY4U6.js +148 -0
  427. package/dist/chunk-WIFZCHEG.js +12566 -0
  428. package/dist/chunk-WIRN3F75.js +736 -0
  429. package/dist/chunk-WMPU2UOV.js +82 -0
  430. package/dist/chunk-WTOKKE2V.js +784 -0
  431. package/dist/chunk-WX5IRLF6.js +740 -0
  432. package/dist/chunk-WZ6U3O7I.js +1581 -0
  433. package/dist/chunk-XAONGNST.js +57 -0
  434. package/dist/chunk-XB5YLCLB.js +13 -0
  435. package/dist/chunk-XEP5NQ5Y.js +688 -0
  436. package/dist/chunk-XGYF2QMZ.js +351 -0
  437. package/dist/chunk-XHEKQENB.js +255 -0
  438. package/dist/chunk-XNO4FM6X.js +1124 -0
  439. package/dist/chunk-XPHKYHO4.js +878 -0
  440. package/dist/chunk-XPK2I4NC.js +405 -0
  441. package/dist/chunk-XPU2XADL.js +2175 -0
  442. package/dist/chunk-XQD2B6BB.js +507 -0
  443. package/dist/chunk-XT2ZQVTC.js +558 -0
  444. package/dist/chunk-XTXJGGUV.js +351 -0
  445. package/dist/chunk-XUXVDPSZ.js +50 -0
  446. package/dist/chunk-XV7NZL4B.js +57 -0
  447. package/dist/chunk-XZE4XARH.js +563 -0
  448. package/dist/chunk-XZYR5EDO.js +152 -0
  449. package/dist/chunk-Y3J4JMTU.js +61 -0
  450. package/dist/chunk-Y55LZN5U.js +52 -0
  451. package/dist/chunk-Y5VN7DMP.js +112 -0
  452. package/dist/chunk-Y67VAHN4.js +459 -0
  453. package/dist/chunk-YAXSKEUH.js +3544 -0
  454. package/dist/chunk-YB3JD4E6.js +975 -0
  455. package/dist/chunk-YESZJFK6.js +220 -0
  456. package/dist/chunk-YGXKOBQQ.js +292 -0
  457. package/dist/chunk-YMX76IOS.js +31 -0
  458. package/dist/chunk-YOTXESEH.js +257 -0
  459. package/dist/chunk-YTYIEZQY.js +119 -0
  460. package/dist/chunk-YVORHQ2S.js +579 -0
  461. package/dist/chunk-Z2CUQDAR.js +3429 -0
  462. package/dist/chunk-Z2KYOFHS.js +7000 -0
  463. package/dist/chunk-Z6PC7QX6.js +161 -0
  464. package/dist/chunk-ZDTGECTN.js +235 -0
  465. package/dist/chunk-ZIPWI2LY.js +151 -0
  466. package/dist/chunk-ZSKKMTQJ.js +554 -0
  467. package/dist/chunk-ZTT5IVPY.js +1160 -0
  468. package/dist/chunk-ZX65UI5W.js +78 -0
  469. package/dist/chunk-ZYG7GGKO.js +218 -0
  470. package/dist/chunk-ZZZUL4OF.js +38 -0
  471. package/dist/cli-utils-IXL26KJT.js +40 -0
  472. package/dist/cli-validation-WLXWLUJL.js +111 -0
  473. package/dist/commit-utils-P7CRJF5N.js +202 -0
  474. package/dist/compete-config-resolver-R5ULXMYH.js +76 -0
  475. package/dist/compete-request-62JESVET.js +364 -0
  476. package/dist/compete-results-QEPG6FZX.js +208 -0
  477. package/dist/competition-outcome-tracker-R32OOZ43.js +38 -0
  478. package/dist/config-JCOKXOQT.js +166 -0
  479. package/dist/config-audit-EL3GHXS7.js +360 -0
  480. package/dist/config-explain-TNILDEVJ.js +12 -0
  481. package/dist/config-loader-VPFPFO4B.js +38 -0
  482. package/dist/config-manager-7T4E2BQO.js +67 -0
  483. package/dist/config-validator-KKOHOW7O.js +72 -0
  484. package/dist/cost-YC42XUF3.js +53 -0
  485. package/dist/coverage-orchestrator-CISNKJC2.js +772 -0
  486. package/dist/coverage-scanner-YVD62MLH.js +12 -0
  487. package/dist/createCompetitionRunner-LJG6ZQSO.js +46 -0
  488. package/dist/data-migration-state-VJK64DLT.js +31 -0
  489. package/dist/db-migrator-XSEIOGWY.js +34 -0
  490. package/dist/discovery-JGYGDD25.js +25 -0
  491. package/dist/doctor-GJOYE7AE.js +186 -0
  492. package/dist/domain-analyzer-AWF3RP6E.js +29 -0
  493. package/dist/ensure-initialized-744DIZEZ.js +52 -0
  494. package/dist/entry.js +940 -0
  495. package/dist/environment-YS45U5ZI.js +81 -0
  496. package/dist/error-parser-core-PPZ36A4S.js +50 -0
  497. package/dist/escalation-ladder-MKTCEGSA.js +130 -0
  498. package/dist/evaluation-context-KV4GZNN7.js +35 -0
  499. package/dist/evidence-plan-resolver-GBSYSAPX.js +85 -0
  500. package/dist/execution-data-writer-3ODTBDLH.js +53 -0
  501. package/dist/execution-policy-applier-ZHD3DCF3.js +31 -0
  502. package/dist/execution-preflight-Z4Y64V3I.js +209 -0
  503. package/dist/execution-roles-R3DPPMD3.js +66 -0
  504. package/dist/exit-code-error-Z4SW2DVK.js +14 -0
  505. package/dist/external-temp-cleanup-N2RZH4QP.js +311 -0
  506. package/dist/factory-XBN7DFIM.js +149 -0
  507. package/dist/file-utils-XIVR2ZMA.js +47 -0
  508. package/dist/flywheel-autoloop-executor-UILGOFFK.js +249 -0
  509. package/dist/flywheel-competition-executor-JOBEXTRB.js +259 -0
  510. package/dist/flywheel-executor-6JFLA6J5.js +369 -0
  511. package/dist/flywheel-git-isolation-UC5NIEVU.js +48 -0
  512. package/dist/flywheel-manifest-5UC4VBMA.js +108 -0
  513. package/dist/flywheel-model-defaults-7CVKP53V.js +27 -0
  514. package/dist/flywheel-preflight-XEY5SHM6.js +104 -0
  515. package/dist/flywheel-resume-7HELH7QS.js +23 -0
  516. package/dist/flywheel-safety-7U7DPOAP.js +28 -0
  517. package/dist/flywheel-scope-decision-ZHKF6ZIN.js +11 -0
  518. package/dist/get-telemetry-logger-DPVWWIYY.js +73 -0
  519. package/dist/git-worktree-IY6V6DUO.js +18 -0
  520. package/dist/github-pr-manager-4LXEKJTA.js +211 -0
  521. package/dist/guidance-profile-config-E7XJL2VP.js +117 -0
  522. package/dist/guidance-profile-renderer-QK2YMAAP.js +21 -0
  523. package/dist/index-query-4JEUKA44.js +31 -0
  524. package/dist/index.js +108661 -0
  525. package/dist/instructions-6BURLQJC.js +64 -0
  526. package/dist/invoke-provider-auth-GRUYP44M.js +223 -0
  527. package/dist/judge-scoring.json +80 -0
  528. package/dist/judge-test.js +555 -0
  529. package/dist/lab-mode-OTWVHN63.js +39 -0
  530. package/dist/lab-utils-BJRFLGK4.js +23 -0
  531. package/dist/linux-host-class-UY4KVLFD.js +29 -0
  532. package/dist/llm-judge-executor-F7Z3HO77.js +133 -0
  533. package/dist/local-executor-CEHWE2PL.js +223 -0
  534. package/dist/logger-33TR6EE5.js +72 -0
  535. package/dist/loop-spec-XTLQAVZ7.js +191 -0
  536. package/dist/manager-2HJG5CLT.js +25 -0
  537. package/dist/matrix-prompt-builder-6UDN5X3F.js +497 -0
  538. package/dist/matrix-result-parser-7W35EUOV.js +15 -0
  539. package/dist/metadata-HQ43NDEK.js +22 -0
  540. package/dist/model-invocations-db-QBO4Y7WZ.js +38 -0
  541. package/dist/monitor-XGYBG2DW.js +72 -0
  542. package/dist/next-PB5ZXZKB.js +90 -0
  543. package/dist/next-ZBDK725T.js +69 -0
  544. package/dist/optimization-config-resolver-O6WKR47U.js +75 -0
  545. package/dist/package-3YCWIQQ5.js +10 -0
  546. package/dist/parallel-orchestrator-NL7YJJU2.js +297 -0
  547. package/dist/parallel-worker.js +279 -0
  548. package/dist/parse-git-status-PIAF3OTP.js +10 -0
  549. package/dist/path-security-ETTH6TZL.js +39 -0
  550. package/dist/pattern-bank-UNJR5ADV.js +15 -0
  551. package/dist/plan-backlog-list-fast-VAGYBV3J.js +270 -0
  552. package/dist/plan-backlog-show-fast-SG2CZPW3.js +406 -0
  553. package/dist/plan-sprint-list-fast-LURAX47V.js +162 -0
  554. package/dist/plan-sprint-status-fast-FJAODCHD.js +208 -0
  555. package/dist/plan-task-status-fast-HNYBMQI4.js +349 -0
  556. package/dist/plan-to-flywheel-Z4U3GWPN.js +456 -0
  557. package/dist/planning-backlog-3CQ5QQBQ.js +319 -0
  558. package/dist/poetic-root-V5DNXEAE.js +17 -0
  559. package/dist/preflight-OPANWMME.js +12 -0
  560. package/dist/process-registry-PDZJPTAS.js +27 -0
  561. package/dist/process-scanner-C22SYXYD.js +22 -0
  562. package/dist/processes-KMQUD7HY.js +29 -0
  563. package/dist/processes-json-fast-IBDXZ6WW.js +135 -0
  564. package/dist/profile-SE5EVXAP.js +149 -0
  565. package/dist/prompts-WZZPGWBX.js +168 -0
  566. package/dist/protected-branches-RNTEX7ET.js +57 -0
  567. package/dist/provider-aware-resource-manager-QBTZJMNP.js +18 -0
  568. package/dist/provider-matrix-N5X57V3Y.js +154 -0
  569. package/dist/provider-matrix-renderer-MZDWKKID.js +139 -0
  570. package/dist/provider-output-forwarding-DERID3TP.js +30 -0
  571. package/dist/provider-registry-J5NRBJKI.js +128 -0
  572. package/dist/provider-temp-cleanup-KYGLF6YU.js +14 -0
  573. package/dist/prune-engine-Q6E2DXBN.js +451 -0
  574. package/dist/quality-gate-YRHMQAEI.js +70 -0
  575. package/dist/quickstart-FIRLKGJI.js +62 -0
  576. package/dist/readiness-VZTMSG6J.js +96 -0
  577. package/dist/registry-YODFY77A.js +153 -0
  578. package/dist/repair-helpers-TTV5FEF4.js +117 -0
  579. package/dist/repo-root-2IGD4H7X.js +22 -0
  580. package/dist/resolution-engine-D6TX6FRG.js +127 -0
  581. package/dist/resolve-provider-cli-O2P6XZBZ.js +35 -0
  582. package/dist/restore-telemetry-db-BQL6DTQF.js +360 -0
  583. package/dist/result-streamer-WEHW476R.js +19 -0
  584. package/dist/routing-events-DHPUZDDF.js +27 -0
  585. package/dist/routing-history-store-UWCEXAP3.js +46 -0
  586. package/dist/routing-planner-F5WQEUOM.js +160 -0
  587. package/dist/run-poetic-tui-J6LWRJUP.js +13517 -0
  588. package/dist/run-simulation.js +376 -0
  589. package/dist/runner-CS2TNGHA.js +1092 -0
  590. package/dist/runner-HHH7ZN2Z.js +1571 -0
  591. package/dist/safety-OCC4KJJR.js +64 -0
  592. package/dist/safety-stanza-7SV3HGG3.js +60 -0
  593. package/dist/sandbox-32QXJEMV.js +81 -0
  594. package/dist/sandbox-RSO7VP6V.js +94 -0
  595. package/dist/schema-extensions.sql +234 -0
  596. package/dist/security-2KI5XNDG.js +17 -0
  597. package/dist/setup-bb-plugin-QAQWZCV5.js +738 -0
  598. package/dist/setup-claude-code-P7BTTSPO.js +317 -0
  599. package/dist/setup-temp-cleanup-GASCWZ2I.js +20 -0
  600. package/dist/shared-utils-D6U6UREP.js +37 -0
  601. package/dist/simple-artifact-goal-OTXNGZY6.js +25 -0
  602. package/dist/sprint-UIXPYOXQ.js +338 -0
  603. package/dist/sprint-bridge-4BHMSC3M.js +68 -0
  604. package/dist/sprint-execution-service-2B7WHL5L.js +311 -0
  605. package/dist/sprint-manager-IDQUDNQI.js +91 -0
  606. package/dist/sqlite-wrapper-UDWCTNLJ.js +17 -0
  607. package/dist/stale-cleanup-orchestrator-XWXV7KCZ.js +62 -0
  608. package/dist/storage-access-F6ALDN4S.js +22 -0
  609. package/dist/synthesis-XD6EDVHF.js +185 -0
  610. package/dist/task-classifier-LNLXSHOM.js +494 -0
  611. package/dist/task-list-fast-PTMA4LUC.js +147 -0
  612. package/dist/task-manager-XAT7GOWB.js +93 -0
  613. package/dist/task-splitter-U7DJ7W6A.js +79 -0
  614. package/dist/task-type-detector-OLVOMXZO.js +21 -0
  615. package/dist/task-type-resolver-KKNQYSB4.js +42 -0
  616. package/dist/telemetry-5HWBBXLX.js +131 -0
  617. package/dist/telemetry-health-tracker-DMSSGBZ2.js +11 -0
  618. package/dist/telemetry-path-resolver-7ICSG276.js +28 -0
  619. package/dist/telemetry-reliability-XUOZNZZ6.js +125 -0
  620. package/dist/token-estimator-MEQUL3EJ.js +37 -0
  621. package/dist/transports-KNSSV2V4.js +255 -0
  622. package/dist/unified-cost-tracker-4TFRBVPR.js +35 -0
  623. package/dist/unified-state-cleanup-LJPF2BOW.js +276 -0
  624. package/dist/universal-cost-calculator-BAJV35GA.js +42 -0
  625. package/dist/user-agents-GHUGCSKN.js +22 -0
  626. package/dist/variant-delivery-state-KLRNG6XA.js +33 -0
  627. package/dist/variant-state-cleanup-MZGGLQAJ.js +280 -0
  628. package/dist/variant-success-PJXWE3ZV.js +12 -0
  629. package/dist/variant-worker-KUWKBLAH.js +4196 -0
  630. package/dist/variant-worker.js +24 -0
  631. package/dist/variants-JE2FSAQS.js +233 -0
  632. package/dist/verification-toolchains-V24UHW6Q.js +28 -0
  633. package/dist/verify-commands-H3DTCSGI.js +37 -0
  634. package/dist/warning-EGQGUUIO.js +12 -0
  635. package/dist/work-edge-RWEDWJZF.js +49 -0
  636. package/dist/work-item-writer-WHAVZXAY.js +19 -0
  637. package/dist/worker-7SA2VS2Y.js +1435 -0
  638. package/dist/worker.js +19 -0
  639. package/dist/worktree-metrics-3DFUYVYE.js +26 -0
  640. package/dist/writeback-VZKHYHSN.js +44 -0
  641. package/docs/CLI_REFERENCE.md +7042 -0
  642. package/docs/PROVIDER_SETUP.md +1570 -0
  643. package/docs/README.md +96 -0
  644. package/docs/TROUBLESHOOTING.md +2232 -0
  645. package/docs/getting-started/QUICK_START.md +294 -0
  646. package/docs/getting-started/README.md +188 -0
  647. package/docs/getting-started/SETUP.md +52 -0
  648. package/docs/reference/AGENT_CONTEXT.md +38 -0
  649. package/docs/reference/PROVIDER_RELEASE_TIERS.md +34 -0
  650. package/docs/reference/README.md +381 -0
  651. package/docs/reference/SECURITY.md +262 -0
  652. package/integrations/bb-plugin-poetic/README.md +362 -0
  653. package/integrations/bb-plugin-poetic/app.css +341 -0
  654. package/integrations/bb-plugin-poetic/app.tsx +5059 -0
  655. package/integrations/bb-plugin-poetic/package.json +45 -0
  656. package/integrations/bb-plugin-poetic/server.ts +444 -0
  657. package/integrations/bb-plugin-poetic/src/adapter.ts +3312 -0
  658. package/integrations/bb-plugin-poetic/src/backlog-authoring-model.ts +150 -0
  659. package/integrations/bb-plugin-poetic/src/backlog-authoring-schema.ts +355 -0
  660. package/integrations/bb-plugin-poetic/src/backlog-authoring-service.ts +419 -0
  661. package/integrations/bb-plugin-poetic/src/backlog-authoring-view.ts +1026 -0
  662. package/integrations/bb-plugin-poetic/src/competition-defaults-schema.ts +122 -0
  663. package/integrations/bb-plugin-poetic/src/competition-defaults-service.ts +105 -0
  664. package/integrations/bb-plugin-poetic/src/competition-defaults-view.ts +138 -0
  665. package/integrations/bb-plugin-poetic/src/contract.ts +615 -0
  666. package/integrations/bb-plugin-poetic/src/finalize-model.ts +205 -0
  667. package/integrations/bb-plugin-poetic/src/finalize-schema.ts +158 -0
  668. package/integrations/bb-plugin-poetic/src/finalize-service.ts +382 -0
  669. package/integrations/bb-plugin-poetic/src/finalize-view.ts +159 -0
  670. package/integrations/bb-plugin-poetic/src/judge-operations-readback.ts +303 -0
  671. package/integrations/bb-plugin-poetic/src/judge-operations-schema.ts +33 -0
  672. package/integrations/bb-plugin-poetic/src/judge-operations-view.ts +459 -0
  673. package/integrations/bb-plugin-poetic/src/model.ts +1302 -0
  674. package/integrations/bb-plugin-poetic/src/monitor-service.ts +233 -0
  675. package/integrations/bb-plugin-poetic/src/panel-read-ux.ts +97 -0
  676. package/integrations/bb-plugin-poetic/src/patch-preview-schema.ts +166 -0
  677. package/integrations/bb-plugin-poetic/src/patch-preview-service.ts +480 -0
  678. package/integrations/bb-plugin-poetic/src/patch-preview-view.ts +109 -0
  679. package/integrations/bb-plugin-poetic/src/planning-readback.ts +204 -0
  680. package/integrations/bb-plugin-poetic/src/planning-service.ts +594 -0
  681. package/integrations/bb-plugin-poetic/src/planning-workspace-schema.ts +95 -0
  682. package/integrations/bb-plugin-poetic/src/planning-workspace.ts +323 -0
  683. package/integrations/bb-plugin-poetic/src/poll-handoff.ts +136 -0
  684. package/integrations/bb-plugin-poetic/src/project-target-server.ts +21 -0
  685. package/integrations/bb-plugin-poetic/src/project-target.ts +45 -0
  686. package/integrations/bb-plugin-poetic/src/reference-index.ts +192 -0
  687. package/integrations/bb-plugin-poetic/src/repository-schema.ts +30 -0
  688. package/integrations/bb-plugin-poetic/src/result-explorer-view.ts +597 -0
  689. package/integrations/bb-plugin-poetic/src/result-readback-model.ts +163 -0
  690. package/integrations/bb-plugin-poetic/src/result-readback-schema.ts +319 -0
  691. package/integrations/bb-plugin-poetic/src/result-readback-service.ts +333 -0
  692. package/integrations/bb-plugin-poetic/src/run-page-view.ts +177 -0
  693. package/integrations/bb-plugin-poetic/src/setup-config-schema.ts +291 -0
  694. package/integrations/bb-plugin-poetic/src/setup-config-service.ts +590 -0
  695. package/integrations/bb-plugin-poetic/src/setup-config-view.ts +413 -0
  696. package/integrations/bb-plugin-poetic/src/sprint-close-model.ts +150 -0
  697. package/integrations/bb-plugin-poetic/src/sprint-close-schema.ts +136 -0
  698. package/integrations/bb-plugin-poetic/src/sprint-close-service.ts +341 -0
  699. package/integrations/bb-plugin-poetic/src/sprint-close-view.ts +116 -0
  700. package/integrations/bb-plugin-poetic/src/sprint-composition-model.ts +714 -0
  701. package/integrations/bb-plugin-poetic/src/sprint-composition-readback.ts +231 -0
  702. package/integrations/bb-plugin-poetic/src/sprint-composition-schema.ts +601 -0
  703. package/integrations/bb-plugin-poetic/src/sprint-composition-service.ts +775 -0
  704. package/integrations/bb-plugin-poetic/src/sprint-composition-view.ts +1221 -0
  705. package/integrations/bb-plugin-poetic/src/task-authoring-model.ts +567 -0
  706. package/integrations/bb-plugin-poetic/src/task-authoring-schema.ts +635 -0
  707. package/integrations/bb-plugin-poetic/src/task-authoring-service.ts +842 -0
  708. package/integrations/bb-plugin-poetic/src/task-authoring-view.ts +1227 -0
  709. package/integrations/bb-plugin-poetic/src/task-detail-readback.ts +56 -0
  710. package/integrations/bb-plugin-poetic/src/task-detail-schema.ts +144 -0
  711. package/integrations/bb-plugin-poetic/src/task-navigation.ts +446 -0
  712. package/integrations/bb-plugin-poetic/src/workbench-route.ts +74 -0
  713. package/integrations/bb-plugin-poetic/tests/host-contract.test.ts +773 -0
  714. package/integrations/bb-plugin-poetic/tsconfig.json +18 -0
  715. package/integrations/bb-plugin-poetic/types/PROVENANCE.json +52 -0
  716. package/integrations/bb-plugin-poetic/types/bb-plugin-sdk-app.d.ts +1444 -0
  717. package/integrations/bb-plugin-poetic/types/bb-plugin-sdk.d.ts +13030 -0
  718. package/integrations/bb-plugin-poetic/vitest.host.config.ts +71 -0
  719. package/npm-shrinkwrap.json +4950 -0
  720. package/package.json +331 -0
  721. package/schemas/README.md +80 -0
  722. package/schemas/config-v1.schema.json +136 -0
  723. package/schemas/execution-config.schema.json +47 -0
  724. package/schemas/judge-scoring.schema.json +370 -0
  725. package/schemas/poetic.config.schema.json +2214 -0
  726. package/schemas/provider-config.schema.json +203 -0
  727. package/schemas/telemetry-config.schema.json +79 -0
  728. package/schemas/user-preferences.schema.json +141 -0
  729. package/scripts/assert-node-runtime.mjs +140 -0
  730. package/scripts/preflight-native.mjs +49 -0
  731. package/scripts/preinstall-node-check.mjs +78 -0
  732. package/scripts/setup-git-hooks.mjs +24 -0
  733. package/scripts/sync.sh +2722 -0
  734. package/scripts/write-node-launcher.sh +108 -0
  735. package/src/resources/gemini/slash-packs/default/plan.toml +15 -0
  736. package/src/resources/gemini/slash-packs/default/summary.toml +16 -0
  737. package/src/resources/gemini/slash-packs/default/tests.toml +16 -0
  738. package/templates/.poetic/README.md +37 -0
  739. package/templates/.poetic/agents/README.md +296 -0
  740. package/templates/.poetic/agents/api-documenter.md +147 -0
  741. package/templates/.poetic/agents/backend-architect.md +31 -0
  742. package/templates/.poetic/agents/code-reviewer.md +157 -0
  743. package/templates/.poetic/agents/data-scientist.md +179 -0
  744. package/templates/.poetic/agents/database-optimizer.md +145 -0
  745. package/templates/.poetic/agents/debugger.md +31 -0
  746. package/templates/.poetic/agents/deployment-engineer.md +164 -0
  747. package/templates/.poetic/agents/devops-troubleshooter.md +139 -0
  748. package/templates/.poetic/agents/frontend-developer.md +150 -0
  749. package/templates/.poetic/agents/javascript-pro.md +36 -0
  750. package/templates/.poetic/agents/performance-engineer.md +151 -0
  751. package/templates/.poetic/agents/python-pro.md +137 -0
  752. package/templates/.poetic/agents/test-automator.md +147 -0
  753. package/templates/.poetic/agents/typescript-pro.md +34 -0
  754. package/templates/.poetic/config/poetic.config.jsonc +69 -0
  755. package/templates/.poetic/config/project-context.template.json +6 -0
  756. package/templates/.poetic/config/task-type-aliases.presets/kanban.yaml +14 -0
  757. package/templates/.poetic/config/task-type-aliases.presets/scrum.yaml +17 -0
  758. package/templates/.poetic/config/task-type-aliases.presets/xp.yaml +12 -0
  759. package/templates/.poetic/config/task-type-aliases.yaml +28 -0
  760. package/templates/.poetic/gitignore.template +55 -0
  761. package/templates/.poetic/task-types/analysis.yaml +40 -0
  762. package/templates/.poetic/task-types/architecture.yaml +38 -0
  763. package/templates/.poetic/task-types/doc.yaml +35 -0
  764. package/templates/.poetic/task-types/feature.yaml +23 -0
  765. package/templates/.poetic/task-types/general.yaml +6 -0
  766. package/templates/.poetic/task-types/security.yaml +39 -0
  767. package/templates/AGENTS.template.md +99 -0
  768. package/templates/CLAUDE.template.md +1 -0
  769. package/templates/GEMINI.template.md +1 -0
  770. package/templates/builtin-workflows/code-review.yaml +73 -0
  771. package/templates/builtin-workflows/compete-streak.yaml +78 -0
  772. package/templates/builtin-workflows/hello-verify.yaml +10 -0
  773. package/templates/builtin-workflows/judge-regression.yaml +114 -0
  774. package/templates/builtin-workflows/skills/code-review/SKILL.md +60 -0
  775. package/templates/builtin-workflows/skills/hello-verify/SKILL.md +6 -0
  776. package/templates/guard-kit/GUARD_SETUP.md.template +255 -0
  777. package/templates/guard-kit/check.mjs.template +777 -0
  778. package/templates/guard-kit/config.json.template +6 -0
  779. package/templates/guard-kit/poetic-guard.yml.template +189 -0
  780. package/templates/profiles/README.md +56 -0
  781. package/templates/profiles/frontier-claude.json +27 -0
  782. package/templates/profiles/frontier-codex.json +26 -0
@@ -0,0 +1,302 @@
1
+ import {
2
+ describeVerificationCommand
3
+ } from "./chunk-2QLYTVYX.js";
4
+
5
+ // src/core/project/failure-output-parsers.ts
6
+ function parseTscOutput(output) {
7
+ const errorLines = [];
8
+ let summaryCounted = false;
9
+ let errorCount = null;
10
+ const summaryMatch = /Found\s+(\d+)\s+errors?\b/i.exec(output);
11
+ if (summaryMatch) {
12
+ const n = parseInt(summaryMatch[1] ?? "0", 10);
13
+ errorCount = n;
14
+ summaryCounted = true;
15
+ }
16
+ for (const line of output.split(/\r?\n/)) {
17
+ if (/\berror TS\d+:/.test(line)) {
18
+ errorLines.push(line.trim());
19
+ }
20
+ }
21
+ if (!summaryCounted && errorLines.length === 0) return null;
22
+ const count = summaryCounted ? errorCount ?? errorLines.length : errorLines.length;
23
+ return {
24
+ toolFamily: "tsc",
25
+ errorCount: count,
26
+ messages: errorLines.slice(0, 20),
27
+ parsed: true
28
+ };
29
+ }
30
+ function parseEslintOutput(output) {
31
+ const summaryMatch = /(\d+)\s+problems?\s+\((\d+)\s+errors?/i.exec(output);
32
+ if (!summaryMatch) return null;
33
+ const errorCount = parseInt(summaryMatch[2] ?? "0", 10);
34
+ const messages = [];
35
+ for (const line of output.split(/\r?\n/)) {
36
+ if (/\berror\b/i.test(line) && /\d+:\d+/.test(line)) {
37
+ messages.push(line.trim());
38
+ }
39
+ }
40
+ return {
41
+ toolFamily: "eslint",
42
+ errorCount,
43
+ messages: messages.slice(0, 20),
44
+ parsed: true
45
+ };
46
+ }
47
+ function parseBiomeOutput(output) {
48
+ const raw = output.trim();
49
+ const start = raw.indexOf("{");
50
+ const end = raw.lastIndexOf("}");
51
+ if (start >= 0 && end > start) {
52
+ const jsonCandidate = raw.slice(start, end + 1);
53
+ try {
54
+ const json = JSON.parse(jsonCandidate);
55
+ if (Array.isArray(json?.diagnostics)) {
56
+ const diagCount = json.diagnostics.length;
57
+ const summaryErrors = json.summary?.errorCount ?? null;
58
+ const errorCount = typeof summaryErrors === "number" ? summaryErrors : diagCount;
59
+ if (diagCount > 0 || typeof summaryErrors === "number") {
60
+ return {
61
+ toolFamily: "biome",
62
+ errorCount,
63
+ messages: [],
64
+ parsed: true
65
+ };
66
+ }
67
+ }
68
+ } catch {
69
+ }
70
+ }
71
+ const plainMatch = /Found\s+(\d+)\s+errors?\b/i.exec(output);
72
+ if (plainMatch) {
73
+ return {
74
+ toolFamily: "biome",
75
+ errorCount: parseInt(plainMatch[1] ?? "0", 10),
76
+ messages: [],
77
+ parsed: true
78
+ };
79
+ }
80
+ return null;
81
+ }
82
+ function parseNodeTestSummary(output) {
83
+ const messages = [];
84
+ for (const line of output.split(/\r?\n/)) {
85
+ const trimmed = line.trim();
86
+ if (/^FAIL\s+/.test(trimmed) || /^×\s+/.test(trimmed) || /^not ok\b/.test(trimmed)) {
87
+ messages.push(trimmed);
88
+ }
89
+ }
90
+ const cappedMessages = messages.slice(0, 20);
91
+ for (const line of output.split(/\r?\n/)) {
92
+ const trimmed = line.trim();
93
+ const hasPipe = /\d+\s+(?:failed|passed|skipped)\s*\|/i.test(trimmed);
94
+ const greenOnly = /^(?:Tests\s+)?\d+\s+passed\b/i.test(trimmed) && !/\bfailed\b/i.test(trimmed);
95
+ if (!hasPipe && !greenOnly) continue;
96
+ if (!/^(?:Tests\s+)?\d+\s+(?:failed|passed|skipped)\b/i.test(trimmed)) continue;
97
+ const failed = intFromToken(trimmed, /(\d+)\s+failed/i) ?? 0;
98
+ const passed = intFromToken(trimmed, /(\d+)\s+passed/i);
99
+ const skipped = intFromToken(trimmed, /(\d+)\s+skipped/i) ?? 0;
100
+ if (passed === null) {
101
+ if (failed > 0) {
102
+ return {
103
+ toolFamily: "node-test",
104
+ errorCount: failed,
105
+ messages: cappedMessages,
106
+ parsed: true
107
+ };
108
+ }
109
+ continue;
110
+ }
111
+ return {
112
+ toolFamily: "node-test",
113
+ errorCount: failed,
114
+ messages: cappedMessages,
115
+ parsed: true,
116
+ suiteFootprint: { executed: passed + failed, skipped }
117
+ };
118
+ }
119
+ const jestLine = /(?:^|\n)\s*Tests:\s+([^\n]+)/i.exec(output);
120
+ if (jestLine?.[1]) {
121
+ const body = jestLine[1];
122
+ const failed = intFromToken(body, /(\d+)\s+failed/i);
123
+ const passed = intFromToken(body, /(\d+)\s+passed/i);
124
+ const skipped = intFromToken(body, /(\d+)\s+skipped/i) ?? 0;
125
+ if (passed !== null) {
126
+ const failCount = failed ?? 0;
127
+ return {
128
+ toolFamily: "node-test",
129
+ errorCount: failCount,
130
+ messages: cappedMessages,
131
+ parsed: true,
132
+ // executed = non-skipped (pass + fail); do not use Jest "total" (includes skips).
133
+ suiteFootprint: { executed: passed + failCount, skipped }
134
+ };
135
+ }
136
+ if (failed !== null) {
137
+ return {
138
+ toolFamily: "node-test",
139
+ errorCount: failed,
140
+ messages: cappedMessages,
141
+ parsed: true
142
+ };
143
+ }
144
+ }
145
+ const tapFail = intFromToken(output, /(?:^|\n)\s*#\s+fail\s+(\d+)/i);
146
+ const tapPass = intFromToken(output, /(?:^|\n)\s*#\s+pass\s+(\d+)/i);
147
+ const tapSkip = intFromToken(output, /(?:^|\n)\s*#\s+skip\s+(\d+)/i) ?? 0;
148
+ const tapTests = intFromToken(output, /(?:^|\n)\s*#\s+tests\s+(\d+)/i);
149
+ if (tapFail !== null || tapPass !== null) {
150
+ const failCount = tapFail ?? 0;
151
+ const passCount = tapPass ?? (tapTests !== null ? Math.max(0, tapTests - failCount - tapSkip) : null);
152
+ if (passCount !== null) {
153
+ return {
154
+ toolFamily: "node-test",
155
+ errorCount: failCount,
156
+ messages: cappedMessages,
157
+ parsed: true,
158
+ // executed = non-skipped runs (pass + fail); skip tracked separately.
159
+ suiteFootprint: { executed: passCount + failCount, skipped: tapSkip }
160
+ };
161
+ }
162
+ }
163
+ return null;
164
+ }
165
+ function intFromToken(text, pattern) {
166
+ const match = pattern.exec(text);
167
+ if (!match?.[1]) return null;
168
+ return parseInt(match[1], 10);
169
+ }
170
+ function parsePytestOutput(output) {
171
+ const bannerSummary = /=+\s+([^=]*?\b\d+\s+(?:failed|passed|skipped|errors?)\b[^=]*?)=+/i.exec(
172
+ output
173
+ );
174
+ const looseFailed = !bannerSummary ? /\b(\d+)\s+failed\b.*\bin\s+[\d.]+s/i.exec(output) : null;
175
+ if (!bannerSummary && !looseFailed) return null;
176
+ const summaryLine = bannerSummary?.[1] ?? looseFailed?.[0] ?? "";
177
+ const failedMatch = /\b(\d+)\s+failed\b/i.exec(summaryLine);
178
+ const passedMatch = /\b(\d+)\s+passed\b/i.exec(summaryLine);
179
+ const skippedMatch = /\b(\d+)\s+skipped\b/i.exec(summaryLine);
180
+ const errorsMatch = /\b(\d+)\s+errors?\b/i.exec(summaryLine);
181
+ const setupErrors = errorsMatch ? parseInt(errorsMatch[1] ?? "0", 10) : 0;
182
+ const failed = failedMatch ? parseInt(failedMatch[1] ?? "0", 10) : 0;
183
+ const errorCount = failed + setupErrors;
184
+ if (!failedMatch && !passedMatch && !skippedMatch && !errorsMatch) return null;
185
+ const messages = [];
186
+ for (const line of output.split(/\r?\n/)) {
187
+ if (/^FAILED\s+/.test(line.trim())) {
188
+ messages.push(line.trim());
189
+ }
190
+ }
191
+ let suiteFootprint;
192
+ if (passedMatch) {
193
+ const passed = parseInt(passedMatch[1] ?? "0", 10);
194
+ const skipped = skippedMatch ? parseInt(skippedMatch[1] ?? "0", 10) : 0;
195
+ suiteFootprint = { executed: passed + errorCount, skipped };
196
+ }
197
+ return {
198
+ toolFamily: "pytest",
199
+ errorCount,
200
+ messages: messages.slice(0, 20),
201
+ parsed: true,
202
+ ...suiteFootprint ? { suiteFootprint } : {}
203
+ };
204
+ }
205
+ function parseGoTestOutput(output) {
206
+ const failLines = [];
207
+ for (const line of output.split(/\r?\n/)) {
208
+ if (/^---\s+FAIL:/.test(line.trim())) {
209
+ failLines.push(line.trim());
210
+ }
211
+ }
212
+ const packageFailCount = (output.match(/^FAIL\b/gm) ?? []).length;
213
+ if (failLines.length === 0 && packageFailCount === 0) return null;
214
+ return {
215
+ toolFamily: "go-test",
216
+ errorCount: failLines.length > 0 ? failLines.length : packageFailCount,
217
+ messages: failLines.slice(0, 20),
218
+ parsed: true
219
+ };
220
+ }
221
+ function parseCargoOutput(output) {
222
+ const testResultMatch = /test result:\s+FAILED\.\s+\d+\s+passed;\s+(\d+)\s+failed/i.exec(output);
223
+ if (testResultMatch) {
224
+ const errorCount = parseInt(testResultMatch[1] ?? "0", 10);
225
+ const messages = [];
226
+ for (const line of output.split(/\r?\n/)) {
227
+ if (/^test\s+\S+\s+\.\.\.\s+FAILED\b/.test(line.trim())) {
228
+ messages.push(line.trim());
229
+ }
230
+ }
231
+ return { toolFamily: "cargo", errorCount, messages: messages.slice(0, 20), parsed: true };
232
+ }
233
+ const errorLines = [];
234
+ for (const line of output.split(/\r?\n/)) {
235
+ if (/^error\[E\d+\]/.test(line.trim())) {
236
+ errorLines.push(line.trim());
237
+ }
238
+ }
239
+ if (errorLines.length > 0) {
240
+ return {
241
+ toolFamily: "cargo",
242
+ errorCount: errorLines.length,
243
+ messages: errorLines.slice(0, 20),
244
+ parsed: true
245
+ };
246
+ }
247
+ const abortMatch = /error:\s+aborting due to (\d+) previous errors?/i.exec(output);
248
+ if (abortMatch) {
249
+ return {
250
+ toolFamily: "cargo",
251
+ errorCount: parseInt(abortMatch[1] ?? "1", 10),
252
+ messages: [],
253
+ parsed: true
254
+ };
255
+ }
256
+ return null;
257
+ }
258
+ var PARSED_FALSE_UNKNOWN = {
259
+ toolFamily: "unknown",
260
+ errorCount: null,
261
+ messages: [],
262
+ parsed: false
263
+ };
264
+ var PARSER_REGISTRY = /* @__PURE__ */ new Map([
265
+ // Node — dispatch on kind.
266
+ ["node/typecheck", [parseTscOutput]],
267
+ ["node/build", [parseTscOutput]],
268
+ ["node/lint", [parseBiomeOutput, parseEslintOutput]],
269
+ // node/test: suite summary first; tsc kept for tsc-in-test-script edge cases.
270
+ ["node/test", [parseNodeTestSummary, parseTscOutput]],
271
+ // Python — pytest covers all test kinds.
272
+ ["python/test", [parsePytestOutput]],
273
+ // Go — go test.
274
+ ["go/test", [parseGoTestOutput]],
275
+ // Rust — cargo.
276
+ ["rust/test", [parseCargoOutput]],
277
+ ["rust/build", [parseCargoOutput]],
278
+ ["rust/typecheck", [parseCargoOutput]]
279
+ ]);
280
+ function parsersForKey(language, kind) {
281
+ const specific = PARSER_REGISTRY.get(`${language}/${kind}`);
282
+ if (specific) return specific;
283
+ return PARSER_REGISTRY.get(`${language}/*`);
284
+ }
285
+ function parseFailureOutput(command, output, kind) {
286
+ const descriptor = describeVerificationCommand(command);
287
+ const { language } = descriptor;
288
+ const parsers = parsersForKey(language, kind);
289
+ if (!parsers || parsers.length === 0) {
290
+ return PARSED_FALSE_UNKNOWN;
291
+ }
292
+ for (const parser of parsers) {
293
+ const result = parser(output);
294
+ if (result !== null) return result;
295
+ }
296
+ return PARSED_FALSE_UNKNOWN;
297
+ }
298
+
299
+ export {
300
+ parseFailureOutput
301
+ };
302
+ //# sourceMappingURL=chunk-ACKIPAOJ.js.map
@@ -0,0 +1,365 @@
1
+ import {
2
+ hasPositiveBedrockCredentialSignals
3
+ } from "./chunk-5HDP7XZG.js";
4
+ import {
5
+ metadata
6
+ } from "./chunk-PJWJ3SAV.js";
7
+ import {
8
+ CODEX_API_KEY_ENV_VARS,
9
+ detectCodexAuthMode
10
+ } from "./chunk-4NXPXE62.js";
11
+ import {
12
+ BaseProviderAuth,
13
+ assertSkipAuthAllowed
14
+ } from "./chunk-4VJITV4P.js";
15
+ import {
16
+ lookupFreshAuthFailure
17
+ } from "./chunk-R6W23LKN.js";
18
+ import {
19
+ resolveProviderCliCommand
20
+ } from "./chunk-SURZ2WFE.js";
21
+ import {
22
+ getStandardCodexHome,
23
+ normalizeCodexHomePath,
24
+ resolveCodexAwsCredentialEnvRelease,
25
+ resolveCodexBackend
26
+ } from "./chunk-5WRLK5KW.js";
27
+ import {
28
+ getRuntimeEnv
29
+ } from "./chunk-ENRGKNR5.js";
30
+ import {
31
+ mergeExecutionContextEnvOverrides
32
+ } from "./chunk-UI2F6DJ5.js";
33
+ import {
34
+ getDefaultPaths
35
+ } from "./chunk-UUH2RVKS.js";
36
+ import {
37
+ isDebugMode
38
+ } from "./chunk-EJGCZGUF.js";
39
+ import {
40
+ POETIC_CODEX_AUTH_MODE,
41
+ POETIC_MOCK_PROVIDERS,
42
+ POETIC_SKIP_AUTH,
43
+ readEnv,
44
+ readRawEnv
45
+ } from "./chunk-5DLKYTQX.js";
46
+ import {
47
+ __export
48
+ } from "./chunk-PZ5AY32C.js";
49
+
50
+ // src/core/providers/codex/auth.ts
51
+ var auth_exports = {};
52
+ __export(auth_exports, {
53
+ clearAuth: () => clearAuth,
54
+ ensureAuth: () => ensureAuth,
55
+ getAuthFilePath: () => getAuthFilePath,
56
+ isAuthenticated: () => isAuthenticated,
57
+ isAuthenticatedTriState: () => isAuthenticatedTriState,
58
+ nextAuthMenuAction: () => nextAuthMenuAction
59
+ });
60
+ import { rm, stat } from "fs/promises";
61
+ import * as path from "path";
62
+ var CODEX_AUTH_JSON_MIN_BYTES = 10;
63
+ var CodexAuth = class extends BaseProviderAuth {
64
+ metadata = metadata;
65
+ defaultConfigSubdir = "codex";
66
+ configDirEnvVar = "CODEX_HOME";
67
+ /**
68
+ * Resolve configured Codex CLI invocation (supports compound commands like `npx @openai/codex@ver`).
69
+ */
70
+ resolveCodexCliInvocation() {
71
+ const resolved = resolveProviderCliCommand("codex");
72
+ return {
73
+ command: resolved.command,
74
+ prefixArgs: resolved.prefixArgs,
75
+ displayCommand: [resolved.command, ...resolved.prefixArgs].join(" ")
76
+ };
77
+ }
78
+ resolveAuthMode(env) {
79
+ const probeEnv = {
80
+ ...process.env,
81
+ ...env ?? {}
82
+ };
83
+ const explicit = env?.[POETIC_CODEX_AUTH_MODE.name]?.trim().toLowerCase() ?? readEnv(POETIC_CODEX_AUTH_MODE).value?.trim().toLowerCase();
84
+ if (explicit === "api_key" || explicit === "chatgpt_login") {
85
+ return explicit;
86
+ }
87
+ return detectCodexAuthMode(probeEnv);
88
+ }
89
+ /**
90
+ * Environment variables for Codex credentials.
91
+ * Key aliases are honored only when POETIC_CODEX_AUTH_MODE=api_key so shell keys
92
+ * used for other tools never mark Codex authenticated under chatgpt_login.
93
+ */
94
+ getCredentialEnvVars() {
95
+ const authMode = this.resolveAuthMode();
96
+ if (authMode === "api_key") {
97
+ return [...CODEX_API_KEY_ENV_VARS];
98
+ }
99
+ return [];
100
+ }
101
+ getCredentialEnvVarsForEnv(env) {
102
+ const authMode = this.resolveAuthMode(env);
103
+ if (authMode === "api_key") {
104
+ return [...CODEX_API_KEY_ENV_VARS];
105
+ }
106
+ return [];
107
+ }
108
+ /**
109
+ * Convert CodexAuthOptions to base options with CLI credentials
110
+ */
111
+ toBaseOptions(options) {
112
+ if (!options) return {};
113
+ return {
114
+ ...options,
115
+ cliCredentials: options.apiKey || options.token ? {
116
+ apiKey: options.apiKey,
117
+ token: options.token
118
+ } : options.cliCredentials
119
+ };
120
+ }
121
+ /**
122
+ * Gets the standard Codex CLI auth location (~/.codex/)
123
+ */
124
+ getStandardCodexDir() {
125
+ return getStandardCodexHome();
126
+ }
127
+ getAuthFilePath(configDir) {
128
+ return path.join(configDir, "auth.json");
129
+ }
130
+ getAuthPaths(configDir) {
131
+ return [this.getAuthFilePath(configDir)];
132
+ }
133
+ /**
134
+ * True when auth.json exists and exceeds {@link CODEX_AUTH_JSON_MIN_BYTES}.
135
+ * Same threshold for XDG, explicit CODEX_HOME, and ~/.codex — no split-brain.
136
+ */
137
+ async hasAuthFile(authPath) {
138
+ try {
139
+ const fileStat = await stat(authPath);
140
+ if (typeof fileStat.size !== "number" || fileStat.size <= CODEX_AUTH_JSON_MIN_BYTES) {
141
+ return false;
142
+ }
143
+ await this.verifyFilePermissions(authPath);
144
+ return true;
145
+ } catch {
146
+ return false;
147
+ }
148
+ }
149
+ hasApiKeyCredential(options) {
150
+ const baseOptions = this.toBaseOptions(options);
151
+ if (baseOptions.cliCredentials?.apiKey || baseOptions.cliCredentials?.token) {
152
+ return true;
153
+ }
154
+ for (const envVar of this.getCredentialEnvVarsForEnv(baseOptions.env)) {
155
+ const envValue = baseOptions.env?.[envVar] ?? process.env[envVar];
156
+ if (envValue && envValue.trim().length > 0) {
157
+ return true;
158
+ }
159
+ }
160
+ return false;
161
+ }
162
+ /**
163
+ * Homes that login readiness can consult for this probe.
164
+ * Explicit configDir / CODEX_HOME: only that home.
165
+ * Unset: XDG providers/codex then ~/.codex (same fallbacks as hasLoginAuth).
166
+ */
167
+ resolveLoginAuthHomes(options) {
168
+ const baseOptions = this.toBaseOptions(options);
169
+ if (baseOptions.configDir !== void 0) {
170
+ return [normalizeCodexHomePath(baseOptions.configDir)];
171
+ }
172
+ const envHome = baseOptions.env?.CODEX_HOME ?? getRuntimeEnv("CODEX_HOME");
173
+ if (envHome) {
174
+ return [normalizeCodexHomePath(envHome)];
175
+ }
176
+ const { userConfigDir } = getDefaultPaths();
177
+ const xdgHome = path.join(userConfigDir, "providers", this.defaultConfigSubdir);
178
+ const standardHome = this.getStandardCodexDir();
179
+ return [.../* @__PURE__ */ new Set([path.resolve(xdgHome), path.resolve(standardHome)])];
180
+ }
181
+ async hasLoginAuth(options) {
182
+ for (const home of this.resolveLoginAuthHomes(options)) {
183
+ if (await this.hasAuthFile(this.getAuthFilePath(home))) {
184
+ return true;
185
+ }
186
+ }
187
+ return false;
188
+ }
189
+ isEnoentError(error) {
190
+ if (!error || typeof error !== "object") {
191
+ return false;
192
+ }
193
+ const code = error.code;
194
+ if (code === "ENOENT") {
195
+ return true;
196
+ }
197
+ const message = error instanceof Error ? error.message : String(error);
198
+ return /\bENOENT\b/i.test(message);
199
+ }
200
+ /**
201
+ * Clear login auth files for the canonical selected home(s).
202
+ *
203
+ * - Explicit configDir / CODEX_HOME (options.env or process): clear only that home.
204
+ * - Unset CODEX_HOME: clear every readiness fallback (XDG + ~/.codex) so logout
205
+ * cannot leave readiness "yes" via the standard-location fallback.
206
+ *
207
+ * ENOENT on remove is treated as already clear. Any other removal error throws
208
+ * immediately (never swallowed). After successful removes, if login readiness
209
+ * would still be yes, throw.
210
+ */
211
+ async clearAuth(options) {
212
+ const baseOptions = this.toBaseOptions(options);
213
+ const homes = this.resolveLoginAuthHomes(baseOptions);
214
+ for (const home of homes) {
215
+ const authPath = this.getAuthFilePath(home);
216
+ try {
217
+ await rm(authPath, { force: true, recursive: true });
218
+ } catch (error) {
219
+ if (this.isEnoentError(error)) {
220
+ continue;
221
+ }
222
+ const message = error instanceof Error ? error.message : String(error);
223
+ throw new Error(
224
+ `[Codex] clearAuth failed removing ${authPath}: ${message}. Homes in scope: ${homes.join(", ")}.`
225
+ );
226
+ }
227
+ }
228
+ if (await this.hasLoginAuth(baseOptions)) {
229
+ throw new Error(
230
+ `[Codex] clearAuth failed: login auth still present under ${homes.join(", ")}. Auth file(s) still present after removal attempt.`
231
+ );
232
+ }
233
+ }
234
+ /**
235
+ * Override isAuthenticated to enforce mode-aware readiness.
236
+ *
237
+ * api_key mode:
238
+ * 1. CLI args (--api-key, --token)
239
+ * 2. Environment variables (OPENAI_API_KEY, CODEX_API_KEY, CODEX_TOKEN)
240
+ * Auth files alone never satisfy api_key mode.
241
+ *
242
+ * chatgpt_login mode:
243
+ * Auth file only (XDG path or ~/.codex/). Key aliases never mark ready.
244
+ */
245
+ async isAuthenticated(options) {
246
+ const baseOptions = this.toBaseOptions(options);
247
+ const authMode = this.resolveAuthMode(baseOptions.env);
248
+ if (authMode === "api_key") {
249
+ return this.hasApiKeyCredential(baseOptions);
250
+ }
251
+ return this.hasLoginAuth(baseOptions);
252
+ }
253
+ resolveProbeEnv(options) {
254
+ return {
255
+ ...process.env,
256
+ ...options?.env ?? {}
257
+ };
258
+ }
259
+ /**
260
+ * Passive readiness: login/api_key stay yes/no. Attested Bedrock with a
261
+ * positive AWS signal is yes. Attested Bedrock without a passive proof
262
+ * (IMDS/SSO/credential_process) is unknown so the real CLI can attempt.
263
+ * Config-observed Bedrock without POETIC_CODEX_BACKEND is unknown, not yes.
264
+ */
265
+ async readAuthState(options) {
266
+ const env = this.resolveProbeEnv(options);
267
+ if (resolveCodexAwsCredentialEnvRelease(env)) {
268
+ if (await hasPositiveBedrockCredentialSignals(env)) {
269
+ return "yes";
270
+ }
271
+ if (await lookupFreshAuthFailure("codex", { env })) {
272
+ return "no";
273
+ }
274
+ return "unknown";
275
+ }
276
+ if (resolveCodexBackend(env) === "bedrock") {
277
+ return "unknown";
278
+ }
279
+ if (await this.isAuthenticated(options)) {
280
+ return "yes";
281
+ }
282
+ return "no";
283
+ }
284
+ buildNotAuthenticatedError(authMode, env = process.env) {
285
+ const { displayCommand } = this.resolveCodexCliInvocation();
286
+ if (resolveCodexBackend(env) === "bedrock" && !resolveCodexAwsCredentialEnvRelease(env)) {
287
+ return new Error(
288
+ "[Codex] Bedrock is configured but AWS credentials will not reach the child. Set POETIC_CODEX_BACKEND=bedrock so the AWS chain is passed through, or authenticate with ChatGPT login / POETIC_CODEX_AUTH_MODE=api_key."
289
+ );
290
+ }
291
+ if (authMode === "api_key") {
292
+ return new Error(
293
+ `[Codex] Not authenticated (api_key mode). Set OPENAI_API_KEY (or CODEX_API_KEY / CODEX_TOKEN) so the key reaches the Codex child, or pass --api-key. To use ChatGPT login instead, unset POETIC_CODEX_AUTH_MODE or set POETIC_CODEX_AUTH_MODE=chatgpt_login and run: ${displayCommand} login (or ${this.metadata.setupCommand}).`
294
+ );
295
+ }
296
+ return new Error(
297
+ `[Codex] Not authenticated (chatgpt_login mode). Run: ${this.metadata.setupCommand} (or ${displayCommand} login). Legacy key aliases (OPENAI_API_KEY / CODEX_API_KEY / CODEX_TOKEN) do not mark ready under chatgpt_login. To use API keys, set POETIC_CODEX_AUTH_MODE=api_key and provide OPENAI_API_KEY. For Amazon Bedrock, set POETIC_CODEX_BACKEND=bedrock and provide an AWS credential chain.`
298
+ );
299
+ }
300
+ /**
301
+ * Ensures Codex is authenticated with fail-fast validation.
302
+ *
303
+ * Passive path: never starts interactive login. Throws an actionable error when
304
+ * the selected mode cannot run.
305
+ */
306
+ async ensureAuth(options) {
307
+ if (readRawEnv(POETIC_SKIP_AUTH) === "1") {
308
+ assertSkipAuthAllowed();
309
+ return true;
310
+ }
311
+ if (readEnv(POETIC_MOCK_PROVIDERS).value === "1") {
312
+ return true;
313
+ }
314
+ const baseOptions = this.toBaseOptions(options);
315
+ const authMode = this.resolveAuthMode(baseOptions.env);
316
+ const isAuth = await this.isAuthenticated(baseOptions);
317
+ if (isAuth) {
318
+ if (authMode !== "api_key" && !getRuntimeEnv("CODEX_HOME")) {
319
+ const standardDir = this.getStandardCodexDir();
320
+ if (await this.hasAuthFile(this.getAuthFilePath(standardDir))) {
321
+ mergeExecutionContextEnvOverrides({ CODEX_HOME: standardDir });
322
+ if (isDebugMode()) {
323
+ console.log(`[Codex Auth] Set CODEX_HOME=${standardDir}`);
324
+ }
325
+ }
326
+ }
327
+ return true;
328
+ }
329
+ const env = this.resolveProbeEnv(baseOptions);
330
+ if (resolveCodexAwsCredentialEnvRelease(env)) {
331
+ return true;
332
+ }
333
+ throw this.buildNotAuthenticatedError(authMode, env);
334
+ }
335
+ };
336
+ var codexAuth = new CodexAuth();
337
+ function getAuthFilePath(codexHome) {
338
+ return path.join(codexHome, "auth.json");
339
+ }
340
+ async function isAuthenticated(options) {
341
+ return codexAuth.isAuthenticated(options);
342
+ }
343
+ async function isAuthenticatedTriState(options) {
344
+ return codexAuth.readAuthState(options);
345
+ }
346
+ async function ensureAuth(options) {
347
+ return codexAuth.ensureAuth(options);
348
+ }
349
+ async function clearAuth(options) {
350
+ return codexAuth.clearAuth(options);
351
+ }
352
+ async function nextAuthMenuAction(options) {
353
+ return codexAuth.nextAuthMenuAction(options);
354
+ }
355
+
356
+ export {
357
+ getAuthFilePath,
358
+ isAuthenticated,
359
+ isAuthenticatedTriState,
360
+ ensureAuth,
361
+ clearAuth,
362
+ nextAuthMenuAction,
363
+ auth_exports
364
+ };
365
+ //# sourceMappingURL=chunk-APPNGGN7.js.map