@askexenow/exe-os 0.9.381 → 0.9.383

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 +5 -5
  2. package/deploy/compose/.env.example +3 -3
  3. package/deploy/compose/docker-compose.yml +1 -1
  4. package/deploy/compose/sso-edge/default.conf.template +45 -0
  5. package/deploy/compose/sso-edge/sso-redirect.conf +11 -2
  6. package/deploy/stack-manifests/v0.9.30-apps.json +1 -1
  7. package/deploy/stack-manifests/v0.9.json +254 -2
  8. package/dist/.dist-verified.json +3 -3
  9. package/dist/{active-agent-GZ6O7KKS.js → active-agent-BV4OE3GI.js} +6 -6
  10. package/dist/{active-agent-GE6HDADY.js → active-agent-LFY5P5EX.js} +6 -6
  11. package/dist/{agent-defs-generator-3VHBN56U.js → agent-defs-generator-IC2DVSI4.js} +5 -5
  12. package/dist/{agent-loop-7ZRH56EX.js → agent-loop-GSUZJZBJ.js} +1 -1
  13. package/dist/{agentic-ontology-6X5Z5QPD.js → agentic-ontology-V3PFEFVZ.js} +1 -1
  14. package/dist/{artifact-backup-NYXAYASJ.js → artifact-backup-EXBY3YQS.js} +5 -5
  15. package/dist/{backfill-gate-KWJQ35YX.js → backfill-gate-FWYLCGNJ.js} +3 -3
  16. package/dist/{backfill-metadata-4NI4MZEE.js → backfill-metadata-NTCC7EMS.js} +9 -9
  17. package/dist/{background-jobs-6VMD55PK.js → background-jobs-V3DZRFKU.js} +3 -3
  18. package/dist/{backup-verify-7UQ5PXRZ.js → backup-verify-D3RU5JXC.js} +67 -18
  19. package/dist/{behavior-injection-LZSLBWIF.js → behavior-injection-GWRLUR34.js} +19 -19
  20. package/dist/{behavior-promotion-7IZKCZFC.js → behavior-promotion-YSEL7K5K.js} +18 -18
  21. package/dist/{behaviors-S6MOP2C3.js → behaviors-FHQKACTI.js} +17 -17
  22. package/dist/bin/age-ontology-load.js +3 -3
  23. package/dist/bin/agentic-ontology-backfill.js +11 -11
  24. package/dist/bin/agentic-reflection-backfill.js +12 -12
  25. package/dist/bin/agentic-semantic-label.js +11 -11
  26. package/dist/bin/backfill-conversations.js +15 -15
  27. package/dist/bin/backfill-responses.js +15 -15
  28. package/dist/bin/backfill-vectors.js +21 -21
  29. package/dist/bin/bulk-sync-postgres.js +26 -26
  30. package/dist/bin/cc-doctor.js +15 -15
  31. package/dist/bin/cleanup-stale-review-tasks.js +27 -27
  32. package/dist/bin/cli.js +30 -26
  33. package/dist/bin/deferred-daemon-restart.js +120 -119
  34. package/dist/bin/exe-actions.js +1 -1
  35. package/dist/bin/exe-agent-config.js +5 -5
  36. package/dist/bin/exe-agent.js +22 -22
  37. package/dist/bin/exe-assign.js +17 -17
  38. package/dist/bin/exe-boot.js +54 -54
  39. package/dist/bin/exe-call.js +6 -6
  40. package/dist/bin/exe-cicd.js +38 -8
  41. package/dist/bin/exe-cloud.js +28 -28
  42. package/dist/bin/exe-config-dump.js +5 -5
  43. package/dist/bin/exe-dispatch.js +28 -28
  44. package/dist/bin/exe-doctor.js +10 -10
  45. package/dist/bin/exe-export-behaviors.js +21 -21
  46. package/dist/bin/exe-forget.js +12 -11
  47. package/dist/bin/exe-gateway.js +46 -13
  48. package/dist/bin/exe-grant.js +6 -6
  49. package/dist/bin/exe-healthcheck.js +15 -15
  50. package/dist/bin/exe-heartbeat.js +33 -33
  51. package/dist/bin/exe-kill.js +33 -33
  52. package/dist/bin/exe-launch-agent.js +41 -41
  53. package/dist/bin/exe-mcp.js +8 -8
  54. package/dist/bin/exe-memory-reads.js +9 -9
  55. package/dist/bin/exe-new-employee.js +10 -10
  56. package/dist/bin/exe-os-mcp-proxy.js +8 -8
  57. package/dist/bin/exe-pending-messages.js +28 -28
  58. package/dist/bin/exe-pending-notifications.js +27 -27
  59. package/dist/bin/exe-pending-reviews.js +28 -28
  60. package/dist/bin/exe-rename.js +8 -8
  61. package/dist/bin/exe-review.js +32 -32
  62. package/dist/bin/exe-search.js +11 -10
  63. package/dist/bin/exe-session-cleanup.js +33 -33
  64. package/dist/bin/exe-settings.js +27 -27
  65. package/dist/bin/exe-start-codex.js +27 -27
  66. package/dist/bin/exe-start-opencode.js +25 -25
  67. package/dist/bin/exe-status.js +29 -29
  68. package/dist/bin/exe-support.js +5 -5
  69. package/dist/bin/exe-team.js +6 -6
  70. package/dist/bin/exe-verify-running-images.js +1 -1
  71. package/dist/bin/exe-watchdog.js +7 -7
  72. package/dist/bin/generate-hook-manifest.js +7 -1
  73. package/dist/bin/git-sweep.js +28 -28
  74. package/dist/bin/graph-backfill.js +11 -11
  75. package/dist/bin/graph-export.js +10 -10
  76. package/dist/bin/hooks-cli.js +1 -1
  77. package/dist/bin/import-history.js +14 -14
  78. package/dist/bin/install.js +126 -125
  79. package/dist/bin/intercom-check.js +5 -5
  80. package/dist/bin/mcp-sessions.js +2 -2
  81. package/dist/bin/orchestration-metrics.js +6 -6
  82. package/dist/bin/postgres-agentic-reflection-backfill.js +5 -5
  83. package/dist/bin/postgres-agentic-semantic-backfill.js +4 -4
  84. package/dist/bin/reconcile-backlog.js +2 -2
  85. package/dist/bin/registry-proxy.js +1 -1
  86. package/dist/bin/repair-document-chunks.js +161 -0
  87. package/dist/bin/scan-tasks.js +28 -28
  88. package/dist/bin/setup.js +5 -5
  89. package/dist/bin/shard-migrate.js +10 -10
  90. package/dist/bin/stack-update.js +8 -8
  91. package/dist/bin/update.js +96 -22
  92. package/dist/bin/verify-stack.js +2 -2
  93. package/dist/bin/vps-health-gate.js +1 -1
  94. package/dist/{boot-generation-K5EI6KLP.js → boot-generation-OKYUBE3G.js} +5 -5
  95. package/dist/{boot-review-sections-RNJY5D7E.js → boot-review-sections-KFHON3GW.js} +26 -26
  96. package/dist/{branch-hygiene-QLD77IMJ.js → branch-hygiene-44WLSOZR.js} +2 -2
  97. package/dist/{branding-I6KIMB7F.js → branding-KMWCY5HZ.js} +3 -3
  98. package/dist/build-manifest.json +1111 -1086
  99. package/dist/{capability-cards-G3ZT3KJ5.js → capability-cards-WQHJXAC3.js} +4 -4
  100. package/dist/{capacity-monitor-6P26RG7K.js → capacity-monitor-N2NCT6UR.js} +28 -28
  101. package/dist/{catchup-brief-5TUY3RPB.js → catchup-brief-WDEELMAD.js} +34 -33
  102. package/dist/check-image-pullability-5LAYCKW3.js +306 -0
  103. package/dist/{chunk-GTSWUQFT.js → chunk-2MA6TC4L.js} +1 -1
  104. package/dist/{chunk-WLB5M4VC.js → chunk-2NIURKEP.js} +14 -14
  105. package/dist/{chunk-M7O7TGGU.js → chunk-2NW4LRDU.js} +1 -1
  106. package/dist/{chunk-66J2QLDB.js → chunk-2TPBLZBO.js} +1 -1
  107. package/dist/{chunk-CMU73A3R.js → chunk-2XBBXQLT.js} +12 -4
  108. package/dist/{chunk-DF4V7ME3.js → chunk-36PEAE2S.js} +1 -1
  109. package/dist/{chunk-OX4ELHFB.js → chunk-36Y3O44B.js} +49 -11
  110. package/dist/{chunk-GPJIBLP4.js → chunk-3DAEZILW.js} +1 -1
  111. package/dist/{chunk-O6NASQJQ.js → chunk-3KPJ5URE.js} +1 -1
  112. package/dist/{chunk-I44IJ3TV.js → chunk-3LKQDDJ3.js} +1 -1
  113. package/dist/{chunk-GKK7SSUW.js → chunk-3SWW7CHT.js} +1 -1
  114. package/dist/{chunk-4IACLBN2.js → chunk-3W3PXRTN.js} +6 -6
  115. package/dist/{chunk-PPMGQFLJ.js → chunk-3XY57PKT.js} +2 -2
  116. package/dist/{chunk-ZKJ5S23O.js → chunk-4JF42BVF.js} +8 -8
  117. package/dist/{chunk-TKTEFYPH.js → chunk-4KNZKUDK.js} +3 -3
  118. package/dist/{chunk-ZFAZT3KX.js → chunk-4LYVULBC.js} +8 -8
  119. package/dist/{chunk-2XIMJNWB.js → chunk-4WU2UNXL.js} +1 -1
  120. package/dist/{chunk-OKLZXKO6.js → chunk-53YKDX7M.js} +18 -16
  121. package/dist/{chunk-JEJ6C64A.js → chunk-5AVXGIMQ.js} +3 -3
  122. package/dist/{chunk-IHXW4VUI.js → chunk-5IADGFGR.js} +1 -1
  123. package/dist/{chunk-KL3GZVFJ.js → chunk-5LRIZHMH.js} +34 -16
  124. package/dist/{chunk-VJ76SXBN.js → chunk-5LZYZGRD.js} +1 -1
  125. package/dist/{chunk-CSAK5WHK.js → chunk-642NFHVO.js} +2 -2
  126. package/dist/{chunk-U272MACB.js → chunk-6BBFHDY3.js} +5 -5
  127. package/dist/{chunk-HYXHA4EJ.js → chunk-6H4SQGT4.js} +3 -3
  128. package/dist/{chunk-GQAEAIBH.js → chunk-6MILT557.js} +4 -4
  129. package/dist/{chunk-DYGBOWGB.js → chunk-6ODN2IXS.js} +4 -4
  130. package/dist/{chunk-TX2WJE27.js → chunk-6PAFSV4N.js} +48 -9
  131. package/dist/{chunk-H2T6TFJZ.js → chunk-7I4PNLNR.js} +2 -2
  132. package/dist/{chunk-2GNAHBRD.js → chunk-7M2HH4BN.js} +1 -1
  133. package/dist/{chunk-7RI2CNXJ.js → chunk-7OTR2OET.js} +1 -1
  134. package/dist/{chunk-EQWKSGBY.js → chunk-7TDDSOJQ.js} +4 -4
  135. package/dist/{chunk-23BI4FIU.js → chunk-AB3WZ2LC.js} +1 -1
  136. package/dist/{chunk-EXIMHXHN.js → chunk-AH4X72T6.js} +6 -6
  137. package/dist/{chunk-UB7CHH4B.js → chunk-AITTVLVQ.js} +10 -4
  138. package/dist/{chunk-7BMSBACY.js → chunk-AOFW3H6S.js} +5 -5
  139. package/dist/{chunk-4GZTBLJG.js → chunk-AYOCLUGP.js} +1 -1
  140. package/dist/{chunk-SFUNP5Q6.js → chunk-BEIYEBTU.js} +1 -1
  141. package/dist/{chunk-CKOJP7JI.js → chunk-BKUEPHLH.js} +2 -2
  142. package/dist/{chunk-CAFAVLFW.js → chunk-BOQZXNAW.js} +1 -1
  143. package/dist/{chunk-3PFQKTW3.js → chunk-BZ3YF6MG.js} +1 -1
  144. package/dist/{chunk-XBLUWKRG.js → chunk-BZSV52YR.js} +2 -2
  145. package/dist/{chunk-4F5CNI65.js → chunk-C5ISP5FO.js} +2 -2
  146. package/dist/{chunk-OZLVWDZ3.js → chunk-CCUUMZXU.js} +15 -4
  147. package/dist/{chunk-ZG62LIK3.js → chunk-CIPDQRFO.js} +1 -1
  148. package/dist/{chunk-BVJWGIBA.js → chunk-CMADI6WN.js} +5 -5
  149. package/dist/{chunk-AVMLC2MR.js → chunk-CZKDWW76.js} +94 -15
  150. package/dist/{chunk-KQLTJWK3.js → chunk-DCEHRV3W.js} +3 -3
  151. package/dist/{chunk-HELW3SV2.js → chunk-DJFM6JCJ.js} +3 -3
  152. package/dist/{chunk-V3WLC5TJ.js → chunk-DRTJCG6B.js} +1 -1
  153. package/dist/{chunk-PSWGRTUP.js → chunk-DV6W44ZY.js} +1 -1
  154. package/dist/{chunk-KBR5LIWD.js → chunk-DZ3VKZ3C.js} +1 -1
  155. package/dist/{chunk-6V33K5VX.js → chunk-ECQ6KVVW.js} +1 -1
  156. package/dist/{chunk-RLIHHSIY.js → chunk-ERF6YZQA.js} +2 -2
  157. package/dist/{chunk-5DE75FKS.js → chunk-ETIVP2P6.js} +4 -4
  158. package/dist/{chunk-VOBQG46I.js → chunk-EWGUFJ7F.js} +6 -6
  159. package/dist/{chunk-JZGMDMN7.js → chunk-EYZKJY7K.js} +56 -38
  160. package/dist/{chunk-DWA7QET3.js → chunk-F5DBJXTB.js} +3 -3
  161. package/dist/{chunk-FNEZ4BWT.js → chunk-FEU6QEEL.js} +1 -1
  162. package/dist/{chunk-GODDBYPL.js → chunk-FPAPXMJA.js} +105 -29
  163. package/dist/chunk-FSI7PM76.js +219 -0
  164. package/dist/{chunk-UWX6MMCX.js → chunk-GK6V6AZ3.js} +1 -1
  165. package/dist/{chunk-DNP6Z7FD.js → chunk-GOOLWD2J.js} +9 -9
  166. package/dist/{chunk-6EDL7IV2.js → chunk-HBMATN75.js} +4 -4
  167. package/dist/{chunk-4IK2K3B3.js → chunk-HME6ITKV.js} +1 -1
  168. package/dist/{chunk-CLXDTM6D.js → chunk-HPJ5PHDG.js} +237 -11
  169. package/dist/{chunk-7THUQU44.js → chunk-HU36JAK4.js} +1 -1
  170. package/dist/{chunk-7KXJ2Y5G.js → chunk-IPA6VOZE.js} +2 -2
  171. package/dist/{chunk-W4EZ5RSQ.js → chunk-JGNEGWQD.js} +2 -2
  172. package/dist/{chunk-HWPKB52A.js → chunk-K4BA46H4.js} +3 -3
  173. package/dist/{chunk-YG5JKDTX.js → chunk-KG3SL2VF.js} +2 -2
  174. package/dist/{chunk-S25C5FPP.js → chunk-KHGFI43T.js} +2 -2
  175. package/dist/{chunk-DVMOZPMN.js → chunk-KHJAE3DF.js} +9 -9
  176. package/dist/{chunk-QV5CQLQH.js → chunk-L2PBBNKH.js} +1 -1
  177. package/dist/{chunk-GZOG2MAX.js → chunk-L5EPGGDP.js} +1 -1
  178. package/dist/{chunk-W5MCOZTW.js → chunk-LFUBEHFW.js} +12 -2
  179. package/dist/{chunk-IXPDII4H.js → chunk-LPBWEQOY.js} +26 -16
  180. package/dist/{chunk-JKOC2L6P.js → chunk-MCFEV74P.js} +1 -1
  181. package/dist/{chunk-JRHLVN6K.js → chunk-MKDZQ5ZA.js} +1 -1
  182. package/dist/{chunk-ZIG7VPJV.js → chunk-MMS2HBRT.js} +15 -3
  183. package/dist/{chunk-K4ESASPL.js → chunk-MUCNYSJP.js} +1 -1
  184. package/dist/{chunk-OKHCISVQ.js → chunk-NDN3ZMCW.js} +2 -2
  185. package/dist/{chunk-DLG6YKHQ.js → chunk-NKNAKGTM.js} +3 -3
  186. package/dist/{chunk-3SXHEQ7X.js → chunk-NPXIS2RY.js} +1 -1
  187. package/dist/{chunk-A2HKHDVO.js → chunk-NRHFYGQH.js} +1 -1
  188. package/dist/{chunk-ZONICSKY.js → chunk-NUAVPYBH.js} +1 -1
  189. package/dist/{chunk-B2324KTU.js → chunk-O5LDG2AV.js} +39 -15
  190. package/dist/{chunk-HIVOLPLD.js → chunk-OAFENIHN.js} +1 -1
  191. package/dist/{chunk-GPUOUUHA.js → chunk-PCV52RYM.js} +1 -1
  192. package/dist/{chunk-MP4ST7RO.js → chunk-PJ2ZJUM2.js} +51 -11
  193. package/dist/{chunk-7UH2JWBF.js → chunk-PWYSCKTX.js} +47 -4
  194. package/dist/{chunk-PL6FWDSB.js → chunk-PYMLQINV.js} +3 -3
  195. package/dist/{chunk-VMEZNP7H.js → chunk-Q5O2ER4U.js} +3 -3
  196. package/dist/{chunk-IPHLUZ37.js → chunk-QHMIXDIA.js} +2 -2
  197. package/dist/{chunk-HESUCM6A.js → chunk-QZW4T3GM.js} +1 -1
  198. package/dist/{chunk-TGMCTZVW.js → chunk-R3SPFIPE.js} +1 -1
  199. package/dist/{chunk-MGLY2HRK.js → chunk-R5PL432W.js} +2 -2
  200. package/dist/{chunk-5QCIWWFA.js → chunk-RJXOPNXY.js} +15 -1
  201. package/dist/{chunk-NQYXSLEM.js → chunk-RLIZUOTN.js} +28 -16
  202. package/dist/{chunk-PUQI4R46.js → chunk-RNECR5Z6.js} +1 -1
  203. package/dist/{chunk-7HLJ4BSF.js → chunk-RQBGLL3Z.js} +2 -2
  204. package/dist/{chunk-BL6FTJ4R.js → chunk-RXA2LNTL.js} +4 -4
  205. package/dist/{chunk-WATC3K3F.js → chunk-S3G7LJDK.js} +1 -1
  206. package/dist/{chunk-PAVF2CXV.js → chunk-S3XJ2C44.js} +1 -1
  207. package/dist/{chunk-NBYX3Y4Y.js → chunk-S5OL3HXO.js} +1 -1
  208. package/dist/{chunk-4CWPMTPV.js → chunk-S6STQE5T.js} +4 -4
  209. package/dist/{chunk-FX7VMFWS.js → chunk-SC2TRT6S.js} +1 -1
  210. package/dist/{chunk-PHBU4LGO.js → chunk-SNHYZYGZ.js} +1 -1
  211. package/dist/{chunk-CURJYC3V.js → chunk-SQ7QYLO3.js} +2 -2
  212. package/dist/{chunk-3UFGISID.js → chunk-SVFKV7QN.js} +2 -2
  213. package/dist/{chunk-XN5AN3JP.js → chunk-T3KBSR4O.js} +10 -10
  214. package/dist/{chunk-QV4YQQAH.js → chunk-T7EM74XC.js} +21 -5
  215. package/dist/{chunk-ME3SE5HB.js → chunk-TLXFEIBQ.js} +46 -21
  216. package/dist/{chunk-RUWXKXUQ.js → chunk-TNUTMT3J.js} +3 -3
  217. package/dist/{chunk-UVM3HYIC.js → chunk-TTLPYAM7.js} +96 -22
  218. package/dist/{chunk-RFPMXR6B.js → chunk-U4GMOT4M.js} +1 -1
  219. package/dist/{chunk-G3RANZRO.js → chunk-UGV5PUQR.js} +2 -2
  220. package/dist/{chunk-DN24VTS5.js → chunk-USRMWZHH.js} +1 -1
  221. package/dist/{chunk-SFFYGYET.js → chunk-UW22NW2B.js} +3 -3
  222. package/dist/{chunk-WJC6AAJN.js → chunk-V3F4FWDN.js} +2 -2
  223. package/dist/{chunk-ATKH4YHE.js → chunk-VTN2S7NH.js} +3 -3
  224. package/dist/{chunk-TG6UC6OC.js → chunk-W67YI7WP.js} +1 -1
  225. package/dist/{chunk-YZCVZT67.js → chunk-W6BFHT5C.js} +110 -26
  226. package/dist/{chunk-RV2FFCDS.js → chunk-WHQQT5XN.js} +1 -1
  227. package/dist/{chunk-S7W5WHKI.js → chunk-WSEI3KH4.js} +103 -31
  228. package/dist/{chunk-6WWNK7UX.js → chunk-WVY5SSAG.js} +1 -1
  229. package/dist/{chunk-SJNKMUXK.js → chunk-WY7K2GNY.js} +16 -16
  230. package/dist/{chunk-PAETAECN.js → chunk-XD6D4RNQ.js} +1 -1
  231. package/dist/{chunk-UZDF6FLJ.js → chunk-XHU3KOKJ.js} +1 -1
  232. package/dist/{chunk-PHXRUJXH.js → chunk-XK352OKY.js} +2 -2
  233. package/dist/{chunk-PNFUHLNT.js → chunk-XP6ZSSZ6.js} +1 -1
  234. package/dist/{chunk-M64Y62AR.js → chunk-YFP7LPOG.js} +5 -5
  235. package/dist/{chunk-5WCRSUOT.js → chunk-YSNN626O.js} +1 -1
  236. package/dist/{chunk-WH25C4IE.js → chunk-YVVD25YI.js} +1 -1
  237. package/dist/{chunk-QRYZRLIF.js → chunk-YWHLC4VZ.js} +326 -238
  238. package/dist/{chunk-VYSHZB7N.js → chunk-Z5QBRLWR.js} +40 -4
  239. package/dist/{chunk-PTY2N23C.js → chunk-ZE2GXNVJ.js} +1 -1
  240. package/dist/{chunk-2P5B4PMY.js → chunk-ZGTA4TXQ.js} +5 -5
  241. package/dist/{chunk-VLOVI6EW.js → chunk-ZHWE25YW.js} +1 -1
  242. package/dist/{chunk-BRPO6GOH.js → chunk-ZJDTQFY6.js} +2 -2
  243. package/dist/{chunk-JMNPPQEM.js → chunk-ZTOBDVKB.js} +1 -1
  244. package/dist/{chunk-W7ZGTTHN.js → chunk-ZU5RWVNU.js} +3 -3
  245. package/dist/{chunk-MAOKR5AL.js → chunk-ZVPVLYBG.js} +68 -14
  246. package/dist/{chunk-NNSBI4H4.js → chunk-ZXQ2SLCZ.js} +3 -3
  247. package/dist/{chunk-CHO5SNWR.js → chunk-ZYXFGAIV.js} +1 -1
  248. package/dist/{cleanup-graph-garbage-KY6WU5G4.js → cleanup-graph-garbage-YZOQQLJI.js} +10 -10
  249. package/dist/{cloud-sync-command-XCQDIMQF.js → cloud-sync-command-L4P7TIIR.js} +2 -2
  250. package/dist/{cloud-sync-db-init-244Q5GSC.js → cloud-sync-db-init-IR3S4ZYH.js} +1 -1
  251. package/dist/{cloud-sync-shutdown-2GQEUM25.js → cloud-sync-shutdown-K46O655Z.js} +4 -4
  252. package/dist/{co-activation-T4E5BQME.js → co-activation-ZPW3K6F3.js} +4 -4
  253. package/dist/{co-occurrence-H3T4EJDD.js → co-occurrence-HD7N27HR.js} +8 -8
  254. package/dist/{code-context-index-LIDOFKOR.js → code-context-index-SQQMEGNQ.js} +9 -9
  255. package/dist/{code-context-watcher-4F7K2N3U.js → code-context-watcher-SHRFZ3GC.js} +9 -9
  256. package/dist/{codex-consolidation-SH4UKFBQ.js → codex-consolidation-ONZ2AQFX.js} +2 -2
  257. package/dist/{consent-passphrase-WV7MZPMO.js → consent-passphrase-BQUOHQGM.js} +2 -2
  258. package/dist/{content-extractor-DJM5EUDA.js → content-extractor-5FBHNJBI.js} +2 -2
  259. package/dist/{conversation-entity-extractor-FMZDYA5F.js → conversation-entity-extractor-NDZS5U3J.js} +4 -4
  260. package/dist/{conversation-wiki-populator-OS4C6W54.js → conversation-wiki-populator-YAOVCUGO.js} +1 -1
  261. package/dist/{crdt-sync-ZFRTVKPP.js → crdt-sync-BXDOLDB3.js} +4 -4
  262. package/dist/{crm-webhook-FBHC6ZSX.js → crm-webhook-LV3TX3LT.js} +2 -2
  263. package/dist/{cto-delegation-gate-NLE4XAAW.js → cto-delegation-gate-DDQRFK4C.js} +27 -27
  264. package/dist/{daemon-auth-PNKHERLV.js → daemon-auth-OWLFYEFR.js} +3 -3
  265. package/dist/{daemon-orchestration-Y2NUGJAG.js → daemon-orchestration-DKGZA6VZ.js} +33 -31
  266. package/dist/{daemon-ready-BN6EZLTQ.js → daemon-ready-R6M5FCNV.js} +1 -1
  267. package/dist/{db-integrity-events-GYGANKZV.js → db-integrity-events-7NKWS5MT.js} +3 -3
  268. package/dist/{db-restore-events-G6NOQOVE.js → db-restore-events-XYL6CGPC.js} +2 -2
  269. package/dist/{destructive-data-guard-HHWUBIGS.js → destructive-data-guard-JDUJ2ULM.js} +58 -2
  270. package/dist/{doc-graph-extractor-XI6GYDAF.js → doc-graph-extractor-3QULZX7K.js} +8 -8
  271. package/dist/{documents-M73UVEWK.js → documents-PXMQ655U.js} +17 -17
  272. package/dist/{dreaming-T73YLCHX.js → dreaming-YDN6SB5W.js} +32 -32
  273. package/dist/{employee-boot-brief-TA4ECIMC.js → employee-boot-brief-6A4GLZLX.js} +37 -36
  274. package/dist/{entity-boost-A6NVXNBE.js → entity-boost-LY5IKPD5.js} +1 -1
  275. package/dist/{exe-drift-GLCRFOSM.js → exe-drift-4GUGVTPD.js} +5 -5
  276. package/dist/{exe-export-MTAACTQO.js → exe-export-LNYMMWJ6.js} +18 -18
  277. package/dist/{exe-import-ZK7RVQAX.js → exe-import-FAZDYRI2.js} +18 -18
  278. package/dist/{exe-key-HFAEVMPQ.js → exe-key-QRLCCKNV.js} +148 -126
  279. package/dist/{exe-org-3PBCLPUK.js → exe-org-RQFTK3C2.js} +25 -25
  280. package/dist/{exe-snapshot-N6DHTLHQ.js → exe-snapshot-PAHOT277.js} +36 -36
  281. package/dist/{fast-db-init-XXCFUBVI.js → fast-db-init-UO7KLV35.js} +1 -1
  282. package/dist/{founder-context-ZGGEQ3Q4.js → founder-context-OEB2OB3U.js} +4 -4
  283. package/dist/{founder-monitor-envelope-XGYMHT4W.js → founder-monitor-envelope-73NOAFUE.js} +7 -7
  284. package/dist/{fts-integrity-PLAL6NMG.js → fts-integrity-PHCKKOBC.js} +3 -3
  285. package/dist/gateway/index.js +18 -18
  286. package/dist/{gateway-client-VO3BRLV5.js → gateway-client-YZ62NOC3.js} +1 -1
  287. package/dist/{git-staleness-W3EI5FYL.js → git-staleness-XZ4YA242.js} +4 -4
  288. package/dist/{global-procedures-DKZV2JUY.js → global-procedures-KUXA6TJS.js} +5 -5
  289. package/dist/{graph-auto-extract-RSV72JPO.js → graph-auto-extract-B2ICIL4E.js} +8 -8
  290. package/dist/{graph-query-W4XVTJQ2.js → graph-query-33NOX4G4.js} +1 -1
  291. package/dist/{graph-rag-HKHUQLVO.js → graph-rag-YPCBTGO7.js} +4 -4
  292. package/dist/{hook-integrity-7FKR3HRX.js → hook-integrity-OKADQMF3.js} +3 -1
  293. package/dist/{hook-prefetch-UWTAY5IR.js → hook-prefetch-CULOQNP7.js} +27 -27
  294. package/dist/hooks/bug-report-worker.js +32 -32
  295. package/dist/hooks/codex-stop-task-finalizer.js +34 -34
  296. package/dist/hooks/commit-complete.js +30 -30
  297. package/dist/hooks/error-recall.js +14 -13
  298. package/dist/hooks/exe-heartbeat-hook.js +7 -7
  299. package/dist/hooks/ingest-worker.js +19 -19
  300. package/dist/hooks/ingest.js +22 -22
  301. package/dist/hooks/instructions-loaded.js +9 -9
  302. package/dist/hooks/manifest.json +20 -20
  303. package/dist/hooks/notification.js +8 -8
  304. package/dist/hooks/post-compact.js +7 -7
  305. package/dist/hooks/post-tool-combined.js +14 -14
  306. package/dist/hooks/pre-compact.js +31 -31
  307. package/dist/hooks/pre-tool-use.js +2 -2
  308. package/dist/hooks/prompt-submit.js +49 -48
  309. package/dist/hooks/session-end.js +36 -36
  310. package/dist/hooks/session-start.js +21 -21
  311. package/dist/hooks/stop.js +38 -38
  312. package/dist/hooks/subagent-stop.js +34 -34
  313. package/dist/hooks/summary-worker.js +39 -39
  314. package/dist/index.js +41 -41
  315. package/dist/{inrun-inbox-DRKVDPLY.js → inrun-inbox-RGNFFGMU.js} +5 -0
  316. package/dist/{installer-RWV4GBVV.js → installer-DLXN6MIE.js} +10 -10
  317. package/dist/{installer-JVDKOZSC.js → installer-YDH5HHYZ.js} +10 -10
  318. package/dist/{installer-OMXHKOUV.js → installer-YFNGAHNG.js} +10 -10
  319. package/dist/{intercom-queue-73AFFNQU.js → intercom-queue-2O5ANKO2.js} +26 -26
  320. package/dist/{key-backup-status-LQPINQ3W.js → key-backup-status-6U7D5GOD.js} +2 -2
  321. package/dist/lib/agent-config.js +3 -3
  322. package/dist/lib/cloud-sync.js +26 -26
  323. package/dist/lib/config.js +4 -2
  324. package/dist/lib/consolidation.js +13 -11
  325. package/dist/lib/crypto.js +5 -3
  326. package/dist/lib/database.js +4 -4
  327. package/dist/lib/db-backup.js +9 -3
  328. package/dist/lib/db-daemon-client.js +9 -9
  329. package/dist/lib/db-write-worker.js +4 -4
  330. package/dist/lib/db.js +4 -4
  331. package/dist/lib/delivery-schemas.js +534 -0
  332. package/dist/lib/delivery-truth.js +1 -1
  333. package/dist/lib/device-registry.js +3 -3
  334. package/dist/lib/embed-worker.js +2 -2
  335. package/dist/lib/embedder.js +9 -9
  336. package/dist/lib/employee-templates.js +6 -6
  337. package/dist/lib/employees.js +4 -4
  338. package/dist/lib/exe-daemon-client.js +8 -8
  339. package/dist/lib/exe-daemon.js +111 -107
  340. package/dist/lib/hybrid-search.js +11 -10
  341. package/dist/lib/identity.js +4 -4
  342. package/dist/lib/keychain.js +1 -1
  343. package/dist/lib/license.js +8 -4
  344. package/dist/lib/messaging.js +27 -27
  345. package/dist/lib/post-tool-memory.js +8 -8
  346. package/dist/lib/registry-proxy.js +9 -1
  347. package/dist/lib/reminders.js +5 -5
  348. package/dist/lib/schedules.js +10 -10
  349. package/dist/lib/session-registry.js +6 -6
  350. package/dist/lib/skill-learning.js +18 -18
  351. package/dist/lib/status-brief.js +4 -4
  352. package/dist/lib/store.js +9 -9
  353. package/dist/lib/task-router.js +5 -5
  354. package/dist/lib/tasks.js +28 -28
  355. package/dist/lib/tmux-routing.js +26 -26
  356. package/dist/lib/token-spend.js +5 -5
  357. package/dist/lib/ws-client.js +1 -1
  358. package/dist/{license-gate-D6JW5OTJ.js → license-gate-2MXPY5DA.js} +5 -5
  359. package/dist/{license-recheck-AGRXJ5WR.js → license-recheck-7LRDLWFK.js} +1 -1
  360. package/dist/{license-sync-K7LZ74FG.js → license-sync-LQ4MVJCQ.js} +4 -4
  361. package/dist/local-secret-inventory-3Z36XK6Q.js +18 -0
  362. package/dist/mcp/register-tools.js +117 -116
  363. package/dist/mcp/server.js +121 -120
  364. package/dist/mcp/tools/complete-reminder.js +6 -6
  365. package/dist/mcp/tools/create-reminder.js +6 -6
  366. package/dist/mcp/tools/create-task.js +31 -31
  367. package/dist/mcp/tools/deactivate-behavior.js +20 -20
  368. package/dist/mcp/tools/list-reminders.js +6 -6
  369. package/dist/mcp/tools/list-tasks.js +31 -31
  370. package/dist/mcp/tools/send-message.js +30 -30
  371. package/dist/mcp/tools/update-task.js +29 -29
  372. package/dist/{mcp-child-registry-DVHYAHPW.js → mcp-child-registry-TIZERM7O.js} +5 -5
  373. package/dist/{mcp-http-config-UNDKWKQU.js → mcp-http-config-E63VUDME.js} +11 -11
  374. package/dist/{mcp-session-identity-CVAS3E3G.js → mcp-session-identity-TFNTAJR7.js} +26 -26
  375. package/dist/{memory-cards-UMXD44FU.js → memory-cards-T7EX4BGP.js} +9 -9
  376. package/dist/{memory-graph-extractor-AFPSMFEZ.js → memory-graph-extractor-5BU6M7M2.js} +9 -9
  377. package/dist/{memory-poisoning-defense-QGR7HUYM.js → memory-poisoning-defense-37DM3TAR.js} +4 -4
  378. package/dist/{memory-pressure-watchdog-ZXWKCBWJ.js → memory-pressure-watchdog-RQV6HOQ4.js} +27 -27
  379. package/dist/{memory-queue-YF7IDSFY.js → memory-queue-2MA67TAA.js} +3 -3
  380. package/dist/{memory-queue-client-QC2OTMJB.js → memory-queue-client-UKBDOEIU.js} +10 -10
  381. package/dist/{memory-reflection-2VWEWVHH.js → memory-reflection-PBIAI2RZ.js} +9 -9
  382. package/dist/{monitor-grants-Z2SEFE6E.js → monitor-grants-JMKMPLSU.js} +6 -6
  383. package/dist/{monitor-identity-AEMHCVHV.js → monitor-identity-ENPAVY4O.js} +2 -2
  384. package/dist/{notification-ledger-Z2K5VWCZ.js → notification-ledger-X4QCCYEB.js} +27 -27
  385. package/dist/{notifications-7OHREN67.js → notifications-CFWVEJ3C.js} +26 -26
  386. package/dist/{orchestration-events-ODSQAZU4.js → orchestration-events-Z3AIQATS.js} +5 -5
  387. package/dist/{orchestration-phase-T2WD45UA.js → orchestration-phase-QKTGQ2YT.js} +3 -3
  388. package/dist/{orchestrator-CAUOELC6.js → orchestrator-UERD2XBD.js} +28 -28
  389. package/dist/{org-brief-session-EDZUREPX.js → org-brief-session-KCSOXIO6.js} +16 -16
  390. package/dist/{org-consent-policy-FPYT63CA.js → org-consent-policy-SHTWNGJ7.js} +5 -5
  391. package/dist/{org-join-HEVR5PLB.js → org-join-6DMHADPH.js} +12 -12
  392. package/dist/{org-key-admin-DGA6SS2W.js → org-key-admin-BE5V64ES.js} +12 -12
  393. package/dist/{org-key-pin-F7BQPI5P.js → org-key-pin-GZ4UH5VE.js} +6 -6
  394. package/dist/{org-membership-JQSU4Z5P.js → org-membership-BNRVQVP7.js} +7 -7
  395. package/dist/{org-partner-config-PVJ45SLC.js → org-partner-config-UNXA6DXG.js} +10 -10
  396. package/dist/{org-partner-runtime-4P2APMAS.js → org-partner-runtime-JBW5FWJG.js} +16 -16
  397. package/dist/{org-row-visibility-FMZ7GCW6.js → org-row-visibility-YDH3H5HS.js} +1 -1
  398. package/dist/{pipeline-router-WEVGOK2Q.js → pipeline-router-W2NECWQD.js} +5 -5
  399. package/dist/{plan-limits-HQL4YPCO.js → plan-limits-Y74NOVVZ.js} +7 -7
  400. package/dist/{postinstall-failure-O6TSSNJB.js → postinstall-failure-VETYYWEZ.js} +3 -3
  401. package/dist/{pre-tool-use-impl-2LZ3IWVG.js → pre-tool-use-impl-WNJJTS7I.js} +58 -48
  402. package/dist/{project-boot-2JBCNWZH.js → project-boot-AFWDFRTX.js} +2 -2
  403. package/dist/{project-name-HSNEM2B6.js → project-name-RJDSE5O6.js} +5 -5
  404. package/dist/{projection-worker-YNWVG66K.js → projection-worker-6RGZZLY3.js} +5 -5
  405. package/dist/{prospective-memory-JIAU7G7X.js → prospective-memory-LTCFFWNL.js} +4 -4
  406. package/dist/{push-notifications-4BVJBPFG.js → push-notifications-OSA4WUZF.js} +27 -27
  407. package/dist/{reproject-worktree-memories-VVXJYJPX.js → reproject-worktree-memories-3FEBUMTB.js} +26 -26
  408. package/dist/{reranker-ROOUTM6H.js → reranker-AF7NH7EZ.js} +3 -3
  409. package/dist/{retrieval-health-RJLW7V34.js → retrieval-health-VKRILNSN.js} +4 -4
  410. package/dist/{review-polling-OFT7YVVR.js → review-polling-TFLN4T7C.js} +27 -27
  411. package/dist/runtime/index.js +39 -39
  412. package/dist/{session-events-5DMOCC55.js → session-events-SEVCMVVC.js} +27 -27
  413. package/dist/{session-kill-telemetry-GQIMT6Q6.js → session-kill-telemetry-XSZB3KWR.js} +27 -27
  414. package/dist/{session-mcp-config-WFZAH6R5.js → session-mcp-config-F7RCERUG.js} +3 -3
  415. package/dist/{session-scope-2ZCD23FN.js → session-scope-4UGYWAFG.js} +26 -26
  416. package/dist/{setup-wizard-K6TQ4DUY.js → setup-wizard-5N5SZHCB.js} +5 -5
  417. package/dist/{shard-manager-DYEJ6ETD.js → shard-manager-UKWAOC2Y.js} +3 -3
  418. package/dist/{skill-refinement-GJ7GPZI7.js → skill-refinement-26YAEXKO.js} +5 -5
  419. package/dist/{stack-generate-manifest-CYL3WO73.js → stack-generate-manifest-C77FJO5G.js} +245 -13
  420. package/dist/{stack-promote-IFBEA572.js → stack-promote-PV43IV5C.js} +6 -6
  421. package/dist/{stack-release-WOWE5OEX.js → stack-release-43QHVZ3L.js} +121 -11
  422. package/dist/{stack-update-WCBBURSE.js → stack-update-6BHMJEK4.js} +5 -5
  423. package/dist/{steward-gate-OBUY7NHD.js → steward-gate-C6CVSMT7.js} +5 -5
  424. package/dist/{subagent-brief-injection-7EZOA6IB.js → subagent-brief-injection-RUU3DVUH.js} +48 -40
  425. package/dist/{subagent-spawn-ledger-E6U3OY6Z.js → subagent-spawn-ledger-52I66CLW.js} +3 -3
  426. package/dist/{supervisor-handoff-SGLEPOCY.js → supervisor-handoff-BWJW6CKZ.js} +4 -4
  427. package/dist/{support-inbox-FOP23OI5.js → support-inbox-D2P4JESB.js} +11 -11
  428. package/dist/{support-outbox-G2NG2U5K.js → support-outbox-7QGJK3LD.js} +2 -2
  429. package/dist/{task-enforcement-44SYOIF2.js → task-enforcement-MI5NESRP.js} +27 -27
  430. package/dist/{task-request-inbox-GRTPLCVU.js → task-request-inbox-ZEFX5V2F.js} +5 -5
  431. package/dist/{task-scope-VD7QNIVO.js → task-scope-TTMFQBED.js} +28 -26
  432. package/dist/{tasks-crud-XJIRYQZ7.js → tasks-crud-3BGB5I55.js} +26 -26
  433. package/dist/{tasks-notify-EBKXIYFO.js → tasks-notify-XMBQWAOM.js} +27 -27
  434. package/dist/{tasks-review-3RVFDTHF.js → tasks-review-7B2YNLOB.js} +26 -26
  435. package/dist/{telemetry-upload-IEWVUEZD.js → telemetry-upload-M37GZK5Y.js} +9 -9
  436. package/dist/{token-budget-6R5E23BK.js → token-budget-CQATVFOK.js} +5 -5
  437. package/dist/{tool-capability-index-6HLZU437.js → tool-capability-index-RGCEDV44.js} +1 -1
  438. package/dist/{tool-telemetry-4Z5UN7OR.js → tool-telemetry-4JZ7FOJB.js} +1 -1
  439. package/dist/tui/App.js +41 -41
  440. package/dist/{tui-data-VJXHRQUO.js → tui-data-WYTAUJGH.js} +30 -30
  441. package/dist/{update-support-NWGGDGBT.js → update-support-677WC3GL.js} +25 -25
  442. package/dist/{whatsapp-NAM2CRVQ.js → whatsapp-4BSW74A2.js} +2 -2
  443. package/dist/wiki-acl-OGMGHBOL.js +19 -0
  444. package/dist/{work-claims-OFNMCIKF.js → work-claims-5BS242P4.js} +5 -5
  445. package/dist/{work-state-heartbeat-PZFJI7LF.js → work-state-heartbeat-5ZA3IO24.js} +1 -1
  446. package/dist/{worker-gate-NUUSQMBT.js → worker-gate-FTMW7GBB.js} +3 -3
  447. package/dist/{workflow-engine-WE6GMJGU.js → workflow-engine-OBEVRGMJ.js} +2 -2
  448. package/dist/{worktree-WV722AND.js → worktree-XC4RBKKR.js} +6 -6
  449. package/dist/{worktree-ownership-guard-4LKMW6PW.js → worktree-ownership-guard-O6JQF2CL.js} +2 -2
  450. package/dist/{worktree-sweep-ZYQWLIHA.js → worktree-sweep-IXU4LYC5.js} +7 -7
  451. package/package.json +16 -8
  452. package/release-notes.json +43 -14
  453. package/stack.release.json +11 -11
  454. package/dist/wiki-acl-OLXP4N4T.js +0 -111
  455. /package/dist/{chunk-4G5MWV7O.js → chunk-7C33VMAN.js} +0 -0
  456. /package/dist/{chunk-QIEYJ4KZ.js → chunk-AD3BEMDA.js} +0 -0
  457. /package/dist/{chunk-HB5JD7UK.js → chunk-GEEWKHA4.js} +0 -0
  458. /package/dist/{chunk-BRAIWGMF.js → chunk-OBFAJFYQ.js} +0 -0
  459. /package/dist/{chunk-25DUFD2C.js → chunk-Q7ESNZFY.js} +0 -0
  460. /package/dist/{chunk-7PXV7NUN.js → chunk-TBPJ2GNW.js} +0 -0
  461. /package/dist/{chunk-T3667X2B.js → chunk-VAXC5I2H.js} +0 -0
  462. /package/dist/{chunk-3LITZ2RB.js → chunk-VIDAIUVD.js} +0 -0
  463. /package/dist/{chunk-JTOS2R26.js → chunk-VK3MMYBD.js} +0 -0
  464. /package/dist/{chunk-TYAM2ROO.js → chunk-XTREZV4R.js} +0 -0
  465. /package/dist/{core-memory-3EFPOWVG.js → core-memory-E2PKUID3.js} +0 -0
  466. /package/dist/{hook-tamper-log-Z4PWC7N4.js → hook-tamper-log-ARGWCXKJ.js} +0 -0
  467. /package/dist/{memory-isolation-BWOZSIF3.js → memory-isolation-PUONYUJ4.js} +0 -0
  468. /package/dist/{oauth-server-ISCDJMWO.js → oauth-server-6LCX2VHS.js} +0 -0
  469. /package/dist/{webhook-pipe-W2FVXY7M.js → webhook-pipe-PXH5MBRM.js} +0 -0
  470. /package/dist/{wiki-client-W65IOSWF.js → wiki-client-DD2NVWK2.js} +0 -0
@@ -69,7 +69,7 @@ SMTP_PASS=
69
69
  # --- Auth gateway (exe-auth — shared SSO sign-in UI at auth.<domain>) ---
70
70
  # Bug 58840873: pin the auth image so compose never falls back to its stale
71
71
  # hardcoded default tag. Keep in sync with the manifest AUTH_IMAGE_TAG.
72
- AUTH_IMAGE_TAG=update.askexe.com/askexe/exe-auth:v0.6.1@sha256:89670a15bc59255299be695525863e66f949694eec1dd8886038dc3659a4a941
72
+ AUTH_IMAGE_TAG=update.askexe.com/askexe/exe-auth:v0.6.5@sha256:dc8c1476ef1247079a6e115450bd35681712fa06367461589998ecf943f88089
73
73
  # Bug 379e5c13: server_name / CORS from the CONFIGURED apex domain, not by naive
74
74
  # last-2-label slicing (which breaks company.co.uk → co.uk).
75
75
  AUTH_SERVER_NAME=auth.CHANGEME_DOMAIN
@@ -124,7 +124,7 @@ EXE_ORG_ID=
124
124
  EXE_ORG_WORKSPACE_ID=
125
125
 
126
126
  # --- CRM ---
127
- CRM_IMAGE_TAG=update.askexe.com/askexe/exe-crm:v0.9.53@sha256:a586dcc8bbd992538e3caa18c44e772d30f31155dfef0a2b7466ca3fc7c553d8
127
+ CRM_IMAGE_TAG=update.askexe.com/askexe/exe-crm:v0.9.59@sha256:40619dce57540f86dc7c8b71f1da57f44600a288f75a28850a9a9b425d0b92a6
128
128
  CRM_SERVER_URL=https://crm.CHANGEME_DOMAIN
129
129
  CRM_APP_SECRET=CHANGEME_CRM_APP_SECRET
130
130
  # The CRM's first admin — seeded at boot by WorkspaceBootstrapService, which is
@@ -138,7 +138,7 @@ EXE_CRM_ADMIN_EMAIL=CHANGEME_ADMIN_EMAIL
138
138
  CRM_HOST_PORT=3000
139
139
 
140
140
  # --- Wiki ---
141
- WIKI_IMAGE_TAG=update.askexe.com/askexe/exe-wiki:v0.9.28@sha256:61856a4c6b97ce62c62ecdc3a377139287be5860eb807d9fbb737115758d7856
141
+ WIKI_IMAGE_TAG=update.askexe.com/askexe/exe-wiki:v0.9.33@sha256:1f9e04a557c6034e0eac85ecdf76d465eab88394614184387ecf06cd2281e7d8
142
142
  # Bug 2a8d3003 — DO NOT change this without migrating the data first.
143
143
  # The wiki's users / workspaces / workspace_documents live in `public`. Point it at a
144
144
  # different schema and Prisma will NOT error: it finds no tables, assumes a fresh
@@ -176,7 +176,7 @@ WIKI_HOST_PORT=3001
176
176
  EXE_SSO_COOKIE_NAME=exe_access_token
177
177
 
178
178
  # --- exe-os ---
179
- EXE_OS_IMAGE_TAG=update.askexe.com/askexe/exe-os:v0.9.324@sha256:3ce6406e0f7f279ff2568bbbb7d55de51a46fdf35c49691f24fd959d6fd2d3fa
179
+ EXE_OS_IMAGE_TAG=update.askexe.com/askexe/exe-os:v0.9.382@sha256:266a59a482865eab9f79497999acb33c1fe1868ec54ea5cd1ce971c492f11bd6
180
180
  EXED_MCP_TOKEN=CHANGEME_EXED_MCP_TOKEN
181
181
  EXED_DEVICE_ID=CHANGEME_DEVICE_ID
182
182
  EXE_MCP_HOST_BIND=127.0.0.1
@@ -186,7 +186,7 @@ EXE_MCP_HOST_PORT=48739
186
186
  EXE_CLOUD_SYNC_TO_POSTGRES=true
187
187
 
188
188
  # --- ERP (Frappe/ERPNext fork) ---
189
- ERP_IMAGE_TAG=update.askexe.com/askexe/exe-erp:v2026.08.07-d185286-stamped@sha256:1c655f3f7819c797afd13c79561354f0276cf337403f32aee3e406a497e8827b
189
+ ERP_IMAGE_TAG=update.askexe.com/askexe/exe-erp:v0.3.11@sha256:5888b3e9d4ff309f37052dbdcac1fda66e235dbecb186a9ccf69380576e7b363
190
190
  # Administrator password for the ERPNext site (created on first boot).
191
191
  # bug 43854b31: this only applies at FIRST boot. To rotate it later you must also
192
192
  # run `bench --site $ERP_SITE_NAME set-admin-password <new>` inside exe-erp —
@@ -158,7 +158,7 @@ EXE_ORG_ID=
158
158
  EXE_ORG_WORKSPACE_ID=
159
159
 
160
160
  # --- CRM ---
161
- CRM_IMAGE_TAG=ghcr.io/askexe/exe-crm:v0.9.53@sha256:a586dcc8bbd992538e3caa18c44e772d30f31155dfef0a2b7466ca3fc7c553d8
161
+ CRM_IMAGE_TAG=ghcr.io/askexe/exe-crm:v0.9.59@sha256:40619dce57540f86dc7c8b71f1da57f44600a288f75a28850a9a9b425d0b92a6
162
162
  CRM_SERVER_URL=https://crm.CHANGEME_DOMAIN
163
163
  CRM_APP_SECRET=CHANGEME_CRM_APP_SECRET
164
164
  EXE_CRM_ADMIN_TOKEN=CHANGEME_EXE_CRM_ADMIN_TOKEN
@@ -209,7 +209,7 @@ WIKI_HOST_PORT=3001
209
209
  EXE_SSO_COOKIE_NAME=exe_access_token
210
210
 
211
211
  # --- exe-os ---
212
- EXE_OS_IMAGE_TAG=ghcr.io/askexe/exe-os:v0.9.324@sha256:3ce6406e0f7f279ff2568bbbb7d55de51a46fdf35c49691f24fd959d6fd2d3fa
212
+ EXE_OS_IMAGE_TAG=ghcr.io/askexe/exe-os:v0.9.382@sha256:266a59a482865eab9f79497999acb33c1fe1868ec54ea5cd1ce971c492f11bd6
213
213
 
214
214
  # Infra image pins — manifest-derived. Compose has no fallback default for
215
215
  # these: a missing pin ABORTS the deploy instead of substituting an old image.
@@ -264,7 +264,7 @@ ERROR_REPORTING_ENABLED=true
264
264
  MONITOR_ERROR_URL=http://exe-monitor-hub:8090/api/exe-monitor/errors
265
265
 
266
266
  # --- ERP (optional — Exe ERP, Frappe/ERPNext fork) ---
267
- ERP_IMAGE_TAG=ghcr.io/askexe/exe-erp:v2026.08.07-d185286-stamped@sha256:1c655f3f7819c797afd13c79561354f0276cf337403f32aee3e406a497e8827b
267
+ ERP_IMAGE_TAG=ghcr.io/askexe/exe-erp:v0.3.11@sha256:5888b3e9d4ff309f37052dbdcac1fda66e235dbecb186a9ccf69380576e7b363
268
268
  ERP_ADMIN_PASSWORD=CHANGEME_ERP_ADMIN_PASSWORD
269
269
  EXE_ERP_ADMIN_TOKEN=CHANGEME_EXE_ERP_ADMIN_TOKEN
270
270
  # Frappe site name — must match the erp.<domain> the customer serves (bug e61ad373).
@@ -764,7 +764,7 @@ services:
764
764
  # overridden back to exeOsMcp — see bug c604df37 above before doing that;
765
765
  # the spawn args below currently point at the wrong CLI entrypoint.
766
766
  EXE_OS_MCP_COMMAND: ${WIKI_EXE_OS_MCP_COMMAND:-npx}
767
- EXE_OS_MCP_ARGS: ${WIKI_EXE_OS_MCP_ARGS:--y @askexenow/exe-os@${WIKI_EXE_OS_NPM_VERSION:-0.9.324} mcp}
767
+ EXE_OS_MCP_ARGS: ${WIKI_EXE_OS_MCP_ARGS:--y @askexenow/exe-os@${WIKI_EXE_OS_NPM_VERSION:-0.9.382} mcp}
768
768
  BRANDING_CONFIG_PATH: /app/branding.json
769
769
  ports:
770
770
  - "127.0.0.1:${WIKI_HOST_PORT:-3001}:3001"
@@ -153,6 +153,24 @@ server {
153
153
  location = /health { auth_request off; proxy_pass http://$crm_upstream/healthz; }
154
154
  location = /healthz { auth_request off; proxy_pass http://$crm_upstream/healthz; }
155
155
 
156
+ # G5 served-freshness (bug 529f45cf). See the doctrine note in
157
+ # sso-redirect.conf: an ungated path is granted EXPLICITLY, by exact match,
158
+ # never by a wildcard. Without this the watchdog's GET /__version was caught
159
+ # by the gate and 302'd to the auth login page, so the probe read auth's
160
+ # HTML and could not distinguish "wrong version" from "gated" from "down" —
161
+ # the served-freshness axis was unreadable for every SSO-gated surface.
162
+ #
163
+ # WHY UNAUTHENTICATED, DELIBERATELY: the response is a git sha/ref/repo and
164
+ # a build time, all of which the signed stack manifest already publishes
165
+ # unauthenticated at update.askexe.com/v1/stack-manifest.json. It leaks
166
+ # nothing the fleet does not already state publicly. The alternative —
167
+ # teaching the watchdog to hold an SSO session per surface — would put a
168
+ # live credential in a nightly job, widen its blast radius across five
169
+ # hosts, and make credential expiry look identical to real drift. A monitor
170
+ # whose failure mode is indistinguishable from the thing it monitors is the
171
+ # blind-monitor class this whole sweep is closing.
172
+ location = /__version { auth_request off; proxy_pass http://$crm_upstream/__version; }
173
+
156
174
  # Logout endpoint must be exempt from SSO gate (bug 96f8b2b2). Without this,
157
175
  # /auth/logout triggers 401 -> redirect to auth with logout URL as redirect param
158
176
  # -> infinite loop. Let the app handle logout (clear its own cookies), then it
@@ -207,6 +225,9 @@ server {
207
225
  location = /health { auth_request off; proxy_pass http://$wiki_upstream/api/ping; }
208
226
  location = /healthz { auth_request off; proxy_pass http://$wiki_upstream/api/ping; }
209
227
 
228
+ # G5 served-freshness — see the CRM vhost's note (bug 529f45cf).
229
+ location = /__version { auth_request off; proxy_pass http://$wiki_upstream/__version; }
230
+
210
231
  # Logout endpoint must be exempt from SSO gate (bug 96f8b2b2).
211
232
  location = /auth/logout { auth_request off; proxy_pass http://$wiki_upstream/auth/logout; }
212
233
 
@@ -246,6 +267,27 @@ server {
246
267
  set $gotrue_upstream gotrue:9999; # used by sso-redirect.conf's /_sso_gate
247
268
  include /etc/nginx/snippets/sso-redirect.conf;
248
269
 
270
+ # G5 served-freshness — see the CRM vhost's note (bug 529f45cf).
271
+ #
272
+ # HONEST ABOUT WHAT THIS DOES AND DOES NOT FIX: exe-erp does not implement
273
+ # /__version yet (that is a change in AskExe/exe-erp, not here). Today this
274
+ # location turns a MISLEADING answer into an honest one — the probe stops
275
+ # reading auth.askexe.com's login HTML and starts reading ERP's own 404, so
276
+ # served-freshness reports ERP as unverifiable-because-unimplemented rather
277
+ # than silently comparing a login page against a git sha. It becomes a real
278
+ # verification the moment exe-erp ships the route; nothing here changes then.
279
+ #
280
+ # Host is preserved and the standard forwarded headers are set, matching the
281
+ # main location block below — a bare proxy_pass would send
282
+ # Host: exe-erp-nginx, which frappe's origin check rejects.
283
+ location = /__version {
284
+ auth_request off;
285
+ proxy_pass http://$erp_upstream/__version;
286
+ proxy_set_header Host $host;
287
+ proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
288
+ proxy_set_header X-Forwarded-Proto https;
289
+ }
290
+
249
291
  # ERP is the one upstream that runs a realtime socket.io service with
250
292
  # origin authentication: frappe's realtime middleware compares the Host
251
293
  # header against the Origin header and rejects mismatches ("Invalid
@@ -294,6 +336,9 @@ server {
294
336
  location = /health { auth_request off; proxy_pass http://$dashboard_upstream/health; }
295
337
  location = /healthz { auth_request off; proxy_pass http://$dashboard_upstream/health; }
296
338
 
339
+ # G5 served-freshness — see the CRM vhost's note (bug 529f45cf).
340
+ location = /__version { auth_request off; proxy_pass http://$dashboard_upstream/__version; }
341
+
297
342
  # Logout endpoint must be exempt from SSO gate (bug 96f8b2b2).
298
343
  location = /auth/logout { auth_request off; proxy_pass http://$dashboard_upstream/auth/logout; }
299
344
 
@@ -146,8 +146,17 @@
146
146
  # make it fire). That is not a typo fix — it would newly open a real bypass for
147
147
  # every path whose URI ends in an asset extension, including user-uploaded CRM
148
148
  # attachments and wiki images. If a future app genuinely needs an ungated path,
149
- # give it an explicit `location = /path { auth_request off; }` (as the /health
150
- # and /auth/logout routes already do), never an extension-shaped wildcard.
149
+ # give it an explicit `location = /path { auth_request off; }` (as the /health,
150
+ # /auth/logout and /__version routes already do), never an extension-shaped
151
+ # wildcard.
152
+ #
153
+ # /__version is the third such grant (bug 529f45cf). It is exact-match, it is
154
+ # read-only, and its body is a git sha/ref/repo already published without
155
+ # authentication in the signed stack manifest — so it widens no disclosure. It
156
+ # exists because the G5 served-freshness watchdog could not read ANY gated
157
+ # surface: every probe was 302'd to the login page, and the watchdog compared a
158
+ # git sha against auth's HTML. That is the shape this gate must never take —
159
+ # a control that cannot see reporting its blindness as ordinary traffic.
151
160
  # ─────────────────────────────────────────────────────────────────────────────
152
161
 
153
162
  # Run the gate for every request on this vhost. The gate is a zero-cost local
@@ -76,6 +76,6 @@
76
76
  "signature": {
77
77
  "keyId": "exe-stack-1",
78
78
  "alg": "ed25519",
79
- "signature": "ib9CL9sD/5c2q6M1UQDA1BUf9WT6iI18gUyCmY3+TitjVhIeAf5bTTyfs/FiWAAn8penUVWp21p65KJgSW1PCA=="
79
+ "signature": "hZxmmxAMTi7l2yI0XDe3vnm35xl7z6A+BVcLFZopjULs9Q+v9CsqvoaLoDv6APiBfsagwr1wPmN0A7Uw0GrJBw=="
80
80
  }
81
81
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "schemaVersion": 1,
3
- "latest": "0.9.36",
3
+ "latest": "0.9.38",
4
4
  "stacks": {
5
5
  "0.9.0": {
6
6
  "version": "0.9.0",
@@ -2806,11 +2806,263 @@
2806
2806
  }
2807
2807
  },
2808
2808
  "rolloutStage": "ga"
2809
+ },
2810
+ "0.9.37": {
2811
+ "version": "0.9.37",
2812
+ "releasedAt": "2026-09-08T06:48:53.529Z",
2813
+ "npmVersion": "0.9.382",
2814
+ "notes": "exe-os v0.9.382, exe-crm v0.9.59 and exe-erp v0.3.11 reach customers. exe-os was pinned at v0.9.324 — 58 versions of merged work that no install could see. exe-crm v0.9.59 carries the shared EXE design tokens plus the @faker-js/faker CVE-2026-73231 fix (the vulnerable image was built but its release tag was correctly withheld, so it never shipped). exe-erp v0.3.11 is the first ERP image driving Frappe's own Espresso design system with EXE brand tokens instead of an override stylesheet, and the first built natively on x86_64 with QEMU removed from the release path. wiki v0.9.33 and auth v0.6.5 pins are unchanged — already current.",
2815
+ "services": {
2816
+ "exe-db": {
2817
+ "image": "update.askexe.com/askexe/pgvector:0.8.0-pg16@sha256:a132765ec351c65111b5b675928a3a0515a466a40f97277329db8b8209ad8bc9",
2818
+ "env": "EXE_DB_IMAGE",
2819
+ "composeService": "exe-db",
2820
+ "required": true,
2821
+ "category": "core",
2822
+ "description": "Postgres (pgvector) — digest-pinned (bug 32d6e02f; was tag-only in 0.9.25, regressed from 0.9.24)"
2823
+ },
2824
+ "exe-os": {
2825
+ "image": "update.askexe.com/askexe/exe-os:v0.9.382@sha256:266a59a482865eab9f79497999acb33c1fe1868ec54ea5cd1ce971c492f11bd6",
2826
+ "env": "EXE_OS_IMAGE_TAG",
2827
+ "composeService": "exe-os",
2828
+ "healthUrl": "http://127.0.0.1:8765/health",
2829
+ "required": true,
2830
+ "category": "core",
2831
+ "description": "exe-os daemon + MCP server"
2832
+ },
2833
+ "crm": {
2834
+ "image": "update.askexe.com/askexe/exe-crm:v0.9.59@sha256:40619dce57540f86dc7c8b71f1da57f44600a288f75a28850a9a9b425d0b92a6",
2835
+ "env": "CRM_IMAGE_TAG",
2836
+ "composeService": "exe-crm",
2837
+ "healthUrl": "http://127.0.0.1:3000/healthz",
2838
+ "category": "app"
2839
+ },
2840
+ "wiki": {
2841
+ "image": "update.askexe.com/askexe/exe-wiki:v0.9.33@sha256:1f9e04a557c6034e0eac85ecdf76d465eab88394614184387ecf06cd2281e7d8",
2842
+ "env": "WIKI_IMAGE_TAG",
2843
+ "composeService": "exe-wiki",
2844
+ "healthUrl": "http://127.0.0.1:3001/api/ping",
2845
+ "category": "app",
2846
+ "description": "exe-wiki v0.9.33 — typography unified onto the shared @askexenow/exe-theme tokens. plus-jakarta-sans removed repo-wide, and a latent bug fixed: font-headline was defined in Tailwind but no rule ever applied it, so h1-h6 had silently inherited the body font and wiki headings had never once rendered in Epilogue. Also dark first paint before stylesheets load, so switching between CRM, wiki and ERP no longer flashes white.",
2847
+ "gitSha": "3f35bd9c52543987e2ebaec9e5876cc6c6fd8f3a"
2848
+ },
2849
+ "gateway": {
2850
+ "image": "update.askexe.com/askexe/exe-gateway:v2026.08.07-c15f093-stamped@sha256:1bc11a2a0ad1f3929d59d2685696f22a72042b9fca9c75e15c02dc7d3c640105",
2851
+ "env": "GATEWAY_IMAGE_TAG",
2852
+ "composeService": "exe-gateway",
2853
+ "healthUrl": "http://127.0.0.1:3100/health",
2854
+ "category": "app",
2855
+ "description": "WhatsApp/messaging gateway — provenance-stamped rebuild of main (outbound message persistence fix); pinned by digest, dated immutable tag.",
2856
+ "gitSha": "c15f093a0f59730bd5c2c73791ff77059dfa7cc1"
2857
+ },
2858
+ "monitorAgent": {
2859
+ "image": "update.askexe.com/askexe/exe-monitor-agent:v2026.08.09-10660eb4-stamped@sha256:29fbd445f79484df04f000603e4ff445e76f0380f86d687a0033e3a0ef7d1b7a",
2860
+ "env": "MONITOR_AGENT_IMAGE_TAG",
2861
+ "composeService": "exe-monitor-agent",
2862
+ "category": "monitoring",
2863
+ "gitSha": "10660eb4abdeffbcba2aad13549aa58e208ac7a3"
2864
+ },
2865
+ "monitorHub": {
2866
+ "image": "update.askexe.com/askexe/exe-monitor-hub:v2026.08.09-10660eb4-stamped@sha256:c9a9218c2713b8dffea7e1cf8c0702a614657d311a7a4e821c6a543bab29bb97",
2867
+ "env": "MONITOR_HUB_IMAGE_TAG",
2868
+ "composeService": "exe-monitor-hub",
2869
+ "healthUrl": "http://127.0.0.1:8090/api/health",
2870
+ "category": "monitoring",
2871
+ "gitSha": "10660eb4abdeffbcba2aad13549aa58e208ac7a3"
2872
+ },
2873
+ "auth": {
2874
+ "image": "update.askexe.com/askexe/exe-auth:v0.6.5@sha256:dc8c1476ef1247079a6e115450bd35681712fa06367461589998ecf943f88089",
2875
+ "env": "AUTH_IMAGE_TAG",
2876
+ "composeService": "exe-auth",
2877
+ "healthUrl": "http://127.0.0.1:3300/api/health",
2878
+ "category": "auth",
2879
+ "description": "exe-auth v0.6.5 — an already-authenticated user switching between ERP, wiki and CRM no longer sees the login page flash. The session is now validated SERVER-SIDE before any login markup is sent, so an authenticated request gets a bare 302 (bug 910ff2a5). A forged exe_access_token sentinel still receives the login page, so this is not an auth bypass. Also strips the leading dot from AUTH_COOKIE_DOMAIN (bug ee4b831d).",
2880
+ "gitSha": "e119d1fa1fd08f2faf951f9998fe33393cf8b258"
2881
+ },
2882
+ "erp": {
2883
+ "image": "update.askexe.com/askexe/exe-erp:v0.3.11@sha256:5888b3e9d4ff309f37052dbdcac1fda66e235dbecb186a9ccf69380576e7b363",
2884
+ "env": "ERP_IMAGE_TAG",
2885
+ "composeService": "exe-erp",
2886
+ "healthUrl": "http://127.0.0.1:8069/api/method/ping",
2887
+ "healthHost": "localhost",
2888
+ "required": false,
2889
+ "category": "app",
2890
+ "description": "Enterprise Resource Planning",
2891
+ "gitSha": "d185286873dcfa11e4b3f9672c4e23efea240cc5"
2892
+ },
2893
+ "gotrue": {
2894
+ "image": "update.askexe.com/askexe/gotrue:v2.172.1@sha256:b0dd7aa28dd1f9a8bd31f136c8b912661f701d9b863171e5843cb08f18f49de4",
2895
+ "composeService": "gotrue",
2896
+ "healthUrl": "http://127.0.0.1:9999/health",
2897
+ "category": "infra"
2898
+ },
2899
+ "redis": {
2900
+ "image": "update.askexe.com/askexe/redis:7.4-alpine@sha256:6ab0b6e7381779332f97b8ca76193e45b0756f38d4c0dcda72dbb3c32061ab99",
2901
+ "composeService": "redis",
2902
+ "category": "infra"
2903
+ },
2904
+ "clickhouse": {
2905
+ "image": "update.askexe.com/askexe/clickhouse-server:24.8.4.13-alpine@sha256:88a45f9e328549b2579256c46ee38e5c0e25ae58303d9eb6d9c7ed8d6d2bbf3c",
2906
+ "composeService": "clickhouse",
2907
+ "category": "infra"
2908
+ },
2909
+ "cloudflared": {
2910
+ "image": "update.askexe.com/askexe/cloudflared:2026-07@sha256:ba461b8aa9c042156dbd39c38657fe7431bafa063220eab8d5330a523863da9f",
2911
+ "composeService": "cloudflared",
2912
+ "category": "infra"
2913
+ },
2914
+ "exe-sso-edge": {
2915
+ "image": "update.askexe.com/askexe/nginx:alpine@sha256:20316569d8f81a160065d7d2a5eeffc7ca97d79022462ee255fd23fa103a6b5c",
2916
+ "composeService": "exe-sso-edge",
2917
+ "category": "infra"
2918
+ },
2919
+ "exe-otel-collector": {
2920
+ "image": "update.askexe.com/askexe/otel-collector-contrib:0.114.0@sha256:37fa87091cfaaec7234a27e4e395a40c31c2bfaea97a349a4afef6d9e9681197",
2921
+ "composeService": "exe-otel-collector",
2922
+ "category": "infra"
2923
+ },
2924
+ "dashboard": {
2925
+ "image": "update.askexe.com/askexe/exe-dashboard:v0.9.382@sha256:43c4eb52d89d977021d29df73bcfa6f9d769ab4debf90e81240b59a4c165bab0",
2926
+ "env": "DASHBOARD_IMAGE_TAG",
2927
+ "composeService": "exe-dashboard",
2928
+ "healthUrl": "http://127.0.0.1:3301/health",
2929
+ "required": false,
2930
+ "category": "optional",
2931
+ "description": "Customer dashboard at dashboard.<apex> — credits, usage, API keys, billing"
2932
+ }
2933
+ },
2934
+ "rolloutStage": "ga"
2935
+ },
2936
+ "0.9.38": {
2937
+ "version": "0.9.38",
2938
+ "releasedAt": "2026-09-08T14:38:52.000Z",
2939
+ "npmVersion": "0.9.382",
2940
+ "notes": "Corrects the auth healthUrl only; every image pin is identical to 0.9.37. 0.9.37 probed auth at /api/health, which exe-auth returns 404 for BY DESIGN: nginx.conf adds an exact `location = /api/health` that 404s so GoTrue's version is not exposed to the public internet (fingerprinting), and its comment states health of the container is the compose healthcheck on `/`. The manifest was never updated to match, so deploying auth aborted with 'Health check failed for auth (http://127.0.0.1:3300/api/health): HTTP 404' and rolled the whole stack back. Verified live on the running service: / -> 200, /__version -> 200, /api/health -> 404. Points at `/`, matching the container's own healthcheck (wget --spider http://127.0.0.1:80/).",
2941
+ "services": {
2942
+ "exe-db": {
2943
+ "image": "update.askexe.com/askexe/pgvector:0.8.0-pg16@sha256:a132765ec351c65111b5b675928a3a0515a466a40f97277329db8b8209ad8bc9",
2944
+ "env": "EXE_DB_IMAGE",
2945
+ "composeService": "exe-db",
2946
+ "required": true,
2947
+ "category": "core",
2948
+ "description": "Postgres (pgvector) — digest-pinned (bug 32d6e02f; was tag-only in 0.9.25, regressed from 0.9.24)"
2949
+ },
2950
+ "exe-os": {
2951
+ "image": "update.askexe.com/askexe/exe-os:v0.9.382@sha256:266a59a482865eab9f79497999acb33c1fe1868ec54ea5cd1ce971c492f11bd6",
2952
+ "env": "EXE_OS_IMAGE_TAG",
2953
+ "composeService": "exe-os",
2954
+ "healthUrl": "http://127.0.0.1:8765/health",
2955
+ "required": true,
2956
+ "category": "core",
2957
+ "description": "exe-os daemon + MCP server"
2958
+ },
2959
+ "crm": {
2960
+ "image": "update.askexe.com/askexe/exe-crm:v0.9.59@sha256:40619dce57540f86dc7c8b71f1da57f44600a288f75a28850a9a9b425d0b92a6",
2961
+ "env": "CRM_IMAGE_TAG",
2962
+ "composeService": "exe-crm",
2963
+ "healthUrl": "http://127.0.0.1:3000/healthz",
2964
+ "category": "app"
2965
+ },
2966
+ "wiki": {
2967
+ "image": "update.askexe.com/askexe/exe-wiki:v0.9.33@sha256:1f9e04a557c6034e0eac85ecdf76d465eab88394614184387ecf06cd2281e7d8",
2968
+ "env": "WIKI_IMAGE_TAG",
2969
+ "composeService": "exe-wiki",
2970
+ "healthUrl": "http://127.0.0.1:3001/api/ping",
2971
+ "category": "app",
2972
+ "description": "exe-wiki v0.9.33 — typography unified onto the shared @askexenow/exe-theme tokens. plus-jakarta-sans removed repo-wide, and a latent bug fixed: font-headline was defined in Tailwind but no rule ever applied it, so h1-h6 had silently inherited the body font and wiki headings had never once rendered in Epilogue. Also dark first paint before stylesheets load, so switching between CRM, wiki and ERP no longer flashes white.",
2973
+ "gitSha": "3f35bd9c52543987e2ebaec9e5876cc6c6fd8f3a"
2974
+ },
2975
+ "gateway": {
2976
+ "image": "update.askexe.com/askexe/exe-gateway:v2026.08.07-c15f093-stamped@sha256:1bc11a2a0ad1f3929d59d2685696f22a72042b9fca9c75e15c02dc7d3c640105",
2977
+ "env": "GATEWAY_IMAGE_TAG",
2978
+ "composeService": "exe-gateway",
2979
+ "healthUrl": "http://127.0.0.1:3100/health",
2980
+ "category": "app",
2981
+ "description": "WhatsApp/messaging gateway — provenance-stamped rebuild of main (outbound message persistence fix); pinned by digest, dated immutable tag.",
2982
+ "gitSha": "c15f093a0f59730bd5c2c73791ff77059dfa7cc1"
2983
+ },
2984
+ "monitorAgent": {
2985
+ "image": "update.askexe.com/askexe/exe-monitor-agent:v2026.08.09-10660eb4-stamped@sha256:29fbd445f79484df04f000603e4ff445e76f0380f86d687a0033e3a0ef7d1b7a",
2986
+ "env": "MONITOR_AGENT_IMAGE_TAG",
2987
+ "composeService": "exe-monitor-agent",
2988
+ "category": "monitoring",
2989
+ "gitSha": "10660eb4abdeffbcba2aad13549aa58e208ac7a3"
2990
+ },
2991
+ "monitorHub": {
2992
+ "image": "update.askexe.com/askexe/exe-monitor-hub:v2026.08.09-10660eb4-stamped@sha256:c9a9218c2713b8dffea7e1cf8c0702a614657d311a7a4e821c6a543bab29bb97",
2993
+ "env": "MONITOR_HUB_IMAGE_TAG",
2994
+ "composeService": "exe-monitor-hub",
2995
+ "healthUrl": "http://127.0.0.1:8090/api/health",
2996
+ "category": "monitoring",
2997
+ "gitSha": "10660eb4abdeffbcba2aad13549aa58e208ac7a3"
2998
+ },
2999
+ "auth": {
3000
+ "image": "update.askexe.com/askexe/exe-auth:v0.6.5@sha256:dc8c1476ef1247079a6e115450bd35681712fa06367461589998ecf943f88089",
3001
+ "env": "AUTH_IMAGE_TAG",
3002
+ "composeService": "exe-auth",
3003
+ "healthUrl": "http://127.0.0.1:3300/",
3004
+ "category": "auth",
3005
+ "description": "exe-auth v0.6.5 — an already-authenticated user switching between ERP, wiki and CRM no longer sees the login page flash. The session is now validated SERVER-SIDE before any login markup is sent, so an authenticated request gets a bare 302 (bug 910ff2a5). A forged exe_access_token sentinel still receives the login page, so this is not an auth bypass. Also strips the leading dot from AUTH_COOKIE_DOMAIN (bug ee4b831d).",
3006
+ "gitSha": "e119d1fa1fd08f2faf951f9998fe33393cf8b258"
3007
+ },
3008
+ "erp": {
3009
+ "image": "update.askexe.com/askexe/exe-erp:v0.3.11@sha256:5888b3e9d4ff309f37052dbdcac1fda66e235dbecb186a9ccf69380576e7b363",
3010
+ "env": "ERP_IMAGE_TAG",
3011
+ "composeService": "exe-erp",
3012
+ "healthUrl": "http://127.0.0.1:8069/api/method/ping",
3013
+ "healthHost": "localhost",
3014
+ "required": false,
3015
+ "category": "app",
3016
+ "description": "Enterprise Resource Planning",
3017
+ "gitSha": "d185286873dcfa11e4b3f9672c4e23efea240cc5"
3018
+ },
3019
+ "gotrue": {
3020
+ "image": "update.askexe.com/askexe/gotrue:v2.172.1@sha256:b0dd7aa28dd1f9a8bd31f136c8b912661f701d9b863171e5843cb08f18f49de4",
3021
+ "composeService": "gotrue",
3022
+ "healthUrl": "http://127.0.0.1:9999/health",
3023
+ "category": "infra"
3024
+ },
3025
+ "redis": {
3026
+ "image": "update.askexe.com/askexe/redis:7.4-alpine@sha256:6ab0b6e7381779332f97b8ca76193e45b0756f38d4c0dcda72dbb3c32061ab99",
3027
+ "composeService": "redis",
3028
+ "category": "infra"
3029
+ },
3030
+ "clickhouse": {
3031
+ "image": "update.askexe.com/askexe/clickhouse-server:24.8.4.13-alpine@sha256:88a45f9e328549b2579256c46ee38e5c0e25ae58303d9eb6d9c7ed8d6d2bbf3c",
3032
+ "composeService": "clickhouse",
3033
+ "category": "infra"
3034
+ },
3035
+ "cloudflared": {
3036
+ "image": "update.askexe.com/askexe/cloudflared:2026-07@sha256:ba461b8aa9c042156dbd39c38657fe7431bafa063220eab8d5330a523863da9f",
3037
+ "composeService": "cloudflared",
3038
+ "category": "infra"
3039
+ },
3040
+ "exe-sso-edge": {
3041
+ "image": "update.askexe.com/askexe/nginx:alpine@sha256:20316569d8f81a160065d7d2a5eeffc7ca97d79022462ee255fd23fa103a6b5c",
3042
+ "composeService": "exe-sso-edge",
3043
+ "category": "infra"
3044
+ },
3045
+ "exe-otel-collector": {
3046
+ "image": "update.askexe.com/askexe/otel-collector-contrib:0.114.0@sha256:37fa87091cfaaec7234a27e4e395a40c31c2bfaea97a349a4afef6d9e9681197",
3047
+ "composeService": "exe-otel-collector",
3048
+ "category": "infra"
3049
+ },
3050
+ "dashboard": {
3051
+ "image": "update.askexe.com/askexe/exe-dashboard:v0.9.382@sha256:43c4eb52d89d977021d29df73bcfa6f9d769ab4debf90e81240b59a4c165bab0",
3052
+ "env": "DASHBOARD_IMAGE_TAG",
3053
+ "composeService": "exe-dashboard",
3054
+ "healthUrl": "http://127.0.0.1:3301/health",
3055
+ "required": false,
3056
+ "category": "optional",
3057
+ "description": "Customer dashboard at dashboard.<apex> — credits, usage, API keys, billing"
3058
+ }
3059
+ },
3060
+ "rolloutStage": "ga"
2809
3061
  }
2810
3062
  },
2811
3063
  "signature": {
2812
3064
  "keyId": "exe-stack-1",
2813
3065
  "alg": "ed25519",
2814
- "signature": "UAQm9FB5Ai8KaBSGe6LEkBfXZ3XtBFT/5/8DozCK1v7f8llD33AhrAF11HEttf33z3w/weWhxZEXG3yGIWw/Dg=="
3066
+ "signature": "slzGaEhMxBaItfNzC80+bNJs4C3skBapi8TbSsVRRf7iWa/WFowmc9vvnnluoLKdWdsi8gqxdFUSFaxkul5sAg=="
2815
3067
  }
2816
3068
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 1,
3
- "verified_at": "2026-09-08T02:19:11.078Z",
4
- "manifest_sha256": "b55b6c21dd560116c3ce9ca67bbfc648b6a910b0bed064e64b9f36e13576ea74",
5
- "package_version": "0.9.381"
3
+ "verified_at": "2026-09-09T09:12:16.097Z",
4
+ "manifest_sha256": "c3ae50f3aee170892131cbd9cd4bf821b1a20be63261b2ff9081b3a763993c6b",
5
+ "package_version": "0.9.383"
6
6
  }
@@ -7,23 +7,23 @@ import {
7
7
  resolveAgentAttribution,
8
8
  resolveAgentForPayload,
9
9
  writeActiveAgent
10
- } from "./chunk-TKTEFYPH.js";
11
- import "./chunk-K4ESASPL.js";
10
+ } from "./chunk-4KNZKUDK.js";
11
+ import "./chunk-MUCNYSJP.js";
12
12
  import "./chunk-CVYC6DUW.js";
13
13
  import "./chunk-GJV3WDWM.js";
14
- import "./chunk-MAOKR5AL.js";
14
+ import "./chunk-ZVPVLYBG.js";
15
15
  import "./chunk-BBMTVAE3.js";
16
16
  import "./chunk-TKDITWDN.js";
17
17
  import "./chunk-5YEUPUV4.js";
18
- import "./chunk-GODDBYPL.js";
18
+ import "./chunk-FPAPXMJA.js";
19
19
  import "./chunk-YYB5PMTK.js";
20
20
  import "./chunk-L5CGXEZC.js";
21
21
  import "./chunk-CL4J4757.js";
22
22
  import "./chunk-ZQEJ4IX2.js";
23
23
  import "./chunk-FXU7JOXK.js";
24
- import "./chunk-ZIG7VPJV.js";
25
- import "./chunk-HSGBZSCA.js";
24
+ import "./chunk-MMS2HBRT.js";
26
25
  import "./chunk-RH4AH3YB.js";
26
+ import "./chunk-HSGBZSCA.js";
27
27
  import "./chunk-JKKZGDLP.js";
28
28
  import "./chunk-MLKGABMK.js";
29
29
  export {
@@ -8,23 +8,23 @@ import {
8
8
  resolveAgentAttribution,
9
9
  resolveAgentForPayload,
10
10
  writeActiveAgent
11
- } from "./chunk-TKTEFYPH.js";
12
- import "./chunk-K4ESASPL.js";
11
+ } from "./chunk-4KNZKUDK.js";
12
+ import "./chunk-MUCNYSJP.js";
13
13
  import "./chunk-CVYC6DUW.js";
14
14
  import "./chunk-GJV3WDWM.js";
15
- import "./chunk-MAOKR5AL.js";
15
+ import "./chunk-ZVPVLYBG.js";
16
16
  import "./chunk-BBMTVAE3.js";
17
17
  import "./chunk-TKDITWDN.js";
18
18
  import "./chunk-5YEUPUV4.js";
19
- import "./chunk-GODDBYPL.js";
19
+ import "./chunk-FPAPXMJA.js";
20
20
  import "./chunk-YYB5PMTK.js";
21
21
  import "./chunk-L5CGXEZC.js";
22
22
  import "./chunk-CL4J4757.js";
23
23
  import "./chunk-ZQEJ4IX2.js";
24
24
  import "./chunk-FXU7JOXK.js";
25
- import "./chunk-ZIG7VPJV.js";
26
- import "./chunk-HSGBZSCA.js";
25
+ import "./chunk-MMS2HBRT.js";
27
26
  import "./chunk-RH4AH3YB.js";
27
+ import "./chunk-HSGBZSCA.js";
28
28
  import "./chunk-JKKZGDLP.js";
29
29
  import "./chunk-MLKGABMK.js";
30
30
  export {
@@ -1,24 +1,24 @@
1
1
  import {
2
2
  loadAgentConfig
3
- } from "./chunk-GZOG2MAX.js";
3
+ } from "./chunk-L5EPGGDP.js";
4
4
  import "./chunk-AM7S2TY6.js";
5
5
  import {
6
6
  loadEmployeesSync,
7
7
  validateEmployeeName
8
- } from "./chunk-MAOKR5AL.js";
8
+ } from "./chunk-ZVPVLYBG.js";
9
9
  import "./chunk-BBMTVAE3.js";
10
10
  import "./chunk-TKDITWDN.js";
11
11
  import "./chunk-5YEUPUV4.js";
12
- import "./chunk-GODDBYPL.js";
12
+ import "./chunk-FPAPXMJA.js";
13
13
  import "./chunk-YYB5PMTK.js";
14
14
  import "./chunk-L5CGXEZC.js";
15
15
  import "./chunk-CL4J4757.js";
16
16
  import "./chunk-ZQEJ4IX2.js";
17
17
  import "./chunk-FXU7JOXK.js";
18
18
  import "./chunk-WNBZJSQT.js";
19
- import "./chunk-ZIG7VPJV.js";
20
- import "./chunk-HSGBZSCA.js";
19
+ import "./chunk-MMS2HBRT.js";
21
20
  import "./chunk-RH4AH3YB.js";
21
+ import "./chunk-HSGBZSCA.js";
22
22
  import "./chunk-JKKZGDLP.js";
23
23
  import "./chunk-MLKGABMK.js";
24
24
 
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  agentLoop
3
- } from "./chunk-KBR5LIWD.js";
3
+ } from "./chunk-DZ3VKZ3C.js";
4
4
  import "./chunk-JRLNE3T2.js";
5
5
  import "./chunk-2O2UKMUE.js";
6
6
  import "./chunk-HF25XPZE.js";
@@ -10,7 +10,7 @@ import {
10
10
  insertOntologyForMemory,
11
11
  ontologyPayload,
12
12
  stableId
13
- } from "./chunk-4G5MWV7O.js";
13
+ } from "./chunk-7C33VMAN.js";
14
14
  import "./chunk-MLKGABMK.js";
15
15
  export {
16
16
  ONTOLOGY_YIELD_EVERY,
@@ -7,16 +7,16 @@ import {
7
7
  import {
8
8
  artifactObjectId,
9
9
  encryptSyncBlob
10
- } from "./chunk-MP4ST7RO.js";
10
+ } from "./chunk-PJ2ZJUM2.js";
11
11
  import "./chunk-TWMWHDOY.js";
12
- import "./chunk-4GZTBLJG.js";
13
- import "./chunk-AVMLC2MR.js";
12
+ import "./chunk-AYOCLUGP.js";
13
+ import "./chunk-CZKDWW76.js";
14
14
  import {
15
15
  EXE_AI_DIR,
16
16
  loadConfigSync
17
- } from "./chunk-ZIG7VPJV.js";
18
- import "./chunk-HSGBZSCA.js";
17
+ } from "./chunk-MMS2HBRT.js";
19
18
  import "./chunk-RH4AH3YB.js";
19
+ import "./chunk-HSGBZSCA.js";
20
20
  import "./chunk-JKKZGDLP.js";
21
21
  import "./chunk-MLKGABMK.js";
22
22
 
@@ -5,10 +5,10 @@ import {
5
5
  backfillKillSwitchEnabled,
6
6
  computeBackfillDisabled,
7
7
  countActionableNullVectors
8
- } from "./chunk-IHXW4VUI.js";
9
- import "./chunk-ZIG7VPJV.js";
10
- import "./chunk-HSGBZSCA.js";
8
+ } from "./chunk-5IADGFGR.js";
9
+ import "./chunk-MMS2HBRT.js";
11
10
  import "./chunk-RH4AH3YB.js";
11
+ import "./chunk-HSGBZSCA.js";
12
12
  import "./chunk-JKKZGDLP.js";
13
13
  import "./chunk-MLKGABMK.js";
14
14
  export {