@askexenow/exe-os 0.9.396 → 0.9.398

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 (409) hide show
  1. package/deploy/stack-manifests/v0.9.json +400 -1
  2. package/dist/.dist-verified.json +3 -3
  3. package/dist/{active-agent-7OKWCTDR.js → active-agent-5DC75ZP3.js} +4 -4
  4. package/dist/{active-agent-6CIFLMKA.js → active-agent-Q7AOGCY5.js} +4 -4
  5. package/dist/{agent-defs-generator-PZJGE6PL.js → agent-defs-generator-TBR4P3XR.js} +3 -3
  6. package/dist/{agentic-ontology-JTPDKIML.js → agentic-ontology-UFSQDLCW.js} +1 -1
  7. package/dist/{artifact-backup-Q7T3GQFO.js → artifact-backup-VWQ6EYNO.js} +3 -3
  8. package/dist/{backfill-metadata-7QLL3FSG.js → backfill-metadata-BVW4KXY3.js} +7 -7
  9. package/dist/{background-jobs-V3DZRFKU.js → background-jobs-DXZXRPSE.js} +5 -1
  10. package/dist/{backup-verify-SCFVPBZH.js → backup-verify-6UIMP3QY.js} +5 -5
  11. package/dist/{behavior-injection-CHSQWES4.js → behavior-injection-MVL5PXIH.js} +10 -10
  12. package/dist/{behavior-promotion-TCYWUNKR.js → behavior-promotion-ZQSQLBNO.js} +9 -9
  13. package/dist/{behaviors-5FRO36HG.js → behaviors-S6ANWJTO.js} +8 -8
  14. package/dist/bin/age-ontology-load.js +1 -1
  15. package/dist/bin/agentic-ontology-backfill.js +9 -9
  16. package/dist/bin/agentic-reflection-backfill.js +10 -10
  17. package/dist/bin/agentic-semantic-label.js +9 -9
  18. package/dist/bin/backfill-conversations.js +7 -7
  19. package/dist/bin/backfill-responses.js +7 -7
  20. package/dist/bin/backfill-vectors.js +8 -8
  21. package/dist/bin/bulk-sync-postgres.js +17 -17
  22. package/dist/bin/cc-doctor.js +9 -9
  23. package/dist/bin/cleanup-stale-review-tasks.js +18 -18
  24. package/dist/bin/cli.js +28 -28
  25. package/dist/bin/deferred-daemon-restart.js +101 -100
  26. package/dist/bin/exe-actions.js +1 -1
  27. package/dist/bin/exe-agent-config.js +3 -3
  28. package/dist/bin/exe-agent.js +11 -11
  29. package/dist/bin/exe-assign.js +8 -8
  30. package/dist/bin/exe-boot.js +38 -38
  31. package/dist/bin/exe-call.js +8 -8
  32. package/dist/bin/exe-cloud.js +18 -18
  33. package/dist/bin/exe-config-dump.js +3 -3
  34. package/dist/bin/exe-dispatch.js +19 -19
  35. package/dist/bin/exe-doctor.js +6 -6
  36. package/dist/bin/exe-export-behaviors.js +12 -12
  37. package/dist/bin/exe-forget.js +10 -10
  38. package/dist/bin/exe-gateway.js +9 -9
  39. package/dist/bin/exe-grant.js +6 -6
  40. package/dist/bin/exe-healthcheck.js +9 -9
  41. package/dist/bin/exe-heartbeat.js +24 -24
  42. package/dist/bin/exe-kill.js +23 -23
  43. package/dist/bin/exe-launch-agent.js +31 -31
  44. package/dist/bin/exe-mcp.js +5 -5
  45. package/dist/bin/exe-memory-reads.js +7 -7
  46. package/dist/bin/exe-new-employee.js +11 -11
  47. package/dist/bin/exe-os-mcp-proxy.js +5 -5
  48. package/dist/bin/exe-pending-messages.js +19 -19
  49. package/dist/bin/exe-pending-notifications.js +18 -18
  50. package/dist/bin/exe-pending-reviews.js +19 -19
  51. package/dist/bin/exe-rename.js +6 -6
  52. package/dist/bin/exe-review.js +22 -22
  53. package/dist/bin/exe-search.js +9 -9
  54. package/dist/bin/exe-session-cleanup.js +24 -24
  55. package/dist/bin/exe-settings.js +17 -17
  56. package/dist/bin/exe-start-codex.js +18 -18
  57. package/dist/bin/exe-start-opencode.js +16 -16
  58. package/dist/bin/exe-status.js +20 -20
  59. package/dist/bin/exe-support.js +4 -4
  60. package/dist/bin/exe-team.js +5 -5
  61. package/dist/bin/git-sweep.js +22 -22
  62. package/dist/bin/graph-backfill.js +9 -9
  63. package/dist/bin/graph-export.js +8 -8
  64. package/dist/bin/hooks-cli.js +1 -1
  65. package/dist/bin/import-history.js +11 -11
  66. package/dist/bin/install.js +105 -104
  67. package/dist/bin/intercom-check.js +5 -5
  68. package/dist/bin/mcp-sessions.js +2 -2
  69. package/dist/bin/orchestration-metrics.js +5 -5
  70. package/dist/bin/postgres-agentic-reflection-backfill.js +3 -3
  71. package/dist/bin/postgres-agentic-semantic-backfill.js +2 -2
  72. package/dist/bin/reconcile-backlog.js +2 -2
  73. package/dist/bin/registry-proxy.js +1 -1
  74. package/dist/bin/repair-document-chunks.js +7 -7
  75. package/dist/bin/scan-tasks.js +19 -19
  76. package/dist/bin/setup.js +2 -2
  77. package/dist/bin/shard-migrate.js +8 -8
  78. package/dist/bin/stack-update.js +8 -8
  79. package/dist/bin/verify-stack.js +1 -1
  80. package/dist/bin/vps-health-gate.js +1 -1
  81. package/dist/{boot-generation-HBXSYBPC.js → boot-generation-ASJLGXK2.js} +4 -4
  82. package/dist/{boot-review-sections-66P5JMRV.js → boot-review-sections-B34SK4LE.js} +17 -17
  83. package/dist/{bug-landed-reconciler-QIOAKAPY.js → bug-landed-reconciler-P53SGWZG.js} +7 -7
  84. package/dist/build-manifest.json +968 -963
  85. package/dist/{capability-cards-6BANN36W.js → capability-cards-WMK2P2O2.js} +3 -3
  86. package/dist/{capacity-monitor-TIKUMNDU.js → capacity-monitor-WSRFY3UK.js} +19 -19
  87. package/dist/{catchup-brief-EVJS7D6C.js → catchup-brief-CE3FP6SL.js} +24 -24
  88. package/dist/{chunk-BKKZN3DJ.js → chunk-2CGKFJ3Q.js} +7 -7
  89. package/dist/{chunk-T6C6RT6R.js → chunk-2FMLMHJE.js} +3 -3
  90. package/dist/{chunk-GHCF7J4Q.js → chunk-2YLN5M5K.js} +3 -3
  91. package/dist/{chunk-M7DI6JWD.js → chunk-33D76SCE.js} +169 -169
  92. package/dist/{chunk-LGNDHTDP.js → chunk-342X5YQB.js} +1 -1
  93. package/dist/{chunk-KM7M4LKN.js → chunk-3HV3TRBB.js} +3 -3
  94. package/dist/{chunk-RFIAHXTF.js → chunk-3QGQG2CR.js} +1 -1
  95. package/dist/{chunk-A7XLR3K7.js → chunk-3R7UDPVR.js} +1 -2
  96. package/dist/{chunk-L2AUCHHJ.js → chunk-4VD4CIHX.js} +9 -9
  97. package/dist/{chunk-JSOXH5HW.js → chunk-5ID4DJ2E.js} +2 -2
  98. package/dist/{chunk-QQJI7JGN.js → chunk-5OG5UQKP.js} +4 -4
  99. package/dist/{chunk-U4GMOT4M.js → chunk-5TAJDCZY.js} +49 -12
  100. package/dist/{chunk-656JZVNV.js → chunk-5VZDXC7N.js} +3 -3
  101. package/dist/{chunk-WAPCTGGB.js → chunk-6X4TCYMU.js} +1 -1
  102. package/dist/{chunk-SLRKZRLC.js → chunk-6YJKBKSI.js} +1 -1
  103. package/dist/{chunk-LVFD2DVI.js → chunk-7ECQZXUE.js} +3 -3
  104. package/dist/{chunk-TQEW3RJ3.js → chunk-7PNTI56G.js} +2 -2
  105. package/dist/{chunk-V4RIHICU.js → chunk-7QYXNSKT.js} +26 -26
  106. package/dist/{chunk-5BUJW46U.js → chunk-A6GDEHRQ.js} +104 -10
  107. package/dist/{chunk-Q7WMOEKA.js → chunk-AIOP4BF6.js} +39 -21
  108. package/dist/{chunk-4NOGWIBA.js → chunk-AWERP5SW.js} +3 -3
  109. package/dist/{chunk-G3KSUXEA.js → chunk-B4OZKTIS.js} +1 -1
  110. package/dist/{chunk-V4JWFJZR.js → chunk-B7T7I5BK.js} +16 -16
  111. package/dist/{chunk-TQJMG65I.js → chunk-BI6SK67J.js} +2 -2
  112. package/dist/{chunk-B2P6OX3V.js → chunk-BTN6AEKU.js} +3 -3
  113. package/dist/{chunk-OGJCUMSM.js → chunk-C3CRGIS4.js} +1 -1
  114. package/dist/{chunk-5UUHXDX6.js → chunk-C4OMBSRB.js} +2 -2
  115. package/dist/{chunk-PAJ7FUTI.js → chunk-CBLI4ANF.js} +1 -1
  116. package/dist/{chunk-CEKNYT2D.js → chunk-CBUFW5J2.js} +12 -12
  117. package/dist/{chunk-JVK6JYR4.js → chunk-CIFHEPMI.js} +1 -1
  118. package/dist/{chunk-G7BVAQVT.js → chunk-CIRZLORZ.js} +1 -1
  119. package/dist/{chunk-YG6MHFUP.js → chunk-CN7IOETW.js} +2 -2
  120. package/dist/{chunk-DSZM7OHM.js → chunk-CTMEIRJQ.js} +1 -1
  121. package/dist/{chunk-PGLASTLI.js → chunk-DKD6JKIQ.js} +5 -5
  122. package/dist/{chunk-BJ3ZQAIL.js → chunk-DTUQGAD4.js} +1 -1
  123. package/dist/{chunk-HHNGQIP3.js → chunk-DUPQMNK6.js} +6 -6
  124. package/dist/{chunk-5RDMJ325.js → chunk-DVFVOT42.js} +5 -5
  125. package/dist/{chunk-UWLWYGJJ.js → chunk-E72V3JWD.js} +1 -1
  126. package/dist/{chunk-Y7BP2MO2.js → chunk-EI53C646.js} +1 -1
  127. package/dist/{chunk-5M4UNU6O.js → chunk-ENEYMKL6.js} +3 -3
  128. package/dist/{chunk-VV7D7KEX.js → chunk-F4C3X66B.js} +1 -1
  129. package/dist/{chunk-DDYKAJMS.js → chunk-FCQK3CNA.js} +1 -1
  130. package/dist/{chunk-K6NJ7FAZ.js → chunk-GER43BIE.js} +257 -15
  131. package/dist/{chunk-7C4YKCUK.js → chunk-GOQ5EE67.js} +1 -1
  132. package/dist/{chunk-KBCUHYHP.js → chunk-HRLCAV2S.js} +2 -2
  133. package/dist/{chunk-B6CBN6EF.js → chunk-HWP3WCLC.js} +51 -4
  134. package/dist/{chunk-OWPOJ6OG.js → chunk-HWZZNUJJ.js} +1 -1
  135. package/dist/{chunk-55M4DF76.js → chunk-I3OXYKU7.js} +2 -2
  136. package/dist/{chunk-BX336WRX.js → chunk-IACMGMGW.js} +1 -1
  137. package/dist/{chunk-MGPEY7I2.js → chunk-ICAGVBZ4.js} +1 -1
  138. package/dist/{chunk-V5KLIBUV.js → chunk-IDFOZ6YH.js} +1 -1
  139. package/dist/{chunk-MOQBMEMW.js → chunk-J54BOM4G.js} +4 -4
  140. package/dist/{chunk-SSGIMXA6.js → chunk-JDRIUUMY.js} +3 -3
  141. package/dist/{chunk-WUQSEZWR.js → chunk-JK5XB7Z5.js} +1 -1
  142. package/dist/{chunk-ZEYBEJBX.js → chunk-JWA3Y6PE.js} +11 -11
  143. package/dist/{chunk-7UCCSSJO.js → chunk-KUJODN4N.js} +1 -1
  144. package/dist/{chunk-EHDAWQ5P.js → chunk-L5TOPOTW.js} +1 -1
  145. package/dist/{chunk-RPOIKNJZ.js → chunk-LGP67CBT.js} +1 -1
  146. package/dist/{chunk-LEA7VKPU.js → chunk-LHNMKY7N.js} +10 -10
  147. package/dist/{chunk-Y5ZD4CTB.js → chunk-MBF7NXKP.js} +1 -1
  148. package/dist/{chunk-ONYDMXRV.js → chunk-MT3P3B2L.js} +1 -1
  149. package/dist/{chunk-EHFPSOLD.js → chunk-MYGXI2UC.js} +4 -4
  150. package/dist/{chunk-5YAXBLZR.js → chunk-NCKHGVDK.js} +1 -1
  151. package/dist/{chunk-SUZWRZE5.js → chunk-NITCVCRV.js} +1 -1
  152. package/dist/{chunk-DXIMITSY.js → chunk-NJG3YVZI.js} +3 -3
  153. package/dist/{chunk-I4DBM5ME.js → chunk-NQG5CD3V.js} +1 -1
  154. package/dist/{chunk-3OG5LZRK.js → chunk-NUHCZF6C.js} +1 -1
  155. package/dist/{chunk-4CGMGUDL.js → chunk-OLRMWNOW.js} +28 -8
  156. package/dist/{chunk-6FWHAROQ.js → chunk-OSLT3VAE.js} +3 -3
  157. package/dist/{chunk-EG4ZUF4A.js → chunk-OURGAT7A.js} +2 -2
  158. package/dist/{chunk-VN27TCZE.js → chunk-OZMKDFJU.js} +2 -2
  159. package/dist/{chunk-ZTFNKVOM.js → chunk-P47UW3N5.js} +2 -2
  160. package/dist/{chunk-WDLJZKJK.js → chunk-POMZGFDP.js} +3 -3
  161. package/dist/{chunk-SXBLRCQY.js → chunk-PSWYKWKN.js} +4 -4
  162. package/dist/{chunk-RPV6CHKA.js → chunk-PTAJKZBG.js} +4 -4
  163. package/dist/{chunk-FJPCVXQX.js → chunk-Q6X5EVH5.js} +1 -1
  164. package/dist/{chunk-LNCTMU7Y.js → chunk-Q7YT7RGZ.js} +2 -2
  165. package/dist/{chunk-2NW4LRDU.js → chunk-QIMM3CSI.js} +92 -12
  166. package/dist/{chunk-UALXBUDX.js → chunk-QJI5LPRJ.js} +3 -3
  167. package/dist/{chunk-S2Q2RXYQ.js → chunk-QX7FJJBT.js} +1 -1
  168. package/dist/{chunk-H4QZCG4C.js → chunk-R7F3UARN.js} +1 -1
  169. package/dist/{chunk-NTWCFT5X.js → chunk-R7JQKULM.js} +3 -3
  170. package/dist/{chunk-UW5KXM4D.js → chunk-RCMXCNMC.js} +1 -1
  171. package/dist/{chunk-ONMKHJJL.js → chunk-RGPEUXOE.js} +7 -4
  172. package/dist/{chunk-3CAKKEEY.js → chunk-RSOHC3JR.js} +2 -2
  173. package/dist/{chunk-XOPIR34P.js → chunk-RUAEYGEH.js} +1 -1
  174. package/dist/{chunk-GHIMWZN4.js → chunk-SQE2PHXK.js} +1 -1
  175. package/dist/{chunk-FNVZAK4C.js → chunk-SVORDFGR.js} +6 -6
  176. package/dist/{chunk-PE7RXZQE.js → chunk-SZHPUFK7.js} +5 -5
  177. package/dist/{chunk-LRAMTS6U.js → chunk-TLAW77QU.js} +7 -7
  178. package/dist/{chunk-VH4IRABX.js → chunk-TRH6E2HV.js} +4 -4
  179. package/dist/{chunk-GPB6X2OI.js → chunk-UAPWTGRP.js} +1 -1
  180. package/dist/{chunk-4CB4VETH.js → chunk-UI2MRWQC.js} +2 -2
  181. package/dist/{chunk-WFKZZSEB.js → chunk-UI5HQJK5.js} +1 -1
  182. package/dist/{chunk-45R4367S.js → chunk-ULBPH7SD.js} +1 -1
  183. package/dist/{chunk-X5FCZYWK.js → chunk-ULORKGXX.js} +2 -2
  184. package/dist/{chunk-D2ZII4AG.js → chunk-UMXUJTSQ.js} +6 -6
  185. package/dist/{chunk-7INEFMVU.js → chunk-UNFHKOTF.js} +44 -15
  186. package/dist/{chunk-7WDLUCHN.js → chunk-UOZBM4LO.js} +3 -3
  187. package/dist/{chunk-WEW4TRBL.js → chunk-UPGKO5UD.js} +1 -1
  188. package/dist/{chunk-JKUCAMV4.js → chunk-UQDCXE5D.js} +1 -1
  189. package/dist/{chunk-DXQIIZQC.js → chunk-UYU25KCR.js} +12 -12
  190. package/dist/{chunk-V7NXFHZM.js → chunk-UZZSM36C.js} +1 -1
  191. package/dist/{chunk-6Q3M7KZE.js → chunk-V5C7NLBF.js} +3 -3
  192. package/dist/{chunk-YQJC5ETC.js → chunk-V6EIR7QO.js} +2 -2
  193. package/dist/{chunk-XFF6SPWG.js → chunk-VFVF3FHG.js} +1 -1
  194. package/dist/{chunk-F5VP7K3C.js → chunk-VRTBRPRO.js} +59 -12
  195. package/dist/{chunk-6VMVQ3G7.js → chunk-VX7I5XT6.js} +55 -11
  196. package/dist/{chunk-K3EU7B72.js → chunk-VXYXKN6Z.js} +5 -5
  197. package/dist/{chunk-4UOEKQF3.js → chunk-W2SNTOQE.js} +6 -6
  198. package/dist/{chunk-X2X3IGZU.js → chunk-W4H2MZAS.js} +17 -5
  199. package/dist/{chunk-6OQ2TRZK.js → chunk-WHQADJV7.js} +8 -2
  200. package/dist/{chunk-INLY2LLN.js → chunk-XMQE5IBD.js} +1 -1
  201. package/dist/{chunk-ZSFFCRVI.js → chunk-XQH5BKEC.js} +2 -2
  202. package/dist/{chunk-IVGAATAY.js → chunk-YQ7V5UGG.js} +4 -4
  203. package/dist/{chunk-JC3LUYW6.js → chunk-YUMZXMKO.js} +1 -1
  204. package/dist/{chunk-BREDG6EG.js → chunk-Z25GSJ55.js} +9 -5
  205. package/dist/{chunk-5AGOX2XD.js → chunk-ZFJ2KQNY.js} +1 -1
  206. package/dist/{chunk-UVEDFARJ.js → chunk-ZGILZG4X.js} +13 -13
  207. package/dist/{chunk-W6W6ED2D.js → chunk-ZHENW7C3.js} +1 -1
  208. package/dist/{chunk-OODTK35C.js → chunk-ZK645I2O.js} +5 -5
  209. package/dist/{chunk-TFVMRQCZ.js → chunk-ZPMKJS7L.js} +4 -4
  210. package/dist/{cleanup-graph-garbage-AXNCBW5B.js → cleanup-graph-garbage-4PGUCD7L.js} +8 -8
  211. package/dist/{cli-shutdown-HIZRMWKR.js → cli-shutdown-TWBTAIJX.js} +1 -1
  212. package/dist/{cloud-sync-command-XYKKRYHG.js → cloud-sync-command-GLTTBKWO.js} +2 -2
  213. package/dist/{cloud-sync-db-init-GJ322ZNM.js → cloud-sync-db-init-GCR22YII.js} +1 -1
  214. package/dist/{cloud-sync-shutdown-K4XBDTDB.js → cloud-sync-shutdown-YMLKOH3D.js} +3 -3
  215. package/dist/{co-activation-AQXLWFBQ.js → co-activation-MTMCPMZ7.js} +3 -3
  216. package/dist/{co-occurrence-O67PD32I.js → co-occurrence-USGUH6Q4.js} +6 -6
  217. package/dist/{consent-passphrase-DTOZ7LIP.js → consent-passphrase-47T2T7AI.js} +2 -2
  218. package/dist/{conversation-entity-extractor-VRL2EEZQ.js → conversation-entity-extractor-NMXN4MFL.js} +3 -3
  219. package/dist/{crdt-sync-RPCGSGIE.js → crdt-sync-MKLAGQ44.js} +4 -4
  220. package/dist/{crm-webhook-4QADMY7C.js → crm-webhook-5XPG7KVJ.js} +2 -2
  221. package/dist/{cto-delegation-gate-6N2R2VA2.js → cto-delegation-gate-MPD4NXN2.js} +17 -17
  222. package/dist/{daemon-orchestration-ASCAZ63R.js → daemon-orchestration-3PQVCRII.js} +25 -22
  223. package/dist/{daemon-restart-circuit-breaker-CD4VMCU7.js → daemon-restart-circuit-breaker-PY2MZL7Z.js} +1 -1
  224. package/dist/{db-integrity-events-7NKWS5MT.js → db-integrity-events-6363LLDT.js} +1 -1
  225. package/dist/{db-restore-events-XYL6CGPC.js → db-restore-events-R5S7XTHX.js} +47 -11
  226. package/dist/{doc-graph-extractor-VVSMYOR3.js → doc-graph-extractor-N4ROA5Y6.js} +6 -6
  227. package/dist/{documents-5WNSGY3Q.js → documents-MB6ZBMFN.js} +8 -8
  228. package/dist/{dreaming-2TPLO3TO.js → dreaming-J44REYEX.js} +22 -22
  229. package/dist/{employee-boot-brief-MYXATLSU.js → employee-boot-brief-XGGQIUWH.js} +26 -26
  230. package/dist/{entity-boost-BW62CICZ.js → entity-boost-EF4ZVOAL.js} +1 -1
  231. package/dist/{exe-drift-PFFRJJTZ.js → exe-drift-BG7P4MPD.js} +4 -4
  232. package/dist/{exe-export-LL5SV6P2.js → exe-export-JGIBEZ6Y.js} +9 -9
  233. package/dist/{exe-import-LSQMDFDX.js → exe-import-WLFLUY3Y.js} +9 -9
  234. package/dist/{exe-key-266A5GJN.js → exe-key-VST55TOI.js} +101 -100
  235. package/dist/{exe-org-T5DQXHGZ.js → exe-org-FRBL3DFL.js} +36 -36
  236. package/dist/{exe-snapshot-LMMGFX7O.js → exe-snapshot-RYI5ECPA.js} +25 -25
  237. package/dist/{fast-db-init-6MQDCHEB.js → fast-db-init-SIDYVAXH.js} +1 -1
  238. package/dist/{founder-context-6Q6OU7Q7.js → founder-context-2NDDWGSH.js} +3 -3
  239. package/dist/{founder-monitor-envelope-RBSOSB6K.js → founder-monitor-envelope-KZCFNWMB.js} +4 -4
  240. package/dist/{fts-integrity-PHCKKOBC.js → fts-integrity-PL7TKYTM.js} +1 -1
  241. package/dist/gateway/index.js +21 -21
  242. package/dist/{gateway-client-4GHRSWHK.js → gateway-client-KABOHP62.js} +1 -1
  243. package/dist/{git-staleness-APYCKV4V.js → git-staleness-2CLU6VTA.js} +3 -3
  244. package/dist/{global-procedures-HYFE2UTQ.js → global-procedures-W3G63OIF.js} +5 -5
  245. package/dist/{graph-auto-extract-LFXYAEY5.js → graph-auto-extract-3UV2CVSW.js} +6 -6
  246. package/dist/{graph-query-4F4D4NDH.js → graph-query-6HLVU6K6.js} +1 -1
  247. package/dist/{graph-rag-YZNY6Z3H.js → graph-rag-5AMI2SXI.js} +3 -3
  248. package/dist/{hook-integrity-KNCDGZUD.js → hook-integrity-OYI2N5RC.js} +1 -1
  249. package/dist/{hook-prefetch-ZBUCJBJB.js → hook-prefetch-JV5HG7BJ.js} +18 -18
  250. package/dist/hooks/bug-report-worker.js +22 -22
  251. package/dist/hooks/codex-stop-task-finalizer.js +24 -24
  252. package/dist/hooks/commit-complete.js +22 -22
  253. package/dist/hooks/error-recall.js +11 -11
  254. package/dist/hooks/exe-heartbeat-hook.js +5 -5
  255. package/dist/hooks/ingest-worker.js +7 -7
  256. package/dist/hooks/ingest.js +13 -13
  257. package/dist/hooks/instructions-loaded.js +7 -7
  258. package/dist/hooks/manifest.json +20 -20
  259. package/dist/hooks/notification.js +6 -6
  260. package/dist/hooks/post-compact.js +5 -5
  261. package/dist/hooks/post-tool-combined.js +13 -13
  262. package/dist/hooks/pre-compact.js +21 -21
  263. package/dist/hooks/pre-tool-use.js +2 -2
  264. package/dist/hooks/prompt-submit.js +39 -39
  265. package/dist/hooks/session-end.js +26 -26
  266. package/dist/hooks/session-start.js +18 -18
  267. package/dist/hooks/stop.js +24 -24
  268. package/dist/hooks/subagent-stop.js +23 -23
  269. package/dist/hooks/summary-worker.js +25 -25
  270. package/dist/index.js +29 -29
  271. package/dist/{installer-MABZRBTF.js → installer-LY3KOTTY.js} +7 -7
  272. package/dist/{installer-ZWGREGIY.js → installer-X3WJPT5P.js} +7 -7
  273. package/dist/{installer-TNTAEKCO.js → installer-Y5OURERO.js} +7 -7
  274. package/dist/{intercom-queue-UHL4MXLB.js → intercom-queue-5LBDKW7T.js} +17 -17
  275. package/dist/lib/cloud-sync.js +17 -17
  276. package/dist/lib/consolidation.js +9 -9
  277. package/dist/lib/crypto.js +3 -3
  278. package/dist/lib/database.js +3 -3
  279. package/dist/lib/db-backup.js +1 -1
  280. package/dist/lib/db-write-worker.js +3 -3
  281. package/dist/lib/db.js +3 -3
  282. package/dist/lib/device-registry.js +1 -1
  283. package/dist/lib/employee-templates.js +6 -6
  284. package/dist/lib/employees.js +3 -3
  285. package/dist/lib/exe-daemon.js +90 -90
  286. package/dist/lib/hybrid-search.js +9 -9
  287. package/dist/lib/identity.js +3 -3
  288. package/dist/lib/keychain.js +1 -1
  289. package/dist/lib/license.js +3 -3
  290. package/dist/lib/messaging.js +18 -18
  291. package/dist/lib/post-tool-memory.js +5 -5
  292. package/dist/lib/registry-proxy.js +1 -1
  293. package/dist/lib/reminders.js +4 -4
  294. package/dist/lib/schedules.js +8 -8
  295. package/dist/lib/session-registry.js +5 -5
  296. package/dist/lib/skill-learning.js +9 -9
  297. package/dist/lib/store.js +7 -7
  298. package/dist/lib/task-router.js +4 -4
  299. package/dist/lib/tasks.js +19 -19
  300. package/dist/lib/tmux-routing.js +17 -17
  301. package/dist/lib/token-spend.js +4 -4
  302. package/dist/lib/workflow-drift.js +270 -0
  303. package/dist/lib/ws-client.js +1 -1
  304. package/dist/{license-gate-PJVMRJFR.js → license-gate-ZENWFXPR.js} +4 -4
  305. package/dist/{license-recheck-5PXGSCSR.js → license-recheck-J2I5LOY6.js} +1 -1
  306. package/dist/{license-sync-YCV3GMHN.js → license-sync-Y5JLOYTI.js} +3 -3
  307. package/dist/mcp/register-tools.js +100 -99
  308. package/dist/mcp/server.js +100 -99
  309. package/dist/mcp/tools/complete-reminder.js +5 -5
  310. package/dist/mcp/tools/create-reminder.js +5 -5
  311. package/dist/mcp/tools/create-task.js +21 -21
  312. package/dist/mcp/tools/deactivate-behavior.js +10 -10
  313. package/dist/mcp/tools/list-reminders.js +5 -5
  314. package/dist/mcp/tools/list-tasks.js +21 -21
  315. package/dist/mcp/tools/send-message.js +20 -20
  316. package/dist/mcp/tools/update-task.js +20 -20
  317. package/dist/{mcp-http-config-TZLMIQDV.js → mcp-http-config-CQDHUBEL.js} +5 -5
  318. package/dist/{mcp-session-identity-FQUOB5SF.js → mcp-session-identity-5P4KAHTQ.js} +17 -17
  319. package/dist/{memory-cards-BH53SM42.js → memory-cards-XYZQ5J5T.js} +7 -7
  320. package/dist/{memory-graph-extractor-I6WXM5IC.js → memory-graph-extractor-K57UAS52.js} +7 -7
  321. package/dist/{memory-maintenance-CD2PUBDK.js → memory-maintenance-BF6DEY23.js} +1 -1
  322. package/dist/{memory-poisoning-defense-CC6RGH6M.js → memory-poisoning-defense-DRJOUPIL.js} +3 -3
  323. package/dist/{memory-pressure-watchdog-CDEOMXDR.js → memory-pressure-watchdog-6EVWGJ6K.js} +18 -18
  324. package/dist/{memory-reflection-VXFXG55L.js → memory-reflection-3TX3U2RP.js} +7 -7
  325. package/dist/{memory-write-repository-NLQLH4UL.js → memory-write-repository-IXUYUMAK.js} +1 -1
  326. package/dist/{monitor-grants-6VWM3J3S.js → monitor-grants-BTAWMLRU.js} +3 -3
  327. package/dist/{monitor-identity-YPFRT4AT.js → monitor-identity-VZDTHQDS.js} +2 -2
  328. package/dist/{notification-ledger-2GIT6AZ7.js → notification-ledger-FQ5FE6H2.js} +18 -18
  329. package/dist/{notifications-LHDV4WKP.js → notifications-4NV4X5US.js} +17 -17
  330. package/dist/{orchestration-events-ABHTWWN4.js → orchestration-events-J6MGN7BL.js} +4 -4
  331. package/dist/{orchestrator-N7FCY6H2.js → orchestrator-3RAP4BIW.js} +19 -19
  332. package/dist/{org-brief-session-O6YNFSX3.js → org-brief-session-S5TVA7ZS.js} +15 -15
  333. package/dist/{org-consent-policy-FJH3KTAL.js → org-consent-policy-EBTTGC7A.js} +5 -5
  334. package/dist/{org-join-55WN6YRL.js → org-join-WLATMHMH.js} +11 -11
  335. package/dist/{org-key-admin-FFMICGMY.js → org-key-admin-KJBO4TMT.js} +13 -13
  336. package/dist/{org-key-epoch-RKOF3H2A.js → org-key-epoch-5E7OFFY5.js} +5 -5
  337. package/dist/{org-key-pin-SMZS3GE3.js → org-key-pin-YHWVAB4F.js} +3 -3
  338. package/dist/{org-membership-7VBJJBGO.js → org-membership-PGATG3HH.js} +4 -4
  339. package/dist/{org-partner-config-7LOXIBW5.js → org-partner-config-I6RTWJYD.js} +8 -8
  340. package/dist/{org-partner-runtime-CIFSQNOI.js → org-partner-runtime-CSKMXXHT.js} +15 -15
  341. package/dist/{org-row-visibility-EBN7EI6C.js → org-row-visibility-ZK3OLJ67.js} +1 -1
  342. package/dist/{pipeline-router-VETNF3MF.js → pipeline-router-A3LVNWB6.js} +4 -4
  343. package/dist/{plan-limits-7NDDDRHR.js → plan-limits-3XZY7F72.js} +7 -7
  344. package/dist/{pre-tool-use-impl-GIVQWE6Q.js → pre-tool-use-impl-DNACKCTW.js} +33 -33
  345. package/dist/{project-name-5D6ZQNAY.js → project-name-2TTGTGEQ.js} +4 -4
  346. package/dist/{projection-worker-4BB4ZN3S.js → projection-worker-WW7T7QN2.js} +2 -2
  347. package/dist/{prospective-memory-WUK4ZEVR.js → prospective-memory-44J6PINA.js} +3 -3
  348. package/dist/{push-notifications-UZQLJGEY.js → push-notifications-XXJDSJA6.js} +18 -18
  349. package/dist/{reproject-worktree-memories-XFUKN3ZC.js → reproject-worktree-memories-DVAR2CSE.js} +17 -17
  350. package/dist/{reranker-6F6Y7QHA.js → reranker-4LFGA2X5.js} +1 -1
  351. package/dist/{retrieval-health-SCFZCV7Q.js → retrieval-health-OMOG6DVF.js} +2 -2
  352. package/dist/{review-polling-CFDLKJE4.js → review-polling-EX2WCR5V.js} +18 -18
  353. package/dist/runtime/index.js +21 -21
  354. package/dist/{seat-benefit-VDQJYJOB.js → seat-benefit-YEUQBNCS.js} +2 -2
  355. package/dist/{session-events-4SCVQUMA.js → session-events-Z5XJD4R3.js} +18 -18
  356. package/dist/{session-kill-telemetry-OBBCVT3O.js → session-kill-telemetry-UYQ5H3XQ.js} +18 -18
  357. package/dist/{session-scope-LDRY5PBO.js → session-scope-NUWMURJ7.js} +17 -17
  358. package/dist/{setup-wizard-LS6BNHYK.js → setup-wizard-BP4FM3SE.js} +2 -2
  359. package/dist/{shard-manager-7X42DNFE.js → shard-manager-FIMZLYAN.js} +2 -2
  360. package/dist/{skill-refinement-B4EGDBE2.js → skill-refinement-YRTPOCTT.js} +4 -4
  361. package/dist/{skill-retrieval-2ZHX6EQZ.js → skill-retrieval-WEGXROXO.js} +11 -11
  362. package/dist/{skill-usage-DO6M6W5E.js → skill-usage-7HHQGIMF.js} +4 -4
  363. package/dist/{stack-generate-manifest-H2YBCYRW.js → stack-generate-manifest-NWBAQUC6.js} +5 -5
  364. package/dist/{stack-promote-WOATPAGM.js → stack-promote-NV2ZQEVL.js} +5 -5
  365. package/dist/{stack-release-BAD4BTHF.js → stack-release-IPOLLLJH.js} +6 -11
  366. package/dist/{stack-update-H3YXPL7Z.js → stack-update-5LT2U7IP.js} +4 -4
  367. package/dist/{steward-gate-T2XM2NE4.js → steward-gate-BY7R6PJI.js} +4 -4
  368. package/dist/{subagent-brief-injection-5B2XWRZI.js → subagent-brief-injection-MHQEC6VS.js} +28 -28
  369. package/dist/{support-bug-actions-GQYF373N.js → support-bug-actions-QIJETJW5.js} +4 -4
  370. package/dist/{support-inbox-WYWKDLFI.js → support-inbox-YGGVORLU.js} +14 -14
  371. package/dist/{task-enforcement-IIWZPEHF.js → task-enforcement-IRFSPSN3.js} +18 -18
  372. package/dist/{task-request-inbox-GYK2XLSB.js → task-request-inbox-3JRUEHQ5.js} +5 -5
  373. package/dist/{task-scope-YHXKRO2Y.js → task-scope-Q4GALTXQ.js} +17 -17
  374. package/dist/{tasks-crud-BHG6IQ5Z.js → tasks-crud-EPCTLLQ3.js} +17 -17
  375. package/dist/{tasks-notify-PX22TSMC.js → tasks-notify-B6ORX32W.js} +18 -18
  376. package/dist/{tasks-review-6BPGUXJB.js → tasks-review-6MXUAHHW.js} +17 -17
  377. package/dist/{telemetry-upload-HCV4KRB6.js → telemetry-upload-HQEFD3C5.js} +9 -9
  378. package/dist/{token-budget-YVIX2L2Y.js → token-budget-WD3O2E67.js} +4 -4
  379. package/dist/{tool-telemetry-JWI2CHI3.js → tool-telemetry-WRQUOLQX.js} +1 -1
  380. package/dist/tui/App.js +27 -27
  381. package/dist/{tui-data-E5EA34WJ.js → tui-data-F4MEUKAG.js} +21 -21
  382. package/dist/{update-support-JCUIC5J2.js → update-support-UXAVIPYK.js} +12 -12
  383. package/dist/{whatsapp-XRTRUPFR.js → whatsapp-OXW4DIHE.js} +2 -2
  384. package/dist/{wiki-acl-PKJLSR6U.js → wiki-acl-J564J7MH.js} +1 -1
  385. package/dist/{work-claims-BB6S6QU5.js → work-claims-AURJKQOJ.js} +4 -4
  386. package/dist/{work-state-heartbeat-O2SS2VWD.js → work-state-heartbeat-KS3XNIJW.js} +1 -1
  387. package/dist/{workflow-engine-XWQS7VBY.js → workflow-engine-TSLIUTU2.js} +2 -2
  388. package/dist/{worktree-F3TKPS5Z.js → worktree-4YARVREJ.js} +5 -5
  389. package/dist/{worktree-sweep-OF4ST7IR.js → worktree-sweep-XMESZYDA.js} +10 -6
  390. package/package.json +2 -1
  391. package/release-notes.json +34 -7
  392. package/stack.release.json +3 -3
  393. /package/dist/{chunk-GNFWZ2MA.js → chunk-2WJDZ7ZL.js} +0 -0
  394. /package/dist/{chunk-W3DHPCFX.js → chunk-5RIIZINL.js} +0 -0
  395. /package/dist/{chunk-CULFTILF.js → chunk-7SQPOOQI.js} +0 -0
  396. /package/dist/{chunk-NRR6VAG2.js → chunk-A65MJS3O.js} +0 -0
  397. /package/dist/{chunk-4D7SDPAB.js → chunk-CZ3RYFNL.js} +0 -0
  398. /package/dist/{chunk-XDZWSK3F.js → chunk-DTQF6UBE.js} +0 -0
  399. /package/dist/{chunk-MFRU5TLH.js → chunk-IPJRMBYC.js} +0 -0
  400. /package/dist/{chunk-MQNHXT54.js → chunk-J6UCIUPI.js} +0 -0
  401. /package/dist/{chunk-I3F7MGSI.js → chunk-JCV4UPMD.js} +0 -0
  402. /package/dist/{chunk-W7S7AEVC.js → chunk-K2ETALNO.js} +0 -0
  403. /package/dist/{chunk-KY5XPFMA.js → chunk-OJG6S5OI.js} +0 -0
  404. /package/dist/{chunk-CEPUA7JC.js → chunk-R75Z5WXN.js} +0 -0
  405. /package/dist/{chunk-PKPJ62VF.js → chunk-ZXMOTEQE.js} +0 -0
  406. /package/dist/{core-memory-Z4FUMYA6.js → core-memory-SKTPW67X.js} +0 -0
  407. /package/dist/{memory-isolation-PDFRPDVY.js → memory-isolation-XXQUEA6Z.js} +0 -0
  408. /package/dist/{oauth-server-TM5XWRX3.js → oauth-server-XD33YOXG.js} +0 -0
  409. /package/dist/{project-boot-VFW3KDOY.js → project-boot-H2RD4NGX.js} +0 -0
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  getMasterKey
3
- } from "./chunk-5AGOX2XD.js";
3
+ } from "./chunk-ZFJ2KQNY.js";
4
4
 
5
5
  // src/lib/partner-sign-identity.ts
6
6
  import crypto from "crypto";
@@ -3,16 +3,16 @@ import {
3
3
  getClient,
4
4
  isInitialized,
5
5
  loadEmployees
6
- } from "./chunk-DXQIIZQC.js";
6
+ } from "./chunk-UYU25KCR.js";
7
7
  import {
8
8
  checkLicense,
9
9
  isFeatureAllowed,
10
10
  readPersonalFreeGrandfatherState,
11
11
  resolveClientLimits
12
- } from "./chunk-6VMVQ3G7.js";
12
+ } from "./chunk-VX7I5XT6.js";
13
13
  import {
14
14
  PLAN_LIMITS
15
- } from "./chunk-A7XLR3K7.js";
15
+ } from "./chunk-3R7UDPVR.js";
16
16
  import {
17
17
  EXE_AI_DIR
18
18
  } from "./chunk-MMS2HBRT.js";
@@ -8,7 +8,7 @@ import {
8
8
  import {
9
9
  loadLicense,
10
10
  readCachedLicenseToken
11
- } from "./chunk-6VMVQ3G7.js";
11
+ } from "./chunk-VX7I5XT6.js";
12
12
  import {
13
13
  EXE_AI_DIR,
14
14
  loadConfig
@@ -33,8 +33,7 @@ function composeSeatLimits(personalPlan, seatPlan) {
33
33
  devices: conferred.devices,
34
34
  memories: conferred.memories,
35
35
  storageBytes: conferred.storageBytes,
36
- // NOT conferred.employees. See SEAT_EXCLUDED_AXES.
37
- employees: personal.employees
36
+ employees: conferred.employees
38
37
  };
39
38
  }
40
39
 
@@ -2,7 +2,7 @@ import {
2
2
  dispatchTaskToEmployee,
3
3
  markTaskNotificationsRead,
4
4
  notifyTaskDone
5
- } from "./chunk-IVGAATAY.js";
5
+ } from "./chunk-YQ7V5UGG.js";
6
6
  import {
7
7
  clearCurrentTask,
8
8
  writeCurrentTask
@@ -19,7 +19,7 @@ import {
19
19
  strictSessionScopeFilter,
20
20
  updateTaskStatus,
21
21
  writeNotification
22
- } from "./chunk-V4RIHICU.js";
22
+ } from "./chunk-7QYXNSKT.js";
23
23
  import {
24
24
  getAgentContext
25
25
  } from "./chunk-GJV3WDWM.js";
@@ -30,7 +30,7 @@ import {
30
30
  getClient,
31
31
  getCoordinatorName,
32
32
  isCoordinatorName
33
- } from "./chunk-DXQIIZQC.js";
33
+ } from "./chunk-UYU25KCR.js";
34
34
  import {
35
35
  isAutonomousTmuxSpawnEnabled
36
36
  } from "./chunk-MMS2HBRT.js";
@@ -85,7 +85,7 @@ async function cascadeUnblock(taskId, baseDir, now) {
85
85
  if (unblockedRows.rows.length > 0 && !process.env.VITEST) {
86
86
  const autonomousSpawnAllowed = isAutonomousTmuxSpawnEnabled();
87
87
  try {
88
- const { dispatchTaskToEmployee: dispatchTaskToEmployee2 } = await import("./tasks-notify-PX22TSMC.js");
88
+ const { dispatchTaskToEmployee: dispatchTaskToEmployee2 } = await import("./tasks-notify-B6ORX32W.js");
89
89
  const dispatched = /* @__PURE__ */ new Set();
90
90
  for (const ur of unblockedRows.rows) {
91
91
  if (!unblockedRowMayAutoDispatch(ur, autonomousSpawnAllowed)) continue;
@@ -97,7 +97,7 @@ async function cascadeUnblock(taskId, baseDir, now) {
97
97
  }
98
98
  } catch {
99
99
  try {
100
- const { queueIntercom } = await import("./intercom-queue-UHL4MXLB.js");
100
+ const { queueIntercom } = await import("./intercom-queue-5LBDKW7T.js");
101
101
  const dispatched = /* @__PURE__ */ new Set();
102
102
  for (const ur of unblockedRows.rows) {
103
103
  if (!unblockedRowIsDurableTmux(ur)) continue;
@@ -313,7 +313,7 @@ async function updateTask(input, deps = {}) {
313
313
  try {
314
314
  process.stderr.write(`[tasks] EVENT: tmux delivery failed for reviewer="${reviewer}". Queueing for daemon delivery.
315
315
  `);
316
- const { queueIntercom } = await import("./intercom-queue-UHL4MXLB.js");
316
+ const { queueIntercom } = await import("./intercom-queue-5LBDKW7T.js");
317
317
  const { resolveExeSession } = await import("./lib/tmux-routing.js");
318
318
  const exeSession = row.session_scope ? String(row.session_scope) : resolveExeSession();
319
319
  if (exeSession) {
@@ -330,7 +330,7 @@ async function updateTask(input, deps = {}) {
330
330
  }
331
331
  }
332
332
  try {
333
- const { pushNotifyAsync } = await import("./push-notifications-UZQLJGEY.js");
333
+ const { pushNotifyAsync } = await import("./push-notifications-XXJDSJA6.js");
334
334
  pushNotifyAsync({
335
335
  event: "review_ready",
336
336
  title: `Review ready: ${taskTitle.slice(0, 50)}`,
@@ -342,7 +342,7 @@ async function updateTask(input, deps = {}) {
342
342
  }
343
343
  if (isLegacyExecution && !isCoordinator && isCompletionReviewTransition) {
344
344
  try {
345
- const { pushNotifyAsync } = await import("./push-notifications-UZQLJGEY.js");
345
+ const { pushNotifyAsync } = await import("./push-notifications-XXJDSJA6.js");
346
346
  const event = input.status === "needs_review" ? "review_ready" : "task_complete";
347
347
  pushNotifyAsync({
348
348
  event,
@@ -357,7 +357,7 @@ async function updateTask(input, deps = {}) {
357
357
  await markTaskNotificationsRead(taskFile);
358
358
  if (isLegacyExecution && isCompletionReviewTransition && !isCoordinator && row.reviewer) {
359
359
  try {
360
- const { writeNotification: writeNotification2 } = await import("./notifications-LHDV4WKP.js");
360
+ const { writeNotification: writeNotification2 } = await import("./notifications-4NV4X5US.js");
361
361
  const reviewer = String(row.reviewer);
362
362
  await writeNotification2({
363
363
  agentId: reviewer,
@@ -10,10 +10,10 @@ import {
10
10
  } from "./chunk-VGMACSEV.js";
11
11
  import {
12
12
  WORK_STATE_HEARTBEAT_TOOL
13
- } from "./chunk-I3F7MGSI.js";
13
+ } from "./chunk-JCV4UPMD.js";
14
14
  import {
15
15
  hashMemoryContent
16
- } from "./chunk-MQNHXT54.js";
16
+ } from "./chunk-J6UCIUPI.js";
17
17
 
18
18
  // src/lib/graph-rag.ts
19
19
  import crypto from "crypto";
@@ -1,18 +1,18 @@
1
1
  import {
2
2
  updateTask
3
- } from "./chunk-L2AUCHHJ.js";
3
+ } from "./chunk-4VD4CIHX.js";
4
4
  import {
5
5
  TASK_ALREADY_CLAIMED_PREFIX,
6
6
  TASK_CLAIM_NOT_HELD_PREFIX,
7
7
  TASK_PR_TRACEABILITY_REQUIRED_PREFIX,
8
8
  TASK_SIDECHAIN_WRITE_BLOCKED_PREFIX
9
- } from "./chunk-V4RIHICU.js";
9
+ } from "./chunk-7QYXNSKT.js";
10
10
  import {
11
11
  getAgentContext
12
12
  } from "./chunk-GJV3WDWM.js";
13
13
  import {
14
14
  isCoordinatorName
15
- } from "./chunk-DXQIIZQC.js";
15
+ } from "./chunk-UYU25KCR.js";
16
16
 
17
17
  // src/mcp/tools/update-task.ts
18
18
  import { z } from "zod";
@@ -75,7 +75,7 @@ function registerUpdateTask(server) {
75
75
  let callerSession;
76
76
  let callerIsSidechain = false;
77
77
  try {
78
- const { getActiveAgent: getAgent } = await import("./active-agent-7OKWCTDR.js");
78
+ const { getActiveAgent: getAgent } = await import("./active-agent-5DC75ZP3.js");
79
79
  const active = getAgent();
80
80
  callerAgentId = active.agentId;
81
81
  callerSession = resolveCallerSessionForUpdate();
@@ -38,26 +38,52 @@ var NO_DB_INTEGRITY_EVENTS = Object.freeze({
38
38
  lastLowDiskSkip: null,
39
39
  lastVerifiedBackup: null,
40
40
  lastProvenBackupOnDisk: null,
41
- provenBackupsAllDeleted: false
41
+ provenBackupsAllDeleted: false,
42
+ readFailure: null
42
43
  });
43
44
  function readLedger() {
45
+ let raw;
44
46
  try {
45
- if (!existsSync(ledgerPath())) return [];
46
- const parsed = JSON.parse(readFileSync(ledgerPath(), "utf-8"));
47
- if (!Array.isArray(parsed)) return [];
48
- return parsed.filter(
49
- (e) => Boolean(e) && typeof e === "object" && typeof e.at === "string"
47
+ raw = readFileSync(ledgerPath(), "utf-8");
48
+ } catch (err) {
49
+ const code = err.code;
50
+ if (code === "ENOENT" || code === "ENOTDIR") return [];
51
+ throw new Error(
52
+ `event ledger ${ledgerPath()} exists but could not be read (${String(code)})`,
53
+ { cause: err }
50
54
  );
51
- } catch {
52
- return [];
53
55
  }
56
+ let parsed;
57
+ try {
58
+ parsed = JSON.parse(raw);
59
+ } catch (err) {
60
+ throw new Error(
61
+ `event ledger ${ledgerPath()} is not readable JSON \u2014 refusing to treat it as an empty history, which would erase every event already on record`,
62
+ { cause: err }
63
+ );
64
+ }
65
+ if (!Array.isArray(parsed)) {
66
+ throw new Error(`event ledger ${ledgerPath()} does not hold an event array`);
67
+ }
68
+ return parsed.filter(
69
+ (e) => Boolean(e) && typeof e === "object" && typeof e.at === "string"
70
+ );
54
71
  }
55
72
  function recordDbIntegrityEvent(event) {
56
73
  try {
57
74
  const dir = path.dirname(ledgerPath());
58
75
  if (!existsSync(dir)) mkdirSync(dir, { recursive: true });
59
76
  const entry = { at: event.at ?? (/* @__PURE__ */ new Date()).toISOString(), ...event };
60
- const events = readLedger();
77
+ let events;
78
+ try {
79
+ events = readLedger();
80
+ } catch (err) {
81
+ process.stderr.write(
82
+ `[exe-os] \u26A0 db-integrity event not recorded: ${err instanceof Error ? err.message : String(err)}. Refusing to rewrite the ledger from an unreadable one.
83
+ `
84
+ );
85
+ return;
86
+ }
61
87
  events.push(entry);
62
88
  writeFileSync(ledgerPath(), JSON.stringify(trimEvents(events), null, 2), "utf-8");
63
89
  } catch {
@@ -91,8 +117,18 @@ function selectLastProvenOnDisk(events, exists = existsSync, dir = backupsDir())
91
117
  }
92
118
  return null;
93
119
  }
120
+ function readLedgerForDiagnostics() {
121
+ try {
122
+ return { events: readLedger(), readFailure: null };
123
+ } catch (err) {
124
+ const message = err instanceof Error ? err.message : String(err);
125
+ process.stderr.write(`[exe-os] \u26A0 db-integrity health unavailable: ${message}.
126
+ `);
127
+ return { events: [], readFailure: message };
128
+ }
129
+ }
94
130
  function getDbIntegrityHealth() {
95
- const events = readLedger();
131
+ const { events, readFailure } = readLedgerForDiagnostics();
96
132
  const countOf = (kind) => events.reduce((n, e) => e.kind === kind ? n + 1 : n, 0);
97
133
  let lastVerifiedBackup = null;
98
134
  for (let i = events.length - 1; i >= 0; i--) {
@@ -125,11 +161,12 @@ function getDbIntegrityHealth() {
125
161
  lastLowDiskSkip,
126
162
  lastVerifiedBackup,
127
163
  lastProvenBackupOnDisk,
128
- provenBackupsAllDeleted: lastVerifiedBackup !== null && lastProvenBackupOnDisk === null
164
+ provenBackupsAllDeleted: lastVerifiedBackup !== null && lastProvenBackupOnDisk === null,
165
+ readFailure
129
166
  };
130
167
  }
131
168
  function listDbIntegrityEvents() {
132
- return readLedger().slice().reverse();
169
+ return readLedgerForDiagnostics().events.slice().reverse();
133
170
  }
134
171
  function getIntegrityLedgerPath() {
135
172
  return ledgerPath();
@@ -2,10 +2,10 @@ import {
2
2
  assessVerificationArtifact,
3
3
  isSubstantiveCommit,
4
4
  measureCommitSubstance
5
- } from "./chunk-ONMKHJJL.js";
5
+ } from "./chunk-RGPEUXOE.js";
6
6
  import {
7
7
  sessionScopeFilter
8
- } from "./chunk-V4RIHICU.js";
8
+ } from "./chunk-7QYXNSKT.js";
9
9
  import {
10
10
  isWithin
11
11
  } from "./chunk-YRUZK2QA.js";
@@ -297,7 +297,7 @@ async function sweepTasks(projectName, options = {}) {
297
297
  }
298
298
  if (!dryRun) {
299
299
  try {
300
- const { updateTaskStatus } = await import("./tasks-crud-BHG6IQ5Z.js");
300
+ const { updateTaskStatus } = await import("./tasks-crud-EPCTLLQ3.js");
301
301
  await updateTaskStatus({
302
302
  taskId: task.id,
303
303
  status: "needs_review",
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  getMasterKey
3
- } from "./chunk-5AGOX2XD.js";
3
+ } from "./chunk-ZFJ2KQNY.js";
4
4
  import {
5
5
  PRIVATE_DIR_MODE,
6
6
  PRIVATE_FILE_MODE,
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  getClient
3
- } from "./chunk-DXQIIZQC.js";
3
+ } from "./chunk-UYU25KCR.js";
4
4
 
5
5
  // src/lib/boot-generation.ts
6
6
  var SYNC_META_KEY = "daemon_boot_generation";
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  getClient
3
- } from "./chunk-DXQIIZQC.js";
3
+ } from "./chunk-UYU25KCR.js";
4
4
 
5
5
  // src/lib/pipeline-router.ts
6
6
  import crypto from "crypto";
@@ -140,8 +140,8 @@ Agent response: ${agentResponse}` : ""
140
140
  }
141
141
  async function sinkEntityExtraction(msg, agentResponse, agentName) {
142
142
  try {
143
- const { extractFromConversation } = await import("./conversation-entity-extractor-VRL2EEZQ.js");
144
- const { storeExtraction } = await import("./graph-rag-YZNY6Z3H.js");
143
+ const { extractFromConversation } = await import("./conversation-entity-extractor-NMXN4MFL.js");
144
+ const { storeExtraction } = await import("./graph-rag-5AMI2SXI.js");
145
145
  if ((msg.text?.length ?? 0) < 20) return false;
146
146
  if (msg.isHistorical) return false;
147
147
  const extraction = await extractFromConversation(msg, agentResponse, agentName);
@@ -3,14 +3,14 @@ import {
3
3
  } from "./chunk-IZWMWJZT.js";
4
4
  import {
5
5
  isGhostBehaviorRow
6
- } from "./chunk-LNCTMU7Y.js";
6
+ } from "./chunk-Q7YT7RGZ.js";
7
7
  import {
8
8
  IdentityConflictError,
9
9
  getClient,
10
10
  getIdentity,
11
11
  listIdentities,
12
12
  updateIdentity
13
- } from "./chunk-DXQIIZQC.js";
13
+ } from "./chunk-UYU25KCR.js";
14
14
  import {
15
15
  atomicWriteJsonSync
16
16
  } from "./chunk-HSGBZSCA.js";
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  ensureAgentSymlink
3
- } from "./chunk-BJ3ZQAIL.js";
3
+ } from "./chunk-DTUQGAD4.js";
4
4
  import {
5
5
  ensureWorktree,
6
6
  ensureWorktreeAsync,
@@ -8,10 +8,15 @@ import {
8
8
  getMainRepoRoot,
9
9
  isInsideGitRepo,
10
10
  isWorktreeDirty
11
- } from "./chunk-UW5KXM4D.js";
11
+ } from "./chunk-RCMXCNMC.js";
12
12
  import {
13
13
  resolveRowVisibility
14
- } from "./chunk-WFKZZSEB.js";
14
+ } from "./chunk-UI5HQJK5.js";
15
+ import {
16
+ LEASE_MINUTES,
17
+ isLeaseExpired,
18
+ leaseExpiryIso
19
+ } from "./chunk-E23LNUWJ.js";
15
20
  import {
16
21
  buildTaskResult,
17
22
  serializeMessage
@@ -26,15 +31,10 @@ import {
26
31
  import {
27
32
  hasIntercomAckAfter
28
33
  } from "./chunk-MJCSEIFI.js";
29
- import {
30
- LEASE_MINUTES,
31
- isLeaseExpired,
32
- leaseExpiryIso
33
- } from "./chunk-E23LNUWJ.js";
34
34
  import {
35
35
  listSessions,
36
36
  registerSession
37
- } from "./chunk-FJPCVXQX.js";
37
+ } from "./chunk-Q6X5EVH5.js";
38
38
  import {
39
39
  getTransport
40
40
  } from "./chunk-VI4ATC6I.js";
@@ -43,7 +43,7 @@ import {
43
43
  } from "./chunk-6L4VIYLZ.js";
44
44
  import {
45
45
  recordOrchestrationEventBestEffort
46
- } from "./chunk-OGJCUMSM.js";
46
+ } from "./chunk-C3CRGIS4.js";
47
47
  import {
48
48
  appendDispatchJournalEvent,
49
49
  releaseDispatchClaim,
@@ -52,7 +52,7 @@ import {
52
52
  } from "./chunk-T5SM4RXY.js";
53
53
  import {
54
54
  incrementSkillSuccess
55
- } from "./chunk-JKUCAMV4.js";
55
+ } from "./chunk-UQDCXE5D.js";
56
56
  import {
57
57
  assertRuntimeModelCompatible,
58
58
  getAgentRuntime,
@@ -62,7 +62,7 @@ import {
62
62
  import {
63
63
  PlanLimitError,
64
64
  assertEmployeeLimitSync
65
- } from "./chunk-KM7M4LKN.js";
65
+ } from "./chunk-3HV3TRBB.js";
66
66
  import {
67
67
  getSessionKey
68
68
  } from "./chunk-CVYC6DUW.js";
@@ -78,7 +78,7 @@ import {
78
78
  } from "./chunk-BTSWFMEH.js";
79
79
  import {
80
80
  getProjectName
81
- } from "./chunk-GHIMWZN4.js";
81
+ } from "./chunk-SQE2PHXK.js";
82
82
  import {
83
83
  expandDualPrefixTools
84
84
  } from "./chunk-HYZV25LY.js";
@@ -103,13 +103,13 @@ import {
103
103
  loadEmployeesSync,
104
104
  offloadReadIfMain,
105
105
  offloadReadQuery
106
- } from "./chunk-DXQIIZQC.js";
106
+ } from "./chunk-UYU25KCR.js";
107
107
  import {
108
108
  RUNTIME_TABLE
109
109
  } from "./chunk-3VW5ZP2F.js";
110
110
  import {
111
111
  loadDeviceId
112
- } from "./chunk-6VMVQ3G7.js";
112
+ } from "./chunk-VX7I5XT6.js";
113
113
  import {
114
114
  EXE_AI_DIR
115
115
  } from "./chunk-MMS2HBRT.js";
@@ -1610,7 +1610,7 @@ async function createTaskCore(input, deps = {}) {
1610
1610
  if (isCoordinatorSession) {
1611
1611
  earlySessionScope = resolved;
1612
1612
  } else {
1613
- const { getSessionProject } = await import("./session-scope-LDRY5PBO.js");
1613
+ const { getSessionProject } = await import("./session-scope-NUWMURJ7.js");
1614
1614
  const sessionProject = getSessionProject(resolved);
1615
1615
  if (sessionProject && sessionProject !== input.projectName) {
1616
1616
  scopeMismatchWarning = `session/project mismatch: session "${resolved}" owns "${sessionProject}" but task targets "${input.projectName}". Routed to default scope.`;
@@ -1880,7 +1880,7 @@ ${scopeMismatchWarning}` : scopeMismatchWarning;
1880
1880
  });
1881
1881
  await writeTaskMarkdownAtomic(mdPath, mdContent);
1882
1882
  try {
1883
- const { injectBehaviors } = await import("./behavior-injection-CHSQWES4.js");
1883
+ const { injectBehaviors } = await import("./behavior-injection-MVL5PXIH.js");
1884
1884
  await injectBehaviors({
1885
1885
  taskFile: mdPath,
1886
1886
  title: input.title,
@@ -1975,7 +1975,7 @@ async function buildTaskRowsStatement(opts) {
1975
1975
  }
1976
1976
  if (opts.founderId !== null) {
1977
1977
  try {
1978
- const { founderScopeFilter } = await import("./founder-context-6Q6OU7Q7.js");
1978
+ const { founderScopeFilter } = await import("./founder-context-2NDDWGSH.js");
1979
1979
  const founderFilter = founderScopeFilter(opts.founderId);
1980
1980
  const cleaned = founderFilter.sql.replace(/^\s*AND\s+/, "");
1981
1981
  conditions.push(cleaned);
@@ -5442,7 +5442,7 @@ async function verifyPaneAtCapacity(sessionName) {
5442
5442
  reason: `capture-pane failed: ${err instanceof Error ? err.message : String(err)}`
5443
5443
  };
5444
5444
  }
5445
- const { isAtCapacity } = await import("./capacity-monitor-TIKUMNDU.js");
5445
+ const { isAtCapacity } = await import("./capacity-monitor-WSRFY3UK.js");
5446
5446
  if (!isAtCapacity(pane)) {
5447
5447
  return {
5448
5448
  atCapacity: false,
@@ -5749,7 +5749,7 @@ async function countScopedPendingReviews(targetSession, reviewer) {
5749
5749
  }
5750
5750
  async function countScopedOpenTasks(targetSession, agentId) {
5751
5751
  try {
5752
- const { fastDbInit } = await import("./fast-db-init-6MQDCHEB.js");
5752
+ const { fastDbInit } = await import("./fast-db-init-SIDYVAXH.js");
5753
5753
  const client = await fastDbInit();
5754
5754
  const scope = extractRootExe(targetSession);
5755
5755
  if (!scope) return 0;
@@ -5806,7 +5806,7 @@ function buildScopedInProgressTaskQuery(targetSession) {
5806
5806
  async function findScopedInProgressTaskId(targetSession) {
5807
5807
  const q = buildScopedInProgressTaskQuery(targetSession);
5808
5808
  if (!q) return null;
5809
- const { fastDbInit } = await import("./fast-db-init-6MQDCHEB.js");
5809
+ const { fastDbInit } = await import("./fast-db-init-SIDYVAXH.js");
5810
5810
  const client = await fastDbInit();
5811
5811
  const result = await client.execute(q);
5812
5812
  const id = result.rows[0]?.id;
@@ -5927,7 +5927,7 @@ function sendIntercom(targetSession, opts) {
5927
5927
  const ledgerEnv = (process.env.EXE_NOTIFICATION_LEDGER ?? "").trim().toLowerCase();
5928
5928
  if (ledgerEnv === "shadow") {
5929
5929
  const ledgerScope = opts && "callerSessionScope" in opts ? opts.callerSessionScope : void 0;
5930
- void import("./notification-ledger-2GIT6AZ7.js").then((m) => m.recordShadowNudge(targetSession, reason, ledgerScope, { force: opts?.force })).catch(() => {
5930
+ void import("./notification-ledger-FQ5FE6H2.js").then((m) => m.recordShadowNudge(targetSession, reason, ledgerScope, { force: opts?.force })).catch(() => {
5931
5931
  });
5932
5932
  }
5933
5933
  if (!opts?.force && isDebounced(targetSession)) {
@@ -6081,7 +6081,7 @@ function scheduleDeferredSpawnNudge(input) {
6081
6081
  return;
6082
6082
  }
6083
6083
  queueIntercom(input.sessionName, `spawn nudge failed after ${attempt} attempts: ${msg}`, "signal");
6084
- void import("./notifications-LHDV4WKP.js").then(({ writeNotification: writeNotification2 }) => writeNotification2({
6084
+ void import("./notifications-4NV4X5US.js").then(({ writeNotification: writeNotification2 }) => writeNotification2({
6085
6085
  agentId: getCoordinatorName(),
6086
6086
  agentRole: "COO",
6087
6087
  event: "error_spike",
@@ -6176,7 +6176,7 @@ async function sendIntercomAsync(targetSession, opts) {
6176
6176
  let ledgerClaim = null;
6177
6177
  if (authoritativeLedger) {
6178
6178
  try {
6179
- const { claimAuthoritativeNudge } = await import("./notification-ledger-2GIT6AZ7.js");
6179
+ const { claimAuthoritativeNudge } = await import("./notification-ledger-FQ5FE6H2.js");
6180
6180
  const claim2 = await claimAuthoritativeNudge(
6181
6181
  targetSession,
6182
6182
  reason,
@@ -6199,7 +6199,7 @@ async function sendIntercomAsync(targetSession, opts) {
6199
6199
  const markLedgerDelivered = async () => {
6200
6200
  if (!ledgerClaim) return;
6201
6201
  try {
6202
- const { markNudgeDelivered } = await import("./notification-ledger-2GIT6AZ7.js");
6202
+ const { markNudgeDelivered } = await import("./notification-ledger-FQ5FE6H2.js");
6203
6203
  await markNudgeDelivered(ledgerClaim.id, ledgerClaim.sessionScope);
6204
6204
  } catch {
6205
6205
  }
@@ -6207,7 +6207,7 @@ async function sendIntercomAsync(targetSession, opts) {
6207
6207
  const markLedgerFailed = async (error) => {
6208
6208
  if (!ledgerClaim) return;
6209
6209
  try {
6210
- const { markNudgeDeliveryFailed } = await import("./notification-ledger-2GIT6AZ7.js");
6210
+ const { markNudgeDeliveryFailed } = await import("./notification-ledger-FQ5FE6H2.js");
6211
6211
  await markNudgeDeliveryFailed(ledgerClaim.id, error, ledgerClaim.sessionScope);
6212
6212
  } catch {
6213
6213
  }