@askexenow/exe-os 0.9.372 → 0.9.374

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 (470) hide show
  1. package/deploy/compose/.env.customer.example +45 -10
  2. package/deploy/compose/.env.example +46 -9
  3. package/deploy/compose/docker-compose.yml +136 -18
  4. package/deploy/compose/generate-env.ts +142 -34
  5. package/deploy/compose/sso-edge/default.conf.template +78 -7
  6. package/deploy/compose/sso-edge/sso-redirect.conf +109 -13
  7. package/deploy/stack-manifests/v0.9.30-apps.json +1 -1
  8. package/deploy/stack-manifests/v0.9.json +4 -4
  9. package/dist/.dist-verified.json +3 -3
  10. package/dist/{active-agent-GRT5MKD5.js → active-agent-ONPPEWQV.js} +7 -6
  11. package/dist/{active-agent-L2ZSSXDK.js → active-agent-UJKMG7LJ.js} +7 -6
  12. package/dist/{agent-defs-generator-M4ZNYIVX.js → agent-defs-generator-ZWI6DXOE.js} +6 -5
  13. package/dist/{agent-loop-FOK2IRZQ.js → agent-loop-OYHJKNYH.js} +1 -1
  14. package/dist/{agentic-ontology-DMPRDEUX.js → agentic-ontology-WHFJ3QFS.js} +1 -1
  15. package/dist/{artifact-backup-767STHSW.js → artifact-backup-WXZNB7KE.js} +2 -1
  16. package/dist/{backfill-gate-VX2RZTQV.js → backfill-gate-KWJQ35YX.js} +3 -2
  17. package/dist/{backfill-metadata-ZMEHJQ5M.js → backfill-metadata-3OUSQD5V.js} +8 -7
  18. package/dist/{background-jobs-LTPWCMA3.js → background-jobs-6VMD55PK.js} +3 -2
  19. package/dist/{backup-verify-EX2K732J.js → backup-verify-ZKTUYLTA.js} +4 -3
  20. package/dist/{behavior-injection-22AGMS25.js → behavior-injection-M6UYZCMW.js} +17 -15
  21. package/dist/{behaviors-DVFXAWF5.js → behaviors-ZJ45TFBJ.js} +21 -13
  22. package/dist/bin/age-ontology-load.js +3 -2
  23. package/dist/bin/agentic-ontology-backfill.js +10 -9
  24. package/dist/bin/agentic-reflection-backfill.js +11 -10
  25. package/dist/bin/agentic-semantic-label.js +10 -9
  26. package/dist/bin/backfill-conversations.js +13 -11
  27. package/dist/bin/backfill-responses.js +13 -11
  28. package/dist/bin/backfill-vectors.js +17 -15
  29. package/dist/bin/bulk-sync-postgres.js +22 -20
  30. package/dist/bin/cc-doctor.js +10 -9
  31. package/dist/bin/cleanup-stale-review-tasks.js +29 -26
  32. package/dist/bin/cli.js +36 -26
  33. package/dist/bin/deferred-daemon-restart.js +114 -110
  34. package/dist/bin/exe-agent-config.js +6 -5
  35. package/dist/bin/exe-agent.js +127 -33
  36. package/dist/bin/exe-assign.js +15 -13
  37. package/dist/bin/exe-boot.js +57 -54
  38. package/dist/bin/exe-call.js +8 -7
  39. package/dist/bin/exe-cloud.js +24 -22
  40. package/dist/bin/exe-config-dump.js +6 -5
  41. package/dist/bin/exe-dispatch.js +30 -27
  42. package/dist/bin/exe-doctor.js +14 -10
  43. package/dist/bin/exe-export-behaviors.js +19 -17
  44. package/dist/bin/exe-forget.js +10 -9
  45. package/dist/bin/exe-gateway.js +199 -19
  46. package/dist/bin/exe-grant.js +5 -5
  47. package/dist/bin/exe-healthcheck.js +10 -9
  48. package/dist/bin/exe-heartbeat.js +35 -32
  49. package/dist/bin/exe-kill.js +34 -31
  50. package/dist/bin/exe-launch-agent.js +126 -54
  51. package/dist/bin/exe-mcp.js +6 -5
  52. package/dist/bin/exe-memory-reads.js +8 -7
  53. package/dist/bin/exe-new-employee.js +12 -11
  54. package/dist/bin/exe-os-mcp-proxy.js +6 -5
  55. package/dist/bin/exe-pending-messages.js +30 -27
  56. package/dist/bin/exe-pending-notifications.js +29 -26
  57. package/dist/bin/exe-pending-reviews.js +30 -27
  58. package/dist/bin/exe-rename.js +8 -7
  59. package/dist/bin/exe-repo-truth.js +1 -1
  60. package/dist/bin/exe-review.js +33 -30
  61. package/dist/bin/exe-search.js +9 -8
  62. package/dist/bin/exe-session-cleanup.js +35 -32
  63. package/dist/bin/exe-settings.js +24 -22
  64. package/dist/bin/exe-start-codex.js +137 -55
  65. package/dist/bin/exe-start-opencode.js +121 -23
  66. package/dist/bin/exe-status.js +31 -28
  67. package/dist/bin/exe-support.js +5 -4
  68. package/dist/bin/exe-team.js +7 -6
  69. package/dist/bin/exe-watchdog.js +31 -11
  70. package/dist/bin/generate-hook-manifest.js +44 -7
  71. package/dist/bin/git-sweep.js +31 -28
  72. package/dist/bin/graph-backfill.js +89 -35
  73. package/dist/bin/graph-export.js +9 -8
  74. package/dist/bin/import-history.js +14 -13
  75. package/dist/bin/install.js +137 -113
  76. package/dist/bin/intercom-check.js +5 -5
  77. package/dist/bin/mcp-sessions.js +2 -2
  78. package/dist/bin/orchestration-metrics.js +7 -6
  79. package/dist/bin/postgres-agentic-reflection-backfill.js +5 -4
  80. package/dist/bin/postgres-agentic-semantic-backfill.js +4 -3
  81. package/dist/bin/pre-publish.js +1 -1
  82. package/dist/bin/reconcile-backlog.js +2 -2
  83. package/dist/bin/registry-proxy.js +1 -1
  84. package/dist/bin/scan-tasks.js +29 -26
  85. package/dist/bin/setup.js +5 -4
  86. package/dist/bin/shard-migrate.js +9 -8
  87. package/dist/bin/stack-update.js +40 -9
  88. package/dist/bin/verify-stack.js +2 -2
  89. package/dist/bin/vps-health-gate.js +1 -1
  90. package/dist/{boot-generation-OHXH4YC5.js → boot-generation-JKVZ4ZAT.js} +6 -5
  91. package/dist/{boot-review-sections-N5IXIGSS.js → boot-review-sections-2M6BTG73.js} +28 -25
  92. package/dist/{branch-hygiene-KCGXRAWP.js → branch-hygiene-U5GFRSTP.js} +31 -7
  93. package/dist/{branding-GH43W3PU.js → branding-I6KIMB7F.js} +3 -2
  94. package/dist/budget-fallback-XJRPMP2D.js +11 -0
  95. package/dist/build-manifest.json +1318 -1233
  96. package/dist/{capability-cards-4PXVLIVS.js → capability-cards-5IMJT6J7.js} +5 -4
  97. package/dist/{capacity-monitor-FKMQXORX.js → capacity-monitor-SAXCQK7O.js} +30 -27
  98. package/dist/{catchup-brief-SN5EKO4N.js → catchup-brief-U2TXBLHD.js} +34 -31
  99. package/dist/{chunk-CNC57JCS.js → chunk-23MVDXLY.js} +4 -4
  100. package/dist/{chunk-V4XAKXXF.js → chunk-2AJGV5UL.js} +1 -1
  101. package/dist/{chunk-FBYAXTDM.js → chunk-2ZOEC4KC.js} +10 -2
  102. package/dist/{chunk-ELXFSIIM.js → chunk-32YV32VA.js} +2 -2
  103. package/dist/{chunk-44C7QNZS.js → chunk-3KDCORDO.js} +1 -1
  104. package/dist/{chunk-JTB5V6BV.js → chunk-3SXHEQ7X.js} +1 -1
  105. package/dist/{chunk-HDW4XPDV.js → chunk-3UUX5OY4.js} +1 -1
  106. package/dist/{chunk-7PSLK36P.js → chunk-44TLJZJ5.js} +1 -1
  107. package/dist/{chunk-JTWTBX2M.js → chunk-4EN3IZ3Q.js} +2 -1
  108. package/dist/{chunk-KPMC7PY7.js → chunk-4HKTO2SV.js} +1 -1
  109. package/dist/{chunk-CDUB5Q6J.js → chunk-4IK2K3B3.js} +1 -1
  110. package/dist/{chunk-GH6YJOOC.js → chunk-4SJ4LK4V.js} +6 -6
  111. package/dist/{chunk-PVEM537A.js → chunk-4YLBKEL5.js} +2 -2
  112. package/dist/chunk-4YNA3CM6.js +872 -0
  113. package/dist/{chunk-KYFFVTGO.js → chunk-55BEFF4V.js} +3 -3
  114. package/dist/{chunk-SEP5ITFQ.js → chunk-636LKCKE.js} +2 -2
  115. package/dist/{chunk-QTI4QAWA.js → chunk-6EZQUNE6.js} +338 -5
  116. package/dist/{chunk-WAEKYKTK.js → chunk-6RKKVPYF.js} +1 -1
  117. package/dist/{chunk-VX2F4ZUY.js → chunk-6SCGLHJ7.js} +3 -3
  118. package/dist/{chunk-MEGRQ53A.js → chunk-6VHOQ3IM.js} +51 -6
  119. package/dist/{chunk-HIIXCAEE.js → chunk-6YVUR3OU.js} +3 -3
  120. package/dist/{chunk-L6ZNURWN.js → chunk-7GE2EQ23.js} +1 -1
  121. package/dist/{chunk-2CWS374F.js → chunk-7RI2CNXJ.js} +1 -1
  122. package/dist/{chunk-OL3QP3AU.js → chunk-7TSBV3SD.js} +1 -1
  123. package/dist/{chunk-DSOQUQTV.js → chunk-A27Q27CT.js} +27 -0
  124. package/dist/{chunk-5AHRZI3R.js → chunk-AETLDRZB.js} +1 -1
  125. package/dist/{chunk-RNLF3CBB.js → chunk-AKLJ4JH3.js} +1 -1
  126. package/dist/{chunk-XHYHX6F7.js → chunk-AKLQSC6W.js} +329 -164
  127. package/dist/chunk-ANLFH23R.js +261 -0
  128. package/dist/{chunk-QLA3RTH4.js → chunk-AWWKRZMB.js} +5 -5
  129. package/dist/{chunk-ERVQTR7P.js → chunk-BBSIEYF5.js} +17 -3
  130. package/dist/{chunk-IPMUWYRQ.js → chunk-BJ7AVSY6.js} +2 -2
  131. package/dist/{chunk-HV6Y6F4X.js → chunk-C2L622QJ.js} +89 -3
  132. package/dist/{chunk-TX3Q2GIL.js → chunk-C5HUMAA7.js} +24 -1
  133. package/dist/{chunk-QTYJPWJN.js → chunk-CBCGDEJA.js} +7 -7
  134. package/dist/{chunk-XXSNLM6R.js → chunk-DB55JZHU.js} +1 -1
  135. package/dist/{chunk-LAZKEJMS.js → chunk-DIXXEE3S.js} +840 -607
  136. package/dist/{chunk-FB343XQX.js → chunk-DJ7YXOTU.js} +2 -2
  137. package/dist/{chunk-YFCNWQAM.js → chunk-DJOIMFKV.js} +2 -2
  138. package/dist/{chunk-UTDMTQNH.js → chunk-DSJI76XL.js} +92 -14
  139. package/dist/{chunk-EEXX4UMQ.js → chunk-DZKPOSFD.js} +1 -1
  140. package/dist/{chunk-WSOA3WMC.js → chunk-E426DOSY.js} +161 -4
  141. package/dist/{chunk-ZISQOOER.js → chunk-EKE37MO4.js} +3 -3
  142. package/dist/{chunk-RIECV7SR.js → chunk-EKYYMIVT.js} +1 -1
  143. package/dist/{chunk-HIVZ53YB.js → chunk-EXTZSNWL.js} +2 -2
  144. package/dist/{chunk-YYA5LXCT.js → chunk-FNEZ4BWT.js} +1 -1
  145. package/dist/chunk-FTZET5YX.js +313 -0
  146. package/dist/chunk-GHR4ZPJ7.js +70 -0
  147. package/dist/{chunk-MINXPXAB.js → chunk-GJI77VDO.js} +3 -3
  148. package/dist/{chunk-AAMGHW5W.js → chunk-GLQEJOXE.js} +1 -0
  149. package/dist/{chunk-ADNBOKYZ.js → chunk-GM7TLYOK.js} +60 -18
  150. package/dist/{chunk-RUWWES2K.js → chunk-GNUAL43X.js} +2 -2
  151. package/dist/{chunk-QZL6E4UB.js → chunk-GOMQ7PVQ.js} +2 -2
  152. package/dist/{chunk-GB3AHV5F.js → chunk-GQOEWNVM.js} +1 -1
  153. package/dist/{chunk-NQZUSEAR.js → chunk-GS7LIT34.js} +246 -17
  154. package/dist/{chunk-XTWHNLGD.js → chunk-GZOG2MAX.js} +1 -1
  155. package/dist/{chunk-E5HAY3DQ.js → chunk-HDLAB7W3.js} +1 -1
  156. package/dist/{chunk-E5QQZDQN.js → chunk-HNWS7YHN.js} +358 -136
  157. package/dist/{chunk-VV5EZZNT.js → chunk-HTBEVCO2.js} +1 -1
  158. package/dist/{chunk-OZBII5E3.js → chunk-I4DNJFDR.js} +4 -4
  159. package/dist/{chunk-SI5SZAJA.js → chunk-IBS2FAI4.js} +21 -4
  160. package/dist/{chunk-J5EYOBFF.js → chunk-IHXW4VUI.js} +1 -1
  161. package/dist/{chunk-RUVO3NJC.js → chunk-IN6CAM4F.js} +9 -3
  162. package/dist/{chunk-53PYNYTW.js → chunk-IRVOXUSK.js} +5 -5
  163. package/dist/{chunk-THM7J6UI.js → chunk-JHI5WMK5.js} +5 -5
  164. package/dist/{chunk-3KTQWMHI.js → chunk-JSMDRKPJ.js} +12 -4
  165. package/dist/chunk-JTVIANUB.js +131 -0
  166. package/dist/{chunk-2ADYTOHQ.js → chunk-K4ESASPL.js} +1 -1
  167. package/dist/{chunk-YWUQVHDL.js → chunk-KTCXJWJG.js} +1 -1
  168. package/dist/{chunk-RGUDGC6A.js → chunk-KTU3EAWK.js} +5 -5
  169. package/dist/{chunk-DKBPCOU4.js → chunk-L6RXG36J.js} +2 -2
  170. package/dist/{chunk-T4EK56WI.js → chunk-LDNYSMPZ.js} +1 -1
  171. package/dist/{chunk-RIK5GRWI.js → chunk-LGS2V2XD.js} +3 -3
  172. package/dist/{chunk-JKXZGRWR.js → chunk-LP4GB656.js} +2 -2
  173. package/dist/{chunk-H74466TM.js → chunk-M7O7TGGU.js} +1 -1
  174. package/dist/chunk-MJCSEIFI.js +54 -0
  175. package/dist/{chunk-IDZPQG2D.js → chunk-MOGA4Q7F.js} +2 -2
  176. package/dist/{chunk-OYQNNKNS.js → chunk-MXPNVSXI.js} +37 -14
  177. package/dist/{chunk-UVW7YFAF.js → chunk-N7VEP5B3.js} +4 -4
  178. package/dist/{chunk-HHE2HV3V.js → chunk-NBXDXKLC.js} +1 -1
  179. package/dist/{chunk-LDL3S7AC.js → chunk-NKETJCB5.js} +7 -3
  180. package/dist/{chunk-ECHLVLA7.js → chunk-NMH5ZQPU.js} +1 -1
  181. package/dist/{chunk-U3XLRMJD.js → chunk-NT7W4RXD.js} +1 -1
  182. package/dist/{chunk-UQUUNGTP.js → chunk-NUK7EEN5.js} +11 -9
  183. package/dist/{chunk-GBNB4EWD.js → chunk-ORM7ZFKC.js} +16 -0
  184. package/dist/{chunk-O4ZFRK6W.js → chunk-OVEQE6YS.js} +244 -49
  185. package/dist/{chunk-4ZJ5BPY6.js → chunk-PB5S7YOF.js} +2 -2
  186. package/dist/{chunk-JR23BL74.js → chunk-PDVXWXTL.js} +4 -4
  187. package/dist/{chunk-3CIMDFXG.js → chunk-PFQ3VEEM.js} +1 -1
  188. package/dist/{chunk-SBJV2PCU.js → chunk-PHBU4LGO.js} +1 -1
  189. package/dist/{chunk-W25RLOQ2.js → chunk-PLZSZOZN.js} +3 -3
  190. package/dist/{chunk-THIJIOE2.js → chunk-PY3FOMRN.js} +18 -6
  191. package/dist/{chunk-AAUWFXOX.js → chunk-Q3AXXKDF.js} +3 -3
  192. package/dist/{chunk-VKXS2YGN.js → chunk-QHJR7IMX.js} +2 -2
  193. package/dist/chunk-QLZ46RCK.js +45 -0
  194. package/dist/{chunk-UHPMK6QZ.js → chunk-R3CZWFFC.js} +10 -2
  195. package/dist/{chunk-6XEYELCA.js → chunk-R4CBHKZ2.js} +1 -1
  196. package/dist/{chunk-5APCDDJZ.js → chunk-R522MWAR.js} +9 -9
  197. package/dist/chunk-RH4AH3YB.js +80 -0
  198. package/dist/{chunk-AMKSDKMK.js → chunk-S2WBS6BG.js} +22 -35
  199. package/dist/{chunk-WUKQVNLP.js → chunk-SEQIPGLU.js} +1 -1
  200. package/dist/{chunk-7WQRFSZI.js → chunk-SL6KQYDU.js} +26 -6
  201. package/dist/chunk-SLLLOOEI.js +103 -0
  202. package/dist/{chunk-5N4SG5NB.js → chunk-T35RCQFE.js} +3 -3
  203. package/dist/{chunk-7V6M3QUS.js → chunk-T3QUKNLI.js} +1 -1
  204. package/dist/{chunk-CW2UCKHS.js → chunk-TADAO3HV.js} +2 -2
  205. package/dist/{chunk-5DCCKHDY.js → chunk-TAMDAOCU.js} +109 -13
  206. package/dist/{chunk-ZXB56YR2.js → chunk-TFKCERAK.js} +101 -23
  207. package/dist/{chunk-RBYHJDAT.js → chunk-TQAZTRQ3.js} +3 -3
  208. package/dist/{chunk-OKGIOWOB.js → chunk-U6SUKSZR.js} +2 -2
  209. package/dist/{chunk-23QKEUF6.js → chunk-U73AC5AN.js} +34 -12
  210. package/dist/{chunk-PM6WSWVU.js → chunk-UBK7HK3J.js} +3 -3
  211. package/dist/{chunk-H37FSTF2.js → chunk-UBMZ3YQU.js} +1 -1
  212. package/dist/{chunk-JJUGI2YL.js → chunk-UCFC2AEI.js} +1 -1
  213. package/dist/{chunk-6IWLAQ7O.js → chunk-UCUOGVDX.js} +4 -0
  214. package/dist/{chunk-E7UCDSUE.js → chunk-UKLN57Q5.js} +2 -2
  215. package/dist/{chunk-ZYCLSEZT.js → chunk-ULIBLJ6W.js} +33 -11
  216. package/dist/{chunk-RLR6VVKV.js → chunk-UM3N6VND.js} +4 -4
  217. package/dist/{chunk-ZNUJFX7L.js → chunk-UQGSBM3U.js} +1 -1
  218. package/dist/{chunk-ZZXMB5F2.js → chunk-UZDF6FLJ.js} +1 -1
  219. package/dist/{chunk-LNOS24GV.js → chunk-V3WLC5TJ.js} +2 -95
  220. package/dist/{chunk-UXLO7VHX.js → chunk-VI4ATC6I.js} +1 -1
  221. package/dist/{chunk-77JP3LK4.js → chunk-VKJGHAZT.js} +92 -21
  222. package/dist/{chunk-7R73IAHU.js → chunk-VMTZ4RUW.js} +67 -150
  223. package/dist/{chunk-TGPQMMQP.js → chunk-VYQ7B7DI.js} +30 -17
  224. package/dist/{chunk-E2WEFZOR.js → chunk-W75GTHR3.js} +1 -1
  225. package/dist/{chunk-UKLF7F3Z.js → chunk-WJG344NC.js} +9 -9
  226. package/dist/{chunk-MBNIJXKI.js → chunk-WMEYJT4R.js} +18 -4
  227. package/dist/{chunk-R6FLELV6.js → chunk-XFTEX77S.js} +3 -3
  228. package/dist/{chunk-MDGYXUOV.js → chunk-XH7YL7JM.js} +1 -1
  229. package/dist/{chunk-JOO35RHR.js → chunk-XL5MFGMR.js} +3 -3
  230. package/dist/{chunk-OW5RZIDW.js → chunk-XNNECNDL.js} +95 -33
  231. package/dist/{chunk-5AHDQCTB.js → chunk-XXFKSJYA.js} +6 -6
  232. package/dist/{chunk-TGEPLJ66.js → chunk-XXOPG4BW.js} +3 -3
  233. package/dist/{chunk-PGLPUP37.js → chunk-XZ65ST2I.js} +1 -1
  234. package/dist/{chunk-3TTKAT6V.js → chunk-YKC7QDZH.js} +9 -4
  235. package/dist/{chunk-KXYFBBZR.js → chunk-YMP2QSOP.js} +20 -3
  236. package/dist/{chunk-TK4MI6F6.js → chunk-YSLGFPWX.js} +6 -6
  237. package/dist/{chunk-X2P43TB2.js → chunk-YTSXPJUQ.js} +1 -1
  238. package/dist/{chunk-HECXZGGZ.js → chunk-ZCERWHY2.js} +33 -35
  239. package/dist/{chunk-IVU3WN7S.js → chunk-ZG62LIK3.js} +74 -4
  240. package/dist/{chunk-GU62SNDH.js → chunk-ZGYNKA3O.js} +744 -111
  241. package/dist/{chunk-QMSEL5YS.js → chunk-ZIG7VPJV.js} +28 -76
  242. package/dist/{chunk-WZJVGA5I.js → chunk-ZL4AGWAH.js} +258 -13
  243. package/dist/{chunk-QR624DER.js → chunk-ZSODLMFV.js} +2 -2
  244. package/dist/{cleanup-graph-garbage-IPYDS5OX.js → cleanup-graph-garbage-DPJGO52H.js} +11 -10
  245. package/dist/{cloud-sync-command-JLNVG7H4.js → cloud-sync-command-JPNTT4OQ.js} +2 -2
  246. package/dist/{cloud-sync-db-init-JXUF6GI3.js → cloud-sync-db-init-V2LWIUQU.js} +1 -1
  247. package/dist/{cloud-sync-shutdown-Z4SBP6PL.js → cloud-sync-shutdown-BNALPWGX.js} +5 -4
  248. package/dist/{co-activation-74RDFTKS.js → co-activation-CMNSWS6B.js} +5 -4
  249. package/dist/{co-occurrence-CN3TBYVR.js → co-occurrence-WRI2NAN6.js} +9 -8
  250. package/dist/{code-context-index-D4MJ4VFX.js → code-context-index-NOJSHLPN.js} +12 -6
  251. package/dist/code-context-watcher-VZNZU3BO.js +118 -0
  252. package/dist/{codex-consolidation-PPXNBXCV.js → codex-consolidation-SH4UKFBQ.js} +2 -1
  253. package/dist/{conversation-entity-extractor-QGTLH4BP.js → conversation-entity-extractor-74252CAO.js} +4 -4
  254. package/dist/{conversation-wiki-populator-EBUZXYEU.js → conversation-wiki-populator-OS4C6W54.js} +1 -1
  255. package/dist/conversations-retention-C4BLKFEL.js +54 -0
  256. package/dist/coordinator-notice-MHUY7AQB.js +55 -0
  257. package/dist/{crdt-sync-7T4WCOKD.js → crdt-sync-B3JN6AIV.js} +1 -1
  258. package/dist/{crm-webhook-FTW3XZTO.js → crm-webhook-GYWQRFET.js} +2 -2
  259. package/dist/{cto-delegation-gate-SZCE34LB.js → cto-delegation-gate-LQHVLEMW.js} +29 -26
  260. package/dist/{daemon-auth-SSPY5ODS.js → daemon-auth-QZHEO7IQ.js} +3 -2
  261. package/dist/{daemon-orchestration-IGPHVNFR.js → daemon-orchestration-5HIQALZH.js} +36 -34
  262. package/dist/{daemon-ready-OT2VQLS7.js → daemon-ready-P2BR2XP5.js} +1 -1
  263. package/dist/{db-integrity-events-5DTASXJF.js → db-integrity-events-2DTFO37N.js} +3 -2
  264. package/dist/{db-restore-events-2FI4ZMKA.js → db-restore-events-G6NOQOVE.js} +2 -1
  265. package/dist/{destructive-data-guard-6I5MDFVD.js → destructive-data-guard-BVFWPPIS.js} +1 -1
  266. package/dist/doc-graph-extractor-PQHDHQPQ.js +367 -0
  267. package/dist/{documents-URULIXGM.js → documents-C4SSPJMC.js} +15 -13
  268. package/dist/{dreaming-VIZO3QDO.js → dreaming-XAO3FCBV.js} +33 -30
  269. package/dist/{employee-boot-brief-XLOG4ULP.js → employee-boot-brief-W4OHUMRQ.js} +37 -34
  270. package/dist/{exe-drift-TLQM3IHD.js → exe-drift-AG2KMKD5.js} +6 -5
  271. package/dist/{exe-export-7YWYWJHY.js → exe-export-IC5BT335.js} +17 -15
  272. package/dist/{exe-import-DW6VAUKW.js → exe-import-A35ZLDPG.js} +17 -15
  273. package/dist/{exe-key-TLJP2B4Y.js → exe-key-TCMJNYLA.js} +116 -112
  274. package/dist/{exe-org-LU46N36E.js → exe-org-JXCR3JYZ.js} +24 -23
  275. package/dist/{exe-snapshot-QHUZRS62.js → exe-snapshot-SV6SRIG6.js} +36 -33
  276. package/dist/{fast-db-init-SCTOOIUT.js → fast-db-init-L2RGKJWH.js} +1 -1
  277. package/dist/{founder-context-ZFZC4UHO.js → founder-context-D4HFIESJ.js} +4 -3
  278. package/dist/{founder-monitor-envelope-5KTKNL5G.js → founder-monitor-envelope-TFKRGCFE.js} +5 -4
  279. package/dist/{fts-integrity-LKAZEZJE.js → fts-integrity-4YB34KWX.js} +3 -2
  280. package/dist/gateway/index.js +19 -17
  281. package/dist/{git-main-guard-TN27QBAI.js → git-main-guard-VTW4N3CM.js} +7 -1
  282. package/dist/{git-staleness-GSGP344N.js → git-staleness-TN7CYGFG.js} +5 -4
  283. package/dist/{global-procedures-YAR7G4C6.js → global-procedures-YFDEIOG7.js} +7 -6
  284. package/dist/{graph-auto-extract-GNQS64F5.js → graph-auto-extract-3YR3TYRW.js} +9 -8
  285. package/dist/{graph-rag-RMSFLUOB.js → graph-rag-Z2KCJTPK.js} +6 -4
  286. package/dist/{hook-integrity-CF567MVN.js → hook-integrity-KGAV6ZC2.js} +14 -4
  287. package/dist/{hook-prefetch-36BK4F7U.js → hook-prefetch-K5DN3TOQ.js} +29 -26
  288. package/dist/hooks/bug-report-worker.js +34 -30
  289. package/dist/hooks/codex-stop-task-finalizer.js +36 -32
  290. package/dist/hooks/commit-complete.js +33 -30
  291. package/dist/hooks/error-recall.js +12 -11
  292. package/dist/hooks/exe-heartbeat-hook.js +8 -7
  293. package/dist/hooks/ingest-worker.js +23 -11
  294. package/dist/hooks/ingest.js +18 -17
  295. package/dist/hooks/instructions-loaded.js +10 -9
  296. package/dist/hooks/manifest.json +20 -20
  297. package/dist/hooks/notification.js +9 -8
  298. package/dist/hooks/post-compact.js +8 -7
  299. package/dist/hooks/post-tool-combined.js +26 -15
  300. package/dist/hooks/pre-compact.js +33 -30
  301. package/dist/hooks/pre-tool-use.js +404 -46
  302. package/dist/hooks/prompt-submit.js +57 -47
  303. package/dist/hooks/session-end.js +40 -41
  304. package/dist/hooks/session-start.js +21 -20
  305. package/dist/hooks/stop.js +40 -37
  306. package/dist/hooks/subagent-stop.js +38 -35
  307. package/dist/hooks/summary-worker.js +39 -36
  308. package/dist/hyde-MP4QNMU5.js +80 -0
  309. package/dist/index.js +44 -39
  310. package/dist/{installer-LUN4HQIC.js → installer-54HTN5RE.js} +8 -7
  311. package/dist/{installer-OC5VXNC7.js → installer-LK35OX6R.js} +8 -7
  312. package/dist/{installer-MPRFUQJE.js → installer-LLWKZI2S.js} +8 -7
  313. package/dist/intercom-ack-VCW755TN.js +13 -0
  314. package/dist/{intercom-queue-6DZ7BANV.js → intercom-queue-5NOT2RKI.js} +28 -25
  315. package/dist/{key-backup-status-6L2ARCXW.js → key-backup-status-LQPINQ3W.js} +2 -1
  316. package/dist/lib/agent-config.js +3 -2
  317. package/dist/lib/cloud-sync.js +26 -20
  318. package/dist/lib/config.js +2 -1
  319. package/dist/lib/consolidation.js +17 -10
  320. package/dist/lib/database.js +7 -4
  321. package/dist/lib/db-backup.js +17 -2
  322. package/dist/lib/db-daemon-client.js +8 -6
  323. package/dist/lib/db-write-worker-client.js +3 -1
  324. package/dist/lib/db-write-worker.js +20 -3
  325. package/dist/lib/db.js +7 -4
  326. package/dist/lib/device-registry.js +3 -2
  327. package/dist/lib/embed-worker.js +2 -1
  328. package/dist/lib/embedder.js +8 -6
  329. package/dist/lib/employee-templates.js +8 -7
  330. package/dist/lib/employees.js +5 -4
  331. package/dist/lib/exe-daemon-client.js +7 -5
  332. package/dist/lib/exe-daemon.js +467 -221
  333. package/dist/lib/hybrid-search.js +11 -8
  334. package/dist/lib/identity.js +5 -4
  335. package/dist/lib/license.js +4 -3
  336. package/dist/lib/messaging.js +29 -26
  337. package/dist/lib/post-tool-memory.js +16 -2
  338. package/dist/lib/registry-proxy.js +3 -1
  339. package/dist/lib/reminders.js +6 -5
  340. package/dist/lib/schedules.js +9 -8
  341. package/dist/lib/session-registry.js +7 -6
  342. package/dist/lib/skill-learning.js +16 -14
  343. package/dist/lib/stack-invariants.js +17 -1
  344. package/dist/lib/status-brief.js +5 -4
  345. package/dist/lib/store.js +10 -7
  346. package/dist/lib/task-router.js +6 -5
  347. package/dist/lib/tasks.js +31 -27
  348. package/dist/lib/tmux-routing.js +40 -25
  349. package/dist/lib/tmux-status.js +3 -1
  350. package/dist/lib/tmux-transport.js +2 -1
  351. package/dist/lib/token-spend.js +6 -5
  352. package/dist/lib/transport.js +3 -2
  353. package/dist/{license-gate-ESER24PJ.js → license-gate-JVMB6OFD.js} +5 -4
  354. package/dist/{license-sync-JVG5KNIY.js → license-sync-5VYS2F2W.js} +4 -3
  355. package/dist/mcp/register-tools.js +113 -109
  356. package/dist/mcp/server.js +118 -114
  357. package/dist/mcp/tools/complete-reminder.js +7 -6
  358. package/dist/mcp/tools/create-reminder.js +7 -6
  359. package/dist/mcp/tools/create-task.js +34 -30
  360. package/dist/mcp/tools/deactivate-behavior.js +18 -16
  361. package/dist/mcp/tools/list-reminders.js +7 -6
  362. package/dist/mcp/tools/list-tasks.js +34 -30
  363. package/dist/mcp/tools/send-message.js +32 -29
  364. package/dist/mcp/tools/update-task.js +32 -28
  365. package/dist/mcp-child-registry-OTG4MWO7.js +25 -0
  366. package/dist/{mcp-http-config-6K6IKH5F.js → mcp-http-config-DQWL7U2Z.js} +6 -5
  367. package/dist/{mcp-session-identity-LRC6WJSD.js → mcp-session-identity-277GASTQ.js} +28 -25
  368. package/dist/{memory-cards-V3OZHIYP.js → memory-cards-3S2ZQPR7.js} +17 -8
  369. package/dist/{memory-graph-extractor-JC2Z64L4.js → memory-graph-extractor-A6DFEFIN.js} +10 -9
  370. package/dist/{memory-poisoning-defense-YM4QJHCX.js → memory-poisoning-defense-ZVP4H6DY.js} +5 -4
  371. package/dist/{memory-pressure-watchdog-6F6KEQHN.js → memory-pressure-watchdog-6W5F6R7H.js} +29 -26
  372. package/dist/{memory-queue-QJNWKWKG.js → memory-queue-YF7IDSFY.js} +3 -2
  373. package/dist/{memory-queue-client-COA4ABEV.js → memory-queue-client-ADSDP6OX.js} +9 -7
  374. package/dist/{memory-reflection-QXHJPYPC.js → memory-reflection-BKB2YOE6.js} +52 -6
  375. package/dist/{monitor-grants-BW2WL4IU.js → monitor-grants-EV747HMW.js} +4 -3
  376. package/dist/{notification-ledger-6QRLQW4Q.js → notification-ledger-CLGM7ODF.js} +30 -27
  377. package/dist/{notifications-7B6D7Y5C.js → notifications-MACUZPYP.js} +28 -25
  378. package/dist/{oauth-server-TZFNQAFS.js → oauth-server-AYM37SQ4.js} +25 -4
  379. package/dist/{orchestration-events-GY5VP5LU.js → orchestration-events-N7LYMUGA.js} +6 -5
  380. package/dist/{orchestration-phase-UDS24CVQ.js → orchestration-phase-T2WD45UA.js} +3 -2
  381. package/dist/{orchestrator-JVPVOYWA.js → orchestrator-4X24EWHV.js} +30 -27
  382. package/dist/{org-brief-session-GRV5R5E3.js → org-brief-session-FZOFMO5U.js} +13 -12
  383. package/dist/{org-consent-policy-3FHHSYXV.js → org-consent-policy-O5E6HXBL.js} +1 -1
  384. package/dist/{org-join-BY4PV6UO.js → org-join-POWUG25F.js} +8 -7
  385. package/dist/{org-key-admin-WSCPT2CZ.js → org-key-admin-E7EMDOZZ.js} +9 -8
  386. package/dist/{org-key-pin-5WUSPGVN.js → org-key-pin-WHWHVWUO.js} +4 -3
  387. package/dist/{org-membership-ESALTLLN.js → org-membership-WRT2IHJK.js} +5 -4
  388. package/dist/{org-partner-config-YKHPDPZR.js → org-partner-config-B7T4CL2T.js} +7 -6
  389. package/dist/{org-partner-runtime-UJDGECZ4.js → org-partner-runtime-FODONVTM.js} +13 -12
  390. package/dist/{org-row-visibility-V5DXIHTE.js → org-row-visibility-VX4AVV5Q.js} +1 -1
  391. package/dist/{pipeline-router-YY5FQKTY.js → pipeline-router-6GGT2ZW3.js} +6 -5
  392. package/dist/{plan-limits-OVX6SN6B.js → plan-limits-FUN76LYY.js} +8 -7
  393. package/dist/{platform-procedures-I57ITMDC.js → platform-procedures-7YSCLF4Z.js} +1 -1
  394. package/dist/{postinstall-failure-B2JHNFPM.js → postinstall-failure-O6TSSNJB.js} +3 -2
  395. package/dist/{project-boot-LXLU2J32.js → project-boot-3Q65LCIP.js} +2 -1
  396. package/dist/project-name-LJVFMYTQ.js +30 -0
  397. package/dist/{projection-worker-D2472IOD.js → projection-worker-4OANGP5K.js} +5 -4
  398. package/dist/{prospective-memory-JXO2A6PL.js → prospective-memory-KR3P4T6N.js} +5 -4
  399. package/dist/{push-notifications-HR3FZRDI.js → push-notifications-NCZLH6DI.js} +29 -26
  400. package/dist/ref-provenance-gate-M4AQO4OT.js +269 -0
  401. package/dist/{reproject-worktree-memories-OSS3PGRF.js → reproject-worktree-memories-PWYKPB2U.js} +106 -23
  402. package/dist/{reranker-IMZRPYJ2.js → reranker-6V3C2AO4.js} +3 -2
  403. package/dist/resolve-image-labels-ZI6UBW5W.js +15 -0
  404. package/dist/{retrieval-health-W7OD44FE.js → retrieval-health-5D7O6VH6.js} +4 -3
  405. package/dist/{review-polling-2INP7H6M.js → review-polling-QW3LJ4KN.js} +29 -26
  406. package/dist/runtime/index.js +38 -34
  407. package/dist/{session-events-G4XUPVWV.js → session-events-T45SSTMF.js} +31 -26
  408. package/dist/{session-kill-telemetry-W7MHWJTQ.js → session-kill-telemetry-QSPVJGBF.js} +29 -26
  409. package/dist/{session-mcp-config-F7KATWOF.js → session-mcp-config-SC5BLWZG.js} +3 -2
  410. package/dist/{session-scope-LG2J4EMQ.js → session-scope-KRWE54C4.js} +28 -25
  411. package/dist/{setup-wizard-YQJI3SVM.js → setup-wizard-GP3TBTPF.js} +5 -4
  412. package/dist/{shard-manager-UROHZE46.js → shard-manager-OE36A4MY.js} +3 -2
  413. package/dist/{skill-refinement-RA37U756.js → skill-refinement-C7JTMLJG.js} +6 -5
  414. package/dist/stack-generate-manifest-MFMDWRUP.js +810 -0
  415. package/dist/{stack-promote-IYBRXHTA.js → stack-promote-EKSCYY63.js} +8 -6
  416. package/dist/{stack-release-OXWLVVG6.js → stack-release-2GZAAFO4.js} +8 -6
  417. package/dist/{stack-update-2CZEROPK.js → stack-update-J6JXSTAZ.js} +51 -5
  418. package/dist/{steward-gate-LTNFB3FY.js → steward-gate-BFCCMCSW.js} +6 -5
  419. package/dist/{subagent-brief-injection-OHLWLECQ.js → subagent-brief-injection-ED36PLYY.js} +44 -36
  420. package/dist/{subagent-spawn-ledger-USYZXU3M.js → subagent-spawn-ledger-E6U3OY6Z.js} +3 -2
  421. package/dist/{supervisor-handoff-CSJQMI53.js → supervisor-handoff-SGLEPOCY.js} +12 -3
  422. package/dist/{support-inbox-4KCEPAZQ.js → support-inbox-YW47SYJF.js} +20 -5
  423. package/dist/{task-enforcement-LGXWXGVZ.js → task-enforcement-CECTQX4U.js} +29 -26
  424. package/dist/{task-request-inbox-WHCOSUCP.js → task-request-inbox-Q5T4N5K7.js} +1 -1
  425. package/dist/{task-scope-KXF7Y6KA.js → task-scope-ERVEUEYU.js} +28 -25
  426. package/dist/{tasks-crud-5EM55WRZ.js → tasks-crud-ZRQNJXQ2.js} +28 -25
  427. package/dist/{tasks-notify-VFMAURTN.js → tasks-notify-MIZH4C2O.js} +29 -26
  428. package/dist/{tasks-review-MHGMBHUZ.js → tasks-review-Z7J2P6DG.js} +28 -25
  429. package/dist/{telemetry-upload-6NRTN7QJ.js → telemetry-upload-LVQUQYFP.js} +10 -9
  430. package/dist/{token-budget-LZPOYTRP.js → token-budget-BU4NOVZF.js} +6 -5
  431. package/dist/{tool-capability-index-ED5OAPMW.js → tool-capability-index-7F42MOJT.js} +1 -1
  432. package/dist/{tool-gates-7PLIOLAL.js → tool-gates-JWVSAYTW.js} +1 -1
  433. package/dist/{tool-gates-2OZY3GZM.js → tool-gates-VXITVRFQ.js} +1 -1
  434. package/dist/{tool-telemetry-ZX7VSAXK.js → tool-telemetry-O27EVMBR.js} +1 -1
  435. package/dist/tui/App.js +43 -40
  436. package/dist/{tui-data-CC5POSUV.js → tui-data-TPWWBIUQ.js} +28 -25
  437. package/dist/{update-support-KH6NSQON.js → update-support-F2F5537B.js} +22 -20
  438. package/dist/{whatsapp-QW3X7OCN.js → whatsapp-YM4A2CSK.js} +3 -1
  439. package/dist/{work-claims-MNK7PEPW.js → work-claims-B73X5NE7.js} +6 -5
  440. package/dist/{work-state-heartbeat-YEWT5NMZ.js → work-state-heartbeat-P4YX6E2R.js} +1 -1
  441. package/dist/{worker-gate-BOQSIU2Z.js → worker-gate-BEEIIVWA.js} +3 -2
  442. package/dist/{workflow-engine-MUUD7ZEX.js → workflow-engine-5X46PFCW.js} +4 -2
  443. package/dist/{worktree-GOGT2LZP.js → worktree-W47CIMJ6.js} +9 -6
  444. package/dist/worktree-ownership-guard-OUWJROW2.js +88 -0
  445. package/dist/{worktree-sweep-46VWPVQT.js → worktree-sweep-BNBD4RFX.js} +8 -7
  446. package/package.json +14 -5
  447. package/release-notes.json +5 -5
  448. package/src/commands/exe/call.md +1 -1
  449. package/stack.release.json +6 -0
  450. package/dist/chunk-KZXMP6JG.js +0 -319
  451. package/dist/chunk-TCTED52S.js +0 -120
  452. package/dist/chunk-W2IRQJ6R.js +0 -67
  453. package/dist/doc-graph-extractor-VPTRIEKN.js +0 -149
  454. package/dist/project-name-ILJTETUE.js +0 -14
  455. /package/dist/{chunk-3Y5THOU6.js → chunk-6WIFPD2P.js} +0 -0
  456. /package/dist/{chunk-7XGXRD22.js → chunk-AISULNGL.js} +0 -0
  457. /package/dist/{chunk-3F2UB4IQ.js → chunk-DN4YVV4Z.js} +0 -0
  458. /package/dist/{chunk-WV3TOOL7.js → chunk-KQ6RJWRW.js} +0 -0
  459. /package/dist/{chunk-HR2R2QER.js → chunk-M4IRPXSZ.js} +0 -0
  460. /package/dist/{chunk-ORA5BWCV.js → chunk-NRG7KZIP.js} +0 -0
  461. /package/dist/{chunk-7UTJA6HF.js → chunk-VZAFWPAY.js} +0 -0
  462. /package/dist/{chunk-VJSDGDNS.js → chunk-WSQASFLP.js} +0 -0
  463. /package/dist/{chunk-FZQWVQJG.js → chunk-YO4BO2CL.js} +0 -0
  464. /package/dist/{core-memory-6WBNT2HL.js → core-memory-7I7RE2SJ.js} +0 -0
  465. /package/dist/{entity-boost-MT336PI3.js → entity-boost-3UWGXG5O.js} +0 -0
  466. /package/dist/{memory-isolation-EJ45IXBH.js → memory-isolation-2TUZ7Z4K.js} +0 -0
  467. /package/dist/{message-queue-client-MVBTYCSV.js → message-queue-client-XQN7QABL.js} +0 -0
  468. /package/dist/{webhook-pipe-UQSEHFPO.js → webhook-pipe-W2FVXY7M.js} +0 -0
  469. /package/dist/{wiki-acl-WXRJGZ5Q.js → wiki-acl-IBQLLBTS.js} +0 -0
  470. /package/dist/{wiki-client-AXNM5FWY.js → wiki-client-W65IOSWF.js} +0 -0
@@ -14,6 +14,7 @@ import {
14
14
  HOOK_PROCESS_PATTERNS,
15
15
  IDLE_KILL_INTERCOM_ACK_WINDOW_MS,
16
16
  IDLE_NUDGE_DEDUP_MS,
17
+ IDLE_NUDGE_MAX_TASK_AGE_MS,
17
18
  ORPHAN_MAX_AGE_SECS,
18
19
  ORPHAN_PATTERNS,
19
20
  ORPHAN_SIGKILL_DELAY_MS,
@@ -39,7 +40,6 @@ import {
39
40
  createCoordinatorRestartRealDeps,
40
41
  createIdleKillRealDeps,
41
42
  createIdleNudgeRealDeps,
42
- createOrphanReaperRealDeps,
43
43
  createOrphanReaperRealDepsAsync,
44
44
  createReviewNudgeRealDeps,
45
45
  createSessionTTLRealDeps,
@@ -48,7 +48,6 @@ import {
48
48
  createStuckBlockedRealDeps,
49
49
  createStuckTaskRealDeps,
50
50
  createWorktreeReaperRealDeps,
51
- createZombieAgentReaperRealDeps,
52
51
  createZombieAgentReaperRealDepsAsync,
53
52
  escalateStuckBlockedTasks,
54
53
  gcStaleCheckpoints,
@@ -82,62 +81,66 @@ import {
82
81
  shouldNudgeEmployee,
83
82
  shouldSkipWorktreeArchiveAfterFailures,
84
83
  worktreeArchiveFailureKey
85
- } from "./chunk-7R73IAHU.js";
86
- import "./chunk-CNC57JCS.js";
87
- import "./chunk-RBYHJDAT.js";
88
- import "./chunk-HECXZGGZ.js";
89
- import "./chunk-QTYJPWJN.js";
84
+ } from "./chunk-VMTZ4RUW.js";
85
+ import "./chunk-23MVDXLY.js";
86
+ import "./chunk-TQAZTRQ3.js";
87
+ import "./chunk-ZCERWHY2.js";
88
+ import "./chunk-CBCGDEJA.js";
90
89
  import "./chunk-76CJBM36.js";
91
- import "./chunk-XHYHX6F7.js";
90
+ import "./chunk-QLZ46RCK.js";
91
+ import "./chunk-AKLQSC6W.js";
92
92
  import "./chunk-BTSWFMEH.js";
93
- import "./chunk-WAEKYKTK.js";
94
- import "./chunk-44C7QNZS.js";
95
- import "./chunk-JTWTBX2M.js";
93
+ import "./chunk-6RKKVPYF.js";
94
+ import "./chunk-4EN3IZ3Q.js";
96
95
  import "./chunk-KI5PFRG6.js";
96
+ import "./chunk-3KDCORDO.js";
97
97
  import "./chunk-WT4RI36X.js";
98
98
  import "./chunk-E23LNUWJ.js";
99
99
  import "./chunk-QAEWWYHL.js";
100
100
  import "./chunk-EIKATSE4.js";
101
- import "./chunk-MDGYXUOV.js";
102
- import "./chunk-GBNB4EWD.js";
103
- import "./chunk-UXLO7VHX.js";
104
- import "./chunk-DSOQUQTV.js";
105
- import "./chunk-E2WEFZOR.js";
101
+ import "./chunk-MJCSEIFI.js";
102
+ import "./chunk-XH7YL7JM.js";
103
+ import "./chunk-ORM7ZFKC.js";
104
+ import "./chunk-VI4ATC6I.js";
105
+ import "./chunk-A27Q27CT.js";
106
+ import "./chunk-W75GTHR3.js";
106
107
  import "./chunk-AJIXH5JF.js";
107
- import "./chunk-L6ZNURWN.js";
108
- import "./chunk-XTWHNLGD.js";
108
+ import "./chunk-7GE2EQ23.js";
109
+ import "./chunk-GZOG2MAX.js";
109
110
  import "./chunk-AM7S2TY6.js";
110
- import "./chunk-HIIXCAEE.js";
111
+ import "./chunk-6YVUR3OU.js";
111
112
  import "./chunk-CVYC6DUW.js";
112
- import "./chunk-QZL6E4UB.js";
113
- import "./chunk-CDUB5Q6J.js";
114
- import "./chunk-UQUUNGTP.js";
115
- import "./chunk-IVU3WN7S.js";
116
- import "./chunk-RIECV7SR.js";
117
- import "./chunk-LNOS24GV.js";
113
+ import "./chunk-GOMQ7PVQ.js";
114
+ import "./chunk-4IK2K3B3.js";
115
+ import "./chunk-NUK7EEN5.js";
116
+ import "./chunk-ZG62LIK3.js";
117
+ import "./chunk-EKYYMIVT.js";
118
118
  import "./chunk-NLEW62VC.js";
119
- import "./chunk-W2IRQJ6R.js";
119
+ import "./chunk-SLLLOOEI.js";
120
+ import "./chunk-V3WLC5TJ.js";
121
+ import "./chunk-JTVIANUB.js";
120
122
  import "./chunk-HYZV25LY.js";
121
123
  import "./chunk-GJV3WDWM.js";
122
124
  import "./chunk-MP2AFCGL.js";
123
- import "./chunk-5DCCKHDY.js";
124
- import "./chunk-TKDITWDN.js";
125
+ import "./chunk-TAMDAOCU.js";
125
126
  import "./chunk-BBMTVAE3.js";
127
+ import "./chunk-TKDITWDN.js";
126
128
  import "./chunk-5YEUPUV4.js";
127
- import "./chunk-UTDMTQNH.js";
129
+ import "./chunk-DSJI76XL.js";
128
130
  import "./chunk-YYB5PMTK.js";
129
131
  import "./chunk-NJFJWQNN.js";
130
132
  import "./chunk-V3W3SATA.js";
131
133
  import "./chunk-JY5GAZYC.js";
132
134
  import "./chunk-FXU7JOXK.js";
133
135
  import "./chunk-WNBZJSQT.js";
134
- import "./chunk-DKBPCOU4.js";
136
+ import "./chunk-L6RXG36J.js";
135
137
  import "./chunk-A7XLR3K7.js";
136
- import "./chunk-GB3AHV5F.js";
138
+ import "./chunk-GQOEWNVM.js";
137
139
  import "./chunk-A7JYF4RG.js";
138
140
  import "./chunk-ARX6TAGN.js";
139
- import "./chunk-QMSEL5YS.js";
141
+ import "./chunk-ZIG7VPJV.js";
140
142
  import "./chunk-HSGBZSCA.js";
143
+ import "./chunk-RH4AH3YB.js";
141
144
  import "./chunk-JKKZGDLP.js";
142
145
  import "./chunk-MLKGABMK.js";
143
146
  export {
@@ -156,6 +159,7 @@ export {
156
159
  HOOK_PROCESS_PATTERNS,
157
160
  IDLE_KILL_INTERCOM_ACK_WINDOW_MS,
158
161
  IDLE_NUDGE_DEDUP_MS,
162
+ IDLE_NUDGE_MAX_TASK_AGE_MS,
159
163
  ORPHAN_MAX_AGE_SECS,
160
164
  ORPHAN_PATTERNS,
161
165
  ORPHAN_SIGKILL_DELAY_MS,
@@ -181,7 +185,6 @@ export {
181
185
  createCoordinatorRestartRealDeps,
182
186
  createIdleKillRealDeps,
183
187
  createIdleNudgeRealDeps,
184
- createOrphanReaperRealDeps,
185
188
  createOrphanReaperRealDepsAsync,
186
189
  createReviewNudgeRealDeps,
187
190
  createSessionTTLRealDeps,
@@ -190,7 +193,6 @@ export {
190
193
  createStuckBlockedRealDeps,
191
194
  createStuckTaskRealDeps,
192
195
  createWorktreeReaperRealDeps,
193
- createZombieAgentReaperRealDeps,
194
196
  createZombieAgentReaperRealDepsAsync,
195
197
  escalateStuckBlockedTasks,
196
198
  gcStaleCheckpoints,
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  waitForDaemonReady
3
- } from "./chunk-7XGXRD22.js";
3
+ } from "./chunk-AISULNGL.js";
4
4
  import "./chunk-MLKGABMK.js";
5
5
  export {
6
6
  waitForDaemonReady
@@ -6,9 +6,10 @@ import {
6
6
  recordDbIntegrityEvent,
7
7
  selectLastProvenOnDisk,
8
8
  selectUnresolvedUnverified
9
- } from "./chunk-ZNUJFX7L.js";
10
- import "./chunk-QMSEL5YS.js";
9
+ } from "./chunk-UQGSBM3U.js";
10
+ import "./chunk-ZIG7VPJV.js";
11
11
  import "./chunk-HSGBZSCA.js";
12
+ import "./chunk-RH4AH3YB.js";
12
13
  import "./chunk-JKKZGDLP.js";
13
14
  import "./chunk-MLKGABMK.js";
14
15
  export {
@@ -1,7 +1,8 @@
1
1
  import {
2
2
  EXE_AI_DIR
3
- } from "./chunk-QMSEL5YS.js";
3
+ } from "./chunk-ZIG7VPJV.js";
4
4
  import "./chunk-HSGBZSCA.js";
5
+ import "./chunk-RH4AH3YB.js";
5
6
  import "./chunk-JKKZGDLP.js";
6
7
  import "./chunk-MLKGABMK.js";
7
8
 
@@ -5,7 +5,7 @@ import {
5
5
  import {
6
6
  splitShellSegments,
7
7
  tokenizeShell
8
- } from "./chunk-HV6Y6F4X.js";
8
+ } from "./chunk-C2L622QJ.js";
9
9
  import "./chunk-MLKGABMK.js";
10
10
 
11
11
  // src/lib/destructive-data-guard.ts
@@ -0,0 +1,367 @@
1
+ import {
2
+ EXTRACT_TOOL,
3
+ storeExtraction
4
+ } from "./chunk-ULIBLJ6W.js";
5
+ import "./chunk-GUMRIUI5.js";
6
+ import "./chunk-Z6BZQHP5.js";
7
+ import {
8
+ resolveAnthropicAuth
9
+ } from "./chunk-VGMACSEV.js";
10
+ import "./chunk-VZAFWPAY.js";
11
+ import "./chunk-CHCA3ZM2.js";
12
+ import "./chunk-DN4YVV4Z.js";
13
+ import "./chunk-5MOYSU5A.js";
14
+ import "./chunk-4QCFFW2H.js";
15
+ import "./chunk-76CJBM36.js";
16
+ import {
17
+ getClient
18
+ } from "./chunk-TAMDAOCU.js";
19
+ import "./chunk-BBMTVAE3.js";
20
+ import "./chunk-TKDITWDN.js";
21
+ import "./chunk-5YEUPUV4.js";
22
+ import "./chunk-DSJI76XL.js";
23
+ import "./chunk-YYB5PMTK.js";
24
+ import "./chunk-NJFJWQNN.js";
25
+ import "./chunk-V3W3SATA.js";
26
+ import "./chunk-JY5GAZYC.js";
27
+ import "./chunk-FXU7JOXK.js";
28
+ import "./chunk-ZIG7VPJV.js";
29
+ import "./chunk-HSGBZSCA.js";
30
+ import "./chunk-RH4AH3YB.js";
31
+ import "./chunk-JKKZGDLP.js";
32
+ import "./chunk-MLKGABMK.js";
33
+
34
+ // src/lib/doc-graph-extractor.ts
35
+ var CHUNK_CONTENT_LIMIT = 3e3;
36
+ var MAX_CHUNKS_PER_CALL = 8;
37
+ var DOC_GRAPH_MEMORY_PREFIX = "doc-graph:";
38
+ var PROSE_STOPWORDS = /* @__PURE__ */ new Set([
39
+ "the",
40
+ "a",
41
+ "an",
42
+ "and",
43
+ "or",
44
+ "but",
45
+ "this",
46
+ "that",
47
+ "these",
48
+ "those",
49
+ "then",
50
+ "when",
51
+ "where",
52
+ "what",
53
+ "which",
54
+ "while",
55
+ "with",
56
+ "without",
57
+ "from",
58
+ "into",
59
+ "onto",
60
+ "over",
61
+ "under",
62
+ "also",
63
+ "because",
64
+ "however",
65
+ "since",
66
+ "though",
67
+ "although",
68
+ "instead",
69
+ "rather",
70
+ "still",
71
+ "here",
72
+ "there",
73
+ "they",
74
+ "them",
75
+ "their",
76
+ "your",
77
+ "our",
78
+ "its",
79
+ "his",
80
+ "her",
81
+ "we",
82
+ "you",
83
+ "it",
84
+ "he",
85
+ "she",
86
+ "i",
87
+ "in",
88
+ "on",
89
+ "at",
90
+ "to",
91
+ "of",
92
+ "for",
93
+ "by",
94
+ "as",
95
+ "is",
96
+ "are",
97
+ "was",
98
+ "were",
99
+ "be",
100
+ "been",
101
+ "being",
102
+ "has",
103
+ "have",
104
+ "had",
105
+ "do",
106
+ "does",
107
+ "did",
108
+ "not",
109
+ "no",
110
+ "yes",
111
+ "if",
112
+ "so",
113
+ "such",
114
+ "more",
115
+ "most",
116
+ "less",
117
+ "many",
118
+ "some",
119
+ "any",
120
+ "each",
121
+ "every",
122
+ "all",
123
+ "both",
124
+ "either",
125
+ "neither",
126
+ "per",
127
+ "via",
128
+ "note",
129
+ "table",
130
+ "figure",
131
+ "section",
132
+ "chapter",
133
+ "appendix",
134
+ "abstract",
135
+ "introduction",
136
+ "conclusion",
137
+ "results",
138
+ "methods",
139
+ "discussion",
140
+ "references",
141
+ "january",
142
+ "february",
143
+ "march",
144
+ "april",
145
+ "may",
146
+ "june",
147
+ "july",
148
+ "august",
149
+ "september",
150
+ "october",
151
+ "november",
152
+ "december",
153
+ "monday",
154
+ "tuesday",
155
+ "wednesday",
156
+ "thursday",
157
+ "friday",
158
+ "saturday",
159
+ "sunday"
160
+ ]);
161
+ var PROPER_NOUN_RE = /\b([A-Z][a-zA-Z]+(?:['’-][A-Za-z]+)?(?:\s+[A-Z][a-zA-Z]+(?:['’-][A-Za-z]+)?){0,3})\b/g;
162
+ var IDENTIFIER_RE = /\b([A-Z]{1,6}\d{2,}[A-Za-z0-9]*)\b/g;
163
+ var DISALLOWED_CHARS_RE = /[(){}\[\]`"=]/;
164
+ var HEURISTIC_MAX_ENTITIES = 40;
165
+ var HEURISTIC_MAX_RELATIONSHIPS = 60;
166
+ function isIdentifier(name) {
167
+ return new RegExp(`^(?:${IDENTIFIER_RE.source})$`).test(name);
168
+ }
169
+ function isProseConcept(name) {
170
+ if (name.length < 3 || name.length > 80) return false;
171
+ if (/^\d+$/.test(name)) return false;
172
+ if (DISALLOWED_CHARS_RE.test(name)) return false;
173
+ const words = name.split(/\s+/);
174
+ const first = words[0] ?? name;
175
+ if (words.length === 1) {
176
+ if (PROSE_STOPWORDS.has(name.toLowerCase())) return false;
177
+ } else {
178
+ if (PROSE_STOPWORDS.has(first.toLowerCase())) return false;
179
+ }
180
+ return /^[A-Z]/.test(name) || isIdentifier(name);
181
+ }
182
+ function cleanCandidate(raw) {
183
+ return raw.replace(/['’]s$/i, "").replace(/\s+/g, " ").trim();
184
+ }
185
+ function extractProseConceptsHeuristic(chunks) {
186
+ const candidates = /* @__PURE__ */ new Map();
187
+ const orderCounter = { i: 0 };
188
+ const addCandidate = (raw, type) => {
189
+ let name = cleanCandidate(raw);
190
+ const words = name.split(" ");
191
+ const first = words[0];
192
+ if (words.length > 1 && first !== void 0 && PROSE_STOPWORDS.has(first.toLowerCase())) {
193
+ name = words.slice(1).join(" ");
194
+ }
195
+ if (!isProseConcept(name)) return;
196
+ const key = name.toLowerCase();
197
+ const existing = candidates.get(key);
198
+ if (existing) {
199
+ existing.freq += 1;
200
+ } else {
201
+ candidates.set(key, {
202
+ name,
203
+ type,
204
+ freq: 1,
205
+ firstSeen: orderCounter.i++
206
+ });
207
+ }
208
+ };
209
+ for (const chunk of chunks) {
210
+ for (const match of chunk.matchAll(IDENTIFIER_RE)) {
211
+ if (match[1] === void 0) continue;
212
+ addCandidate(match[1], "identifier");
213
+ }
214
+ for (const match of chunk.matchAll(PROPER_NOUN_RE)) {
215
+ if (match[1] === void 0) continue;
216
+ addCandidate(match[1], "concept");
217
+ }
218
+ }
219
+ const ranked = [...candidates.values()].sort((a, b) => b.freq - a.freq || a.firstSeen - b.firstSeen).slice(0, HEURISTIC_MAX_ENTITIES);
220
+ const entities = ranked.map((c) => ({ name: c.name, type: c.type }));
221
+ const seenPairs = /* @__PURE__ */ new Set();
222
+ const relationships = [];
223
+ for (const chunk of chunks) {
224
+ const lower = chunk.toLowerCase();
225
+ const present = ranked.filter((c) => lower.includes(c.name.toLowerCase()));
226
+ for (let i = 0; i < present.length; i++) {
227
+ for (let j = i + 1; j < present.length; j++) {
228
+ const a = present[i];
229
+ const b = present[j];
230
+ if (a === void 0 || b === void 0) continue;
231
+ const pairKey = [a.name, b.name].sort().join(" ");
232
+ if (seenPairs.has(pairKey)) continue;
233
+ seenPairs.add(pairKey);
234
+ relationships.push({
235
+ source: a.name,
236
+ sourceType: a.type,
237
+ target: b.name,
238
+ targetType: b.type,
239
+ relationship: "co_occurs_with",
240
+ confidence: 0.5,
241
+ confidenceLabel: "heuristic"
242
+ });
243
+ if (relationships.length >= HEURISTIC_MAX_RELATIONSHIPS) {
244
+ return { entities, relationships, hyperedges: [] };
245
+ }
246
+ }
247
+ }
248
+ if (relationships.length >= HEURISTIC_MAX_RELATIONSHIPS) break;
249
+ }
250
+ return { entities, relationships, hyperedges: [] };
251
+ }
252
+ async function extractConceptsFromChunks(chunks, model = "claude-haiku-4-5-20251001") {
253
+ if (chunks.length === 0) {
254
+ return { entities: [], relationships: [], hyperedges: [] };
255
+ }
256
+ const selectedChunks = chunks.slice(0, MAX_CHUNKS_PER_CALL);
257
+ const combinedText = selectedChunks.map((chunk, i) => `--- Chunk ${i + 1} ---
258
+ ${chunk.slice(0, CHUNK_CONTENT_LIMIT)}`).join("\n\n");
259
+ const auth = resolveAnthropicAuth();
260
+ if (auth) {
261
+ try {
262
+ const Anthropic = (await import("@anthropic-ai/sdk")).default;
263
+ const client = new Anthropic(auth);
264
+ const response = await client.messages.create({
265
+ model,
266
+ max_tokens: 1024,
267
+ system: `You are extracting a knowledge graph from document content. Identify all key entities (people, companies, concepts, locations, projects, tools, decisions, products) and the relationships between them. Focus on explicitly stated facts \u2014 don't over-infer. Use the simplest canonical form for entity names (e.g., "Anthropic" not "Anthropic, PBC"). For relationships, prefer specific types (depends_on, created, uses, part_of, located_at, manages, supplies) over generic related_to.`,
268
+ messages: [{ role: "user", content: combinedText }],
269
+ tools: [EXTRACT_TOOL],
270
+ tool_choice: { type: "tool", name: "extract_entities_and_relationships" }
271
+ });
272
+ const toolBlock = response.content.find((b) => b.type === "tool_use");
273
+ if (toolBlock && toolBlock.type === "tool_use") {
274
+ const input = toolBlock.input;
275
+ const rawEntities = input.entities ?? [];
276
+ const rawRels = input.relationships ?? [];
277
+ const rawHyperedges = input.hyperedges ?? [];
278
+ const llmResult = {
279
+ entities: rawEntities.map((e) => ({ name: e.name ?? "", type: e.type ?? "concept" })).filter((e) => e.name.length > 0),
280
+ relationships: rawRels.map((r) => ({
281
+ source: r.source ?? "",
282
+ sourceType: r.source_type ?? "concept",
283
+ target: r.target ?? "",
284
+ targetType: r.target_type ?? "concept",
285
+ relationship: r.relationship ?? "related_to",
286
+ confidence: Number(r.confidence ?? 0.8),
287
+ confidenceLabel: String(r.confidence_label ?? "extracted")
288
+ })).filter((r) => r.source.length > 0 && r.target.length > 0),
289
+ hyperedges: rawHyperedges.map((h) => ({
290
+ label: String(h.label ?? ""),
291
+ relation: String(h.relation ?? ""),
292
+ entityNames: h.entity_names ?? [],
293
+ confidence: Number(h.confidence ?? 1)
294
+ })).filter((h) => h.label.length > 0 && h.entityNames.length >= 3)
295
+ };
296
+ if (llmResult.entities.length > 0) return llmResult;
297
+ }
298
+ } catch (err) {
299
+ process.stderr.write(
300
+ `[doc-graph-extractor] LLM extraction failed: ${err instanceof Error ? err.message : String(err)}
301
+ `
302
+ );
303
+ }
304
+ }
305
+ return extractProseConceptsHeuristic(selectedChunks);
306
+ }
307
+ async function extractAndStoreDocumentGraph(documentId, chunks, model = "claude-haiku-4-5-20251001") {
308
+ if (chunks.length === 0) {
309
+ return { entitiesStored: 0, relationshipsStored: 0, chunksProcessed: 0 };
310
+ }
311
+ try {
312
+ let totalEntities = 0;
313
+ let totalRelationships = 0;
314
+ let totalChunks = 0;
315
+ for (let i = 0; i < chunks.length; i += MAX_CHUNKS_PER_CALL) {
316
+ const batch = chunks.slice(i, i + MAX_CHUNKS_PER_CALL);
317
+ const extraction = await extractConceptsFromChunks(batch, model);
318
+ if (extraction.entities.length > 0 || extraction.relationships.length > 0) {
319
+ const client = getClient();
320
+ const now = (/* @__PURE__ */ new Date()).toISOString();
321
+ const syntheticMemoryId = `${DOC_GRAPH_MEMORY_PREFIX}${documentId}:${i}`;
322
+ const stored = await storeExtraction(client, extraction, syntheticMemoryId, now);
323
+ totalEntities += stored.entitiesStored;
324
+ totalRelationships += stored.relationshipsStored;
325
+ }
326
+ totalChunks += batch.length;
327
+ }
328
+ return {
329
+ entitiesStored: totalEntities,
330
+ relationshipsStored: totalRelationships,
331
+ chunksProcessed: totalChunks
332
+ };
333
+ } catch (err) {
334
+ process.stderr.write(
335
+ `[doc-graph-extractor] extractAndStoreDocumentGraph failed for ${documentId}: ${err instanceof Error ? err.message : String(err)}
336
+ `
337
+ );
338
+ return { entitiesStored: 0, relationshipsStored: 0, chunksProcessed: 0 };
339
+ }
340
+ }
341
+ async function extractGraphFromExistingDocument(documentId, model = "claude-haiku-4-5-20251001") {
342
+ const client = getClient();
343
+ const docResult = await client.execute({
344
+ sql: "SELECT id FROM documents WHERE id = ?",
345
+ args: [documentId]
346
+ });
347
+ if (docResult.rows.length === 0) {
348
+ throw new Error(`Document not found: ${documentId}`);
349
+ }
350
+ const chunksResult = await client.execute({
351
+ sql: `SELECT raw_text FROM memories
352
+ WHERE document_id = ? AND COALESCE(status, 'active') = 'active'
353
+ ORDER BY char_offset ASC, timestamp ASC`,
354
+ args: [documentId]
355
+ });
356
+ if (chunksResult.rows.length === 0) {
357
+ return { entitiesStored: 0, relationshipsStored: 0, chunksProcessed: 0 };
358
+ }
359
+ const chunkTexts = chunksResult.rows.map((row) => String(row.raw_text));
360
+ return extractAndStoreDocumentGraph(documentId, chunkTexts, model);
361
+ }
362
+ export {
363
+ extractAndStoreDocumentGraph,
364
+ extractConceptsFromChunks,
365
+ extractGraphFromExistingDocument,
366
+ extractProseConceptsHeuristic
367
+ };
@@ -14,27 +14,28 @@ import {
14
14
  rowToDocument,
15
15
  rowToWorkspace,
16
16
  updateChunksImportance
17
- } from "./chunk-RGUDGC6A.js";
18
- import "./chunk-IDZPQG2D.js";
19
- import "./chunk-OYQNNKNS.js";
20
- import "./chunk-7UTJA6HF.js";
17
+ } from "./chunk-KTU3EAWK.js";
18
+ import "./chunk-MOGA4Q7F.js";
19
+ import "./chunk-MXPNVSXI.js";
20
+ import "./chunk-VZAFWPAY.js";
21
21
  import "./chunk-CHCA3ZM2.js";
22
22
  import "./chunk-OTVEIJUQ.js";
23
- import "./chunk-3F2UB4IQ.js";
23
+ import "./chunk-DN4YVV4Z.js";
24
24
  import "./chunk-5MOYSU5A.js";
25
25
  import "./chunk-4QCFFW2H.js";
26
26
  import "./chunk-76CJBM36.js";
27
- import "./chunk-UQUUNGTP.js";
28
- import "./chunk-IVU3WN7S.js";
29
- import "./chunk-RIECV7SR.js";
30
- import "./chunk-LNOS24GV.js";
27
+ import "./chunk-NUK7EEN5.js";
28
+ import "./chunk-ZG62LIK3.js";
29
+ import "./chunk-EKYYMIVT.js";
31
30
  import "./chunk-NLEW62VC.js";
31
+ import "./chunk-SLLLOOEI.js";
32
+ import "./chunk-V3WLC5TJ.js";
32
33
  import "./chunk-MP2AFCGL.js";
33
- import "./chunk-5DCCKHDY.js";
34
- import "./chunk-TKDITWDN.js";
34
+ import "./chunk-TAMDAOCU.js";
35
35
  import "./chunk-BBMTVAE3.js";
36
+ import "./chunk-TKDITWDN.js";
36
37
  import "./chunk-5YEUPUV4.js";
37
- import "./chunk-UTDMTQNH.js";
38
+ import "./chunk-DSJI76XL.js";
38
39
  import "./chunk-YYB5PMTK.js";
39
40
  import "./chunk-NJFJWQNN.js";
40
41
  import "./chunk-V3W3SATA.js";
@@ -43,8 +44,9 @@ import "./chunk-FXU7JOXK.js";
43
44
  import "./chunk-HPXFKUGU.js";
44
45
  import "./chunk-A7JYF4RG.js";
45
46
  import "./chunk-ARX6TAGN.js";
46
- import "./chunk-QMSEL5YS.js";
47
+ import "./chunk-ZIG7VPJV.js";
47
48
  import "./chunk-HSGBZSCA.js";
49
+ import "./chunk-RH4AH3YB.js";
48
50
  import "./chunk-JKKZGDLP.js";
49
51
  import "./chunk-MLKGABMK.js";
50
52
  export {