@askexenow/exe-os 0.9.367 → 0.9.368
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.askexe-control-plane.example +3 -1
- package/deploy/compose/.env.customer.example +6 -2
- package/deploy/compose/.env.example +8 -2
- package/deploy/compose/docker-compose.yml +21 -2
- package/deploy/compose/generate-env.ts +21 -1
- package/dist/.dist-verified.json +3 -3
- package/dist/{active-agent-V3CUDNED.js → active-agent-6WNC756A.js} +3 -3
- package/dist/{active-agent-R6Q7UEUD.js → active-agent-RDTJGZHP.js} +3 -3
- package/dist/{agent-defs-generator-MLPRGY75.js → agent-defs-generator-M5AUL3WM.js} +2 -2
- package/dist/{agentic-ontology-5FMQWGDZ.js → agentic-ontology-ZJBRYETW.js} +1 -1
- package/dist/{backfill-metadata-YXUMCKRV.js → backfill-metadata-Q4X23XLR.js} +5 -5
- package/dist/{backup-verify-GYHKAX7K.js → backup-verify-UKLX6IEK.js} +1 -1
- package/dist/behavior-injection-C3HEKSJY.js +60 -0
- package/dist/{behaviors-O6HKTSOF.js → behaviors-UCMAREU3.js} +8 -6
- package/dist/bin/agentic-ontology-backfill.js +6 -6
- package/dist/bin/agentic-reflection-backfill.js +7 -7
- package/dist/bin/agentic-semantic-label.js +6 -6
- package/dist/bin/backfill-conversations.js +5 -5
- package/dist/bin/backfill-responses.js +5 -5
- package/dist/bin/backfill-vectors.js +6 -6
- package/dist/bin/bulk-sync-postgres.js +10 -10
- package/dist/bin/cc-doctor.js +4 -4
- package/dist/bin/cleanup-stale-review-tasks.js +14 -14
- package/dist/bin/cli.js +20 -20
- package/dist/bin/deferred-daemon-restart.js +83 -81
- package/dist/bin/exe-agent-config.js +2 -2
- package/dist/bin/exe-agent.js +11 -11
- package/dist/bin/exe-assign.js +6 -6
- package/dist/bin/exe-boot.js +30 -30
- package/dist/bin/exe-call.js +4 -4
- package/dist/bin/exe-cloud.js +11 -11
- package/dist/bin/exe-config-dump.js +2 -2
- package/dist/bin/exe-dispatch.js +15 -15
- package/dist/bin/exe-doctor.js +5 -5
- package/dist/bin/exe-export-behaviors.js +10 -8
- package/dist/bin/exe-forget.js +7 -7
- package/dist/bin/exe-gateway.js +7 -7
- package/dist/bin/exe-healthcheck.js +4 -4
- package/dist/bin/exe-heartbeat.js +17 -17
- package/dist/bin/exe-kill.js +18 -18
- package/dist/bin/exe-launch-agent.js +24 -23
- package/dist/bin/exe-mcp.js +3 -3
- package/dist/bin/exe-memory-reads.js +5 -5
- package/dist/bin/exe-new-employee.js +8 -8
- package/dist/bin/exe-os-mcp-proxy.js +3 -3
- package/dist/bin/exe-pending-messages.js +15 -15
- package/dist/bin/exe-pending-notifications.js +14 -14
- package/dist/bin/exe-pending-reviews.js +14 -14
- package/dist/bin/exe-rename.js +4 -4
- package/dist/bin/exe-review.js +17 -17
- package/dist/bin/exe-search.js +6 -6
- package/dist/bin/exe-session-cleanup.js +19 -18
- package/dist/bin/exe-settings.js +10 -10
- package/dist/bin/exe-start-codex.js +73 -19
- package/dist/bin/exe-start-opencode.js +11 -9
- package/dist/bin/exe-status.js +16 -16
- package/dist/bin/exe-support.js +3 -3
- package/dist/bin/exe-team.js +4 -4
- package/dist/bin/exe-verify-running-images.js +123 -4
- package/dist/bin/exe-watchdog.js +44 -3
- package/dist/bin/git-sweep.js +16 -15
- package/dist/bin/graph-backfill.js +7 -7
- package/dist/bin/graph-export.js +6 -6
- package/dist/bin/import-history.js +10 -10
- package/dist/bin/install.js +85 -83
- package/dist/bin/intercom-check.js +4 -4
- package/dist/bin/mcp-sessions.js +2 -2
- package/dist/bin/orchestration-metrics.js +4 -4
- package/dist/bin/postgres-agentic-reflection-backfill.js +4 -4
- package/dist/bin/postgres-agentic-semantic-backfill.js +4 -4
- package/dist/bin/reconcile-backlog.js +47 -6
- package/dist/bin/registry-proxy.js +1 -1
- package/dist/bin/scan-tasks.js +14 -14
- package/dist/bin/setup.js +1 -1
- package/dist/bin/shard-migrate.js +5 -5
- package/dist/bin/stack-update.js +6 -5
- package/dist/bin/verify-stack.js +6 -1
- package/dist/bin/vps-health-gate.js +1 -1
- package/dist/{boot-generation-EZ2Y74IG.js → boot-generation-7H7Y4KC2.js} +3 -3
- package/dist/{boot-review-sections-7CNQTAYR.js → boot-review-sections-4AGCECCP.js} +13 -13
- package/dist/build-manifest.json +808 -773
- package/dist/{capability-cards-ZTFMK4VJ.js → capability-cards-6KAC5D2Z.js} +2 -2
- package/dist/{capacity-monitor-B2XU4YHP.js → capacity-monitor-J2Y4SFLA.js} +15 -15
- package/dist/{catchup-brief-3BEOL7EV.js → catchup-brief-F2HKF2CU.js} +18 -18
- package/dist/{chunk-PR3AHVFW.js → chunk-2AS6FG6C.js} +3 -3
- package/dist/{chunk-WCDIDSLR.js → chunk-2UBMXN4D.js} +2 -2
- package/dist/{chunk-267QB6VB.js → chunk-2UGU3V63.js} +1 -1
- package/dist/{chunk-PQ6NRLKL.js → chunk-34BMZTWV.js} +1 -1
- package/dist/{chunk-XA4EU3CW.js → chunk-4DGIOK6T.js} +1 -1
- package/dist/{chunk-JJRZE2LD.js → chunk-4GVJIMMK.js} +12 -6
- package/dist/{chunk-2IZH6W73.js → chunk-4L732DE5.js} +3 -3
- package/dist/{chunk-ZSHLY5BS.js → chunk-4RRMZJLG.js} +1 -1
- package/dist/{chunk-MQ3N4KZY.js → chunk-5IVLOOJR.js} +1 -1
- package/dist/{chunk-PFR6EOUY.js → chunk-5YKNEL3W.js} +2 -2
- package/dist/{chunk-AE3PYLLS.js → chunk-6EXOW5ZA.js} +9 -9
- package/dist/{chunk-CTPG4KYZ.js → chunk-6P7DVFKA.js} +1 -1
- package/dist/{chunk-F3PIHVVY.js → chunk-6UZ3DEQI.js} +1 -1
- package/dist/{chunk-URHJDUWO.js → chunk-72JZQ7EV.js} +1 -1
- package/dist/{chunk-66BFQOWR.js → chunk-72QUZX6J.js} +4 -4
- package/dist/{chunk-JOKKIFRN.js → chunk-AAL6CDMQ.js} +7 -7
- package/dist/{chunk-FSIAGX55.js → chunk-AJGX4Z34.js} +1 -1
- package/dist/{chunk-OADOH45L.js → chunk-BEPO36MW.js} +3 -3
- package/dist/{chunk-UI3K73LD.js → chunk-BFL3UB77.js} +1 -1
- package/dist/{chunk-KDD26FUY.js → chunk-BFPQXPN3.js} +1 -1
- package/dist/{chunk-7W5LCREK.js → chunk-BJKC6ZJU.js} +40 -84
- package/dist/{chunk-OPS7KUFV.js → chunk-BLNSUBP3.js} +3 -3
- package/dist/{chunk-5CH6XKVC.js → chunk-BNDHQGOY.js} +1 -1
- package/dist/{chunk-Z5Z3MYUW.js → chunk-BPQWRR4H.js} +2 -2
- package/dist/{chunk-YA4PM3MV.js → chunk-BTGR55GX.js} +3 -3
- package/dist/{chunk-WYVBWDFY.js → chunk-C4IJ5IS5.js} +1 -1
- package/dist/{chunk-XVRQZCTS.js → chunk-C5FOA5GO.js} +14 -3
- package/dist/{chunk-XKFMNAJ7.js → chunk-CSBD7QLZ.js} +1 -1
- package/dist/{chunk-BY3V5CLX.js → chunk-CU2OUUSV.js} +25 -5
- package/dist/{chunk-Y4JVM3SI.js → chunk-CXHRNESJ.js} +1 -1
- package/dist/{chunk-SFKIZYKK.js → chunk-DRMGPZSC.js} +2 -2
- package/dist/{chunk-PFOJX6CR.js → chunk-DYPKSVB7.js} +5 -5
- package/dist/{chunk-PS4NA7PM.js → chunk-EDB3LXBQ.js} +268 -166
- package/dist/{chunk-TCR7NBHD.js → chunk-EDRXCUEP.js} +4 -4
- package/dist/{chunk-BQYQES2Z.js → chunk-ELY5WBZX.js} +10 -10
- package/dist/{chunk-ALYI3P5D.js → chunk-EZUSIF66.js} +1 -1
- package/dist/{chunk-CYNL3ZFD.js → chunk-FHYX64H3.js} +3 -3
- package/dist/{chunk-PWCZFIQH.js → chunk-FSALI4B7.js} +4 -4
- package/dist/{chunk-4DJDC4Y2.js → chunk-FWKTZURC.js} +4 -4
- package/dist/{chunk-53LCVVX5.js → chunk-FWVPGXHD.js} +5 -5
- package/dist/{chunk-O3F5P6Z5.js → chunk-GILYOIMP.js} +2 -2
- package/dist/{chunk-NPND34FS.js → chunk-GP3J3AOT.js} +4 -4
- package/dist/{chunk-6NJURKRG.js → chunk-H6J7N3BZ.js} +1 -1
- package/dist/{chunk-WSLFGJBA.js → chunk-HQSUXAB4.js} +1 -1
- package/dist/{chunk-XTEKGO44.js → chunk-HTLJHSN4.js} +1 -1
- package/dist/{chunk-AEVE654G.js → chunk-HXV3DGL7.js} +1 -1
- package/dist/{chunk-LW5WRSDD.js → chunk-IEE6X6R2.js} +1 -1
- package/dist/{chunk-V3ISR2QT.js → chunk-IKRIUEIF.js} +1 -1
- package/dist/{chunk-52CFP2AV.js → chunk-J44774XC.js} +1 -1
- package/dist/{chunk-TJSTWACD.js → chunk-J77ZIMH5.js} +5 -5
- package/dist/{chunk-Y7OK5PJE.js → chunk-JDPV7W2L.js} +1 -1
- package/dist/{chunk-7W6FDHHY.js → chunk-KGPWS4KE.js} +1 -1
- package/dist/{chunk-XAMLDTRA.js → chunk-KWQ7RHYD.js} +4 -4
- package/dist/{chunk-IIVFXD6P.js → chunk-KYVIV54Y.js} +1 -1
- package/dist/chunk-KZXMP6JG.js +319 -0
- package/dist/{chunk-ZZ3JQM5I.js → chunk-LJWCK2DR.js} +9 -9
- package/dist/{chunk-WBKIU6UJ.js → chunk-MCXYNYZI.js} +30 -2
- package/dist/{chunk-L2VZBPJJ.js → chunk-MWEIBVBS.js} +13 -1
- package/dist/{chunk-GUOMZ3JM.js → chunk-MXP27XTP.js} +2 -2
- package/dist/{chunk-EDZ5URGR.js → chunk-N3CGSO3S.js} +1 -1
- package/dist/{chunk-QWDZNQXA.js → chunk-NNXPIJRB.js} +1 -1
- package/dist/{chunk-OISZ2I4X.js → chunk-NWE3CFX7.js} +4 -4
- package/dist/{chunk-HSBKV5LB.js → chunk-OBESOWFJ.js} +3 -3
- package/dist/{chunk-XKZD5FGK.js → chunk-OL3QP3AU.js} +116 -1
- package/dist/{chunk-6MCUXRIP.js → chunk-P3PAD6AA.js} +1 -1
- package/dist/{chunk-N3JLNMPF.js → chunk-PGF5I7EV.js} +2 -2
- package/dist/{chunk-CX4MVEM3.js → chunk-PVWM2WMM.js} +1 -1
- package/dist/{chunk-JFOZHVNO.js → chunk-QCSAYYL6.js} +1 -1
- package/dist/{chunk-J6VQ7HYV.js → chunk-QE5KWKVU.js} +27 -6
- package/dist/{chunk-4WOOCTON.js → chunk-QKZEUCTS.js} +2 -2
- package/dist/{chunk-P5XER5QY.js → chunk-QT6CNCXO.js} +3 -3
- package/dist/{chunk-P76VYS6V.js → chunk-QZYYCPNL.js} +1 -1
- package/dist/{chunk-DTTISDTI.js → chunk-RDIZSXXD.js} +1 -1
- package/dist/{chunk-R4AROSYI.js → chunk-RFWOXKVL.js} +10 -179
- package/dist/chunk-S2YTU74T.js +76 -0
- package/dist/{chunk-K2OFS57E.js → chunk-TP7BFVQP.js} +2 -2
- package/dist/{chunk-LIZ3QQGK.js → chunk-TTJWPV4G.js} +1 -1
- package/dist/{chunk-XUGOVOID.js → chunk-UATT6BNO.js} +3 -3
- package/dist/{chunk-ALKYXAMB.js → chunk-UVM5ZXO2.js} +4 -4
- package/dist/{chunk-R3H3WW7H.js → chunk-V7E37GE3.js} +2 -2
- package/dist/{chunk-XSXZVKJ7.js → chunk-VD3CVNGB.js} +3 -3
- package/dist/{chunk-CKKLSY7B.js → chunk-VIW62NN5.js} +1 -1
- package/dist/{chunk-VY3QUSWS.js → chunk-VTOO5UB3.js} +9 -9
- package/dist/chunk-W5MCOZTW.js +304 -0
- package/dist/{chunk-TZFOWWPM.js → chunk-WJOJWRN5.js} +139 -33
- package/dist/{chunk-PS6VPW64.js → chunk-X4MRVNR3.js} +1 -1
- package/dist/{chunk-YYLVHUYZ.js → chunk-XBTQPQN7.js} +1 -1
- package/dist/{behavior-injection-7VGYY2KO.js → chunk-XOTDAKJL.js} +24 -38
- package/dist/{chunk-QX33D4CH.js → chunk-Y4AYNLXU.js} +25 -25
- package/dist/{chunk-BTMX2D4X.js → chunk-YGPJ7VSJ.js} +48 -10
- package/dist/{chunk-DXCTHNEF.js → chunk-ZR3VMM3X.js} +9 -9
- package/dist/{chunk-MLPPG2OG.js → chunk-ZWONQU5S.js} +1 -1
- package/dist/{cleanup-graph-garbage-XDIX3HLN.js → cleanup-graph-garbage-FBSQI33K.js} +8 -8
- package/dist/{cloud-sync-command-VPYE4FIH.js → cloud-sync-command-NHGVDTLM.js} +11 -3
- package/dist/{cloud-sync-db-init-NSDBTFGI.js → cloud-sync-db-init-I75VOTXC.js} +1 -1
- package/dist/{cloud-sync-shutdown-6OUYTG4T.js → cloud-sync-shutdown-JGOFGGET.js} +2 -2
- package/dist/{cloud-sync-state-5DFKLWNB.js → cloud-sync-state-QF3TMMJ4.js} +3 -1
- package/dist/{co-activation-EAAKGGZH.js → co-activation-AE5L2SJV.js} +2 -2
- package/dist/{co-occurrence-OFVF55RX.js → co-occurrence-O65D4SCN.js} +6 -6
- package/dist/{conversation-entity-extractor-ZR5GFKAI.js → conversation-entity-extractor-LFIDTD2O.js} +4 -4
- package/dist/{crdt-sync-FGH4SBFW.js → crdt-sync-NRWDBRSE.js} +1 -1
- package/dist/{crm-webhook-PJATR2DC.js → crm-webhook-XOQGX6DV.js} +2 -2
- package/dist/{cto-delegation-gate-PO4LSSQ4.js → cto-delegation-gate-ZGOAXQI2.js} +13 -13
- package/dist/{daemon-orchestration-IJFZFQUX.js → daemon-orchestration-ZMQWYYDT.js} +18 -18
- package/dist/dispatch-intent-journal-VV6HMZC4.js +17 -0
- package/dist/{doc-graph-extractor-CAYUAM5A.js → doc-graph-extractor-6C5JBKPP.js} +6 -6
- package/dist/{documents-W2G477QE.js → documents-FKSQGSO4.js} +6 -6
- package/dist/{dreaming-FVXSIIWV.js → dreaming-IB3H6NDZ.js} +17 -17
- package/dist/{employee-boot-brief-OYMSHFHA.js → employee-boot-brief-5YRTUEJH.js} +24 -21
- package/dist/{exe-drift-67RGJOBX.js → exe-drift-CUWUYX3O.js} +3 -3
- package/dist/{exe-export-SGYX6XZG.js → exe-export-XWENYJNM.js} +7 -7
- package/dist/{exe-import-UABVA5N3.js → exe-import-OWOMRF2S.js} +7 -7
- package/dist/{exe-key-XNYDCVFE.js → exe-key-P356FGK5.js} +83 -81
- package/dist/{exe-org-XJVSU5HN.js → exe-org-UKIVF3KE.js} +8 -8
- package/dist/{exe-snapshot-YXOGYZUX.js → exe-snapshot-AZI2WW5Y.js} +18 -18
- package/dist/{fast-db-init-GDFJY5UH.js → fast-db-init-FPAPF3GB.js} +1 -1
- package/dist/{founder-context-KUXSNXKS.js → founder-context-QTQ6V3B5.js} +2 -2
- package/dist/gateway/index.js +11 -11
- package/dist/{git-staleness-NN6RWNLW.js → git-staleness-6ACWLV5Q.js} +2 -2
- package/dist/{global-procedures-XDNA3TNA.js → global-procedures-RXIKBVLZ.js} +3 -3
- package/dist/{graph-auto-extract-KTOR45V4.js → graph-auto-extract-Q4A4QMOF.js} +6 -6
- package/dist/{graph-rag-L5NV5YWD.js → graph-rag-RLRQMY54.js} +4 -4
- package/dist/{hook-integrity-X3YAVGUW.js → hook-integrity-3X2JRLBM.js} +1 -1
- package/dist/{hook-prefetch-WE4MIXBM.js → hook-prefetch-DU44UZQP.js} +14 -14
- package/dist/hooks/bug-report-worker.js +18 -18
- package/dist/hooks/codex-stop-task-finalizer.js +19 -19
- package/dist/hooks/commit-complete.js +20 -18
- package/dist/hooks/error-recall.js +8 -8
- package/dist/hooks/exe-heartbeat-hook.js +4 -4
- package/dist/hooks/ingest-worker.js +2 -2
- package/dist/hooks/ingest.js +11 -11
- package/dist/hooks/instructions-loaded.js +5 -5
- package/dist/hooks/manifest.json +20 -20
- package/dist/hooks/notification.js +5 -5
- package/dist/hooks/post-compact.js +4 -4
- package/dist/hooks/post-tool-combined.js +11 -11
- package/dist/hooks/pre-compact.js +17 -17
- package/dist/hooks/pre-tool-use.js +44 -37
- package/dist/hooks/prompt-submit.js +35 -31
- package/dist/hooks/session-end.js +21 -21
- package/dist/hooks/session-start.js +16 -16
- package/dist/hooks/stop.js +20 -20
- package/dist/hooks/subagent-stop.js +18 -18
- package/dist/hooks/summary-worker.js +22 -22
- package/dist/index.js +25 -25
- package/dist/{installer-EAAYEEEF.js → installer-B7QYQE56.js} +7 -5
- package/dist/{installer-UDRMFY75.js → installer-EXR25DDG.js} +5 -5
- package/dist/{installer-EPQAOI6M.js → installer-TOPA7673.js} +5 -5
- package/dist/{intercom-queue-IBOAVT2I.js → intercom-queue-BZ4M3L4S.js} +13 -13
- package/dist/lib/cloud-sync.js +10 -10
- package/dist/lib/consolidation.js +8 -8
- package/dist/lib/database.js +2 -2
- package/dist/lib/db-backup.js +1 -1
- package/dist/lib/db-write-worker.js +3 -3
- package/dist/lib/db.js +2 -2
- package/dist/lib/delivery-truth.js +25 -0
- package/dist/lib/device-registry.js +1 -1
- package/dist/lib/employee-templates.js +4 -4
- package/dist/lib/employees.js +2 -2
- package/dist/lib/exe-daemon.js +181 -76
- package/dist/lib/hybrid-search.js +6 -6
- package/dist/lib/identity.js +2 -2
- package/dist/lib/license.js +2 -2
- package/dist/lib/messaging.js +14 -14
- package/dist/lib/registry-proxy.js +1 -1
- package/dist/lib/reminders.js +3 -3
- package/dist/lib/schedules.js +6 -6
- package/dist/lib/session-registry.js +4 -4
- package/dist/lib/skill-learning.js +7 -7
- package/dist/lib/store.js +5 -5
- package/dist/lib/task-router.js +3 -3
- package/dist/lib/tasks.js +15 -15
- package/dist/lib/tmux-routing.js +13 -13
- package/dist/lib/token-spend.js +3 -3
- package/dist/{license-gate-3TTWJABL.js → license-gate-YTIOLKVV.js} +3 -3
- package/dist/{license-sync-ZC6TPKVV.js → license-sync-5VE5OSTV.js} +2 -2
- package/dist/mcp/register-tools.js +82 -80
- package/dist/mcp/server.js +85 -83
- package/dist/mcp/tools/complete-reminder.js +4 -4
- package/dist/mcp/tools/create-reminder.js +4 -4
- package/dist/mcp/tools/create-task.js +25 -23
- package/dist/mcp/tools/deactivate-behavior.js +8 -8
- package/dist/mcp/tools/list-reminders.js +4 -4
- package/dist/mcp/tools/list-tasks.js +17 -17
- package/dist/mcp/tools/send-message.js +16 -16
- package/dist/mcp/tools/update-task.js +16 -16
- package/dist/{mcp-http-config-ROF5EPEF.js → mcp-http-config-XUNRIGQH.js} +3 -3
- package/dist/{mcp-session-identity-ERU6FEUB.js → mcp-session-identity-4UIG7KLK.js} +13 -13
- package/dist/{memory-cards-3QTXI2SG.js → memory-cards-R74YU4CO.js} +5 -5
- package/dist/{memory-graph-extractor-7GAILMYG.js → memory-graph-extractor-3B4QJUXI.js} +7 -7
- package/dist/{memory-poisoning-defense-TPXSRJTQ.js → memory-poisoning-defense-OAKFL5O2.js} +2 -2
- package/dist/{memory-pressure-watchdog-ZSOP6T2F.js → memory-pressure-watchdog-FFC2CHFJ.js} +14 -14
- package/dist/{memory-reflection-3AI4JBV2.js → memory-reflection-5IJ6RE2J.js} +2 -2
- package/dist/{notification-ledger-ZU7ZFJJX.js → notification-ledger-P5XBUYKO.js} +14 -14
- package/dist/{notifications-S4GU22GF.js → notifications-LLCCHRYV.js} +13 -13
- package/dist/{orchestration-events-HVG56HJ5.js → orchestration-events-VBGCIQSS.js} +3 -3
- package/dist/{orchestrator-UW3Q3WYG.js → orchestrator-EB3SCTAJ.js} +15 -15
- package/dist/{org-brief-session-G36TJBN4.js → org-brief-session-GDCDKBFF.js} +6 -6
- package/dist/{org-consent-policy-RMYVMM3X.js → org-consent-policy-HCD42NBN.js} +2 -2
- package/dist/{org-partner-runtime-KXMGEYFW.js → org-partner-runtime-TPVKFR6E.js} +6 -6
- package/dist/{org-row-visibility-UI5PGN76.js → org-row-visibility-ZZLOPZLH.js} +1 -1
- package/dist/{pipeline-router-IODWXDDI.js → pipeline-router-3JTL2KF6.js} +3 -3
- package/dist/{plan-limits-XMAQVEJZ.js → plan-limits-MTHRP4WY.js} +5 -5
- package/dist/{projection-worker-6LZUCI3B.js → projection-worker-FLASNERC.js} +2 -2
- package/dist/{prospective-memory-G5VK5GCD.js → prospective-memory-HI3WUY4U.js} +2 -2
- package/dist/{push-notifications-S2RYRXLF.js → push-notifications-DFSR6P7V.js} +14 -14
- package/dist/{reranker-EHQTAA3L.js → reranker-XHBKUDGG.js} +1 -1
- package/dist/{retrieval-health-WZ4ICGNF.js → retrieval-health-NYKSDS6M.js} +1 -1
- package/dist/{review-polling-MAWLRDSP.js → review-polling-UAV6DZIZ.js} +14 -14
- package/dist/runtime/index.js +21 -21
- package/dist/{session-events-BRUIZ5E4.js → session-events-YCYPLWPG.js} +14 -14
- package/dist/{session-kill-telemetry-PTZLHT33.js → session-kill-telemetry-UEJTHL65.js} +14 -14
- package/dist/{session-scope-G4RVJJGR.js → session-scope-LXDW7LJJ.js} +13 -13
- package/dist/{setup-wizard-WFEUB63Z.js → setup-wizard-OVJQYUUL.js} +1 -1
- package/dist/{skill-refinement-2OYPH7WD.js → skill-refinement-EWRJID73.js} +3 -3
- package/dist/{stack-promote-DLYYQXQI.js → stack-promote-4IJM36OG.js} +4 -4
- package/dist/{stack-release-OPWARLXI.js → stack-release-BAIRY65H.js} +4 -4
- package/dist/{stack-update-SJ43IEQE.js → stack-update-VDM5WXRS.js} +3 -3
- package/dist/stalled-dispatch-escalation-MHLYH2PT.js +80 -0
- package/dist/{steward-gate-V7PBGVFK.js → steward-gate-Y4N2XY3R.js} +3 -3
- package/dist/{subagent-brief-injection-BLCRI2AJ.js → subagent-brief-injection-7A6JEVTP.js} +21 -20
- package/dist/{support-inbox-6HOQYFD2.js → support-inbox-LT4WJECQ.js} +4 -3
- package/dist/{task-enforcement-EF6O2V26.js → task-enforcement-WOIZ5TLK.js} +14 -14
- package/dist/{task-request-inbox-OB2KIJWO.js → task-request-inbox-D65BPUKZ.js} +2 -2
- package/dist/{task-scope-74JBTKJN.js → task-scope-PQ67YRWP.js} +13 -13
- package/dist/{tasks-crud-ZU6RZDEZ.js → tasks-crud-TJNMUKKH.js} +13 -13
- package/dist/{tasks-notify-767DRYAA.js → tasks-notify-7UVC3VGI.js} +14 -14
- package/dist/{tasks-review-4F6PZZ3B.js → tasks-review-WDWYISZ2.js} +13 -13
- package/dist/{telemetry-upload-2JM6KIAB.js → telemetry-upload-6LBGRJUE.js} +7 -7
- package/dist/{token-budget-NH2RD4YX.js → token-budget-XO5XW6DL.js} +3 -3
- package/dist/{tool-telemetry-CHCBD4OQ.js → tool-telemetry-ZL6TTZWG.js} +1 -1
- package/dist/tui/App.js +21 -21
- package/dist/{tui-data-244GF3BI.js → tui-data-UK7ZPKN4.js} +13 -13
- package/dist/{update-support-P2LO3DAB.js → update-support-BGL5KAZO.js} +12 -12
- package/dist/{work-claims-4QOE7DT2.js → work-claims-XZL2DKQ3.js} +3 -3
- package/dist/{work-state-heartbeat-GX3VWWWK.js → work-state-heartbeat-267YQ75U.js} +1 -1
- package/dist/{worker-gate-62PZATOV.js → worker-gate-RUM6MLIR.js} +1 -1
- package/dist/{workflow-engine-7YIRU62F.js → workflow-engine-YQHGHKSJ.js} +2 -2
- package/dist/{worktree-3TUKIZWY.js → worktree-3FO6EQ4G.js} +4 -4
- package/dist/{worktree-sweep-MYQHUXDE.js → worktree-sweep-X7MUEEQS.js} +5 -5
- package/package.json +2 -1
- package/release-notes.json +29 -23
- /package/dist/{chunk-25EN7XXN.js → chunk-4AN2PWUK.js} +0 -0
- /package/dist/{chunk-WM7Y5ZV2.js → chunk-5U4UJGTW.js} +0 -0
- /package/dist/{chunk-62U63R3E.js → chunk-EYIX6JU7.js} +0 -0
- /package/dist/{chunk-JLYHJJHU.js → chunk-FDA45THL.js} +0 -0
- /package/dist/{chunk-JZBZI36P.js → chunk-GIO4VU4J.js} +0 -0
- /package/dist/{chunk-BTFDA3UJ.js → chunk-I76LRCNA.js} +0 -0
- /package/dist/{chunk-YNPOELAN.js → chunk-LBWEAQ6Z.js} +0 -0
- /package/dist/{chunk-65ZSFW3O.js → chunk-MQ5RUHNZ.js} +0 -0
- /package/dist/{chunk-XM7HJ5SS.js → chunk-PFCE4AXQ.js} +0 -0
- /package/dist/{chunk-FLP2BQOA.js → chunk-SXAERZL2.js} +0 -0
- /package/dist/{chunk-OUIEDJFO.js → chunk-TKTQRSSD.js} +0 -0
- /package/dist/{chunk-DAXFAXLN.js → chunk-U2AZUMBZ.js} +0 -0
- /package/dist/{chunk-GTOMDMJL.js → chunk-W6FVADZS.js} +0 -0
- /package/dist/{core-memory-EARETDZ6.js → core-memory-W5ZHHBRR.js} +0 -0
- /package/dist/{memory-isolation-XASOGA7G.js → memory-isolation-ZE7EDBO4.js} +0 -0
- /package/dist/{oauth-server-C3BXAKAW.js → oauth-server-3HG62YYJ.js} +0 -0
- /package/dist/{project-boot-LCFBQ6NB.js → project-boot-3OAWKYLO.js} +0 -0
- /package/dist/{wiki-acl-XQH4UBP2.js → wiki-acl-FQV4E6M4.js} +0 -0
package/dist/lib/exe-daemon.js
CHANGED
|
@@ -8,7 +8,7 @@ import {
|
|
|
8
8
|
} from "../chunk-NOKJCF27.js";
|
|
9
9
|
import {
|
|
10
10
|
pushNotifyAsync
|
|
11
|
-
} from "../chunk-
|
|
11
|
+
} from "../chunk-HQSUXAB4.js";
|
|
12
12
|
import {
|
|
13
13
|
isDbVerifyStampFresh
|
|
14
14
|
} from "../chunk-SVFNWBLF.js";
|
|
@@ -29,9 +29,10 @@ import {
|
|
|
29
29
|
recordMcpHttpEvent
|
|
30
30
|
} from "../chunk-YYA5LXCT.js";
|
|
31
31
|
import {
|
|
32
|
+
hasPendingCloudSyncSlice,
|
|
32
33
|
readCloudSyncState,
|
|
33
34
|
writeCloudSyncState
|
|
34
|
-
} from "../chunk-
|
|
35
|
+
} from "../chunk-MWEIBVBS.js";
|
|
35
36
|
import {
|
|
36
37
|
deserializeArgs,
|
|
37
38
|
serializeResultSet
|
|
@@ -43,36 +44,36 @@ import {
|
|
|
43
44
|
findScopedDuplicate,
|
|
44
45
|
governMemoryRecord,
|
|
45
46
|
schedulePostWriteMemoryHygiene
|
|
46
|
-
} from "../chunk-
|
|
47
|
+
} from "../chunk-5U4UJGTW.js";
|
|
47
48
|
import "../chunk-5MOYSU5A.js";
|
|
48
49
|
import "../chunk-4QCFFW2H.js";
|
|
49
50
|
import "../chunk-76CJBM36.js";
|
|
50
51
|
import {
|
|
51
52
|
BUSY_PATTERN
|
|
52
|
-
} from "../chunk-
|
|
53
|
+
} from "../chunk-Y4AYNLXU.js";
|
|
53
54
|
import "../chunk-BTSWFMEH.js";
|
|
54
|
-
import "../chunk-
|
|
55
|
-
import "../chunk-
|
|
56
|
-
import "../chunk-
|
|
55
|
+
import "../chunk-P3PAD6AA.js";
|
|
56
|
+
import "../chunk-KGPWS4KE.js";
|
|
57
|
+
import "../chunk-KYVIV54Y.js";
|
|
57
58
|
import "../chunk-WT4RI36X.js";
|
|
58
|
-
import "../chunk-CX4MVEM3.js";
|
|
59
59
|
import {
|
|
60
60
|
recordTimerPauseMs,
|
|
61
61
|
runWithTimerPauseAccounting,
|
|
62
62
|
sweepPauseTotalMs
|
|
63
63
|
} from "../chunk-KI5PFRG6.js";
|
|
64
|
+
import "../chunk-QAEWWYHL.js";
|
|
64
65
|
import "../chunk-EIKATSE4.js";
|
|
65
66
|
import "../chunk-E23LNUWJ.js";
|
|
66
|
-
import "../chunk-
|
|
67
|
-
import "../chunk-XKFMNAJ7.js";
|
|
67
|
+
import "../chunk-CSBD7QLZ.js";
|
|
68
68
|
import "../chunk-GBNB4EWD.js";
|
|
69
69
|
import "../chunk-UXLO7VHX.js";
|
|
70
70
|
import "../chunk-DSOQUQTV.js";
|
|
71
|
-
import "../chunk-
|
|
71
|
+
import "../chunk-BFL3UB77.js";
|
|
72
72
|
import "../chunk-AJIXH5JF.js";
|
|
73
|
+
import "../chunk-PVWM2WMM.js";
|
|
73
74
|
import "../chunk-XTWHNLGD.js";
|
|
74
75
|
import "../chunk-AM7S2TY6.js";
|
|
75
|
-
import "../chunk-
|
|
76
|
+
import "../chunk-PGF5I7EV.js";
|
|
76
77
|
import "../chunk-CVYC6DUW.js";
|
|
77
78
|
import "../chunk-ZVTKWWLV.js";
|
|
78
79
|
import "../chunk-CDUB5Q6J.js";
|
|
@@ -119,7 +120,7 @@ import "../chunk-W2IRQJ6R.js";
|
|
|
119
120
|
import "../chunk-HYZV25LY.js";
|
|
120
121
|
import "../chunk-GJV3WDWM.js";
|
|
121
122
|
import "../chunk-MP2AFCGL.js";
|
|
122
|
-
import "../chunk-
|
|
123
|
+
import "../chunk-OBESOWFJ.js";
|
|
123
124
|
import "../chunk-TKDITWDN.js";
|
|
124
125
|
import {
|
|
125
126
|
logBoot,
|
|
@@ -129,7 +130,7 @@ import {
|
|
|
129
130
|
logShutdown
|
|
130
131
|
} from "../chunk-BBMTVAE3.js";
|
|
131
132
|
import "../chunk-5YEUPUV4.js";
|
|
132
|
-
import "../chunk-
|
|
133
|
+
import "../chunk-JDPV7W2L.js";
|
|
133
134
|
import {
|
|
134
135
|
isPostgresBackendEnabled
|
|
135
136
|
} from "../chunk-YYB5PMTK.js";
|
|
@@ -150,9 +151,9 @@ import {
|
|
|
150
151
|
EMBEDDING_DIM
|
|
151
152
|
} from "../chunk-FXU7JOXK.js";
|
|
152
153
|
import "../chunk-WNBZJSQT.js";
|
|
153
|
-
import "../chunk-
|
|
154
|
+
import "../chunk-6UZ3DEQI.js";
|
|
154
155
|
import "../chunk-A7XLR3K7.js";
|
|
155
|
-
import "../chunk-
|
|
156
|
+
import "../chunk-MQ5RUHNZ.js";
|
|
156
157
|
import "../chunk-QILQ5FCG.js";
|
|
157
158
|
import "../chunk-ARX6TAGN.js";
|
|
158
159
|
import {
|
|
@@ -553,7 +554,7 @@ function runCapturedCloudSyncChild(options) {
|
|
|
553
554
|
else resolve({ ...result, stderrTail });
|
|
554
555
|
};
|
|
555
556
|
child.once("error", (err) => finish(timedOutError ?? err, { code: null, signal: null }));
|
|
556
|
-
child.once("
|
|
557
|
+
child.once("close", (code, signal) => finish(timedOutError, { code, signal }));
|
|
557
558
|
});
|
|
558
559
|
}
|
|
559
560
|
|
|
@@ -2529,7 +2530,7 @@ async function loadModel() {
|
|
|
2529
2530
|
void (async () => {
|
|
2530
2531
|
try {
|
|
2531
2532
|
if (_storeInitialized) {
|
|
2532
|
-
const { writeNotification } = await import("../notifications-
|
|
2533
|
+
const { writeNotification } = await import("../notifications-LLCCHRYV.js");
|
|
2533
2534
|
await writeNotification({
|
|
2534
2535
|
agentId: "exe",
|
|
2535
2536
|
agentRole: "system",
|
|
@@ -2648,7 +2649,7 @@ function disableEmbeddingsForInferenceTimeouts() {
|
|
|
2648
2649
|
void (async () => {
|
|
2649
2650
|
try {
|
|
2650
2651
|
if (_storeInitialized) {
|
|
2651
|
-
const { writeNotification } = await import("../notifications-
|
|
2652
|
+
const { writeNotification } = await import("../notifications-LLCCHRYV.js");
|
|
2652
2653
|
await writeNotification({
|
|
2653
2654
|
agentId: "exe",
|
|
2654
2655
|
agentRole: "system",
|
|
@@ -2815,7 +2816,7 @@ async function shutdown(exitCode = 0, reason = null, restartKind) {
|
|
|
2815
2816
|
_shuttingDown = true;
|
|
2816
2817
|
_drainingWrites = true;
|
|
2817
2818
|
try {
|
|
2818
|
-
const { stopOrgPartnerRuntime } = await import("../org-partner-runtime-
|
|
2819
|
+
const { stopOrgPartnerRuntime } = await import("../org-partner-runtime-TPVKFR6E.js");
|
|
2819
2820
|
stopOrgPartnerRuntime();
|
|
2820
2821
|
} catch {
|
|
2821
2822
|
}
|
|
@@ -2898,7 +2899,7 @@ async function shutdown(exitCode = 0, reason = null, restartKind) {
|
|
|
2898
2899
|
dbBytes = dbPath ? statSync4(dbPath).size : 0;
|
|
2899
2900
|
} catch {
|
|
2900
2901
|
}
|
|
2901
|
-
const { getAvailableMemoryBytesSync } = await import("../memory-pressure-watchdog-
|
|
2902
|
+
const { getAvailableMemoryBytesSync } = await import("../memory-pressure-watchdog-FFC2CHFJ.js");
|
|
2902
2903
|
const freeBytes = getAvailableMemoryBytesSync();
|
|
2903
2904
|
if (shouldSkipBackupUnderMemoryPressure(freeBytes, dbBytes)) {
|
|
2904
2905
|
memoryGateSkip = true;
|
|
@@ -2951,7 +2952,7 @@ async function shutdown(exitCode = 0, reason = null, restartKind) {
|
|
|
2951
2952
|
`);
|
|
2952
2953
|
}
|
|
2953
2954
|
try {
|
|
2954
|
-
const { stopProjectionWorker } = await import("../projection-worker-
|
|
2955
|
+
const { stopProjectionWorker } = await import("../projection-worker-FLASNERC.js");
|
|
2955
2956
|
stopProjectionWorker();
|
|
2956
2957
|
} catch {
|
|
2957
2958
|
}
|
|
@@ -3014,7 +3015,7 @@ async function handleHealthCheck(socket, requestId) {
|
|
|
3014
3015
|
let pipelineStatus = "unknown";
|
|
3015
3016
|
if (dbConnected) {
|
|
3016
3017
|
try {
|
|
3017
|
-
await import("../pipeline-router-
|
|
3018
|
+
await import("../pipeline-router-3JTL2KF6.js");
|
|
3018
3019
|
pipelineStatus = "ok";
|
|
3019
3020
|
} catch {
|
|
3020
3021
|
pipelineStatus = "unavailable";
|
|
@@ -3457,7 +3458,7 @@ async function _writeMemoryRecordInner(entry, syncOnly = false) {
|
|
|
3457
3458
|
const vRow = await client.execute({ sql: "SELECT version FROM memories WHERE id = ?", args: [id] });
|
|
3458
3459
|
const version = Number(vRow.rows[0]?.version) || 0;
|
|
3459
3460
|
try {
|
|
3460
|
-
const { insertOntologyForMemory } = await import("../agentic-ontology-
|
|
3461
|
+
const { insertOntologyForMemory } = await import("../agentic-ontology-ZJBRYETW.js");
|
|
3461
3462
|
await insertOntologyForMemory({
|
|
3462
3463
|
id,
|
|
3463
3464
|
agent_id: record.agent_id,
|
|
@@ -4281,7 +4282,7 @@ async function startMcpHttpServer() {
|
|
|
4281
4282
|
clearBootstrapFailureMarker();
|
|
4282
4283
|
setBootPhase("db_ready");
|
|
4283
4284
|
_storeInitialized = true;
|
|
4284
|
-
const { initLicenseGate, getCachedLicenseGate } = await import("../license-gate-
|
|
4285
|
+
const { initLicenseGate, getCachedLicenseGate } = await import("../license-gate-YTIOLKVV.js");
|
|
4285
4286
|
const gateResult = await initLicenseGate();
|
|
4286
4287
|
if (!gateResult.hasKey) {
|
|
4287
4288
|
process.stderr.write(
|
|
@@ -4296,7 +4297,7 @@ async function startMcpHttpServer() {
|
|
|
4296
4297
|
let _cachedWrapTelemetry = null;
|
|
4297
4298
|
async function getWrapTelemetry() {
|
|
4298
4299
|
if (!_cachedWrapTelemetry) {
|
|
4299
|
-
const { wrapServerWithTelemetry } = await import("../tool-telemetry-
|
|
4300
|
+
const { wrapServerWithTelemetry } = await import("../tool-telemetry-ZL6TTZWG.js");
|
|
4300
4301
|
_cachedWrapTelemetry = wrapServerWithTelemetry;
|
|
4301
4302
|
}
|
|
4302
4303
|
return _cachedWrapTelemetry;
|
|
@@ -4368,7 +4369,7 @@ async function startMcpHttpServer() {
|
|
|
4368
4369
|
const expectedBuf = Buffer.from(_daemonToken);
|
|
4369
4370
|
if (tokenBuf.length === expectedBuf.length && timingSafeEqual(tokenBuf, expectedBuf)) return true;
|
|
4370
4371
|
try {
|
|
4371
|
-
const { verifyAccessToken } = await import("../oauth-server-
|
|
4372
|
+
const { verifyAccessToken } = await import("../oauth-server-3HG62YYJ.js");
|
|
4372
4373
|
const result = verifyAccessToken(token);
|
|
4373
4374
|
return result.valid;
|
|
4374
4375
|
} catch {
|
|
@@ -4621,7 +4622,7 @@ async function startMcpHttpServer() {
|
|
|
4621
4622
|
return;
|
|
4622
4623
|
}
|
|
4623
4624
|
try {
|
|
4624
|
-
const { handleOAuthRoute } = await import("../oauth-server-
|
|
4625
|
+
const { handleOAuthRoute } = await import("../oauth-server-3HG62YYJ.js");
|
|
4625
4626
|
const handled = await handleOAuthRoute(req, res, url, MCP_HTTP_PORT);
|
|
4626
4627
|
if (handled) return;
|
|
4627
4628
|
} catch (err) {
|
|
@@ -4749,7 +4750,7 @@ async function startMcpHttpServer() {
|
|
|
4749
4750
|
contextPct: body.context_pct
|
|
4750
4751
|
});
|
|
4751
4752
|
if (body.context_pct !== void 0 && body.context_pct > 70) {
|
|
4752
|
-
void import("../orchestration-events-
|
|
4753
|
+
void import("../orchestration-events-VBGCIQSS.js").then(({ recordOrchestrationEventBestEffort: recordOE }) => {
|
|
4753
4754
|
recordOE({
|
|
4754
4755
|
eventType: "context.pressure",
|
|
4755
4756
|
source: "exe-daemon.heartbeat",
|
|
@@ -4861,7 +4862,7 @@ async function startMcpHttpServer() {
|
|
|
4861
4862
|
let sessionHint = req.headers["x-exe-session-name"] || req.headers["x-exe-session"] || "";
|
|
4862
4863
|
if (sessionHint) {
|
|
4863
4864
|
try {
|
|
4864
|
-
const { sanitizeSessionHintHeader, rejectForgedSessionHint } = await import("../mcp-session-identity-
|
|
4865
|
+
const { sanitizeSessionHintHeader, rejectForgedSessionHint } = await import("../mcp-session-identity-4UIG7KLK.js");
|
|
4865
4866
|
const rawHint = sessionHint;
|
|
4866
4867
|
sessionHint = sanitizeSessionHintHeader(sessionHint);
|
|
4867
4868
|
if (!sessionHint) {
|
|
@@ -4900,7 +4901,7 @@ async function startMcpHttpServer() {
|
|
|
4900
4901
|
try {
|
|
4901
4902
|
const liveSessions = await getTmuxSessionsAsync();
|
|
4902
4903
|
const paneCommands = await getPaneCommandsAsync();
|
|
4903
|
-
const { resolveMcpSessionHint } = await import("../mcp-session-identity-
|
|
4904
|
+
const { resolveMcpSessionHint } = await import("../mcp-session-identity-4UIG7KLK.js");
|
|
4904
4905
|
let registrySessions = [];
|
|
4905
4906
|
try {
|
|
4906
4907
|
const { listSessions: listRegistrySessions } = await import("./session-registry.js");
|
|
@@ -5037,7 +5038,7 @@ async function startMcpHttpServer() {
|
|
|
5037
5038
|
bindLive = await getTmuxSessionsAsync();
|
|
5038
5039
|
} catch {
|
|
5039
5040
|
}
|
|
5040
|
-
const { isLauncherCorroboratedIdentity } = await import("../mcp-session-identity-
|
|
5041
|
+
const { isLauncherCorroboratedIdentity } = await import("../mcp-session-identity-4UIG7KLK.js");
|
|
5041
5042
|
const corroborated = isLauncherCorroboratedIdentity({
|
|
5042
5043
|
agentId,
|
|
5043
5044
|
registrySessions: bindRegistry,
|
|
@@ -5280,7 +5281,7 @@ async function startMcpHttpServer() {
|
|
|
5280
5281
|
}
|
|
5281
5282
|
}
|
|
5282
5283
|
try {
|
|
5283
|
-
const { reconcileHintWithRegistryIdentity } = await import("../mcp-session-identity-
|
|
5284
|
+
const { reconcileHintWithRegistryIdentity } = await import("../mcp-session-identity-4UIG7KLK.js");
|
|
5284
5285
|
const { listSessions: listRegistrySessions } = await import("./session-registry.js");
|
|
5285
5286
|
const recon = reconcileHintWithRegistryIdentity({
|
|
5286
5287
|
agentId,
|
|
@@ -5493,9 +5494,9 @@ async function ensureStoreForPolling() {
|
|
|
5493
5494
|
await initDatabase({ dbPath: config.dbPath, encryptionKey: masterKey.toString("hex") });
|
|
5494
5495
|
await ensureSchema();
|
|
5495
5496
|
try {
|
|
5496
|
-
const { isLedgerEnabled } = await import("../notification-ledger-
|
|
5497
|
+
const { isLedgerEnabled } = await import("../notification-ledger-P5XBUYKO.js");
|
|
5497
5498
|
if (isLedgerEnabled()) {
|
|
5498
|
-
const { bumpBootGeneration } = await import("../boot-generation-
|
|
5499
|
+
const { bumpBootGeneration } = await import("../boot-generation-7H7Y4KC2.js");
|
|
5499
5500
|
const { setDaemonReadyGeneration } = await import("../daemon-ready-signal-CKXPUMJ2.js");
|
|
5500
5501
|
const generation = await bumpBootGeneration();
|
|
5501
5502
|
setDaemonReadyGeneration(generation);
|
|
@@ -5535,13 +5536,13 @@ async function ensureStoreForPolling() {
|
|
|
5535
5536
|
}
|
|
5536
5537
|
}
|
|
5537
5538
|
async function startReviewPolling() {
|
|
5538
|
-
const polling = await import("../review-polling-
|
|
5539
|
+
const polling = await import("../review-polling-UAV6DZIZ.js");
|
|
5539
5540
|
const state = {
|
|
5540
5541
|
lastIntercomSent: /* @__PURE__ */ new Map(),
|
|
5541
5542
|
lastNudgeSent: /* @__PURE__ */ new Map(),
|
|
5542
5543
|
intervalMs: REVIEW_POLL_INTERVAL_MS
|
|
5543
5544
|
};
|
|
5544
|
-
const { pollReviewNudge, createReviewNudgeRealDeps, loadNudgeState } = await import("../daemon-orchestration-
|
|
5545
|
+
const { pollReviewNudge, createReviewNudgeRealDeps, loadNudgeState } = await import("../daemon-orchestration-ZMQWYYDT.js");
|
|
5545
5546
|
const nudgeState = loadNudgeState();
|
|
5546
5547
|
const tick = async () => traceDaemonTimer("review_polling", async () => {
|
|
5547
5548
|
fired("review_polling");
|
|
@@ -5549,7 +5550,7 @@ async function startReviewPolling() {
|
|
|
5549
5550
|
try {
|
|
5550
5551
|
const { getClient } = await import("./database.js");
|
|
5551
5552
|
const deps = polling.createRealDeps(getClient);
|
|
5552
|
-
const { strictSessionScopeFilter } = await import("../task-scope-
|
|
5553
|
+
const { strictSessionScopeFilter } = await import("../task-scope-PQ67YRWP.js");
|
|
5553
5554
|
const { getCoordinatorName, DEFAULT_COORDINATOR_TEMPLATE_NAME } = await import("./employees.js");
|
|
5554
5555
|
deps.findOrphanedDoneTasks = async (sessionScope) => {
|
|
5555
5556
|
const coordinatorName = getCoordinatorName();
|
|
@@ -5628,7 +5629,7 @@ function startSessionTTL() {
|
|
|
5628
5629
|
if (!await ensureStoreForPolling()) return;
|
|
5629
5630
|
if (inPostRestartDestructiveGrace("session_ttl")) return;
|
|
5630
5631
|
const { getClient } = await import("./database.js");
|
|
5631
|
-
const { checkSessionTTL, createSessionTTLRealDeps } = await import("../daemon-orchestration-
|
|
5632
|
+
const { checkSessionTTL, createSessionTTLRealDeps } = await import("../daemon-orchestration-ZMQWYYDT.js");
|
|
5632
5633
|
const deps = createSessionTTLRealDeps(getClient);
|
|
5633
5634
|
const killed = await checkSessionTTL(deps, _wedgeObservations);
|
|
5634
5635
|
if (killed.length > 0) acted("session_ttl");
|
|
@@ -5688,7 +5689,7 @@ function startIdleKill() {
|
|
|
5688
5689
|
const cfg = await getCachedConfig();
|
|
5689
5690
|
if (!cfg) return;
|
|
5690
5691
|
const { getClient } = await import("./database.js");
|
|
5691
|
-
const { pollIdleKill, createIdleKillRealDeps } = await import("../daemon-orchestration-
|
|
5692
|
+
const { pollIdleKill, createIdleKillRealDeps } = await import("../daemon-orchestration-ZMQWYYDT.js");
|
|
5692
5693
|
const { sessions: liveSessions, paneCache, aliveSessions } = await getSharedOrchestrationCaches();
|
|
5693
5694
|
const realDeps = createIdleKillRealDeps(
|
|
5694
5695
|
getClient,
|
|
@@ -5804,6 +5805,7 @@ var CLOUD_SYNC_INTERVAL_MS = Number(process.env.EXE_CLOUD_SYNC_INTERVAL_MS) || 5
|
|
|
5804
5805
|
var CLOUD_SYNC_BACKOFF_BASE_MS = 5e3;
|
|
5805
5806
|
var CLOUD_SYNC_BACKOFF_MAX_MS = 5 * 6e4;
|
|
5806
5807
|
var CLOUD_SYNC_CIRCUIT_BREAK = 10;
|
|
5808
|
+
var CLOUD_SYNC_DEFERRED_RESUME_MS = Number(process.env.EXE_CLOUD_SYNC_DEFERRED_RESUME_MS) || 15e3;
|
|
5807
5809
|
var _cloudSyncConsecutiveFailures = 0;
|
|
5808
5810
|
var _cloudSyncBackoffMs = 0;
|
|
5809
5811
|
var _cloudSyncPaused = false;
|
|
@@ -5886,6 +5888,20 @@ function startCloudSyncTimer() {
|
|
|
5886
5888
|
_cloudSyncBackoffMs = 0;
|
|
5887
5889
|
_cloudSyncPaused = false;
|
|
5888
5890
|
acted("cloud_sync");
|
|
5891
|
+
let slicePending = false;
|
|
5892
|
+
try {
|
|
5893
|
+
slicePending = hasPendingCloudSyncSlice(readCloudSyncState(), Date.now(), CLOUD_SYNC_INTERVAL_MS);
|
|
5894
|
+
} catch {
|
|
5895
|
+
slicePending = false;
|
|
5896
|
+
}
|
|
5897
|
+
if (slicePending) {
|
|
5898
|
+
process.stderr.write(
|
|
5899
|
+
`[exed] Cloud sync slice deferred with memories still pending \u2014 next slice in ${Math.round(CLOUD_SYNC_DEFERRED_RESUME_MS / 1e3)}s
|
|
5900
|
+
`
|
|
5901
|
+
);
|
|
5902
|
+
setTimeout(() => void traceDaemonTimer("cloud_sync", tick), CLOUD_SYNC_DEFERRED_RESUME_MS).unref();
|
|
5903
|
+
return;
|
|
5904
|
+
}
|
|
5889
5905
|
process.stderr.write(`[exed] Cloud sync child completed successfully
|
|
5890
5906
|
`);
|
|
5891
5907
|
};
|
|
@@ -6062,7 +6078,7 @@ function startSkillRefinement() {
|
|
|
6062
6078
|
if (!shouldRunHeavyJob("skill_refinement")) return;
|
|
6063
6079
|
try {
|
|
6064
6080
|
if (!await ensureStoreForPolling()) return;
|
|
6065
|
-
const { runSkillRefinement } = await import("../skill-refinement-
|
|
6081
|
+
const { runSkillRefinement } = await import("../skill-refinement-EWRJID73.js");
|
|
6066
6082
|
const result = await runSkillRefinement();
|
|
6067
6083
|
if (result.reviewed > 0) {
|
|
6068
6084
|
acted("skill_refinement");
|
|
@@ -6084,12 +6100,100 @@ function startSkillRefinement() {
|
|
|
6084
6100
|
var STALE_BRANCH_SWEEP_INTERVAL_MS = 60 * 60 * 1e3;
|
|
6085
6101
|
var STALE_BRANCH_HOURS = 48;
|
|
6086
6102
|
var _staleBranchAlertedToday = /* @__PURE__ */ new Set();
|
|
6103
|
+
var STALLED_DISPATCH_SWEEP_INTERVAL_MS = 15 * 60 * 1e3;
|
|
6104
|
+
async function stalledDispatchStatePath() {
|
|
6105
|
+
const { join: joinPath } = await import("path");
|
|
6106
|
+
const { homedir: home } = await import("os");
|
|
6107
|
+
const base = process.env.EXE_OS_DIR || process.env.EXE_MEM_DIR || joinPath(home(), ".exe-os");
|
|
6108
|
+
return joinPath(base, "stalled-dispatch-escalations.json");
|
|
6109
|
+
}
|
|
6110
|
+
function startStalledDispatchSweep() {
|
|
6111
|
+
const tick = async () => {
|
|
6112
|
+
fired("stalled_dispatch_sweep");
|
|
6113
|
+
if (sweepStarved("stalled_dispatch_sweep")) return;
|
|
6114
|
+
try {
|
|
6115
|
+
const { findOrphanedDispatchIntents } = await import("../dispatch-intent-journal-VV6HMZC4.js");
|
|
6116
|
+
const {
|
|
6117
|
+
decideStalledDispatchEscalations,
|
|
6118
|
+
STALLED_DISPATCH_WARN_AGE_MS
|
|
6119
|
+
} = await import("../stalled-dispatch-escalation-MHLYH2PT.js");
|
|
6120
|
+
const { readFileSync: rf, writeFileSync: wf, existsSync: ex } = await import("fs");
|
|
6121
|
+
const orphans = findOrphanedDispatchIntents(null, STALLED_DISPATCH_WARN_AGE_MS);
|
|
6122
|
+
const statePath = await stalledDispatchStatePath();
|
|
6123
|
+
let previousState = {};
|
|
6124
|
+
if (orphans.length > 0 && ex(statePath)) {
|
|
6125
|
+
try {
|
|
6126
|
+
previousState = JSON.parse(rf(statePath, "utf-8"));
|
|
6127
|
+
} catch {
|
|
6128
|
+
previousState = {};
|
|
6129
|
+
}
|
|
6130
|
+
}
|
|
6131
|
+
const intents = orphans.map(({ file, entry }) => {
|
|
6132
|
+
const payload = entry?.payload ?? {};
|
|
6133
|
+
return {
|
|
6134
|
+
file,
|
|
6135
|
+
journaledAt: entry?.journaledAt ?? null,
|
|
6136
|
+
status: entry?.status ?? null,
|
|
6137
|
+
taskId: entry?.taskId ?? null,
|
|
6138
|
+
sessionScope: entry?.caller?.sessionScope ?? null,
|
|
6139
|
+
assignedTo: typeof payload.assigned_to === "string" ? payload.assigned_to : null,
|
|
6140
|
+
title: typeof payload.title === "string" ? payload.title : null,
|
|
6141
|
+
corrupted: entry === null
|
|
6142
|
+
};
|
|
6143
|
+
});
|
|
6144
|
+
const { notifications, nextState } = decideStalledDispatchEscalations(intents, previousState);
|
|
6145
|
+
if (notifications.length > 0 && _storeInitialized) {
|
|
6146
|
+
const { writeNotification } = await import("../notifications-LLCCHRYV.js");
|
|
6147
|
+
for (const note of notifications) {
|
|
6148
|
+
try {
|
|
6149
|
+
await writeNotification({
|
|
6150
|
+
agentId: "exe",
|
|
6151
|
+
agentRole: "system",
|
|
6152
|
+
event: "error_spike",
|
|
6153
|
+
project: "dispatch-journal",
|
|
6154
|
+
summary: note.tier === "stalled" ? `STALLED DISPATCH \u2014 ${note.summary}` : `Undelivered dispatch \u2014 ${note.summary}`,
|
|
6155
|
+
sessionScope: null
|
|
6156
|
+
});
|
|
6157
|
+
acted("stalled_dispatch_sweep");
|
|
6158
|
+
} catch {
|
|
6159
|
+
}
|
|
6160
|
+
process.stderr.write(
|
|
6161
|
+
`[exed] Stalled-dispatch ${note.tier}: ${note.intents.length} intent(s) undelivered
|
|
6162
|
+
`
|
|
6163
|
+
);
|
|
6164
|
+
}
|
|
6165
|
+
}
|
|
6166
|
+
try {
|
|
6167
|
+
if (Object.keys(nextState).length > 0) {
|
|
6168
|
+
wf(statePath, JSON.stringify(nextState, null, 2), "utf-8");
|
|
6169
|
+
} else if (ex(statePath)) {
|
|
6170
|
+
wf(statePath, "{}", "utf-8");
|
|
6171
|
+
}
|
|
6172
|
+
} catch {
|
|
6173
|
+
}
|
|
6174
|
+
} catch (err) {
|
|
6175
|
+
process.stderr.write(
|
|
6176
|
+
`[exed] Stalled-dispatch sweep error: ${err instanceof Error ? err.message : String(err)}
|
|
6177
|
+
`
|
|
6178
|
+
);
|
|
6179
|
+
}
|
|
6180
|
+
};
|
|
6181
|
+
const timer = setInterval(
|
|
6182
|
+
() => void traceDaemonTimer("stalled_dispatch_sweep", tick),
|
|
6183
|
+
STALLED_DISPATCH_SWEEP_INTERVAL_MS
|
|
6184
|
+
);
|
|
6185
|
+
timer.unref();
|
|
6186
|
+
process.stderr.write(
|
|
6187
|
+
`[exed] Stalled-dispatch sweep timer started (every ${STALLED_DISPATCH_SWEEP_INTERVAL_MS / 6e4}m)
|
|
6188
|
+
`
|
|
6189
|
+
);
|
|
6190
|
+
}
|
|
6087
6191
|
function startStaleBranchSweep() {
|
|
6088
6192
|
const tick = async () => {
|
|
6089
6193
|
fired("stale_branch_sweep");
|
|
6090
6194
|
if (sweepStarved("stale_branch_sweep")) return;
|
|
6091
6195
|
try {
|
|
6092
|
-
const { discoverRepoPathsAsync } = await import("../worktree-sweep-
|
|
6196
|
+
const { discoverRepoPathsAsync } = await import("../worktree-sweep-X7MUEEQS.js");
|
|
6093
6197
|
const { scanUnmergedBranchesCached } = await import("../branch-hygiene-HFJ3HA62.js");
|
|
6094
6198
|
const { runBudgetedSweep } = await import("../sweep-budget-KMPJ7O5Z.js");
|
|
6095
6199
|
const today = (/* @__PURE__ */ new Date()).toISOString().slice(0, 10);
|
|
@@ -6122,7 +6226,7 @@ function startStaleBranchSweep() {
|
|
|
6122
6226
|
if (!_storeInitialized) return;
|
|
6123
6227
|
const stale = scan.branches.filter((b) => b.ageHours >= STALE_BRANCH_HOURS).slice(0, 5).map((b) => `${b.name} (+${b.ahead} commits, ${(b.ageHours / 24).toFixed(1)}d)`).join("; ");
|
|
6124
6228
|
try {
|
|
6125
|
-
const { writeNotification } = await import("../notifications-
|
|
6229
|
+
const { writeNotification } = await import("../notifications-LLCCHRYV.js");
|
|
6126
6230
|
await writeNotification({
|
|
6127
6231
|
agentId: "exe",
|
|
6128
6232
|
agentRole: "system",
|
|
@@ -6177,7 +6281,7 @@ function startWorkStateHeartbeat() {
|
|
|
6177
6281
|
const { getClient } = await import("./database.js");
|
|
6178
6282
|
const { listSessions } = await import("./session-registry.js");
|
|
6179
6283
|
const { isCoordinatorName } = await import("./employees.js");
|
|
6180
|
-
const { runWorkStateTick } = await import("../work-state-heartbeat-
|
|
6284
|
+
const { runWorkStateTick } = await import("../work-state-heartbeat-267YQ75U.js");
|
|
6181
6285
|
let liveTmux = null;
|
|
6182
6286
|
const loadLiveTmux = async () => {
|
|
6183
6287
|
if (!liveTmux) liveTmux = await listTmuxSessionNamesAsync();
|
|
@@ -6243,7 +6347,7 @@ function startGraphExtraction() {
|
|
|
6243
6347
|
if (!await ensureStoreForPolling()) return;
|
|
6244
6348
|
const { getClient } = await import("./database.js");
|
|
6245
6349
|
const client = getClient();
|
|
6246
|
-
const { extractBatch } = await import("../graph-rag-
|
|
6350
|
+
const { extractBatch } = await import("../graph-rag-RLRQMY54.js");
|
|
6247
6351
|
const result = await extractBatch(client, 50, config.selfQueryModel);
|
|
6248
6352
|
if (result.processed > 0) {
|
|
6249
6353
|
acted("graph_extraction");
|
|
@@ -6574,7 +6678,7 @@ async function refreshAgentData() {
|
|
|
6574
6678
|
const decision = evaluateSpendCapAlert(_lastSpendCapLevel, capStatus);
|
|
6575
6679
|
_lastSpendCapLevel = decision.level;
|
|
6576
6680
|
if (decision.shouldAlert && decision.summary) {
|
|
6577
|
-
const { writeNotification } = await import("../notifications-
|
|
6681
|
+
const { writeNotification } = await import("../notifications-LLCCHRYV.js");
|
|
6578
6682
|
await writeNotification({
|
|
6579
6683
|
agentId: "system",
|
|
6580
6684
|
agentRole: "system",
|
|
@@ -6696,7 +6800,7 @@ function startReflectionSweep() {
|
|
|
6696
6800
|
);
|
|
6697
6801
|
let runReflection;
|
|
6698
6802
|
try {
|
|
6699
|
-
({ runReflection } = await import("../memory-reflection-
|
|
6803
|
+
({ runReflection } = await import("../memory-reflection-5IJ6RE2J.js"));
|
|
6700
6804
|
} catch (importErr) {
|
|
6701
6805
|
_reflectionImportFailed = true;
|
|
6702
6806
|
process.stderr.write(`[exed] Reflection module unavailable (stale chunk hash?) \u2014 disabled until daemon restart: ${importErr instanceof Error ? importErr.message : String(importErr)}
|
|
@@ -6737,7 +6841,7 @@ function startReflectionSweep() {
|
|
|
6737
6841
|
if (memories > 100 && cards < memories * 0.1) {
|
|
6738
6842
|
process.stderr.write(`[exed] Memory cards sparse (${cards} cards / ${memories} memories) \u2014 running backfill...
|
|
6739
6843
|
`);
|
|
6740
|
-
const { insertMemoryCardsForBatch } = await import("../memory-cards-
|
|
6844
|
+
const { insertMemoryCardsForBatch } = await import("../memory-cards-R74YU4CO.js");
|
|
6741
6845
|
const batchSize = 500;
|
|
6742
6846
|
let offset = 0;
|
|
6743
6847
|
let totalCards = 0;
|
|
@@ -6818,7 +6922,7 @@ function startDatabaseBackup() {
|
|
|
6818
6922
|
`
|
|
6819
6923
|
);
|
|
6820
6924
|
try {
|
|
6821
|
-
const { maybeVerifyDailyBackup } = await import("../backup-verify-
|
|
6925
|
+
const { maybeVerifyDailyBackup } = await import("../backup-verify-UKLX6IEK.js");
|
|
6822
6926
|
const verdict = await maybeVerifyDailyBackup(backupPath);
|
|
6823
6927
|
if (verdict && !verdict.ok) {
|
|
6824
6928
|
process.stderr.write(
|
|
@@ -6894,7 +6998,7 @@ function startSessionEventsRetention() {
|
|
|
6894
6998
|
fired("session_events_retention");
|
|
6895
6999
|
if (!await ensureStoreForPolling()) return;
|
|
6896
7000
|
try {
|
|
6897
|
-
const { DEFAULT_SESSION_EVENTS_RETENTION_DAYS } = await import("../session-events-
|
|
7001
|
+
const { DEFAULT_SESSION_EVENTS_RETENTION_DAYS } = await import("../session-events-YCYPLWPG.js");
|
|
6898
7002
|
const days = SESSION_EVENTS_RETENTION_DAYS ?? DEFAULT_SESSION_EVENTS_RETENTION_DAYS;
|
|
6899
7003
|
if (!isWriteWorkerEnabled() || !isDbWriteWorkerReady()) {
|
|
6900
7004
|
process.stderr.write(
|
|
@@ -6940,7 +7044,7 @@ function startIntercomQueueDrain() {
|
|
|
6940
7044
|
const tick = async () => traceDaemonTimer("intercom_queue_drain", async () => {
|
|
6941
7045
|
fired("intercom_queue_drain");
|
|
6942
7046
|
try {
|
|
6943
|
-
const { drainQueueAsync, readQueue } = await import("../intercom-queue-
|
|
7047
|
+
const { drainQueueAsync, readQueue } = await import("../intercom-queue-BZ4M3L4S.js");
|
|
6944
7048
|
const {
|
|
6945
7049
|
sendIntercomAsync: centralSendIntercomAsync,
|
|
6946
7050
|
countScopedPendingReviews,
|
|
@@ -7072,7 +7176,7 @@ function startLedgerDrain() {
|
|
|
7072
7176
|
const tick = async () => traceDaemonTimer("ledger_drain", async () => {
|
|
7073
7177
|
fired("ledger_drain");
|
|
7074
7178
|
try {
|
|
7075
|
-
const { isLedgerEnabled, drainLedger } = await import("../notification-ledger-
|
|
7179
|
+
const { isLedgerEnabled, drainLedger } = await import("../notification-ledger-P5XBUYKO.js");
|
|
7076
7180
|
if (!isLedgerEnabled()) return;
|
|
7077
7181
|
const result = await drainLedger({
|
|
7078
7182
|
// Shadow "would-deliver": idle target = would-deliver, busy = retry.
|
|
@@ -7111,7 +7215,7 @@ function startOrphanReaper() {
|
|
|
7111
7215
|
const tick = async () => traceDaemonTimer("orphan_reaper", async () => {
|
|
7112
7216
|
fired("orphan_reaper");
|
|
7113
7217
|
try {
|
|
7114
|
-
const { reapOrphanedMcpProcesses, createOrphanReaperRealDepsAsync } = await import("../daemon-orchestration-
|
|
7218
|
+
const { reapOrphanedMcpProcesses, createOrphanReaperRealDepsAsync } = await import("../daemon-orchestration-ZMQWYYDT.js");
|
|
7115
7219
|
const deps = await createOrphanReaperRealDepsAsync();
|
|
7116
7220
|
const reaped = await reapOrphanedMcpProcesses(deps);
|
|
7117
7221
|
if (reaped.length > 0) acted("orphan_reaper");
|
|
@@ -7136,7 +7240,7 @@ function startZombieAgentReaper() {
|
|
|
7136
7240
|
const tick = async () => traceDaemonTimer("zombie_agent_reaper", async () => {
|
|
7137
7241
|
fired("zombie_agent_reaper");
|
|
7138
7242
|
try {
|
|
7139
|
-
const { reapZombieAgentProcesses, createZombieAgentReaperRealDepsAsync } = await import("../daemon-orchestration-
|
|
7243
|
+
const { reapZombieAgentProcesses, createZombieAgentReaperRealDepsAsync } = await import("../daemon-orchestration-ZMQWYYDT.js");
|
|
7140
7244
|
const deps = await createZombieAgentReaperRealDepsAsync();
|
|
7141
7245
|
const reaped = reapZombieAgentProcesses(deps);
|
|
7142
7246
|
if (reaped.length > 0) acted("zombie_agent_reaper");
|
|
@@ -7160,7 +7264,7 @@ async function startDaemonMemoryPressureWatchdog() {
|
|
|
7160
7264
|
try {
|
|
7161
7265
|
const cfg = await getCachedConfig();
|
|
7162
7266
|
if (!cfg) return;
|
|
7163
|
-
const { startMemoryPressureWatchdog: startWatchdog, MEMORY_PRESSURE_WATCHDOG_DEFAULTS } = await import("../memory-pressure-watchdog-
|
|
7267
|
+
const { startMemoryPressureWatchdog: startWatchdog, MEMORY_PRESSURE_WATCHDOG_DEFAULTS } = await import("../memory-pressure-watchdog-FFC2CHFJ.js");
|
|
7164
7268
|
const watchdogCfg = {
|
|
7165
7269
|
...MEMORY_PRESSURE_WATCHDOG_DEFAULTS,
|
|
7166
7270
|
...cfg.memoryPressureWatchdog ?? {}
|
|
@@ -7192,7 +7296,7 @@ function startWorktreeReaper() {
|
|
|
7192
7296
|
fired("worktree_reaper");
|
|
7193
7297
|
if (sweepStarved("worktree_reaper")) return;
|
|
7194
7298
|
try {
|
|
7195
|
-
const { reapOrphanedWorktrees, createWorktreeReaperRealDeps } = await import("../daemon-orchestration-
|
|
7299
|
+
const { reapOrphanedWorktrees, createWorktreeReaperRealDeps } = await import("../daemon-orchestration-ZMQWYYDT.js");
|
|
7196
7300
|
const deps = await createWorktreeReaperRealDeps();
|
|
7197
7301
|
const result = await reapOrphanedWorktrees(deps);
|
|
7198
7302
|
if (result.pruned.length > 0) {
|
|
@@ -7236,8 +7340,8 @@ function startWorktreeReaper() {
|
|
|
7236
7340
|
}
|
|
7237
7341
|
return;
|
|
7238
7342
|
}
|
|
7239
|
-
const { cleanupAgentWorktree } = await import("../worktree-sweep-
|
|
7240
|
-
const { getMainRepoRootAsync } = await import("../worktree-
|
|
7343
|
+
const { cleanupAgentWorktree } = await import("../worktree-sweep-X7MUEEQS.js");
|
|
7344
|
+
const { getMainRepoRootAsync } = await import("../worktree-3FO6EQ4G.js");
|
|
7241
7345
|
const repoRoot = await getMainRepoRootAsync(signal.worktreePath);
|
|
7242
7346
|
if (repoRoot && signal.agentId) {
|
|
7243
7347
|
const notes = await cleanupAgentWorktree(repoRoot, signal.agentId);
|
|
@@ -7274,7 +7378,7 @@ function startAutoWake() {
|
|
|
7274
7378
|
if (!await ensureStoreForPolling()) return;
|
|
7275
7379
|
try {
|
|
7276
7380
|
const { getClient } = await import("./database.js");
|
|
7277
|
-
const { pollOrphanedTasks, createAutoWakeRealDeps } = await import("../daemon-orchestration-
|
|
7381
|
+
const { pollOrphanedTasks, createAutoWakeRealDeps } = await import("../daemon-orchestration-ZMQWYYDT.js");
|
|
7278
7382
|
const deps = createAutoWakeRealDeps(getClient, process.cwd(), getTmuxSessionsAsync);
|
|
7279
7383
|
const woken = await pollOrphanedTasks(deps);
|
|
7280
7384
|
if (woken.length > 0) acted("auto_wake");
|
|
@@ -7349,7 +7453,7 @@ function startAutoWake() {
|
|
|
7349
7453
|
if (age > 60 * 60 * 1e3) {
|
|
7350
7454
|
try {
|
|
7351
7455
|
await unlink(signalPath);
|
|
7352
|
-
void import("../orchestration-events-
|
|
7456
|
+
void import("../orchestration-events-VBGCIQSS.js").then(({ recordOrchestrationEventBestEffort: recordOE }) => {
|
|
7353
7457
|
recordOE({ eventType: "signal.stale", source: "exe-daemon.autoWake", severity: "warn", payload: { file, ageMinutes: Math.round(age / 6e4) } });
|
|
7354
7458
|
}).catch(() => {
|
|
7355
7459
|
});
|
|
@@ -7498,7 +7602,7 @@ function startStuckTaskRelease() {
|
|
|
7498
7602
|
createStaleClaimRealDeps,
|
|
7499
7603
|
escalateStuckBlockedTasks,
|
|
7500
7604
|
createStuckBlockedRealDeps
|
|
7501
|
-
} = await import("../daemon-orchestration-
|
|
7605
|
+
} = await import("../daemon-orchestration-ZMQWYYDT.js");
|
|
7502
7606
|
const { runBudgetedSweep } = await import("../sweep-budget-KMPJ7O5Z.js");
|
|
7503
7607
|
const steps = [
|
|
7504
7608
|
async () => {
|
|
@@ -7763,12 +7867,12 @@ function startTaskEnforcementScanner() {
|
|
|
7763
7867
|
const tick = async () => traceDaemonTimer("task_enforcement", async () => {
|
|
7764
7868
|
fired("task_enforcement");
|
|
7765
7869
|
try {
|
|
7766
|
-
const { runTaskEnforcementTick } = await import("../task-enforcement-
|
|
7870
|
+
const { runTaskEnforcementTick } = await import("../task-enforcement-WOIZ5TLK.js");
|
|
7767
7871
|
const { getTransport } = await import("./transport.js");
|
|
7768
7872
|
const { loadAgentConfig } = await import("./agent-config.js");
|
|
7769
7873
|
const { getClient } = await import("./database.js");
|
|
7770
7874
|
const { loadEmployeesSync } = await import("./employees.js");
|
|
7771
|
-
const { sessionScopeFilter } = await import("../task-scope-
|
|
7875
|
+
const { sessionScopeFilter } = await import("../task-scope-PQ67YRWP.js");
|
|
7772
7876
|
const transport = getTransport();
|
|
7773
7877
|
const { sessions: allSessions, paneCache, aliveSessions } = await getSharedOrchestrationCaches();
|
|
7774
7878
|
await yieldToEventLoop();
|
|
@@ -7779,10 +7883,10 @@ function startTaskEnforcementScanner() {
|
|
|
7779
7883
|
sendKeysLiteral: transport.sendKeysLiteral?.bind(transport),
|
|
7780
7884
|
isAlive: (session) => aliveSessions.has(session)
|
|
7781
7885
|
};
|
|
7782
|
-
const { checkAutoWakeGates } = await import("../daemon-orchestration-
|
|
7886
|
+
const { checkAutoWakeGates } = await import("../daemon-orchestration-ZMQWYYDT.js");
|
|
7783
7887
|
const { ensureEmployeeAsync, employeeSessionName, sendIntercomAsync } = await import("./tmux-routing.js");
|
|
7784
7888
|
const { shouldAutoInstance } = await import("./employees.js");
|
|
7785
|
-
const { recordOrchestrationEventBestEffort } = await import("../orchestration-events-
|
|
7889
|
+
const { recordOrchestrationEventBestEffort } = await import("../orchestration-events-VBGCIQSS.js");
|
|
7786
7890
|
const projectDir = process.cwd();
|
|
7787
7891
|
await runTaskEnforcementTick({
|
|
7788
7892
|
transport: enforcementTransport,
|
|
@@ -8108,7 +8212,7 @@ async function sweepExpiredTracesFromDaemonTimer() {
|
|
|
8108
8212
|
const memoryIds = idsResult.rows.map((r) => String(r.id)).filter(Boolean);
|
|
8109
8213
|
if (memoryIds.length === 0) return 0;
|
|
8110
8214
|
const { getClient } = await import("./database.js");
|
|
8111
|
-
const { cleanupGraphLinksForMemories, cleanupCardsForMemories } = await import("../graph-rag-
|
|
8215
|
+
const { cleanupGraphLinksForMemories, cleanupCardsForMemories } = await import("../graph-rag-RLRQMY54.js");
|
|
8112
8216
|
const client = getClient();
|
|
8113
8217
|
await cleanupGraphLinksForMemories(client, memoryIds);
|
|
8114
8218
|
await cleanupCardsForMemories(client, memoryIds);
|
|
@@ -8819,7 +8923,7 @@ function startEventLoopLagDetector() {
|
|
|
8819
8923
|
const msg = `[exed] EVENT LOOP BLOCKED ${(lag / 1e3).toFixed(1)}s \u2014 MCP UNRESPONSIVE. Sessions will die.`;
|
|
8820
8924
|
process.stderr.write(msg + "\n");
|
|
8821
8925
|
logDaemonHealth({ event: "event_loop_blocked", pid: process.pid, message: msg, data: { lagMs: lag } });
|
|
8822
|
-
void import("../orchestration-events-
|
|
8926
|
+
void import("../orchestration-events-VBGCIQSS.js").then(({ recordOrchestrationEventBestEffort: recordOE }) => {
|
|
8823
8927
|
recordOE({ eventType: "daemon.event_loop_blocked", source: "exe-daemon.lagDetector", severity: "error", durationMs: lag });
|
|
8824
8928
|
}).catch(() => {
|
|
8825
8929
|
});
|
|
@@ -9013,7 +9117,7 @@ function startTaskFileResync() {
|
|
|
9013
9117
|
});
|
|
9014
9118
|
if (Number(res.rowsAffected ?? 0) > 0) {
|
|
9015
9119
|
synced++;
|
|
9016
|
-
void import("../orchestration-events-
|
|
9120
|
+
void import("../orchestration-events-VBGCIQSS.js").then(({ recordOrchestrationEventBestEffort: recordOE }) => {
|
|
9017
9121
|
recordOE({
|
|
9018
9122
|
eventType: "task_file.resynced",
|
|
9019
9123
|
source: "exe-daemon.taskFileResync",
|
|
@@ -9047,7 +9151,7 @@ function startTaskGroupBarriers() {
|
|
|
9047
9151
|
fired("task_group_barriers");
|
|
9048
9152
|
if (!await ensureStoreForPolling()) return;
|
|
9049
9153
|
try {
|
|
9050
|
-
const { pollTaskGroupBarriers } = await import("../daemon-orchestration-
|
|
9154
|
+
const { pollTaskGroupBarriers } = await import("../daemon-orchestration-ZMQWYYDT.js");
|
|
9051
9155
|
const firedCount = await pollTaskGroupBarriers();
|
|
9052
9156
|
if (firedCount > 0) {
|
|
9053
9157
|
acted("task_group_barriers");
|
|
@@ -9069,7 +9173,7 @@ function startCheckpointGc() {
|
|
|
9069
9173
|
fired("checkpoint_gc");
|
|
9070
9174
|
if (!await ensureStoreForPolling()) return;
|
|
9071
9175
|
try {
|
|
9072
|
-
const { gcStaleCheckpoints } = await import("../daemon-orchestration-
|
|
9176
|
+
const { gcStaleCheckpoints } = await import("../daemon-orchestration-ZMQWYYDT.js");
|
|
9073
9177
|
const cleared = await gcStaleCheckpoints();
|
|
9074
9178
|
if (cleared > 0) {
|
|
9075
9179
|
acted("checkpoint_gc");
|
|
@@ -9109,14 +9213,14 @@ function startDispatchAckCleanup() {
|
|
|
9109
9213
|
function startProjectionWorkerDeferred() {
|
|
9110
9214
|
setTimeout(async () => {
|
|
9111
9215
|
try {
|
|
9112
|
-
const { startProjectionWorker } = await import("../projection-worker-
|
|
9216
|
+
const { startProjectionWorker } = await import("../projection-worker-FLASNERC.js");
|
|
9113
9217
|
startProjectionWorker();
|
|
9114
9218
|
} catch {
|
|
9115
9219
|
}
|
|
9116
9220
|
}, 2e4);
|
|
9117
9221
|
}
|
|
9118
9222
|
async function startToolTelemetry() {
|
|
9119
|
-
const { startToolTelemetryFlush } = await import("../tool-telemetry-
|
|
9223
|
+
const { startToolTelemetryFlush } = await import("../tool-telemetry-ZL6TTZWG.js");
|
|
9120
9224
|
startToolTelemetryFlush();
|
|
9121
9225
|
process.stderr.write("[exed] Tool telemetry started (flush every 5m)\n");
|
|
9122
9226
|
}
|
|
@@ -9233,6 +9337,7 @@ function startLocalFirstTimers() {
|
|
|
9233
9337
|
setTimeout(() => void traceDaemonTimer("background_job_guardrails_start", () => startBackgroundJobGuardrails()), 6e4);
|
|
9234
9338
|
setTimeout(startWorktreeReaper, 12e4);
|
|
9235
9339
|
setTimeout(startStaleBranchSweep, 2e5);
|
|
9340
|
+
setTimeout(startStalledDispatchSweep, 21e4);
|
|
9236
9341
|
setTimeout(startZombieAgentReaper, 25e3);
|
|
9237
9342
|
setTimeout(() => void startDaemonMemoryPressureWatchdog(), 3e4);
|
|
9238
9343
|
setTimeout(() => void traceDaemonTimer("intercom_dedup_cleanup", async () => {
|
|
@@ -9284,7 +9389,7 @@ function startLocalFirstTimers() {
|
|
|
9284
9389
|
fired("orphan_task_cleanup");
|
|
9285
9390
|
try {
|
|
9286
9391
|
if (!await ensureStoreForPolling()) return;
|
|
9287
|
-
const { cleanOrphanedTaskFiles } = await import("../tasks-crud-
|
|
9392
|
+
const { cleanOrphanedTaskFiles } = await import("../tasks-crud-TJNMUKKH.js");
|
|
9288
9393
|
const count = await cleanOrphanedTaskFiles();
|
|
9289
9394
|
if (count > 0) {
|
|
9290
9395
|
acted("orphan_task_cleanup");
|
|
@@ -9300,7 +9405,7 @@ function startLocalFirstTimers() {
|
|
|
9300
9405
|
fired("task_file_consistency");
|
|
9301
9406
|
try {
|
|
9302
9407
|
if (!await ensureStoreForPolling()) return;
|
|
9303
|
-
const { checkTaskFileConsistency } = await import("../tasks-crud-
|
|
9408
|
+
const { checkTaskFileConsistency } = await import("../tasks-crud-TJNMUKKH.js");
|
|
9304
9409
|
const mismatches = await checkTaskFileConsistency();
|
|
9305
9410
|
if (mismatches > 0) {
|
|
9306
9411
|
acted("task_file_consistency");
|
|
@@ -9319,7 +9424,7 @@ function startLocalFirstTimers() {
|
|
|
9319
9424
|
const TELEMETRY_DAILY_MS = 24 * 60 * 60 * 1e3;
|
|
9320
9425
|
const telemetryDaily = async () => {
|
|
9321
9426
|
try {
|
|
9322
|
-
const { sendTelemetry, isTelemetryEnabled } = await import("../telemetry-upload-
|
|
9427
|
+
const { sendTelemetry, isTelemetryEnabled } = await import("../telemetry-upload-6LBGRJUE.js");
|
|
9323
9428
|
if (!isTelemetryEnabled()) return;
|
|
9324
9429
|
const { upstream } = await sendTelemetry(24);
|
|
9325
9430
|
if (upstream.startsWith("sent")) {
|
|
@@ -9557,7 +9662,7 @@ try {
|
|
|
9557
9662
|
});
|
|
9558
9663
|
}
|
|
9559
9664
|
try {
|
|
9560
|
-
const { initOrgPartnerRuntime } = await import("../org-partner-runtime-
|
|
9665
|
+
const { initOrgPartnerRuntime } = await import("../org-partner-runtime-TPVKFR6E.js");
|
|
9561
9666
|
await initOrgPartnerRuntime();
|
|
9562
9667
|
} catch (err) {
|
|
9563
9668
|
process.stderr.write(
|