@askexenow/exe-os 0.9.374 → 0.9.376
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/deploy/compose/.env.customer.example +16 -1
- package/deploy/compose/.env.example +16 -1
- package/deploy/compose/docker-compose.yml +80 -18
- package/deploy/compose/gateway-watchdog.sh +17 -0
- package/deploy/compose/generate-env.ts +41 -1
- package/deploy/compose/sso-edge/default.conf.template +59 -63
- package/deploy/compose/sso-edge/error-pages/404.html +129 -0
- package/deploy/compose/sso-edge/error-pages/500.html +129 -0
- package/deploy/compose/sso-edge/error-pages/503.html +118 -0
- package/deploy/compose/sso-edge/sso-redirect.conf +115 -92
- package/dist/.dist-verified.json +3 -3
- package/dist/{active-agent-ONPPEWQV.js → active-agent-BOBBUJ74.js} +6 -6
- package/dist/{active-agent-UJKMG7LJ.js → active-agent-GFGEGK2U.js} +6 -6
- package/dist/{agent-defs-generator-ZWI6DXOE.js → agent-defs-generator-OX6UFPRX.js} +5 -5
- package/dist/{agent-loop-OYHJKNYH.js → agent-loop-7ZRH56EX.js} +1 -1
- package/dist/{agentic-ontology-WHFJ3QFS.js → agentic-ontology-DT3VOXBT.js} +1 -1
- package/dist/{backfill-metadata-3OUSQD5V.js → backfill-metadata-VRP6PTPP.js} +9 -9
- package/dist/{backup-verify-ZKTUYLTA.js → backup-verify-LWHKGOOV.js} +1 -1
- package/dist/behavior-injection-GMZKZ3BT.js +83 -0
- package/dist/behavior-promotion-QPC4AQ24.js +62 -0
- package/dist/{behaviors-ZJ45TFBJ.js → behaviors-GPI4BLTC.js} +16 -14
- package/dist/bin/agentic-ontology-backfill.js +10 -10
- package/dist/bin/agentic-reflection-backfill.js +11 -11
- package/dist/bin/agentic-semantic-label.js +10 -10
- package/dist/bin/backfill-conversations.js +14 -12
- package/dist/bin/backfill-responses.js +14 -12
- package/dist/bin/backfill-vectors.js +16 -14
- package/dist/bin/bulk-sync-postgres.js +21 -19
- package/dist/bin/cc-doctor.js +19 -11
- package/dist/bin/cleanup-stale-review-tasks.js +27 -26
- package/dist/bin/cli.js +83 -109
- package/dist/bin/daemon-restart-handoff.js +2 -1
- package/dist/bin/deferred-daemon-restart.js +118 -110
- package/dist/bin/exe-actions.js +176 -0
- package/dist/bin/exe-agent-config.js +5 -5
- package/dist/bin/exe-agent.js +23 -23
- package/dist/bin/exe-assign.js +16 -14
- package/dist/bin/exe-boot.js +91 -71
- package/dist/bin/exe-call.js +8 -8
- package/dist/bin/exe-cicd.js +1210 -0
- package/dist/bin/exe-cloud.js +70 -37
- package/dist/bin/exe-config-dump.js +5 -5
- package/dist/bin/exe-dispatch.js +28 -27
- package/dist/bin/exe-doctor.js +12 -11
- package/dist/bin/exe-export-behaviors.js +20 -18
- package/dist/bin/exe-forget.js +11 -11
- package/dist/bin/exe-gateway.js +10 -10
- package/dist/bin/exe-healthcheck.js +22 -10
- package/dist/bin/exe-heartbeat.js +33 -32
- package/dist/bin/exe-kill.js +32 -31
- package/dist/bin/exe-launch-agent.js +76 -54
- package/dist/bin/exe-mcp.js +10 -6
- package/dist/bin/exe-memory-reads.js +9 -9
- package/dist/bin/exe-model-supervisor.js +138 -0
- package/dist/bin/exe-new-employee.js +14 -14
- package/dist/bin/exe-os-mcp-proxy.js +10 -6
- package/dist/bin/exe-pending-messages.js +28 -27
- package/dist/bin/exe-pending-notifications.js +27 -26
- package/dist/bin/exe-pending-reviews.js +28 -27
- package/dist/bin/exe-rename.js +9 -9
- package/dist/bin/exe-repo-truth.js +1 -1
- package/dist/bin/exe-review.js +31 -30
- package/dist/bin/exe-search.js +10 -10
- package/dist/bin/exe-session-cleanup.js +32 -31
- package/dist/bin/exe-settings.js +21 -19
- package/dist/bin/exe-start-codex.js +31 -25
- package/dist/bin/exe-start-opencode.js +24 -22
- package/dist/bin/exe-start.sh +11 -2
- package/dist/bin/exe-status.js +29 -28
- package/dist/bin/exe-support.js +3 -3
- package/dist/bin/exe-team.js +7 -7
- package/dist/bin/exe-timers.js +2 -1
- package/dist/bin/exe-watchdog.js +170 -16
- package/dist/bin/generate-hook-manifest.js +8 -41
- package/dist/bin/git-sweep.js +28 -27
- package/dist/bin/graph-backfill.js +11 -11
- package/dist/bin/graph-export.js +10 -10
- package/dist/bin/hooks-cli.js +289 -0
- package/dist/bin/import-history.js +14 -14
- package/dist/bin/install.js +130 -116
- package/dist/bin/intercom-check.js +5 -5
- package/dist/bin/mcp-sessions.js +2 -2
- package/dist/bin/orchestration-metrics.js +7 -7
- package/dist/bin/postgres-agentic-reflection-backfill.js +4 -4
- package/dist/bin/postgres-agentic-semantic-backfill.js +4 -4
- package/dist/bin/pre-publish.js +1 -1
- package/dist/bin/reconcile-backlog.js +2 -2
- package/dist/bin/registry-proxy.js +2 -2
- package/dist/bin/scan-tasks.js +52 -38
- package/dist/bin/setup.js +1 -1
- package/dist/bin/shard-migrate.js +9 -9
- package/dist/bin/stack-update.js +10 -5
- package/dist/bin/verify-stack.js +3 -1
- package/dist/bin/vps-health-gate.js +1 -1
- package/dist/{boot-generation-JKVZ4ZAT.js → boot-generation-BN6GKASY.js} +6 -6
- package/dist/{boot-review-sections-2M6BTG73.js → boot-review-sections-OQ5JGSOD.js} +26 -25
- package/dist/{branch-hygiene-U5GFRSTP.js → branch-hygiene-QLD77IMJ.js} +1 -1
- package/dist/build-manifest.json +1186 -1106
- package/dist/{capability-cards-5IMJT6J7.js → capability-cards-EDZ62HKG.js} +5 -5
- package/dist/{capacity-monitor-SAXCQK7O.js → capacity-monitor-6GMTVILS.js} +28 -27
- package/dist/{catchup-brief-U2TXBLHD.js → catchup-brief-SGGBMDUP.js} +32 -31
- package/dist/{cc-binary-detect-6TNIY5JX.js → cc-binary-detect-ZR6WNOUU.js} +1 -3
- package/dist/{chunk-NKETJCB5.js → chunk-2ODXCCMR.js} +18 -3
- package/dist/{hook-integrity-KGAV6ZC2.js → chunk-3L72UBUH.js} +28 -15
- package/dist/chunk-3OX5S7KZ.js +273 -0
- package/dist/{chunk-W75GTHR3.js → chunk-3SRZNJKD.js} +1 -1
- package/dist/{chunk-I4DNJFDR.js → chunk-42IFYZUN.js} +4 -4
- package/dist/{chunk-JHI5WMK5.js → chunk-473JUDCT.js} +5 -5
- package/dist/{chunk-ANLFH23R.js → chunk-4F5CNI65.js} +1 -1
- package/dist/{chunk-AWWKRZMB.js → chunk-4KVSCQND.js} +87 -14
- package/dist/{chunk-ZCERWHY2.js → chunk-4M6RXJEY.js} +33 -23
- package/dist/{chunk-YTSXPJUQ.js → chunk-4YJEEOYT.js} +3 -3
- package/dist/{chunk-6RKKVPYF.js → chunk-4YUGB637.js} +1 -1
- package/dist/{chunk-XXOPG4BW.js → chunk-4ZSOKEDY.js} +3 -3
- package/dist/{chunk-55BEFF4V.js → chunk-5DF4Y6EC.js} +1 -1
- package/dist/{chunk-4QCFFW2H.js → chunk-5QCIWWFA.js} +46 -0
- package/dist/{chunk-3UUX5OY4.js → chunk-5QKLWJ4Z.js} +1 -1
- package/dist/{chunk-YSLGFPWX.js → chunk-5UBWBXLF.js} +3 -3
- package/dist/chunk-5WA4DG2A.js +117 -0
- package/dist/{chunk-4EN3IZ3Q.js → chunk-64ODONK2.js} +67 -1
- package/dist/{chunk-TAMDAOCU.js → chunk-66CGXQUA.js} +239 -39
- package/dist/{chunk-QHJR7IMX.js → chunk-6F3FQCAQ.js} +3 -3
- package/dist/{chunk-WMEYJT4R.js → chunk-6FG34V6D.js} +15 -14
- package/dist/{chunk-NMH5ZQPU.js → chunk-6KQ6WMTI.js} +1 -1
- package/dist/{chunk-IRVOXUSK.js → chunk-6WKBTZVL.js} +10 -4
- package/dist/{chunk-NOKJCF27.js → chunk-7INEFMVU.js} +9 -3
- package/dist/{chunk-GSJLB6JI.js → chunk-7THUQU44.js} +34 -8
- package/dist/{chunk-HDLAB7W3.js → chunk-7UH2JWBF.js} +1 -1
- package/dist/{chunk-KTCXJWJG.js → chunk-7UNMSF5O.js} +1 -1
- package/dist/{chunk-JTVIANUB.js → chunk-AEUGIJDO.js} +3 -1
- package/dist/{chunk-DSJI76XL.js → chunk-AHNVFBVB.js} +113 -16
- package/dist/{chunk-IBS2FAI4.js → chunk-AUKRBHHZ.js} +4 -1
- package/dist/{chunk-AKLJ4JH3.js → chunk-BBK2TSK3.js} +1 -1
- package/dist/{chunk-ZL4AGWAH.js → chunk-BNWWVYRN.js} +6 -5
- package/dist/{chunk-PY3FOMRN.js → chunk-BQEZPRUC.js} +4 -4
- package/dist/{chunk-DIXXEE3S.js → chunk-BQXYXJYC.js} +721 -309
- package/dist/{chunk-ORM7ZFKC.js → chunk-BZ546I4Q.js} +32 -0
- package/dist/{chunk-3KDCORDO.js → chunk-C2UN464N.js} +1 -1
- package/dist/{chunk-75H4R62K.js → chunk-CBPNZFSU.js} +0 -2
- package/dist/{chunk-YLXTKI6M.js → chunk-CHO5SNWR.js} +1 -1
- package/dist/{chunk-MXPNVSXI.js → chunk-CIEVY5TD.js} +11 -11
- package/dist/{chunk-UBK7HK3J.js → chunk-CKLJT2DH.js} +2 -2
- package/dist/{chunk-MOGA4Q7F.js → chunk-CKOJP7JI.js} +1 -1
- package/dist/{chunk-V3W3SATA.js → chunk-CL4J4757.js} +1 -1
- package/dist/{chunk-XNNECNDL.js → chunk-CQFWTWC6.js} +13 -13
- package/dist/{chunk-PDVXWXTL.js → chunk-CROVXJ4S.js} +3 -3
- package/dist/{chunk-WJG344NC.js → chunk-CWSLTSL6.js} +8 -8
- package/dist/{chunk-VMTZ4RUW.js → chunk-DDMGQ5Q3.js} +60 -26
- package/dist/{chunk-YKC7QDZH.js → chunk-DN24VTS5.js} +31 -6
- package/dist/{chunk-IN6CAM4F.js → chunk-EHAN752X.js} +7 -7
- package/dist/{chunk-EXTZSNWL.js → chunk-EPHSISMT.js} +2 -2
- package/dist/{chunk-6EZQUNE6.js → chunk-FCMQVEVL.js} +36 -3
- package/dist/{chunk-3L2QU5ZF.js → chunk-FS7XF7SE.js} +1 -1
- package/dist/{chunk-LGS2V2XD.js → chunk-FUKVP54K.js} +66 -19
- package/dist/{chunk-44TLJZJ5.js → chunk-FX2QRSRT.js} +1 -1
- package/dist/{chunk-PWRC5XZO.js → chunk-FXZ6VGFW.js} +16 -8
- package/dist/{chunk-NT7W4RXD.js → chunk-GKDAQL45.js} +1 -1
- package/dist/{chunk-EKE37MO4.js → chunk-GOT5ZHPX.js} +3 -3
- package/dist/{chunk-SLLLOOEI.js → chunk-GPJIBLP4.js} +1 -0
- package/dist/{chunk-EKYYMIVT.js → chunk-GPUOUUHA.js} +10 -1
- package/dist/{chunk-PB5S7YOF.js → chunk-GXNBPTPJ.js} +1 -1
- package/dist/{chunk-4SJ4LK4V.js → chunk-HE34XVD5.js} +5 -5
- package/dist/{chunk-6VHOQ3IM.js → chunk-HHAKXIKX.js} +12 -9
- package/dist/{chunk-TFKCERAK.js → chunk-HHT527PV.js} +38 -41
- package/dist/{chunk-ZSODLMFV.js → chunk-HIVOLPLD.js} +1 -40
- package/dist/{chunk-UCFC2AEI.js → chunk-I3LDTSWU.js} +1 -1
- package/dist/{chunk-Q3AXXKDF.js → chunk-IKXH4BFC.js} +5 -5
- package/dist/chunk-IMYGYIAI.js +23 -0
- package/dist/{chunk-GS7LIT34.js → chunk-IPHLUZ37.js} +1 -1
- package/dist/{chunk-M4IRPXSZ.js → chunk-IZA7XW2Q.js} +3 -3
- package/dist/{chunk-SEQIPGLU.js → chunk-IZLML47J.js} +1 -1
- package/dist/{chunk-4HKTO2SV.js → chunk-JRMHGO5B.js} +1 -1
- package/dist/{chunk-U73AC5AN.js → chunk-JSTTPYL3.js} +16 -16
- package/dist/{chunk-6SCGLHJ7.js → chunk-JVWLHBAV.js} +4 -4
- package/dist/{chunk-OVEQE6YS.js → chunk-K7UNIEB4.js} +254 -48
- package/dist/{chunk-HNWS7YHN.js → chunk-KBR5LIWD.js} +1 -1
- package/dist/{chunk-AKLQSC6W.js → chunk-KI7O64XV.js} +328 -98
- package/dist/{chunk-XXFKSJYA.js → chunk-KK3MIY5C.js} +5 -5
- package/dist/{chunk-U6SUKSZR.js → chunk-KO3OHI6V.js} +3 -3
- package/dist/{chunk-NJFJWQNN.js → chunk-L5CGXEZC.js} +27 -22
- package/dist/{chunk-NBXDXKLC.js → chunk-LK3XQDBP.js} +1 -1
- package/dist/{chunk-T3QUKNLI.js → chunk-LM443ORV.js} +1 -1
- package/dist/{chunk-BBSIEYF5.js → chunk-LNAFLXL7.js} +12 -4
- package/dist/{chunk-32YV32VA.js → chunk-LTUA5EYI.js} +122 -11
- package/dist/{chunk-23MVDXLY.js → chunk-MAXD5JQL.js} +11 -10
- package/dist/{chunk-GNUAL43X.js → chunk-MFASHRJ6.js} +5 -5
- package/dist/chunk-MFYMDGE7.js +37 -0
- package/dist/{chunk-VKJGHAZT.js → chunk-MGVILAYU.js} +57 -13
- package/dist/{chunk-DB55JZHU.js → chunk-MSLWRWTI.js} +1 -1
- package/dist/{chunk-C2L622QJ.js → chunk-NB5IRTC4.js} +52 -44
- package/dist/{chunk-2ZOEC4KC.js → chunk-ND75TGPR.js} +2 -2
- package/dist/{chunk-VRTCVZND.js → chunk-NE34MWVL.js} +142 -16
- package/dist/{chunk-S2WBS6BG.js → chunk-NMOFLWDY.js} +1 -1
- package/dist/{chunk-CRCB5S7I.js → chunk-NPXKGBVZ.js} +140 -23
- package/dist/{chunk-JSMDRKPJ.js → chunk-NRBGUIPE.js} +1 -1
- package/dist/{chunk-4LWBC7CM.js → chunk-NY6SBR4O.js} +1 -1
- package/dist/{chunk-UCUOGVDX.js → chunk-O3K2C22L.js} +13 -1
- package/dist/{chunk-R522MWAR.js → chunk-OATET4BV.js} +2 -2
- package/dist/chunk-OOZU5H3T.js +86 -0
- package/dist/{chunk-XFTEX77S.js → chunk-OQ4FNDRG.js} +28 -6
- package/dist/{chunk-VYQ7B7DI.js → chunk-OWVX52XF.js} +4 -4
- package/dist/{chunk-AETLDRZB.js → chunk-PEAAX6UA.js} +1 -1
- package/dist/{chunk-UM3N6VND.js → chunk-PFAVHC5N.js} +5 -5
- package/dist/chunk-PMVVUIHH.js +85 -0
- package/dist/chunk-PPMGQFLJ.js +2317 -0
- package/dist/{chunk-7TSBV3SD.js → chunk-PTY2N23C.js} +310 -2
- package/dist/{chunk-UKLN57Q5.js → chunk-PZ5SKYK6.js} +4 -4
- package/dist/{chunk-636LKCKE.js → chunk-Q6ZLQMP2.js} +1 -1
- package/dist/{chunk-N7VEP5B3.js → chunk-QFR5EKZG.js} +29 -7
- package/dist/{chunk-YMP2QSOP.js → chunk-QN56VQ6Z.js} +1 -1
- package/dist/{chunk-6YVUR3OU.js → chunk-QR3BUMOS.js} +2 -2
- package/dist/{chunk-XZ65ST2I.js → chunk-QV5CQLQH.js} +2 -2
- package/dist/{chunk-DJOIMFKV.js → chunk-REZIGNA6.js} +2 -2
- package/dist/{chunk-UQGSBM3U.js → chunk-RFPMXR6B.js} +11 -0
- package/dist/{chunk-DN4YVV4Z.js → chunk-RSABKW6B.js} +1 -1
- package/dist/{chunk-LP4GB656.js → chunk-RZNP35SI.js} +2 -2
- package/dist/{chunk-NUTZJZKW.js → chunk-SKTAZGFI.js} +10 -42
- package/dist/{chunk-TQAZTRQ3.js → chunk-SVXUT2DN.js} +4 -4
- package/dist/{chunk-DJ7YXOTU.js → chunk-T7EF5CQO.js} +3 -3
- package/dist/{chunk-QAEWWYHL.js → chunk-TDF2XKLK.js} +5 -1
- package/dist/{chunk-ZGYNKA3O.js → chunk-TT5BBVLX.js} +29 -31
- package/dist/{chunk-5H47VHB7.js → chunk-UWX6MMCX.js} +1 -1
- package/dist/{chunk-XL5MFGMR.js → chunk-V4YNN7PA.js} +10 -3
- package/dist/{chunk-SL6KQYDU.js → chunk-V5DDXXMP.js} +7 -7
- package/dist/{chunk-DZKPOSFD.js → chunk-VH6SPPNA.js} +1 -1
- package/dist/{chunk-LDNYSMPZ.js → chunk-VJUUI2VT.js} +1 -1
- package/dist/{chunk-CBCGDEJA.js → chunk-VN5WOOAQ.js} +42 -6
- package/dist/{chunk-EXDW3E2R.js → chunk-VPHJ2LUI.js} +165 -15
- package/dist/{chunk-GOMQ7PVQ.js → chunk-WJC6AAJN.js} +1 -1
- package/dist/{chunk-GJI77VDO.js → chunk-WVBVUVZB.js} +6 -5
- package/dist/{chunk-A6PDF4BO.js → chunk-XTQ7R2PA.js} +2 -2
- package/dist/{chunk-L6RXG36J.js → chunk-Y2HD2YB7.js} +1 -1
- package/dist/{chunk-KTU3EAWK.js → chunk-YAACLBZ7.js} +5 -5
- package/dist/{chunk-7GE2EQ23.js → chunk-YGVAKKGJ.js} +11 -6
- package/dist/chunk-YLHACCCB.js +166 -0
- package/dist/{chunk-PLZSZOZN.js → chunk-YP6UGVEY.js} +3 -3
- package/dist/{chunk-ULIBLJ6W.js → chunk-YYC553FO.js} +5 -5
- package/dist/{chunk-T35RCQFE.js → chunk-YZPEQW7H.js} +9 -8
- package/dist/{chunk-KI5PFRG6.js → chunk-ZKGWHT56.js} +60 -2
- package/dist/{chunk-NUK7EEN5.js → chunk-ZKJ5S23O.js} +33 -13
- package/dist/chunk-ZLPS3GR7.js +146 -0
- package/dist/{chunk-XH7YL7JM.js → chunk-ZMX22HSS.js} +50 -6
- package/dist/{chunk-JY5GAZYC.js → chunk-ZQEJ4IX2.js} +4 -0
- package/dist/{chunk-R4CBHKZ2.js → chunk-ZS5JO6QV.js} +7 -6
- package/dist/{cleanup-graph-garbage-DPJGO52H.js → cleanup-graph-garbage-LAPIZGFX.js} +12 -12
- package/dist/{cloud-sync-command-JPNTT4OQ.js → cloud-sync-command-QAZ2NWRA.js} +11 -2
- package/dist/{cloud-sync-db-init-V2LWIUQU.js → cloud-sync-db-init-HAGVF32Y.js} +1 -1
- package/dist/{cloud-sync-shutdown-BNALPWGX.js → cloud-sync-shutdown-DAEPCFVK.js} +5 -5
- package/dist/{co-activation-CMNSWS6B.js → co-activation-523TKQPZ.js} +5 -5
- package/dist/{co-occurrence-WRI2NAN6.js → co-occurrence-PQUCTENN.js} +36 -17
- package/dist/{code-context-index-NOJSHLPN.js → code-context-index-LIDOFKOR.js} +6 -4
- package/dist/{code-context-watcher-VZNZU3BO.js → code-context-watcher-4F7K2N3U.js} +6 -4
- package/dist/{content-extractor-NXYNEF5K.js → content-extractor-DJM5EUDA.js} +2 -2
- package/dist/{conversation-entity-extractor-74252CAO.js → conversation-entity-extractor-THGKQ5RD.js} +5 -5
- package/dist/{crdt-sync-B3JN6AIV.js → crdt-sync-32B55NOJ.js} +1 -1
- package/dist/{crm-webhook-GYWQRFET.js → crm-webhook-FHRISFYQ.js} +2 -2
- package/dist/{cto-delegation-gate-LQHVLEMW.js → cto-delegation-gate-O6XPGECP.js} +27 -26
- package/dist/{daemon-auth-QZHEO7IQ.js → daemon-auth-PNKHERLV.js} +6 -1
- package/dist/daemon-drift-N2GKUBAO.js +15 -0
- package/dist/{daemon-orchestration-5HIQALZH.js → daemon-orchestration-BWLSJG2X.js} +33 -30
- package/dist/{daemon-ready-P2BR2XP5.js → daemon-ready-BN6EZLTQ.js} +1 -1
- package/dist/{daemon-ready-signal-CKXPUMJ2.js → daemon-ready-signal-PNDMVKPJ.js} +3 -1
- package/dist/{daemon-restart-circuit-breaker-SMTWFX27.js → daemon-restart-circuit-breaker-CD4VMCU7.js} +1 -1
- package/dist/daemon-restart-report-FIO5HZTJ.js +15 -0
- package/dist/{daemon-timer-report-TNJH5SFY.js → daemon-timer-report-6UK5PSDP.js} +2 -1
- package/dist/{db-integrity-events-2DTFO37N.js → db-integrity-events-GYGANKZV.js} +1 -1
- package/dist/{destructive-data-guard-BVFWPPIS.js → destructive-data-guard-HHWUBIGS.js} +1 -1
- package/dist/{doc-graph-extractor-PQHDHQPQ.js → doc-graph-extractor-HOKOV7BE.js} +10 -10
- package/dist/{documents-C4SSPJMC.js → documents-HWEJMONR.js} +16 -14
- package/dist/{dreaming-XAO3FCBV.js → dreaming-FMNDODG2.js} +31 -30
- package/dist/{employee-boot-brief-W4OHUMRQ.js → employee-boot-brief-DBFROOQJ.js} +35 -34
- package/dist/{entity-boost-3UWGXG5O.js → entity-boost-5V4W6NFA.js} +1 -1
- package/dist/{exe-drift-AG2KMKD5.js → exe-drift-V55UAYRT.js} +6 -6
- package/dist/{exe-export-IC5BT335.js → exe-export-LHN42ZUS.js} +18 -16
- package/dist/{exe-import-A35ZLDPG.js → exe-import-M536BEZC.js} +18 -16
- package/dist/{exe-key-TCMJNYLA.js → exe-key-37XIR22X.js} +111 -107
- package/dist/{exe-org-JXCR3JYZ.js → exe-org-7TDIRNTE.js} +14 -14
- package/dist/{exe-snapshot-SV6SRIG6.js → exe-snapshot-EOUBCIQK.js} +34 -33
- package/dist/{fast-db-init-L2RGKJWH.js → fast-db-init-GWUZ746B.js} +1 -1
- package/dist/{founder-context-D4HFIESJ.js → founder-context-6LQKET4A.js} +2 -2
- package/dist/{fts-integrity-4YB34KWX.js → fts-integrity-PLAL6NMG.js} +1 -1
- package/dist/gateway/index.js +17 -17
- package/dist/{git-main-guard-VTW4N3CM.js → git-main-guard-BGICS25C.js} +1 -1
- package/dist/{git-staleness-TN7CYGFG.js → git-staleness-QNNXJK3W.js} +5 -5
- package/dist/{global-procedures-YFDEIOG7.js → global-procedures-NMQGF54V.js} +7 -7
- package/dist/{gotrue-session-ODZ2ERJX.js → gotrue-session-U4H3UGHL.js} +1 -3
- package/dist/{graph-auto-extract-3YR3TYRW.js → graph-auto-extract-7POGAKHM.js} +10 -10
- package/dist/{graph-query-AP5R6ZHO.js → graph-query-ZEDO4BDF.js} +1 -1
- package/dist/{graph-rag-Z2KCJTPK.js → graph-rag-JA7XN7NO.js} +5 -5
- package/dist/hook-integrity-6NLSNTXD.js +15 -0
- package/dist/{hook-prefetch-K5DN3TOQ.js → hook-prefetch-4KH3D4YU.js} +28 -26
- package/dist/hook-tamper-log-Z4PWC7N4.js +90 -0
- package/dist/hooks/bug-report-worker.js +31 -30
- package/dist/hooks/codex-stop-task-finalizer.js +33 -32
- package/dist/hooks/commit-complete.js +30 -29
- package/dist/hooks/error-recall.js +12 -12
- package/dist/hooks/exe-heartbeat-hook.js +7 -7
- package/dist/hooks/ingest-worker.js +17 -15
- package/dist/hooks/ingest.js +20 -20
- package/dist/hooks/instructions-loaded.js +9 -9
- package/dist/hooks/manifest.json +20 -20
- package/dist/hooks/notification.js +8 -8
- package/dist/hooks/post-compact.js +7 -7
- package/dist/hooks/post-tool-combined.js +14 -14
- package/dist/hooks/pre-compact.js +30 -29
- package/dist/hooks/pre-tool-use.js +303 -489
- package/dist/hooks/prompt-submit.js +61 -54
- package/dist/hooks/session-end.js +35 -34
- package/dist/hooks/session-start.js +18 -18
- package/dist/hooks/stop.js +36 -35
- package/dist/hooks/subagent-stop.js +32 -31
- package/dist/hooks/summary-worker.js +36 -35
- package/dist/index.js +39 -38
- package/dist/{installer-LK35OX6R.js → installer-M34Q7LAS.js} +25 -10
- package/dist/{installer-54HTN5RE.js → installer-POV6TDQ5.js} +12 -8
- package/dist/{installer-LLWKZI2S.js → installer-S624ZOMB.js} +12 -8
- package/dist/{intercom-queue-5NOT2RKI.js → intercom-queue-MKDWAEUV.js} +26 -25
- package/dist/lib/cloud-sync.js +27 -19
- package/dist/lib/consolidation.js +12 -12
- package/dist/lib/database.js +5 -5
- package/dist/lib/db-backup.js +7 -1
- package/dist/lib/db-daemon-client.js +8 -6
- package/dist/lib/db-write-worker.js +4 -4
- package/dist/lib/db.js +5 -5
- package/dist/lib/device-registry.js +1 -1
- package/dist/lib/embedder.js +6 -4
- package/dist/lib/employee-templates.js +8 -8
- package/dist/lib/employees.js +5 -5
- package/dist/lib/exe-daemon-client.js +5 -3
- package/dist/lib/exe-daemon.js +333 -262
- package/dist/lib/hybrid-search.js +10 -10
- package/dist/lib/identity-templates.js +1 -1
- package/dist/lib/identity.js +17 -7
- package/dist/lib/license.js +2 -2
- package/dist/lib/messaging.js +27 -26
- package/dist/lib/post-tool-memory.js +9 -9
- package/dist/lib/registry-proxy.js +3 -1
- package/dist/lib/reminders.js +6 -6
- package/dist/lib/schedules.js +11 -11
- package/dist/lib/session-registry.js +11 -7
- package/dist/lib/session-wrappers.js +1 -1
- package/dist/lib/skill-learning.js +17 -15
- package/dist/lib/status-brief.js +2 -1
- package/dist/lib/store.js +9 -9
- package/dist/lib/task-router.js +6 -6
- package/dist/lib/tasks.js +28 -27
- package/dist/lib/tmux-routing.js +26 -25
- package/dist/lib/tmux-status.js +5 -1
- package/dist/lib/token-spend.js +6 -6
- package/dist/{license-gate-JVMB6OFD.js → license-gate-2QNMBAZU.js} +3 -3
- package/dist/{license-sync-5VYS2F2W.js → license-sync-FEDKH5MD.js} +2 -2
- package/dist/{mailbox-inbox-4MEUOL3J.js → mailbox-inbox-XE72D3AX.js} +2 -2
- package/dist/{mailbox-outbox-J6WIF3UY.js → mailbox-outbox-DNDDP2HW.js} +1 -1
- package/dist/mcp/register-tools.js +110 -106
- package/dist/mcp/server.js +113 -109
- package/dist/mcp/tools/complete-reminder.js +7 -7
- package/dist/mcp/tools/create-reminder.js +7 -7
- package/dist/mcp/tools/create-task.js +30 -29
- package/dist/mcp/tools/deactivate-behavior.js +18 -16
- package/dist/mcp/tools/list-reminders.js +7 -7
- package/dist/mcp/tools/list-tasks.js +30 -29
- package/dist/mcp/tools/send-message.js +33 -30
- package/dist/mcp/tools/update-task.js +29 -28
- package/dist/{mcp-child-registry-OTG4MWO7.js → mcp-child-registry-DVHYAHPW.js} +2 -2
- package/dist/{mcp-health-HNVSWKFA.js → mcp-health-B5EKRCZG.js} +2 -2
- package/dist/{mcp-http-config-DQWL7U2Z.js → mcp-http-config-ZJ7XHWT7.js} +10 -6
- package/dist/{mcp-session-identity-277GASTQ.js → mcp-session-identity-PEVM7VIP.js} +26 -25
- package/dist/{memory-cards-3S2ZQPR7.js → memory-cards-VN5DEWPD.js} +9 -9
- package/dist/{memory-graph-extractor-A6DFEFIN.js → memory-graph-extractor-TMEB6WLA.js} +11 -11
- package/dist/{memory-poisoning-defense-ZVP4H6DY.js → memory-poisoning-defense-DYHARQ2G.js} +5 -5
- package/dist/{memory-pressure-watchdog-6W5F6R7H.js → memory-pressure-watchdog-J6Q3SIBL.js} +27 -26
- package/dist/{memory-queue-client-ADSDP6OX.js → memory-queue-client-QC2OTMJB.js} +6 -4
- package/dist/{memory-reflection-BKB2YOE6.js → memory-reflection-ZYJUOSFX.js} +9 -9
- package/dist/{message-queue-client-XQN7QABL.js → message-queue-client-OEQCGSWC.js} +1 -25
- package/dist/{notification-ledger-CLGM7ODF.js → notification-ledger-TG6EFYBP.js} +29 -28
- package/dist/{notifications-MACUZPYP.js → notifications-LGYY22W5.js} +26 -25
- package/dist/{orchestration-events-N7LYMUGA.js → orchestration-events-JPHB6NPY.js} +6 -6
- package/dist/{orchestrator-4X24EWHV.js → orchestrator-IC4WGP6L.js} +28 -27
- package/dist/{org-brief-session-FZOFMO5U.js → org-brief-session-DEPHWCQR.js} +9 -9
- package/dist/{org-consent-policy-O5E6HXBL.js → org-consent-policy-T27AO5OJ.js} +2 -2
- package/dist/{org-join-POWUG25F.js → org-join-A3YXC5RB.js} +2 -2
- package/dist/{org-key-admin-E7EMDOZZ.js → org-key-admin-SQFHCVP2.js} +3 -3
- package/dist/{org-partner-runtime-FODONVTM.js → org-partner-runtime-L7L2WWGN.js} +10 -10
- package/dist/{org-row-visibility-VX4AVV5Q.js → org-row-visibility-M54Z6ZH3.js} +1 -1
- package/dist/{pipeline-router-6GGT2ZW3.js → pipeline-router-NKYAUR3Y.js} +6 -6
- package/dist/{plan-limits-FUN76LYY.js → plan-limits-ISRRGF23.js} +8 -8
- package/dist/{platform-procedures-7YSCLF4Z.js → platform-procedures-Z7ZGBJWN.js} +1 -1
- package/dist/{project-boot-3Q65LCIP.js → project-boot-BLYGVUJH.js} +4 -1
- package/dist/{project-name-LJVFMYTQ.js → project-name-WKSNNKXK.js} +6 -6
- package/dist/{projection-worker-4OANGP5K.js → projection-worker-RNYPE46G.js} +2 -2
- package/dist/{prospective-memory-KR3P4T6N.js → prospective-memory-GEO6E3UL.js} +5 -5
- package/dist/{push-notifications-NCZLH6DI.js → push-notifications-EY6BXZUY.js} +27 -26
- package/dist/{reproject-worktree-memories-PWYKPB2U.js → reproject-worktree-memories-DAA5GWMH.js} +28 -27
- package/dist/{reranker-6V3C2AO4.js → reranker-7OADQPMG.js} +1 -1
- package/dist/{retrieval-health-5D7O6VH6.js → retrieval-health-FCEDWN2P.js} +2 -2
- package/dist/{review-polling-QW3LJ4KN.js → review-polling-G52BR4MC.js} +27 -26
- package/dist/runtime/index.js +39 -38
- package/dist/{session-events-T45SSTMF.js → session-events-P6E2373E.js} +27 -26
- package/dist/{session-kill-telemetry-QSPVJGBF.js → session-kill-telemetry-OHNJMIVT.js} +27 -26
- package/dist/{session-mcp-config-SC5BLWZG.js → session-mcp-config-WFZAH6R5.js} +2 -1
- package/dist/{session-scope-KRWE54C4.js → session-scope-DKOHPQPJ.js} +26 -25
- package/dist/{setup-wizard-GP3TBTPF.js → setup-wizard-RNU3RFBE.js} +1 -1
- package/dist/{skill-refinement-C7JTMLJG.js → skill-refinement-AKJTHFXC.js} +6 -6
- package/dist/{stack-generate-manifest-MFMDWRUP.js → stack-generate-manifest-7WJZWSPK.js} +163 -15
- package/dist/{stack-promote-EKSCYY63.js → stack-promote-OP2URGFF.js} +4 -4
- package/dist/{stack-release-2GZAAFO4.js → stack-release-MY6U2QIO.js} +31 -8
- package/dist/{stack-update-J6JXSTAZ.js → stack-update-QSHSLUTZ.js} +3 -3
- package/dist/{steward-gate-BFCCMCSW.js → steward-gate-KMLS5ECC.js} +6 -6
- package/dist/{subagent-brief-injection-ED36PLYY.js → subagent-brief-injection-HCKZQZBF.js} +37 -36
- package/dist/{support-inbox-YW47SYJF.js → support-inbox-UBXU5RKV.js} +11 -11
- package/dist/{support-outbox-HFJWG52M.js → support-outbox-G2NG2U5K.js} +2 -2
- package/dist/{sweep-budget-KMPJ7O5Z.js → sweep-budget-YGLCNXZZ.js} +9 -3
- package/dist/{task-enforcement-CECTQX4U.js → task-enforcement-2GR7HU6V.js} +27 -26
- package/dist/{task-request-inbox-Q5T4N5K7.js → task-request-inbox-ANCVK2VG.js} +2 -2
- package/dist/{task-scope-ERVEUEYU.js → task-scope-QANJJXXB.js} +30 -29
- package/dist/{tasks-crud-ZRQNJXQ2.js → tasks-crud-45WOIMIM.js} +44 -25
- package/dist/{tasks-notify-MIZH4C2O.js → tasks-notify-ZJS4MA3S.js} +29 -26
- package/dist/{tasks-review-Z7J2P6DG.js → tasks-review-ZVPKY47Z.js} +26 -25
- package/dist/{telemetry-upload-LVQUQYFP.js → telemetry-upload-VY3UWAEL.js} +10 -10
- package/dist/{token-budget-BU4NOVZF.js → token-budget-XHX6XFEC.js} +6 -6
- package/dist/{tool-capability-index-7F42MOJT.js → tool-capability-index-6HLZU437.js} +1 -1
- package/dist/{tool-telemetry-O27EVMBR.js → tool-telemetry-GBDI4AXR.js} +1 -1
- package/dist/tui/App.js +36 -35
- package/dist/{tui-data-TPWWBIUQ.js → tui-data-IQFE3UW3.js} +30 -29
- package/dist/{typed-messages-RCMPEKJN.js → typed-messages-P2HLLA62.js} +1 -1
- package/dist/{update-support-F2F5537B.js → update-support-BDN5AK4R.js} +25 -22
- package/dist/{work-claims-B73X5NE7.js → work-claims-PDQNLE5K.js} +7 -7
- package/dist/{work-state-heartbeat-P4YX6E2R.js → work-state-heartbeat-CH6BLQKV.js} +1 -1
- package/dist/{worker-gate-BEEIIVWA.js → worker-gate-NUUSQMBT.js} +1 -3
- package/dist/{workflow-engine-5X46PFCW.js → workflow-engine-RZ7QEI3Z.js} +2 -2
- package/dist/{worktree-W47CIMJ6.js → worktree-Q25PZST6.js} +11 -7
- package/dist/worktree-ownership-guard-4LKMW6PW.js +421 -0
- package/dist/{worktree-sweep-BNBD4RFX.js → worktree-sweep-EV5YQ2OB.js} +8 -8
- package/package.json +15 -3
- package/release-notes.json +5 -5
- package/src/commands/exe.md +16 -16
- package/stack.release.json +9 -8
- package/dist/behavior-injection-M6UYZCMW.js +0 -63
- package/dist/chunk-BJ7AVSY6.js +0 -50
- package/dist/daemon-restart-report-EIVD6WDJ.js +0 -10
- package/dist/worktree-ownership-guard-OUWJROW2.js +0 -88
- /package/dist/{chunk-GQOEWNVM.js → chunk-4EG4DT4F.js} +0 -0
- /package/dist/{chunk-AISULNGL.js → chunk-BRAIWGMF.js} +0 -0
- /package/dist/{chunk-NRG7KZIP.js → chunk-HQEAZDAC.js} +0 -0
- /package/dist/{chunk-VZAFWPAY.js → chunk-IK4344V5.js} +0 -0
- /package/dist/{chunk-GM7TLYOK.js → chunk-K3VDF6II.js} +0 -0
- /package/dist/{chunk-2AJGV5UL.js → chunk-KM7DAG5J.js} +0 -0
- /package/dist/{chunk-YO4BO2CL.js → chunk-QIEYJ4KZ.js} +0 -0
- /package/dist/{chunk-WSQASFLP.js → chunk-VCTK5HRA.js} +0 -0
- /package/dist/{chunk-KQ6RJWRW.js → chunk-VPT6VMBG.js} +0 -0
- /package/dist/{chunk-6WIFPD2P.js → chunk-YZ4AEMR7.js} +0 -0
- /package/dist/{core-memory-7I7RE2SJ.js → core-memory-UIZKCY4L.js} +0 -0
- /package/dist/{memory-isolation-2TUZ7Z4K.js → memory-isolation-3GJ6WLYX.js} +0 -0
- /package/dist/{oauth-server-AYM37SQ4.js → oauth-server-ZRHXIRXQ.js} +0 -0
- /package/dist/{wiki-acl-IBQLLBTS.js → wiki-acl-MFOYK5F4.js} +0 -0
|
@@ -120,6 +120,20 @@ function getPaneCwd(windowName) {
|
|
|
120
120
|
return void 0;
|
|
121
121
|
}
|
|
122
122
|
}
|
|
123
|
+
function getPanePid(windowName) {
|
|
124
|
+
try {
|
|
125
|
+
const out = execFileSync(
|
|
126
|
+
"tmux",
|
|
127
|
+
["list-panes", "-t", windowName, "-F", "#{pane_pid}"],
|
|
128
|
+
{ encoding: "utf8", stdio: ["pipe", "pipe", "pipe"], timeout: 3e3 }
|
|
129
|
+
);
|
|
130
|
+
const pidStr = out.trim();
|
|
131
|
+
const pid = parseInt(pidStr, 10);
|
|
132
|
+
return Number.isNaN(pid) || pid <= 0 ? null : pid;
|
|
133
|
+
} catch {
|
|
134
|
+
return null;
|
|
135
|
+
}
|
|
136
|
+
}
|
|
123
137
|
async function getPaneCwdAsync(windowName) {
|
|
124
138
|
try {
|
|
125
139
|
const { promisify } = await import("util");
|
|
@@ -131,6 +145,22 @@ async function getPaneCwdAsync(windowName) {
|
|
|
131
145
|
return void 0;
|
|
132
146
|
}
|
|
133
147
|
}
|
|
148
|
+
async function getPanePidAsync(windowName) {
|
|
149
|
+
try {
|
|
150
|
+
const { promisify } = await import("util");
|
|
151
|
+
const { execFile } = await import("child_process");
|
|
152
|
+
const exec = promisify(execFile);
|
|
153
|
+
const { stdout } = await exec(
|
|
154
|
+
"tmux",
|
|
155
|
+
["list-panes", "-t", windowName, "-F", "#{pane_pid}"],
|
|
156
|
+
{ encoding: "utf8", timeout: 3e3 }
|
|
157
|
+
);
|
|
158
|
+
const pid = Number.parseInt(String(stdout ?? "").trim(), 10);
|
|
159
|
+
return Number.isNaN(pid) || pid <= 0 ? null : pid;
|
|
160
|
+
} catch {
|
|
161
|
+
return null;
|
|
162
|
+
}
|
|
163
|
+
}
|
|
134
164
|
function projectFromPath(dir) {
|
|
135
165
|
try {
|
|
136
166
|
const root = execFileSync("git", ["-C", dir, "rev-parse", "--show-toplevel"], {
|
|
@@ -330,7 +360,9 @@ export {
|
|
|
330
360
|
capturePaneLines,
|
|
331
361
|
capturePaneLinesAsync,
|
|
332
362
|
getPaneCwd,
|
|
363
|
+
getPanePid,
|
|
333
364
|
getPaneCwdAsync,
|
|
365
|
+
getPanePidAsync,
|
|
334
366
|
parseActivity,
|
|
335
367
|
parseContextPercentageFromLines,
|
|
336
368
|
parseContextPercentage,
|
|
@@ -22,7 +22,7 @@ var OrgOriginProvenanceError = class extends Error {
|
|
|
22
22
|
async function mintOrgOriginStamp(input) {
|
|
23
23
|
if (!input.orgId) throw new OrgOriginProvenanceError("An org-origin stamp requires a non-empty org_id (\xA71.5)");
|
|
24
24
|
if (!input.requestId) throw new OrgOriginProvenanceError("An org-origin stamp requires a request id");
|
|
25
|
-
const { getTaskRequest } = await import("./task-request-inbox-
|
|
25
|
+
const { getTaskRequest } = await import("./task-request-inbox-ANCVK2VG.js");
|
|
26
26
|
const req = getTaskRequest(input.orgId, input.requestId);
|
|
27
27
|
if (!req) {
|
|
28
28
|
throw new OrgOriginProvenanceError(
|
|
@@ -3,7 +3,6 @@ import { execSync } from "child_process";
|
|
|
3
3
|
import { existsSync, readFileSync, readdirSync } from "fs";
|
|
4
4
|
import path from "path";
|
|
5
5
|
var CC_NATIVE_ONLY_CUTOFF = "2.1.119";
|
|
6
|
-
var CC_SAFE_PINNED_VERSION = "2.1.98";
|
|
7
6
|
function detectAutoupdaterVar(varName, homeDir = process.env.HOME ?? process.env.USERPROFILE ?? "", env = process.env) {
|
|
8
7
|
if (env[varName] === "1") {
|
|
9
8
|
return { source: "env" };
|
|
@@ -186,7 +185,6 @@ function ccNativeBinaryWarningLine(status = detectCcNativeBinary(), env = proces
|
|
|
186
185
|
|
|
187
186
|
export {
|
|
188
187
|
CC_NATIVE_ONLY_CUTOFF,
|
|
189
|
-
CC_SAFE_PINNED_VERSION,
|
|
190
188
|
detectAutoupdaterVar,
|
|
191
189
|
isAutoupdaterDisabled,
|
|
192
190
|
resolveClaudeBinaryPath,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
WORK_STATE_HEARTBEAT_TOOL
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-IK4344V5.js";
|
|
4
4
|
import {
|
|
5
5
|
extractKeywords,
|
|
6
6
|
keywordsToString
|
|
@@ -12,7 +12,7 @@ import {
|
|
|
12
12
|
findScopedDuplicate,
|
|
13
13
|
governMemoryRecord,
|
|
14
14
|
schedulePostWriteMemoryHygiene
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-RSABKW6B.js";
|
|
16
16
|
import {
|
|
17
17
|
orgBus
|
|
18
18
|
} from "./chunk-MP2AFCGL.js";
|
|
@@ -23,13 +23,13 @@ import {
|
|
|
23
23
|
initPostgresOnlyDatabase,
|
|
24
24
|
initTurso,
|
|
25
25
|
isDaemonRoutingActive
|
|
26
|
-
} from "./chunk-
|
|
26
|
+
} from "./chunk-66CGXQUA.js";
|
|
27
27
|
import {
|
|
28
28
|
isPostgresBackendEnabled
|
|
29
29
|
} from "./chunk-YYB5PMTK.js";
|
|
30
30
|
import {
|
|
31
31
|
directWriterAllowed
|
|
32
|
-
} from "./chunk-
|
|
32
|
+
} from "./chunk-CL4J4757.js";
|
|
33
33
|
import {
|
|
34
34
|
EMBEDDING_DIM
|
|
35
35
|
} from "./chunk-FXU7JOXK.js";
|
|
@@ -82,7 +82,7 @@ function recordShardFailure(project, error) {
|
|
|
82
82
|
`[store] Shard circuit OPEN for "${project}" after ${state.failures} consecutive failures. Will retry in ${SHARD_CB_COOLDOWN_MS / 6e4}min. Last error: ${error}
|
|
83
83
|
`
|
|
84
84
|
);
|
|
85
|
-
void import("./orchestration-events-
|
|
85
|
+
void import("./orchestration-events-JPHB6NPY.js").then(({ recordOrchestrationEventBestEffort }) => {
|
|
86
86
|
recordOrchestrationEventBestEffort({
|
|
87
87
|
eventType: "shard.circuit_open",
|
|
88
88
|
source: "store.recordShardFailure",
|
|
@@ -186,7 +186,7 @@ async function initStore(options) {
|
|
|
186
186
|
);
|
|
187
187
|
_nextVersion = (Number(vResult.rows[0]?.max_v) || 0) + 1;
|
|
188
188
|
try {
|
|
189
|
-
const { loadGlobalProcedures } = await import("./global-procedures-
|
|
189
|
+
const { loadGlobalProcedures } = await import("./global-procedures-NMQGF54V.js");
|
|
190
190
|
await loadGlobalProcedures();
|
|
191
191
|
} catch (e) {
|
|
192
192
|
logStoreWarn("catch", e);
|
|
@@ -314,7 +314,7 @@ async function writeMemory(record) {
|
|
|
314
314
|
founder_id: record.founder_id ?? null
|
|
315
315
|
};
|
|
316
316
|
try {
|
|
317
|
-
const { checkMemoryPoisoning } = await import("./memory-poisoning-defense-
|
|
317
|
+
const { checkMemoryPoisoning } = await import("./memory-poisoning-defense-DYHARQ2G.js");
|
|
318
318
|
const poisonResult = await checkMemoryPoisoning({
|
|
319
319
|
memoryId: dbRow.id,
|
|
320
320
|
vector: Array.isArray(dbRow.vector) ? dbRow.vector : void 0,
|
|
@@ -513,19 +513,19 @@ async function flushBatch() {
|
|
|
513
513
|
_nextVersion = baseVersion;
|
|
514
514
|
if (insertedBatch.length > 0) {
|
|
515
515
|
try {
|
|
516
|
-
const { insertMemoryCardsForBatch } = await import("./memory-cards-
|
|
516
|
+
const { insertMemoryCardsForBatch } = await import("./memory-cards-VN5DEWPD.js");
|
|
517
517
|
await insertMemoryCardsForBatch(insertedBatch);
|
|
518
518
|
} catch (e) {
|
|
519
519
|
logStoreWarn("catch", e);
|
|
520
520
|
}
|
|
521
521
|
try {
|
|
522
|
-
const { insertOntologyForBatch } = await import("./agentic-ontology-
|
|
522
|
+
const { insertOntologyForBatch } = await import("./agentic-ontology-DT3VOXBT.js");
|
|
523
523
|
await insertOntologyForBatch(insertedBatch);
|
|
524
524
|
} catch (e) {
|
|
525
525
|
logStoreWarn("catch", e);
|
|
526
526
|
}
|
|
527
527
|
try {
|
|
528
|
-
const { extractGraphForBatch } = await import("./memory-graph-extractor-
|
|
528
|
+
const { extractGraphForBatch } = await import("./memory-graph-extractor-TMEB6WLA.js");
|
|
529
529
|
await extractGraphForBatch(insertedBatch);
|
|
530
530
|
} catch (e) {
|
|
531
531
|
logStoreWarn("catch", e);
|
|
@@ -680,7 +680,7 @@ async function searchMemories(queryVector, agentId, options) {
|
|
|
680
680
|
args.push(activeEmbeddingModel);
|
|
681
681
|
}
|
|
682
682
|
try {
|
|
683
|
-
const { founderScopeFilter } = await import("./founder-context-
|
|
683
|
+
const { founderScopeFilter } = await import("./founder-context-6LQKET4A.js");
|
|
684
684
|
const founderFilter = founderScopeFilter(options?.founderId);
|
|
685
685
|
sql += founderFilter.sql;
|
|
686
686
|
args.push(...founderFilter.args.filter((a) => a !== null));
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import {
|
|
2
2
|
behaviorTruncationNotice
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-LTUA5EYI.js";
|
|
4
4
|
import {
|
|
5
5
|
countActiveBehaviors,
|
|
6
6
|
listBehaviors
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-6FG34V6D.js";
|
|
8
8
|
import {
|
|
9
9
|
loadConfigSync
|
|
10
10
|
} from "./chunk-ZIG7VPJV.js";
|
|
@@ -1,14 +1,10 @@
|
|
|
1
|
-
import {
|
|
2
|
-
readPostinstallFailureMarker
|
|
3
|
-
} from "./chunk-PHBU4LGO.js";
|
|
4
|
-
import {
|
|
5
|
-
formatDegradations,
|
|
6
|
-
getRetrievalHealth
|
|
7
|
-
} from "./chunk-XFTEX77S.js";
|
|
8
1
|
import {
|
|
9
2
|
buildRestartReport,
|
|
10
3
|
formatRestartReport
|
|
11
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-VPHJ2LUI.js";
|
|
5
|
+
import {
|
|
6
|
+
readPostinstallFailureMarker
|
|
7
|
+
} from "./chunk-PHBU4LGO.js";
|
|
12
8
|
import {
|
|
13
9
|
EXE_HOOK_MANIFEST,
|
|
14
10
|
LEGACY_SPLIT_POST_TOOL_HOOK_MARKERS,
|
|
@@ -17,7 +13,11 @@ import {
|
|
|
17
13
|
import {
|
|
18
14
|
cleanupLocalSecretResidue,
|
|
19
15
|
inventoryLocalSecretResidue
|
|
20
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-7UH2JWBF.js";
|
|
17
|
+
import {
|
|
18
|
+
formatDegradations,
|
|
19
|
+
getRetrievalHealth
|
|
20
|
+
} from "./chunk-OQ4FNDRG.js";
|
|
21
21
|
import {
|
|
22
22
|
resolveAnthropicAuth
|
|
23
23
|
} from "./chunk-VGMACSEV.js";
|
|
@@ -27,7 +27,7 @@ import {
|
|
|
27
27
|
import {
|
|
28
28
|
offloadReadIfMain,
|
|
29
29
|
repairFtsTable
|
|
30
|
-
} from "./chunk-
|
|
30
|
+
} from "./chunk-66CGXQUA.js";
|
|
31
31
|
|
|
32
32
|
// src/bin/exe-doctor.ts
|
|
33
33
|
import os from "os";
|
|
@@ -718,7 +718,7 @@ function auditLocalSecretResidue() {
|
|
|
718
718
|
}
|
|
719
719
|
async function auditOutbox() {
|
|
720
720
|
try {
|
|
721
|
-
const { getOutboxStatus } = await import("./support-outbox-
|
|
721
|
+
const { getOutboxStatus } = await import("./support-outbox-G2NG2U5K.js");
|
|
722
722
|
return await getOutboxStatus();
|
|
723
723
|
} catch {
|
|
724
724
|
return {
|
|
@@ -1112,7 +1112,7 @@ function formatReport(report, flags) {
|
|
|
1112
1112
|
return lines.join("\n");
|
|
1113
1113
|
}
|
|
1114
1114
|
async function fixNullVectors() {
|
|
1115
|
-
const { tryAcquireWorkerSlot, registerWorkerPid } = await import("./worker-gate-
|
|
1115
|
+
const { tryAcquireWorkerSlot, registerWorkerPid } = await import("./worker-gate-NUUSQMBT.js");
|
|
1116
1116
|
if (!tryAcquireWorkerSlot()) {
|
|
1117
1117
|
process.stderr.write("[exe-doctor] Worker gate full \u2014 waiting for existing backfill workers to finish\n");
|
|
1118
1118
|
await new Promise((r) => setTimeout(r, 5e3));
|
|
@@ -1300,7 +1300,7 @@ async function main(argv = process.argv.slice(2)) {
|
|
|
1300
1300
|
console.log(formatRestartReport(restartReport));
|
|
1301
1301
|
return emptyAuditReport();
|
|
1302
1302
|
}
|
|
1303
|
-
const { fastDbInit } = await import("./fast-db-init-
|
|
1303
|
+
const { fastDbInit } = await import("./fast-db-init-GWUZ746B.js");
|
|
1304
1304
|
const client = await fastDbInit();
|
|
1305
1305
|
const report = await runAudit(client, flags);
|
|
1306
1306
|
console.log(formatReport(report, flags));
|
|
@@ -9,10 +9,10 @@ import {
|
|
|
9
9
|
import {
|
|
10
10
|
buildClaudeHttpMcpEntry,
|
|
11
11
|
buildClaudeStdioProxyMcpEntry
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-2ODXCCMR.js";
|
|
13
13
|
import {
|
|
14
14
|
ensureAllAgentSymlinks
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-4YUGB637.js";
|
|
16
16
|
import {
|
|
17
17
|
MCP_LEGACY_KEY,
|
|
18
18
|
MCP_PRIMARY_KEY
|
|
@@ -942,7 +942,7 @@ async function runInstaller(homeDir) {
|
|
|
942
942
|
);
|
|
943
943
|
}
|
|
944
944
|
try {
|
|
945
|
-
const { generateAgentDefs, summarizeAgentDefResults } = await import("./agent-defs-generator-
|
|
945
|
+
const { generateAgentDefs, summarizeAgentDefResults } = await import("./agent-defs-generator-OX6UFPRX.js");
|
|
946
946
|
const defResults = generateAgentDefs({ homeDir: resolvedHome });
|
|
947
947
|
process.stderr.write(`Agent definitions: ${summarizeAgentDefResults(defResults)}
|
|
948
948
|
`);
|
|
@@ -1,10 +1,3 @@
|
|
|
1
|
-
import {
|
|
2
|
-
IMessageAdapter
|
|
3
|
-
} from "./chunk-2SRG3B3D.js";
|
|
4
|
-
import {
|
|
5
|
-
createCRMWebhookHandler,
|
|
6
|
-
parseTwentyWebhook
|
|
7
|
-
} from "./chunk-NMH5ZQPU.js";
|
|
8
1
|
import {
|
|
9
2
|
WhatsAppAdapter
|
|
10
3
|
} from "./chunk-E426DOSY.js";
|
|
@@ -20,6 +13,13 @@ import {
|
|
|
20
13
|
import {
|
|
21
14
|
SlackAdapter
|
|
22
15
|
} from "./chunk-ORCCI2VV.js";
|
|
16
|
+
import {
|
|
17
|
+
IMessageAdapter
|
|
18
|
+
} from "./chunk-2SRG3B3D.js";
|
|
19
|
+
import {
|
|
20
|
+
createCRMWebhookHandler,
|
|
21
|
+
parseTwentyWebhook
|
|
22
|
+
} from "./chunk-6KQ6WMTI.js";
|
|
23
23
|
import {
|
|
24
24
|
BotRegistry,
|
|
25
25
|
BotRuntime,
|
|
@@ -42,7 +42,7 @@ import {
|
|
|
42
42
|
retryWithBackoff,
|
|
43
43
|
routeMessage,
|
|
44
44
|
validateGatewayConfig
|
|
45
|
-
} from "./chunk-
|
|
45
|
+
} from "./chunk-PZ5SKYK6.js";
|
|
46
46
|
import {
|
|
47
47
|
OllamaProvider
|
|
48
48
|
} from "./chunk-FWFFZGSC.js";
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import {
|
|
2
2
|
isPaneBusy
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-MAXD5JQL.js";
|
|
4
4
|
import {
|
|
5
5
|
recordSessionKill
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-SVXUT2DN.js";
|
|
7
7
|
import {
|
|
8
8
|
updateTask
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-4M6RXJEY.js";
|
|
10
10
|
import {
|
|
11
11
|
BUSY_PATTERN,
|
|
12
12
|
countPendingReviews,
|
|
@@ -15,6 +15,7 @@ import {
|
|
|
15
15
|
getSessionState,
|
|
16
16
|
getSessionStateAsync,
|
|
17
17
|
isExeSession,
|
|
18
|
+
liveSessionHoldingTask,
|
|
18
19
|
queryTaskRows,
|
|
19
20
|
queueIntercom,
|
|
20
21
|
sendIntercomAsync,
|
|
@@ -22,30 +23,27 @@ import {
|
|
|
22
23
|
sessionScopeFilter,
|
|
23
24
|
strictSessionScopeFilter,
|
|
24
25
|
writeNotification
|
|
25
|
-
} from "./chunk-
|
|
26
|
-
import {
|
|
27
|
-
isValidSessionScope
|
|
28
|
-
} from "./chunk-BTSWFMEH.js";
|
|
26
|
+
} from "./chunk-KI7O64XV.js";
|
|
29
27
|
import {
|
|
30
28
|
LEASE_MINUTES,
|
|
31
29
|
isLeaseExpired
|
|
32
30
|
} from "./chunk-E23LNUWJ.js";
|
|
33
31
|
import {
|
|
34
32
|
listSessions
|
|
35
|
-
} from "./chunk-
|
|
33
|
+
} from "./chunk-ZMX22HSS.js";
|
|
34
|
+
import {
|
|
35
|
+
getTransport
|
|
36
|
+
} from "./chunk-VI4ATC6I.js";
|
|
36
37
|
import {
|
|
37
38
|
capturePaneLinesAsync,
|
|
38
39
|
listTmuxSessions,
|
|
39
40
|
listTmuxSessionsAsync,
|
|
40
41
|
parseContextPercentage,
|
|
41
42
|
parseContextPercentageAsync
|
|
42
|
-
} from "./chunk-
|
|
43
|
-
import {
|
|
44
|
-
getTransport
|
|
45
|
-
} from "./chunk-VI4ATC6I.js";
|
|
43
|
+
} from "./chunk-BZ546I4Q.js";
|
|
46
44
|
import {
|
|
47
45
|
recordOrchestrationEventBestEffort
|
|
48
|
-
} from "./chunk-
|
|
46
|
+
} from "./chunk-3SRZNJKD.js";
|
|
49
47
|
import {
|
|
50
48
|
checkDispatchStatus,
|
|
51
49
|
readTerminalLauncherFailure,
|
|
@@ -55,10 +53,13 @@ import {
|
|
|
55
53
|
import {
|
|
56
54
|
getAgentRuntime
|
|
57
55
|
} from "./chunk-GZOG2MAX.js";
|
|
56
|
+
import {
|
|
57
|
+
isValidSessionScope
|
|
58
|
+
} from "./chunk-BTSWFMEH.js";
|
|
58
59
|
import {
|
|
59
60
|
killIfSameProcess,
|
|
60
61
|
processStartedAt
|
|
61
|
-
} from "./chunk-
|
|
62
|
+
} from "./chunk-GPJIBLP4.js";
|
|
62
63
|
import {
|
|
63
64
|
recordKillIntent
|
|
64
65
|
} from "./chunk-V3WLC5TJ.js";
|
|
@@ -67,10 +68,10 @@ import {
|
|
|
67
68
|
getCoordinatorName,
|
|
68
69
|
isCoordinatorName,
|
|
69
70
|
shouldAutoInstance
|
|
70
|
-
} from "./chunk-
|
|
71
|
+
} from "./chunk-66CGXQUA.js";
|
|
71
72
|
import {
|
|
72
73
|
eventLoopBlockedMarkerPath
|
|
73
|
-
} from "./chunk-
|
|
74
|
+
} from "./chunk-ZQEJ4IX2.js";
|
|
74
75
|
import {
|
|
75
76
|
loadConfigSync
|
|
76
77
|
} from "./chunk-ZIG7VPJV.js";
|
|
@@ -144,7 +145,8 @@ async function hasOpenTasks(client, agentId, sessionScope) {
|
|
|
144
145
|
const scope = sessionScopeFilter(sessionScope);
|
|
145
146
|
const result = await client.execute({
|
|
146
147
|
sql: `SELECT 1 FROM tasks
|
|
147
|
-
WHERE assigned_to = ? AND status IN ('open', 'in_progress', 'blocked')
|
|
148
|
+
WHERE assigned_to = ? AND status IN ('open', 'in_progress', 'blocked')
|
|
149
|
+
AND execution_mode = 'durable_tmux'${scope.sql}
|
|
148
150
|
LIMIT 1`,
|
|
149
151
|
args: [agentId, ...scope.args]
|
|
150
152
|
});
|
|
@@ -158,7 +160,8 @@ async function hasNeedsReview(client, agentId, sessionScope) {
|
|
|
158
160
|
const scope = sessionScopeFilter(sessionScope);
|
|
159
161
|
const result = await client.execute({
|
|
160
162
|
sql: `SELECT 1 FROM tasks
|
|
161
|
-
WHERE assigned_to = ? AND status = 'needs_review'
|
|
163
|
+
WHERE assigned_to = ? AND status = 'needs_review'
|
|
164
|
+
AND execution_mode = 'durable_tmux'${scope.sql}
|
|
162
165
|
LIMIT 1`,
|
|
163
166
|
args: [agentId, ...scope.args]
|
|
164
167
|
});
|
|
@@ -883,7 +886,8 @@ function createIdleNudgeRealDeps(_getClient) {
|
|
|
883
886
|
sessionScope: sessionScope ?? null,
|
|
884
887
|
projectName: null,
|
|
885
888
|
orderBy: "CASE priority WHEN 'p0' THEN 0 WHEN 'p1' THEN 1 ELSE 2 END",
|
|
886
|
-
limit: 1
|
|
889
|
+
limit: 1,
|
|
890
|
+
extraConditions: ["execution_mode = 'durable_tmux'"]
|
|
887
891
|
});
|
|
888
892
|
if (rows.length === 0) return null;
|
|
889
893
|
const r = rows[0];
|
|
@@ -1292,6 +1296,7 @@ async function pollOrphanedTasks(deps, nowMs = Date.now()) {
|
|
|
1292
1296
|
process.stderr.write("[daemon-orch] query tasks by agent: " + (e instanceof Error ? e.message : String(e)) + "\n");
|
|
1293
1297
|
return [];
|
|
1294
1298
|
}
|
|
1299
|
+
tasksByAgent = tasksByAgent.filter((task) => task.executionMode !== "checklist");
|
|
1295
1300
|
const coordinatorSet = new Set(coordinatorSessions);
|
|
1296
1301
|
const agentTasks = /* @__PURE__ */ new Map();
|
|
1297
1302
|
let deadScopeStateDirty = false;
|
|
@@ -1594,6 +1599,22 @@ async function pollOrphanedTasks(deps, nowMs = Date.now()) {
|
|
|
1594
1599
|
continue;
|
|
1595
1600
|
}
|
|
1596
1601
|
spawnAttempts++;
|
|
1602
|
+
if (deps.liveSessionHoldingTask) {
|
|
1603
|
+
let holder = null;
|
|
1604
|
+
try {
|
|
1605
|
+
holder = await deps.liveSessionHoldingTask(topTask.taskId, topTask.sessionScope);
|
|
1606
|
+
} catch {
|
|
1607
|
+
holder = null;
|
|
1608
|
+
}
|
|
1609
|
+
if (holder) {
|
|
1610
|
+
spawnAttempts--;
|
|
1611
|
+
process.stderr.write(
|
|
1612
|
+
`[auto-wake] SUPPRESS ${agentId} task ${topTask.taskId} -- already in_progress on live session ${holder}; not spawning a duplicate
|
|
1613
|
+
`
|
|
1614
|
+
);
|
|
1615
|
+
continue;
|
|
1616
|
+
}
|
|
1617
|
+
}
|
|
1597
1618
|
if (deps.acquireDispatchClaim) {
|
|
1598
1619
|
let claimed = true;
|
|
1599
1620
|
try {
|
|
@@ -2424,13 +2445,14 @@ function createAutoWakeRealDeps(getClient, projectDir, listTmuxSessionsAsync2) {
|
|
|
2424
2445
|
const deviceId = loadDeviceId();
|
|
2425
2446
|
const rows = await queryTaskRows({
|
|
2426
2447
|
status: ["open", "in_progress"],
|
|
2427
|
-
columns: "assigned_to, assigned_by, id, priority, session_scope, project_name, spawn_runtime",
|
|
2448
|
+
columns: "assigned_to, assigned_by, id, priority, session_scope, project_name, spawn_runtime, execution_mode",
|
|
2428
2449
|
sessionScope: null,
|
|
2429
2450
|
// daemon-level: no session filter
|
|
2430
2451
|
projectName: null,
|
|
2431
2452
|
deviceId,
|
|
2432
2453
|
orderBy: "CASE priority WHEN 'p0' THEN 0 WHEN 'p1' THEN 1 WHEN 'p2' THEN 2 ELSE 3 END, created_at ASC",
|
|
2433
|
-
limit: 1e3
|
|
2454
|
+
limit: 1e3,
|
|
2455
|
+
extraConditions: ["execution_mode = 'durable_tmux'"]
|
|
2434
2456
|
});
|
|
2435
2457
|
return rows.map((r) => ({
|
|
2436
2458
|
agentId: String(r.assigned_to),
|
|
@@ -2439,7 +2461,8 @@ function createAutoWakeRealDeps(getClient, projectDir, listTmuxSessionsAsync2) {
|
|
|
2439
2461
|
sessionScope: r.session_scope ? String(r.session_scope) : null,
|
|
2440
2462
|
projectName: r.project_name ? String(r.project_name) : null,
|
|
2441
2463
|
assignedBy: r.assigned_by ? String(r.assigned_by) : null,
|
|
2442
|
-
spawnRuntime: r.spawn_runtime != null ? String(r.spawn_runtime) : null
|
|
2464
|
+
spawnRuntime: r.spawn_runtime != null ? String(r.spawn_runtime) : null,
|
|
2465
|
+
executionMode: r.execution_mode === "checklist" ? "checklist" : "durable_tmux"
|
|
2443
2466
|
}));
|
|
2444
2467
|
},
|
|
2445
2468
|
// DEFECT 1 (dup-spawn): honor create_task's fresh dispatch signal so auto-wake
|
|
@@ -2453,6 +2476,7 @@ function createAutoWakeRealDeps(getClient, projectDir, listTmuxSessionsAsync2) {
|
|
|
2453
2476
|
// atomic lock as create_task / nudge / resume — one spawner per task.
|
|
2454
2477
|
acquireDispatchClaim: (taskId, assignedTo) => tryAcquireDispatchClaim(taskId, assignedTo),
|
|
2455
2478
|
releaseDispatchClaim: (taskId, assignedTo, reason) => releaseDispatchClaim(taskId, assignedTo, reason),
|
|
2479
|
+
liveSessionHoldingTask: (taskId, sessionScope) => liveSessionHoldingTask(taskId, sessionScope),
|
|
2456
2480
|
// C1: registry lookup + re-parent for dead-scope escalation.
|
|
2457
2481
|
listRegisteredSessions: () => listSessions(),
|
|
2458
2482
|
reparentTask: async (taskId, newSessionScope) => {
|
|
@@ -2788,6 +2812,11 @@ function reapZombieAgentProcesses(deps) {
|
|
|
2788
2812
|
// macOS framework helpers
|
|
2789
2813
|
/\/Applications\/Claude/i,
|
|
2790
2814
|
// Launched from /Applications
|
|
2815
|
+
// Codex Desktop's bundled services include binaries named `codex` and a
|
|
2816
|
+
// computer-use app under ~/.codex. Anchor these at the executable position:
|
|
2817
|
+
// a genuine CLI may legitimately mention Codex.app later in its arguments.
|
|
2818
|
+
/^\/Applications\/Codex\.app\/Contents\//i,
|
|
2819
|
+
/^\/Users\/[^/]+\/\.codex\/computer-use\/Codex Computer Use\.app\/Contents\//i,
|
|
2791
2820
|
// Bug af3a7da8: the OpenAI Codex desktop app ships a Chrome extension at
|
|
2792
2821
|
// ~/.codex/plugins/cache/openai-bundled/chrome/.../extension-h that runs as a
|
|
2793
2822
|
// Google Chrome renderer. Its args contain "codex" (the path), so /\bcodex\b/
|
|
@@ -3376,7 +3405,7 @@ async function reapOrphanedWorktrees(deps, nowMs = Date.now()) {
|
|
|
3376
3405
|
}
|
|
3377
3406
|
async function createWorktreeReaperRealDeps() {
|
|
3378
3407
|
const { getPaneCwdAsync } = await import("./lib/tmux-status.js");
|
|
3379
|
-
const { getGitRootAsync, isWorktreeDirtyAsync, GIT_CRYPT_SMUDGE_BYPASS_ARGS } = await import("./worktree-
|
|
3408
|
+
const { getGitRootAsync, isWorktreeDirtyAsync, GIT_CRYPT_SMUDGE_BYPASS_ARGS } = await import("./worktree-Q25PZST6.js");
|
|
3380
3409
|
const { statSync: statSync3 } = await import("fs");
|
|
3381
3410
|
const { basename: basename2 } = await import("path");
|
|
3382
3411
|
const { promisify: promisify2 } = await import("util");
|
|
@@ -3618,9 +3647,12 @@ async function gcStaleCheckpoints() {
|
|
|
3618
3647
|
return 0;
|
|
3619
3648
|
}
|
|
3620
3649
|
}
|
|
3650
|
+
function shouldNotifyTaskGroupViaIntercom(executionMode) {
|
|
3651
|
+
return executionMode !== "checklist";
|
|
3652
|
+
}
|
|
3621
3653
|
async function pollTaskGroupBarriers() {
|
|
3622
3654
|
try {
|
|
3623
|
-
const { checkAndFireBarriers } = await import("./tasks-crud-
|
|
3655
|
+
const { checkAndFireBarriers } = await import("./tasks-crud-45WOIMIM.js");
|
|
3624
3656
|
const firedGroupIds = await checkAndFireBarriers();
|
|
3625
3657
|
if (firedGroupIds.length === 0) return 0;
|
|
3626
3658
|
const { getClient } = await import("./lib/database.js");
|
|
@@ -3628,7 +3660,7 @@ async function pollTaskGroupBarriers() {
|
|
|
3628
3660
|
for (const groupId of firedGroupIds) {
|
|
3629
3661
|
try {
|
|
3630
3662
|
const groupRow = await client.execute({
|
|
3631
|
-
sql: "SELECT title, coordinator, session_scope, aggregated_result FROM task_groups WHERE id = ?",
|
|
3663
|
+
sql: "SELECT title, coordinator, session_scope, aggregated_result, execution_mode FROM task_groups WHERE id = ?",
|
|
3632
3664
|
args: [groupId]
|
|
3633
3665
|
});
|
|
3634
3666
|
if (groupRow.rows.length === 0) continue;
|
|
@@ -3636,6 +3668,7 @@ async function pollTaskGroupBarriers() {
|
|
|
3636
3668
|
const coordinator = String(group.coordinator);
|
|
3637
3669
|
const sessionScope = group.session_scope != null ? String(group.session_scope) : null;
|
|
3638
3670
|
const title = String(group.title);
|
|
3671
|
+
const executionMode = group.execution_mode === "checklist" ? "checklist" : "durable_tmux";
|
|
3639
3672
|
let summary = `Task group "${title}" barrier fired.`;
|
|
3640
3673
|
try {
|
|
3641
3674
|
const agg = JSON.parse(String(group.aggregated_result ?? "{}"));
|
|
@@ -3644,7 +3677,7 @@ async function pollTaskGroupBarriers() {
|
|
|
3644
3677
|
if (agg.timed_out) summary += " (timed out)";
|
|
3645
3678
|
} catch {
|
|
3646
3679
|
}
|
|
3647
|
-
if (sessionScope) {
|
|
3680
|
+
if (sessionScope && shouldNotifyTaskGroupViaIntercom(executionMode)) {
|
|
3648
3681
|
try {
|
|
3649
3682
|
if (isCoordinatorName(coordinator) && isExeSession(sessionScope)) {
|
|
3650
3683
|
await sendIntercomAsync(sessionScope, { force: true, reason: "completion", callerSessionScope: sessionScope });
|
|
@@ -3770,5 +3803,6 @@ export {
|
|
|
3770
3803
|
reapOrphanedWorktrees,
|
|
3771
3804
|
createWorktreeReaperRealDeps,
|
|
3772
3805
|
gcStaleCheckpoints,
|
|
3806
|
+
shouldNotifyTaskGroupViaIntercom,
|
|
3773
3807
|
pollTaskGroupBarriers
|
|
3774
3808
|
};
|