@askexenow/exe-os 0.9.145 → 0.9.147
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/dist/{active-agent-HUDSZRUG.js → active-agent-KMQCNXXD.js} +6 -6
- package/dist/{active-agent-GJOJUEMF.js → active-agent-NCZCDDZ2.js} +6 -6
- package/dist/{agent-context-HH7TL5ZP.js → agent-context-AZTTMUHP.js} +1 -1
- package/dist/agent-heartbeat-I5UPGXAU.js +60 -0
- package/dist/{agent-loop-OCJFYO72.js → agent-loop-NUIWAL3Z.js} +1 -1
- package/dist/{agentic-ontology-5PGUVMDP.js → agentic-ontology-SQR74CO7.js} +2 -2
- package/dist/{asana-BSDR6NW4.js → asana-MRQ2OQMJ.js} +1 -1
- package/dist/assets/wezterm.lua +68 -0
- package/dist/{backfill-metadata-ZDJ5B37R.js → backfill-metadata-KMDWLDXU.js} +7 -7
- package/dist/{background-jobs-4N4JSZVZ.js → background-jobs-IUB22CRF.js} +4 -4
- package/dist/{bash-X54PZMOG.js → bash-HOHKSOU3.js} +1 -1
- package/dist/{behaviors-TXLHEM5J.js → behaviors-4U2N5L4E.js} +6 -6
- package/dist/bin/age-ontology-load.js +4 -4
- package/dist/bin/agentic-ontology-backfill.js +9 -9
- package/dist/bin/agentic-reflection-backfill.js +10 -10
- package/dist/bin/agentic-semantic-label.js +9 -9
- package/dist/bin/backfill-conversations.js +9 -9
- package/dist/bin/backfill-responses.js +9 -9
- package/dist/bin/backfill-vectors.js +12 -14
- package/dist/bin/bulk-sync-postgres.js +10 -10
- package/dist/bin/cc-doctor.js +5 -5
- package/dist/bin/cleanup-stale-review-tasks.js +12 -11
- package/dist/bin/cli.js +19 -19
- package/dist/bin/customer-readiness.js +47 -0
- package/dist/bin/exe-agent-config.js +6 -6
- package/dist/bin/exe-agent.js +8 -8
- package/dist/bin/exe-assign.js +11 -11
- package/dist/bin/exe-boot.js +39 -32
- package/dist/bin/exe-call.js +9 -11
- package/dist/bin/exe-cloud.js +10 -12
- package/dist/bin/exe-dispatch.js +12 -11
- package/dist/bin/exe-doctor.js +2 -2
- package/dist/bin/exe-export-behaviors.js +10 -10
- package/dist/bin/exe-forget.js +9 -9
- package/dist/bin/exe-gateway.js +18 -18
- package/dist/bin/exe-healthcheck.js +5 -5
- package/dist/bin/exe-heartbeat.js +19 -14
- package/dist/bin/exe-kill.js +9 -9
- package/dist/bin/exe-launch-agent.js +16 -18
- package/dist/bin/exe-new-employee.js +11 -11
- package/dist/bin/exe-pending-messages.js +13 -12
- package/dist/bin/exe-pending-notifications.js +12 -11
- package/dist/bin/exe-pending-reviews.js +20 -13
- package/dist/bin/exe-rename.js +9 -11
- package/dist/bin/exe-review.js +14 -13
- package/dist/bin/exe-search.js +8 -10
- package/dist/bin/exe-session-cleanup.js +19 -19
- package/dist/bin/exe-settings.js +11 -13
- package/dist/bin/exe-start-codex.js +15 -15
- package/dist/bin/exe-start-opencode.js +11 -11
- package/dist/bin/exe-status.js +13 -12
- package/dist/bin/exe-support.js +5 -5
- package/dist/bin/exe-team.js +6 -6
- package/dist/bin/git-sweep.js +12 -11
- package/dist/bin/graph-backfill.js +10 -10
- package/dist/bin/graph-export.js +8 -8
- package/dist/bin/graph-layer-benchmark.js +1 -1
- package/dist/bin/install.js +38 -12
- package/dist/bin/intercom-check.js +14 -8
- package/dist/bin/list-providers.js +1 -1
- package/dist/bin/postgres-agentic-reflection-backfill.js +6 -6
- package/dist/bin/postgres-agentic-semantic-backfill.js +5 -5
- package/dist/bin/pre-publish.js +2 -2
- package/dist/bin/registry-proxy.js +1 -1
- package/dist/bin/scan-tasks.js +48 -49
- package/dist/bin/setup.js +6 -5
- package/dist/bin/shard-migrate.js +8 -8
- package/dist/bin/stack-update.js +66 -10
- package/dist/bin/update.js +1 -1
- package/dist/{branding-52J2ILJX.js → branding-EHDA3CCK.js} +4 -6
- package/dist/{capacity-monitor-HWN2JX5W.js → capacity-monitor-Q5M5SVRC.js} +13 -12
- package/dist/{catchup-brief-UERCIVM5.js → catchup-brief-IPNSW7RQ.js} +14 -13
- package/dist/{chunk-GK5VMHSN.js → chunk-26UVGP3I.js} +1 -1
- package/dist/{chunk-CDDRSIGK.js → chunk-2BPO7VQF.js} +80 -70
- package/dist/{chunk-7PTII6F4.js → chunk-2OATM2JZ.js} +1 -1
- package/dist/{chunk-AJ2XDY27.js → chunk-3FIWKONP.js} +10 -12
- package/dist/{chunk-53VUIKOE.js → chunk-3MLGUSKS.js} +1 -1
- package/dist/{chunk-OYCQ6PFC.js → chunk-4EINMZNO.js} +6 -6
- package/dist/{chunk-JUITBJ7J.js → chunk-4GLEFA2X.js} +1 -1
- package/dist/{chunk-BY4OTURZ.js → chunk-4MN44ORL.js} +1 -1
- package/dist/{chunk-MUVPQCQA.js → chunk-6HFZ2KUC.js} +1 -3
- package/dist/{chunk-F7JVVLGH.js → chunk-6YUACQQA.js} +2 -4
- package/dist/{chunk-UVH6FA5E.js → chunk-7B5DQGXG.js} +1 -1
- package/dist/{chunk-XEA6DSLR.js → chunk-AERGE6GC.js} +4 -6
- package/dist/{chunk-NQAZ2CP7.js → chunk-AGFWOII2.js} +11 -11
- package/dist/{chunk-RWJY7KMP.js → chunk-ARGBV4PP.js} +46 -13
- package/dist/{chunk-VRD452MQ.js → chunk-B4HAUSVQ.js} +2 -2
- package/dist/{chunk-VX4X2O6J.js → chunk-CGQ5PWS3.js} +6 -6
- package/dist/{chunk-RNN4MZDN.js → chunk-DBXKWFTK.js} +3 -3
- package/dist/{chunk-Y2VVTK2E.js → chunk-DTLASDQM.js} +1 -1
- package/dist/{chunk-K3PSCQLK.js → chunk-DW6P7UVY.js} +4 -6
- package/dist/{chunk-B6Q6WAD7.js → chunk-EHNSK2Y4.js} +1 -1
- package/dist/{chunk-7PEYIW53.js → chunk-EHXOWGQG.js} +2 -2
- package/dist/{chunk-6BUUY7FG.js → chunk-EOO32RJZ.js} +2 -4
- package/dist/{chunk-MFGARIVE.js → chunk-EYQIEK5M.js} +2 -4
- package/dist/{chunk-NT6R4ATM.js → chunk-FG4Z2XFU.js} +1 -1
- package/dist/{chunk-32LFUJVG.js → chunk-FNMNKYVH.js} +221 -110
- package/dist/{chunk-CWPE6QVM.js → chunk-GNHN5HRQ.js} +2 -4
- package/dist/{chunk-WLEVAIL5.js → chunk-GP6G6EQI.js} +1 -1
- package/dist/{chunk-KLRP6ZG3.js → chunk-HHMHL4FB.js} +251 -96
- package/dist/{chunk-O7YD7JYE.js → chunk-I7AW4237.js} +18 -4
- package/dist/{chunk-TFZZL3QF.js → chunk-ICKEGWWP.js} +2 -4
- package/dist/{chunk-SR6D65DA.js → chunk-IFACD7E6.js} +3 -3
- package/dist/{chunk-I4WAKJ6W.js → chunk-J4RAXKTC.js} +3 -3
- package/dist/{chunk-65UQ7H5U.js → chunk-JF3Q5YKI.js} +4 -6
- package/dist/{chunk-RWURKLS3.js → chunk-JH7Z2AZ7.js} +1 -1
- package/dist/{chunk-5WTYETQO.js → chunk-K4KAPZC7.js} +4 -8
- package/dist/{chunk-G3VR3MJI.js → chunk-KIUU4PNX.js} +4 -8
- package/dist/{chunk-4F56OUR7.js → chunk-LC53LVOT.js} +2 -2
- package/dist/{chunk-W7NQE65M.js → chunk-LJML7HT2.js} +1 -1
- package/dist/{chunk-V4O2APMI.js → chunk-LL5EY6OQ.js} +1 -1
- package/dist/{chunk-DCJ42FEN.js → chunk-LWJ4AMMY.js} +2 -4
- package/dist/{chunk-GCMT6RWI.js → chunk-LYH5HE24.js} +3 -14
- package/dist/{chunk-63UVIM7S.js → chunk-MBA4NNTS.js} +2 -4
- package/dist/{chunk-7KR5PV4P.js → chunk-MKPSMRVX.js} +1 -1
- package/dist/{chunk-C4EVFN7J.js → chunk-MKUVEDUE.js} +2 -2
- package/dist/chunk-MLKGABMK.js +9 -0
- package/dist/chunk-MLXJ5EZG.js +90 -0
- package/dist/{chunk-BXCJOACQ.js → chunk-NFHFNPTN.js} +3 -5
- package/dist/{chunk-2R3N4DQY.js → chunk-NJKERRSG.js} +3 -3
- package/dist/{chunk-I5VJNTDL.js → chunk-NNT2ZNMC.js} +5 -7
- package/dist/{chunk-O7CTVDC3.js → chunk-ODEGQCWW.js} +8 -8
- package/dist/{chunk-H4YONWQX.js → chunk-ONMRBKAX.js} +229 -108
- package/dist/{chunk-NE6RPW5C.js → chunk-PMWDO5FR.js} +1 -1
- package/dist/{chunk-IPSFAUK5.js → chunk-QB66MH2V.js} +4 -4
- package/dist/{chunk-XAHIVBTU.js → chunk-QHQJ7DLL.js} +6 -6
- package/dist/{chunk-NA3MXUU6.js → chunk-TH6HTK2L.js} +17 -15
- package/dist/{chunk-H4KUTL2T.js → chunk-TKEDF7KV.js} +1 -1
- package/dist/{chunk-KHV55ME4.js → chunk-TOWAZ5IV.js} +95 -118
- package/dist/{chunk-IBVB2NGY.js → chunk-TOXHEZN5.js} +47 -4
- package/dist/{chunk-H6OEU54G.js → chunk-UJMDHPIN.js} +91 -39
- package/dist/{chunk-UWBU44UP.js → chunk-UPL5FEZY.js} +1 -1
- package/dist/{chunk-ER3UJ2VL.js → chunk-UPMKSFBU.js} +2 -2
- package/dist/{chunk-X7DJ2QZW.js → chunk-V4MKR32F.js} +4 -6
- package/dist/{chunk-HV75RBMK.js → chunk-VB23RNNI.js} +1 -1
- package/dist/{chunk-56T5TMNK.js → chunk-VK2AWQ6D.js} +2 -2
- package/dist/{chunk-UXDQ4ERA.js → chunk-VNTDQUOG.js} +21 -18
- package/dist/{chunk-KQTGSD23.js → chunk-VYVESELG.js} +13 -9
- package/dist/{chunk-S465RWY7.js → chunk-W6SKR3HZ.js} +3 -5
- package/dist/{chunk-CQCURHDV.js → chunk-X2XE65WV.js} +12 -10
- package/dist/{chunk-XQ2ZBOAD.js → chunk-XK7VZFCC.js} +22 -9
- package/dist/{chunk-5F3EXHT7.js → chunk-XMRDT4PB.js} +2 -4
- package/dist/{chunk-MPXPPKJ4.js → chunk-XWQKCCCO.js} +3 -3
- package/dist/{chunk-7APRWURX.js → chunk-Y6TS42WD.js} +10 -12
- package/dist/{chunk-WTJS6PCC.js → chunk-YOG7TWMO.js} +1 -1
- package/dist/{chunk-QSSABSCM.js → chunk-YPSN64BU.js} +6 -6
- package/dist/{chunk-WJW564IP.js → chunk-ZBA74MMX.js} +2 -2
- package/dist/{chunk-VXQDZH5T.js → chunk-ZMJHXDZR.js} +3 -3
- package/dist/{chunk-BHV7PX5V.js → chunk-ZUAXTH6Z.js} +2 -2
- package/dist/{chunk-K6MMN6AW.js → chunk-ZZLTJXKR.js} +3 -5
- package/dist/{code-context-index-SRTAWCZQ.js → code-context-index-I5A7I4JQ.js} +7 -7
- package/dist/{content-extractor-H4IPL533.js → content-extractor-M7ISRONU.js} +1 -1
- package/dist/{conversation-entity-extractor-IZ3ECP4A.js → conversation-entity-extractor-EYSI4DKM.js} +3 -3
- package/dist/{conversation-wiki-populator-K4BQXHHO.js → conversation-wiki-populator-RSJ44BRO.js} +2 -2
- package/dist/{core-memory-JZ34WT5R.js → core-memory-C3JLISAU.js} +1 -1
- package/dist/{crdt-sync-4TOVD4QN.js → crdt-sync-XMC6LT2Q.js} +2 -2
- package/dist/{crm-bridge-27QVOWPI.js → crm-bridge-4QZRMOF7.js} +1 -1
- package/dist/{crm-webhook-77XHBWL7.js → crm-webhook-QMHD5YYQ.js} +3 -3
- package/dist/{cto-delegation-gate-AWENA4VT.js → cto-delegation-gate-BTZWAA4E.js} +11 -10
- package/dist/{daemon-auth-Z7O3LO23.js → daemon-auth-F47P6HTC.js} +4 -4
- package/dist/{daemon-orchestration-BG4NPWOK.js → daemon-orchestration-HFODCB52.js} +14 -13
- package/dist/{daemon-protocol-N7MOJ4U3.js → daemon-protocol-XW2OLNBS.js} +1 -1
- package/dist/{db-backup-E34JMBZD.js → db-backup-W56YOLMC.js} +4 -4
- package/dist/{devtools-ZL5NCINM.js → devtools-5PEATRYE.js} +1 -1
- package/dist/{discord-QOFQKX6S.js → discord-LMZKIYWB.js} +1 -1
- package/dist/dispatch-ack-JYCKAWKZ.js +13 -0
- package/dist/{email-NY5HB4WA.js → email-UENAIKRN.js} +1 -1
- package/dist/{entity-boost-V6KSRGG4.js → entity-boost-LIBVNNXO.js} +2 -2
- package/dist/{exe-drift-YFWCC26O.js → exe-drift-SED6KQTZ.js} +6 -6
- package/dist/{exe-export-YRACBEUY.js → exe-export-ADSWDE5U.js} +9 -9
- package/dist/{exe-import-DY57L2OI.js → exe-import-WFLNGJZP.js} +9 -9
- package/dist/{exe-key-U2JJH4MO.js → exe-key-4L32R46F.js} +5 -7
- package/dist/{exe-org-45OTYZZJ.js → exe-org-OOO7KJVZ.js} +4 -4
- package/dist/{factory-2PB537KA.js → factory-CTFAGZUA.js} +1 -1
- package/dist/fast-db-init-HVAVS35N.js +7 -0
- package/dist/{file-edit-GSXUFUDC.js → file-edit-AZAJPCA3.js} +1 -1
- package/dist/{file-read-Z3F3PUCK.js → file-read-VACF23NC.js} +1 -1
- package/dist/{file-write-X77JXZ2C.js → file-write-B2RPT5U7.js} +1 -1
- package/dist/gateway/index.js +10 -10
- package/dist/{gateway-client-IPKKEYKY.js → gateway-client-5EUMMEZZ.js} +2 -2
- package/dist/{git-staleness-I662R7RL.js → git-staleness-BY4ZK6MW.js} +5 -5
- package/dist/{git-task-sweep-XWFCP2HA.js → git-task-sweep-RSRASAHB.js} +12 -11
- package/dist/{glob-2PWAXTZ2.js → glob-7PWH7WKL.js} +1 -1
- package/dist/{global-procedures-IEIJBCAH.js → global-procedures-EKYSVONR.js} +7 -7
- package/dist/graph-auto-extract-HWZ5GVXZ.js +161 -0
- package/dist/{graph-query-NCDYOT4Y.js → graph-query-SE6T5XC4.js} +1 -1
- package/dist/{graph-rag-2YLGRBW5.js → graph-rag-G3EG5Q6L.js} +3 -3
- package/dist/{grep-GTV6WAZ4.js → grep-HWIDXHRC.js} +1 -1
- package/dist/{hook-integrity-LLPJPAXW.js → hook-integrity-PR4BPZBT.js} +2 -2
- package/dist/hooks/bug-report-worker.js +13 -12
- package/dist/hooks/codex-stop-task-finalizer.js +16 -13
- package/dist/hooks/commit-complete.js +14 -13
- package/dist/hooks/error-recall.js +9 -12
- package/dist/hooks/exe-heartbeat-hook.js +6 -6
- package/dist/hooks/ingest-worker.js +9 -9
- package/dist/hooks/ingest.js +16 -19
- package/dist/hooks/instructions-loaded.js +7 -7
- package/dist/hooks/notification.js +12 -10
- package/dist/hooks/post-compact.js +13 -12
- package/dist/hooks/post-tool-combined.js +6 -6
- package/dist/hooks/pre-compact.js +18 -17
- package/dist/hooks/pre-tool-use.js +19 -20
- package/dist/hooks/prompt-submit.js +78 -39
- package/dist/hooks/session-end.js +22 -21
- package/dist/hooks/session-start.js +31 -25
- package/dist/hooks/stop.js +20 -22
- package/dist/hooks/subagent-stop.js +13 -12
- package/dist/hooks/summary-worker.js +21 -20
- package/dist/{hooks-UK2AYRCA.js → hooks-LDCFYHDF.js} +1 -1
- package/dist/{imessage-LINH4V4D.js → imessage-6UOZB5VN.js} +1 -1
- package/dist/index.js +19 -18
- package/dist/{installer-PB63JTTG.js → installer-RLKOACKG.js} +9 -9
- package/dist/{installer-SSR2OOLO.js → installer-W4NY3OBF.js} +13 -11
- package/dist/{installer-ZONYB3XK.js → installer-X5FEYJIA.js} +9 -9
- package/dist/{intercom-queue-MMZT2MA2.js → intercom-queue-K3DVKSPJ.js} +1 -1
- package/dist/{key-backup-status-4WKIQOAS.js → key-backup-status-ORNMJEEA.js} +4 -6
- package/dist/lib/agent-config.js +4 -4
- package/dist/lib/cloud-sync.js +8 -8
- package/dist/lib/cloudflare-dns.js +1 -1
- package/dist/lib/config.js +3 -5
- package/dist/lib/consolidation.js +8 -8
- package/dist/lib/crypto.js +1 -1
- package/dist/lib/database.js +5 -5
- package/dist/lib/db-daemon-client.js +5 -5
- package/dist/lib/db.js +5 -5
- package/dist/lib/device-registry.js +4 -6
- package/dist/lib/embedder.js +6 -6
- package/dist/lib/employee-templates.js +8 -8
- package/dist/lib/employees.js +7 -5
- package/dist/lib/error-detector.js +1 -1
- package/dist/lib/exe-daemon-client.js +5 -5
- package/dist/lib/exe-daemon.js +143 -52
- package/dist/lib/file-grep.js +1 -1
- package/dist/lib/hybrid-search.js +8 -8
- package/dist/lib/identity-templates.js +1 -1
- package/dist/lib/identity.js +5 -5
- package/dist/lib/keychain.js +1 -1
- package/dist/lib/license.js +4 -4
- package/dist/lib/messaging.js +12 -11
- package/dist/lib/post-tool-memory.js +3 -3
- package/dist/lib/registry-proxy.js +1 -1
- package/dist/lib/reminders.js +6 -6
- package/dist/lib/runtime-table.js +1 -1
- package/dist/lib/schedules.js +8 -8
- package/dist/lib/session-registry.js +1 -1
- package/dist/lib/session-wrappers.js +1 -1
- package/dist/lib/skill-learning.js +7 -7
- package/dist/lib/status-brief.js +1 -1
- package/dist/lib/store.js +7 -7
- package/dist/lib/task-router.js +6 -6
- package/dist/lib/tasks.js +14 -11
- package/dist/lib/tmux-routing.js +11 -10
- package/dist/lib/tmux-status.js +1 -1
- package/dist/lib/tmux-transport.js +1 -1
- package/dist/lib/token-spend.js +6 -6
- package/dist/lib/transport.js +1 -1
- package/dist/lib/ws-auth.js +1 -1
- package/dist/lib/ws-client.js +2 -2
- package/dist/license-gate-J5YN264E.js +14 -0
- package/dist/mcp/register-tools.js +63 -62
- package/dist/mcp/server.js +65 -64
- 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 +15 -13
- package/dist/mcp/tools/deactivate-behavior.js +8 -8
- package/dist/mcp/tools/list-reminders.js +7 -7
- package/dist/mcp/tools/list-tasks.js +14 -14
- package/dist/mcp/tools/send-message.js +14 -13
- package/dist/mcp/tools/update-task.js +13 -12
- package/dist/{mcp-diagnostics-CWMVPHVC.js → mcp-diagnostics-TSBY62UQ.js} +1 -1
- package/dist/{mcp-disconnect-tracker-RM3GEERR.js → mcp-disconnect-tracker-MB23DRS6.js} +1 -1
- package/dist/{mcp-http-config-PDGSOYNQ.js → mcp-http-config-6YLW4PFG.js} +6 -6
- package/dist/{memory-cards-OLE6MGO7.js → memory-cards-UAQCO4QR.js} +5 -5
- package/dist/{memory-poisoning-defense-OOHJIXIX.js → memory-poisoning-defense-VWITZ4WO.js} +5 -7
- package/dist/{memory-queue-TGWXMENR.js → memory-queue-NYIGZNCG.js} +4 -4
- package/dist/memory-queue-client-YJOLYALV.js +15 -0
- package/dist/{memory-reflection-Z7CT6JLY.js → memory-reflection-JQC4ZSUD.js} +5 -5
- package/dist/{message-queue-client-TWIA2GIH.js → message-queue-client-NTLKYGVO.js} +1 -1
- package/dist/{notifications-SREXGSAQ.js → notifications-YDOKTVCH.js} +11 -10
- package/dist/{oauth-server-NSWGKLLA.js → oauth-server-TOWAZR4K.js} +1 -1
- package/dist/{orchestration-phase-WLQMEP4M.js → orchestration-phase-FXKZYK6R.js} +4 -4
- package/dist/{orchestrator-CHQURQSC.js → orchestrator-BZ2D6ZM6.js} +13 -12
- package/dist/{permission-presets-3XKJNM6N.js → permission-presets-E3DZK46K.js} +1 -1
- package/dist/{permissions-EZH3ULLD.js → permissions-6MCWUDCD.js} +1 -1
- package/dist/{pg-ssl-4ZNXKUNH.js → pg-ssl-7JXQFL4I.js} +1 -1
- package/dist/{plan-limits-7L75PB33.js → plan-limits-KUTODKG6.js} +7 -7
- package/dist/{preferences-K2GKUQSJ.js → preferences-ERXO6SMJ.js} +3 -3
- package/dist/{project-name-OBIDABHE.js → project-name-EWG5KAZP.js} +1 -1
- package/dist/{projection-worker-HSGE44JA.js → projection-worker-UY7R2EQJ.js} +85 -8
- package/dist/{push-notifications-EOTMKJ6B.js → push-notifications-KDYFOJRI.js} +4 -4
- package/dist/{reranker-ME4CK2ZQ.js → reranker-OMADCS3D.js} +4 -4
- package/dist/{review-gate-M3U2YAW6.js → review-gate-IUNS6GQU.js} +1 -1
- package/dist/{review-polling-DQCN4TNM.js → review-polling-DORNZ2KI.js} +12 -11
- package/dist/runtime/index.js +14 -13
- package/dist/{self-query-router-TRPHL54X.js → self-query-router-37VB3PKQ.js} +1 -1
- package/dist/{session-events-ZZBFYL5Z.js → session-events-5WR5RVDK.js} +12 -12
- package/dist/{session-kill-telemetry-MUFET632.js → session-kill-telemetry-DHSQV2CI.js} +6 -6
- package/dist/{session-scope-QUUDZM2L.js → session-scope-D4Q62ZOZ.js} +13 -13
- package/dist/setup-wizard-QVNTI3T4.js +12 -0
- package/dist/{shard-manager-VYMJM7NR.js → shard-manager-SP4YL5JQ.js} +4 -4
- package/dist/{signal-C263RUND.js → signal-7UIRTYGZ.js} +1 -1
- package/dist/{slack-N7PL6QMX.js → slack-GCOYBZUK.js} +1 -1
- package/dist/{task-enforcement-WJ3S6JTL.js → task-enforcement-OYCQXBBC.js} +11 -10
- package/dist/{task-scanner-YHWRG4ZJ.js → task-scanner-QEM5CO2Y.js} +1 -1
- package/dist/{task-scope-V2CTRHG7.js → task-scope-WWRNU2LU.js} +11 -10
- package/dist/{tasks-crud-W2XPUGKK.js → tasks-crud-75AUVZPO.js} +13 -10
- package/dist/{tasks-review-BR2SBSYG.js → tasks-review-UMZN5ZPQ.js} +11 -10
- package/dist/{telegram-B54FFOXD.js → telegram-RGVD4LUY.js} +1 -1
- package/dist/{telemetry-7IQCPV4Q.js → telemetry-43X3GT3R.js} +1 -1
- package/dist/{token-budget-H2XSWO4D.js → token-budget-62TYDIMI.js} +5 -5
- package/dist/{tool-capability-index-5X2CCGIK.js → tool-capability-index-OBZXORBP.js} +2 -2
- package/dist/{tool-gates-SGFMDREY.js → tool-gates-3IC7DK4R.js} +1 -1
- package/dist/{tool-gates-3DNTD7G3.js → tool-gates-GXSYBVK4.js} +1 -1
- package/dist/{tool-registry-2VUAZXTW.js → tool-registry-5XN3FUYL.js} +1 -1
- package/dist/{tool-telemetry-NVPSPRYP.js → tool-telemetry-JL6NY3KP.js} +2 -2
- package/dist/tui/App.js +44 -43
- package/dist/{tui-data-QN4O565C.js → tui-data-C5I2YU4C.js} +11 -10
- package/dist/{update-check-ERUKV2G6.js → update-check-MKHO7H6B.js} +1 -1
- package/dist/{webhook-L5FGAUPJ.js → webhook-LCW7UP4L.js} +1 -1
- package/dist/{webhook-pipe-B7GJCJAI.js → webhook-pipe-PJOFVBD3.js} +1 -1
- package/dist/{whatsapp-7FK2PRWO.js → whatsapp-SILL4V64.js} +1 -1
- package/dist/{whatsapp-accounts-VIHRSLGB.js → whatsapp-accounts-BWRZUY23.js} +1 -1
- package/dist/{wiki-acl-R4IIHICT.js → wiki-acl-5EC5VNYG.js} +1 -1
- package/dist/{wiki-client-EUDJA7O2.js → wiki-client-MMVRPTPK.js} +1 -1
- package/dist/{worker-gate-3KDXLIJC.js → worker-gate-Q5Y6B5N7.js} +4 -4
- package/dist/{workflow-engine-GISKRYSO.js → workflow-engine-KAKVU7NC.js} +3 -3
- package/dist/{worktree-B3FHAHEM.js → worktree-OMPQEJH7.js} +1 -1
- package/package.json +2 -2
- package/release-notes.json +126 -126
- package/src/commands/exe/setup.md +1 -1
- package/dist/chunk-PNKVD2UK.js +0 -26
- package/dist/fast-db-init-67TQTHWT.js +0 -7
- package/dist/license-gate-JY2KFIKO.js +0 -14
- package/dist/memory-queue-client-RZP5F4EA.js +0 -15
- package/dist/setup-wizard-NXWCEK63.js +0 -12
- package/dist/{chunk-D5MPHVWH.js → chunk-524VLFFY.js} +0 -0
- package/dist/{chunk-HIQ5RDA7.js → chunk-A3A2E42I.js} +0 -0
- package/dist/{chunk-APRP5D27.js → chunk-H6ADW3YC.js} +0 -0
- package/dist/{chunk-AAVODJ4F.js → chunk-J2OPV5FE.js} +0 -0
- package/dist/{chunk-DBLBWWFS.js → chunk-S6DA6UKC.js} +3 -3
- /package/dist/{chunk-F3ULERRZ.js → chunk-TSCZMB3P.js} +0 -0
- /package/dist/{chunk-2HV2EQW2.js → chunk-WRU72I4S.js} +0 -0
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import {
|
|
2
2
|
lightweightSearch
|
|
3
|
-
} from "./chunk-
|
|
4
|
-
import "./chunk-
|
|
5
|
-
import "./chunk-
|
|
3
|
+
} from "./chunk-AGFWOII2.js";
|
|
4
|
+
import "./chunk-Y6TS42WD.js";
|
|
5
|
+
import "./chunk-524VLFFY.js";
|
|
6
6
|
import {
|
|
7
7
|
sessionScopeFilter,
|
|
8
8
|
strictSessionScopeFilter
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-ONMRBKAX.js";
|
|
10
10
|
import "./chunk-LOQCOHEW.js";
|
|
11
11
|
import "./chunk-TXSJ2L5O.js";
|
|
12
12
|
import "./chunk-64WZEXXA.js";
|
|
@@ -14,24 +14,25 @@ import "./chunk-3TXOH3SJ.js";
|
|
|
14
14
|
import "./chunk-RLCZBSUB.js";
|
|
15
15
|
import "./chunk-GZIAQYGI.js";
|
|
16
16
|
import "./chunk-ZQX6UOP6.js";
|
|
17
|
-
import "./chunk-
|
|
17
|
+
import "./chunk-KIUU4PNX.js";
|
|
18
18
|
import "./chunk-NGP6LSV2.js";
|
|
19
|
-
import "./chunk-
|
|
19
|
+
import "./chunk-AERGE6GC.js";
|
|
20
|
+
import "./chunk-OPU3NYOO.js";
|
|
20
21
|
import "./chunk-CVYC6DUW.js";
|
|
21
22
|
import "./chunk-GJV3WDWM.js";
|
|
22
23
|
import "./chunk-MP2AFCGL.js";
|
|
23
|
-
import "./chunk-
|
|
24
|
+
import "./chunk-DTLASDQM.js";
|
|
24
25
|
import "./chunk-HYZV25LY.js";
|
|
25
26
|
import {
|
|
26
27
|
getClient
|
|
27
|
-
} from "./chunk-
|
|
28
|
-
import "./chunk-
|
|
28
|
+
} from "./chunk-TH6HTK2L.js";
|
|
29
|
+
import "./chunk-EOO32RJZ.js";
|
|
29
30
|
import "./chunk-FXU7JOXK.js";
|
|
30
31
|
import "./chunk-6D23UNXU.js";
|
|
31
|
-
import "./chunk-
|
|
32
|
-
import "./chunk-
|
|
33
|
-
import "./chunk-
|
|
34
|
-
import "./chunk-
|
|
32
|
+
import "./chunk-NNT2ZNMC.js";
|
|
33
|
+
import "./chunk-TOWAZ5IV.js";
|
|
34
|
+
import "./chunk-LYH5HE24.js";
|
|
35
|
+
import "./chunk-MLKGABMK.js";
|
|
35
36
|
|
|
36
37
|
// src/lib/catchup-brief.ts
|
|
37
38
|
import { execSync } from "child_process";
|
|
@@ -1,17 +1,20 @@
|
|
|
1
1
|
import {
|
|
2
2
|
recordSessionKill
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-PMWDO5FR.js";
|
|
4
4
|
import {
|
|
5
5
|
updateTask
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-3FIWKONP.js";
|
|
7
7
|
import {
|
|
8
8
|
ensureEmployee,
|
|
9
|
+
extractRootExe,
|
|
9
10
|
getSessionState,
|
|
10
11
|
isExeSession,
|
|
12
|
+
queryTaskRows,
|
|
11
13
|
sendIntercom,
|
|
12
14
|
sessionScopeFilter,
|
|
15
|
+
strictSessionScopeFilter,
|
|
13
16
|
writeNotification
|
|
14
|
-
} from "./chunk-
|
|
17
|
+
} from "./chunk-ONMRBKAX.js";
|
|
15
18
|
import {
|
|
16
19
|
queueIntercom
|
|
17
20
|
} from "./chunk-TXSJ2L5O.js";
|
|
@@ -29,11 +32,10 @@ import {
|
|
|
29
32
|
baseAgentName,
|
|
30
33
|
isCoordinatorName,
|
|
31
34
|
shouldAutoInstance
|
|
32
|
-
} from "./chunk-
|
|
35
|
+
} from "./chunk-TH6HTK2L.js";
|
|
33
36
|
import {
|
|
34
|
-
init_config,
|
|
35
37
|
loadConfigSync
|
|
36
|
-
} from "./chunk-
|
|
38
|
+
} from "./chunk-TOWAZ5IV.js";
|
|
37
39
|
|
|
38
40
|
// src/lib/daemon-orchestration.ts
|
|
39
41
|
import { execSync } from "child_process";
|
|
@@ -47,9 +49,9 @@ import { readFileSync, existsSync } from "fs";
|
|
|
47
49
|
import os from "os";
|
|
48
50
|
import path from "path";
|
|
49
51
|
var CONSERVATIVE_ON_ERROR = true;
|
|
50
|
-
async function hasOpenTasks(client, agentId) {
|
|
52
|
+
async function hasOpenTasks(client, agentId, sessionScope) {
|
|
51
53
|
try {
|
|
52
|
-
const scope = sessionScopeFilter(
|
|
54
|
+
const scope = sessionScopeFilter(sessionScope);
|
|
53
55
|
const result = await client.execute({
|
|
54
56
|
sql: `SELECT 1 FROM tasks
|
|
55
57
|
WHERE assigned_to = ? AND status IN ('open', 'in_progress')${scope.sql}
|
|
@@ -61,9 +63,9 @@ async function hasOpenTasks(client, agentId) {
|
|
|
61
63
|
return CONSERVATIVE_ON_ERROR;
|
|
62
64
|
}
|
|
63
65
|
}
|
|
64
|
-
async function hasNeedsReview(client, agentId) {
|
|
66
|
+
async function hasNeedsReview(client, agentId, sessionScope) {
|
|
65
67
|
try {
|
|
66
|
-
const scope = sessionScopeFilter(
|
|
68
|
+
const scope = sessionScopeFilter(sessionScope);
|
|
67
69
|
const result = await client.execute({
|
|
68
70
|
sql: `SELECT 1 FROM tasks
|
|
69
71
|
WHERE assigned_to = ? AND status = 'needs_review'${scope.sql}
|
|
@@ -75,13 +77,15 @@ async function hasNeedsReview(client, agentId) {
|
|
|
75
77
|
return CONSERVATIVE_ON_ERROR;
|
|
76
78
|
}
|
|
77
79
|
}
|
|
78
|
-
async function hasUnreadInbox(client, agentId) {
|
|
80
|
+
async function hasUnreadInbox(client, agentId, sessionScope) {
|
|
79
81
|
try {
|
|
82
|
+
const scope = strictSessionScopeFilter(sessionScope);
|
|
80
83
|
const result = await client.execute({
|
|
81
84
|
sql: `SELECT 1 FROM messages
|
|
82
85
|
WHERE target_agent = ? AND status = 'pending'
|
|
86
|
+
${scope.sql}
|
|
83
87
|
LIMIT 1`,
|
|
84
|
-
args: [agentId]
|
|
88
|
+
args: [agentId, ...scope.args]
|
|
85
89
|
});
|
|
86
90
|
return result.rows.length > 0;
|
|
87
91
|
} catch {
|
|
@@ -109,10 +113,11 @@ function hadRecentIntercomAck(sessionName, windowMs, nowMs = Date.now(), interco
|
|
|
109
113
|
}
|
|
110
114
|
}
|
|
111
115
|
async function collectAgentSignals(client, agentId, sessionName, intercomAckWindowMs, nowMs = Date.now()) {
|
|
116
|
+
const coordinatorScope = extractRootExe(sessionName) ?? null;
|
|
112
117
|
const [open, review, inbox] = await Promise.all([
|
|
113
|
-
hasOpenTasks(client, agentId),
|
|
114
|
-
hasNeedsReview(client, agentId),
|
|
115
|
-
hasUnreadInbox(client, agentId)
|
|
118
|
+
hasOpenTasks(client, agentId, coordinatorScope),
|
|
119
|
+
hasNeedsReview(client, agentId, coordinatorScope),
|
|
120
|
+
hasUnreadInbox(client, agentId, coordinatorScope)
|
|
116
121
|
]);
|
|
117
122
|
return {
|
|
118
123
|
hasOpenTasks: open,
|
|
@@ -123,7 +128,6 @@ async function collectAgentSignals(client, agentId, sessionName, intercomAckWind
|
|
|
123
128
|
}
|
|
124
129
|
|
|
125
130
|
// src/lib/daemon-orchestration.ts
|
|
126
|
-
init_config();
|
|
127
131
|
var IDLE_NUDGE_DEDUP_MS = Number(process.env.EXE_NUDGE_INTERVAL_MS) || 6e4;
|
|
128
132
|
var SESSION_TTL_HOURS = Number(process.env.EXE_SESSION_TTL_HOURS) || 8;
|
|
129
133
|
var SESSION_CONTEXT_THRESHOLD_PCT = Number(process.env.EXE_CONTEXT_KILL_PCT) || 80;
|
|
@@ -378,19 +382,20 @@ function saveNudgeState(state) {
|
|
|
378
382
|
const entries = Array.from(state.lastNudge.entries());
|
|
379
383
|
writeFileSync(NUDGE_STATE_PATH, JSON.stringify(entries), "utf8");
|
|
380
384
|
}
|
|
381
|
-
function createReviewNudgeRealDeps(
|
|
385
|
+
function createReviewNudgeRealDeps(_getClient) {
|
|
382
386
|
return {
|
|
383
387
|
listTmuxSessions: () => listTmuxSessions(),
|
|
384
388
|
getSessionState: (sessionName) => getSessionState(sessionName),
|
|
385
389
|
countReviewsForScope: async (sessionScope) => {
|
|
386
|
-
const
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
390
|
+
const rows = await queryTaskRows({
|
|
391
|
+
status: "needs_review",
|
|
392
|
+
columns: "COUNT(*) as cnt",
|
|
393
|
+
sessionScope,
|
|
394
|
+
projectName: null,
|
|
395
|
+
limit: 1,
|
|
396
|
+
orderBy: "1"
|
|
392
397
|
});
|
|
393
|
-
return Number(
|
|
398
|
+
return Number(rows[0]?.cnt ?? 0);
|
|
394
399
|
},
|
|
395
400
|
sendNudge: (sessionName) => {
|
|
396
401
|
queueIntercom(sessionName, "review nudge: pending reviews");
|
|
@@ -398,24 +403,23 @@ function createReviewNudgeRealDeps(getClient) {
|
|
|
398
403
|
persistState: saveNudgeState
|
|
399
404
|
};
|
|
400
405
|
}
|
|
401
|
-
function createIdleNudgeRealDeps(
|
|
406
|
+
function createIdleNudgeRealDeps(_getClient) {
|
|
402
407
|
return {
|
|
403
408
|
listRegisteredSessions: () => listSessions(),
|
|
404
409
|
listTmuxSessions: () => listTmuxSessions(),
|
|
405
410
|
getSessionState: (sessionName) => getSessionState(sessionName),
|
|
406
411
|
queryOpenTask: async (agentId, sessionScope) => {
|
|
407
|
-
const
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
412
|
+
const rows = await queryTaskRows({
|
|
413
|
+
assignedTo: agentId,
|
|
414
|
+
status: ["open", "in_progress"],
|
|
415
|
+
columns: "id, title, priority",
|
|
416
|
+
sessionScope: sessionScope ?? void 0,
|
|
417
|
+
projectName: null,
|
|
418
|
+
orderBy: "CASE priority WHEN 'p0' THEN 0 WHEN 'p1' THEN 1 ELSE 2 END",
|
|
419
|
+
limit: 1
|
|
415
420
|
});
|
|
416
|
-
if (
|
|
417
|
-
|
|
418
|
-
return row;
|
|
421
|
+
if (rows.length === 0) return null;
|
|
422
|
+
return rows[0];
|
|
419
423
|
},
|
|
420
424
|
sendIntercom: (sessionName) => sendIntercom(sessionName)
|
|
421
425
|
};
|
|
@@ -441,15 +445,16 @@ function createSessionTTLRealDeps(getClient) {
|
|
|
441
445
|
getTransport().kill(sessionName);
|
|
442
446
|
},
|
|
443
447
|
hasActiveTasks: getClient ? async (agentId) => {
|
|
444
|
-
const
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
448
|
+
const rows = await queryTaskRows({
|
|
449
|
+
assignedTo: agentId,
|
|
450
|
+
status: ["open", "in_progress"],
|
|
451
|
+
columns: "1",
|
|
452
|
+
sessionScope: null,
|
|
453
|
+
// null = no session filter (check all)
|
|
454
|
+
projectName: null,
|
|
455
|
+
limit: 1
|
|
451
456
|
});
|
|
452
|
-
return
|
|
457
|
+
return rows.length > 0;
|
|
453
458
|
} : void 0,
|
|
454
459
|
recordKill: (input) => {
|
|
455
460
|
void recordSessionKill(input);
|
|
@@ -656,17 +661,19 @@ function createStuckTaskRealDeps(getClient) {
|
|
|
656
661
|
return {
|
|
657
662
|
listTmuxSessions: () => listTmuxSessions(),
|
|
658
663
|
queryInProgressTasks: async () => {
|
|
659
|
-
const client = getClient();
|
|
660
664
|
const { loadDeviceId } = await import("./lib/license.js");
|
|
661
665
|
const deviceId = loadDeviceId();
|
|
662
|
-
const
|
|
663
|
-
|
|
664
|
-
|
|
665
|
-
|
|
666
|
-
|
|
667
|
-
|
|
666
|
+
const rows = await queryTaskRows({
|
|
667
|
+
status: "in_progress",
|
|
668
|
+
columns: "id, assigned_to, session_scope, updated_at",
|
|
669
|
+
sessionScope: null,
|
|
670
|
+
// daemon-level: no session filter
|
|
671
|
+
projectName: null,
|
|
672
|
+
deviceId,
|
|
673
|
+
orderBy: "updated_at ASC",
|
|
674
|
+
limit: 1e3
|
|
668
675
|
});
|
|
669
|
-
return
|
|
676
|
+
return rows.map((r) => ({
|
|
670
677
|
taskId: String(r.id),
|
|
671
678
|
agentId: String(r.assigned_to),
|
|
672
679
|
sessionScope: r.session_scope ? String(r.session_scope) : null,
|
|
@@ -731,15 +738,18 @@ async function cleanupStaleReviews(deps) {
|
|
|
731
738
|
function createStaleReviewRealDeps(getClient) {
|
|
732
739
|
return {
|
|
733
740
|
queryStaleReviews: async (thresholdDays) => {
|
|
734
|
-
const
|
|
735
|
-
|
|
736
|
-
|
|
737
|
-
|
|
738
|
-
|
|
739
|
-
|
|
740
|
-
|
|
741
|
+
const rows = await queryTaskRows({
|
|
742
|
+
status: "needs_review",
|
|
743
|
+
columns: "id, title, assigned_to, updated_at",
|
|
744
|
+
sessionScope: null,
|
|
745
|
+
// daemon-level: check all sessions
|
|
746
|
+
projectName: null,
|
|
747
|
+
orderBy: "updated_at ASC",
|
|
748
|
+
limit: 1e3,
|
|
749
|
+
extraConditions: ["updated_at < datetime('now', '-' || ? || ' days')"],
|
|
750
|
+
extraArgs: [String(thresholdDays)]
|
|
741
751
|
});
|
|
742
|
-
return
|
|
752
|
+
return rows.map((r) => ({
|
|
743
753
|
taskId: String(r.id),
|
|
744
754
|
title: String(r.title),
|
|
745
755
|
assignedTo: String(r.assigned_to),
|
|
@@ -771,19 +781,19 @@ function createAutoWakeRealDeps(getClient, projectDir) {
|
|
|
771
781
|
return {
|
|
772
782
|
listTmuxSessions: () => listTmuxSessions(),
|
|
773
783
|
queryTasksByAgent: async () => {
|
|
774
|
-
const client = getClient();
|
|
775
784
|
const { loadDeviceId } = await import("./lib/license.js");
|
|
776
785
|
const deviceId = loadDeviceId();
|
|
777
|
-
const
|
|
778
|
-
|
|
779
|
-
|
|
780
|
-
|
|
781
|
-
|
|
782
|
-
|
|
783
|
-
|
|
784
|
-
|
|
786
|
+
const rows = await queryTaskRows({
|
|
787
|
+
status: ["open", "in_progress"],
|
|
788
|
+
columns: "assigned_to, id, priority, session_scope",
|
|
789
|
+
sessionScope: null,
|
|
790
|
+
// daemon-level: no session filter
|
|
791
|
+
projectName: null,
|
|
792
|
+
deviceId,
|
|
793
|
+
orderBy: "CASE priority WHEN 'p0' THEN 0 WHEN 'p1' THEN 1 WHEN 'p2' THEN 2 ELSE 3 END, created_at ASC",
|
|
794
|
+
limit: 1e3
|
|
785
795
|
});
|
|
786
|
-
return
|
|
796
|
+
return rows.map((r) => ({
|
|
787
797
|
agentId: String(r.assigned_to),
|
|
788
798
|
taskId: String(r.id),
|
|
789
799
|
priority: String(r.priority),
|
|
@@ -11,7 +11,7 @@ import {
|
|
|
11
11
|
sessionScopeFilter,
|
|
12
12
|
updateTaskStatus,
|
|
13
13
|
writeNotification
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-ONMRBKAX.js";
|
|
15
15
|
import {
|
|
16
16
|
getTransport
|
|
17
17
|
} from "./chunk-3TXOH3SJ.js";
|
|
@@ -27,16 +27,14 @@ import {
|
|
|
27
27
|
isCoordinatorName,
|
|
28
28
|
isMultiInstance,
|
|
29
29
|
shouldAutoInstance
|
|
30
|
-
} from "./chunk-
|
|
30
|
+
} from "./chunk-TH6HTK2L.js";
|
|
31
31
|
import {
|
|
32
|
-
EXE_AI_DIR
|
|
33
|
-
|
|
34
|
-
} from "./chunk-KHV55ME4.js";
|
|
32
|
+
EXE_AI_DIR
|
|
33
|
+
} from "./chunk-TOWAZ5IV.js";
|
|
35
34
|
|
|
36
35
|
// src/lib/tasks.ts
|
|
37
36
|
import path2 from "path";
|
|
38
37
|
import { writeFileSync, mkdirSync, unlinkSync } from "fs";
|
|
39
|
-
init_config();
|
|
40
38
|
|
|
41
39
|
// src/lib/tasks-chain.ts
|
|
42
40
|
import path from "path";
|
|
@@ -71,7 +69,7 @@ async function cascadeUnblock(taskId, baseDir, now) {
|
|
|
71
69
|
}
|
|
72
70
|
if (unblockedRows.rows.length > 0 && !process.env.VITEST) {
|
|
73
71
|
try {
|
|
74
|
-
const { queueIntercom } = await import("./intercom-queue-
|
|
72
|
+
const { queueIntercom } = await import("./intercom-queue-K3DVKSPJ.js");
|
|
75
73
|
const dispatched = /* @__PURE__ */ new Set();
|
|
76
74
|
for (const ur of unblockedRows.rows) {
|
|
77
75
|
const assignee = String(ur.assigned_to);
|
|
@@ -138,7 +136,7 @@ async function dispatchTaskToEmployee(input) {
|
|
|
138
136
|
let crossProject = false;
|
|
139
137
|
if (input.projectName) {
|
|
140
138
|
try {
|
|
141
|
-
const { assertSessionScope } = await import("./session-scope-
|
|
139
|
+
const { assertSessionScope } = await import("./session-scope-D4Q62ZOZ.js");
|
|
142
140
|
const check = assertSessionScope("dispatch_task", input.projectName);
|
|
143
141
|
if (check.reason === "cross_session_denied") {
|
|
144
142
|
crossProject = true;
|
|
@@ -358,7 +356,7 @@ async function updateTask(input) {
|
|
|
358
356
|
try {
|
|
359
357
|
process.stderr.write(`[tasks] EVENT: tmux delivery failed for reviewer="${reviewer}". Queueing for daemon delivery.
|
|
360
358
|
`);
|
|
361
|
-
const { queueIntercom } = await import("./intercom-queue-
|
|
359
|
+
const { queueIntercom } = await import("./intercom-queue-K3DVKSPJ.js");
|
|
362
360
|
const { resolveExeSession: resolveExeSession2 } = await import("./lib/tmux-routing.js");
|
|
363
361
|
const exeSession = resolveExeSession2();
|
|
364
362
|
if (exeSession) {
|
|
@@ -371,7 +369,7 @@ async function updateTask(input) {
|
|
|
371
369
|
}
|
|
372
370
|
}
|
|
373
371
|
try {
|
|
374
|
-
const { pushNotifyAsync } = await import("./push-notifications-
|
|
372
|
+
const { pushNotifyAsync } = await import("./push-notifications-KDYFOJRI.js");
|
|
375
373
|
pushNotifyAsync({
|
|
376
374
|
event: "review_ready",
|
|
377
375
|
title: `Review ready: ${taskTitle.slice(0, 50)}`,
|
|
@@ -383,7 +381,7 @@ async function updateTask(input) {
|
|
|
383
381
|
}
|
|
384
382
|
if (!isCoordinator) {
|
|
385
383
|
try {
|
|
386
|
-
const { pushNotifyAsync } = await import("./push-notifications-
|
|
384
|
+
const { pushNotifyAsync } = await import("./push-notifications-KDYFOJRI.js");
|
|
387
385
|
const event = input.status === "needs_review" ? "review_ready" : "task_complete";
|
|
388
386
|
pushNotifyAsync({
|
|
389
387
|
event,
|
|
@@ -398,7 +396,7 @@ async function updateTask(input) {
|
|
|
398
396
|
await markTaskNotificationsRead(taskFile);
|
|
399
397
|
if (input.status === "needs_review" && !isCoordinator) {
|
|
400
398
|
try {
|
|
401
|
-
const { writeNotification: writeNotification2 } = await import("./notifications-
|
|
399
|
+
const { writeNotification: writeNotification2 } = await import("./notifications-YDOKTVCH.js");
|
|
402
400
|
await writeNotification2({
|
|
403
401
|
agentId: String(row.assigned_to),
|
|
404
402
|
agentRole: String(row.assigned_to),
|
|
@@ -589,7 +589,7 @@ function auditHookOwnership() {
|
|
|
589
589
|
}
|
|
590
590
|
async function auditShards() {
|
|
591
591
|
try {
|
|
592
|
-
const { auditShardHealth } = await import("./shard-manager-
|
|
592
|
+
const { auditShardHealth } = await import("./shard-manager-SP4YL5JQ.js");
|
|
593
593
|
const report = await auditShardHealth();
|
|
594
594
|
return {
|
|
595
595
|
total: report.total,
|
|
@@ -605,7 +605,7 @@ async function auditShards() {
|
|
|
605
605
|
async function auditKeyHealth() {
|
|
606
606
|
try {
|
|
607
607
|
const { getMasterKey } = await import("./lib/keychain.js");
|
|
608
|
-
const { getKeyBackupStatus } = await import("./key-backup-status-
|
|
608
|
+
const { getKeyBackupStatus } = await import("./key-backup-status-ORNMJEEA.js");
|
|
609
609
|
const key = await getMasterKey();
|
|
610
610
|
const backup = getKeyBackupStatus();
|
|
611
611
|
return {
|
|
@@ -830,7 +830,7 @@ function formatReport(report, flags) {
|
|
|
830
830
|
return lines.join("\n");
|
|
831
831
|
}
|
|
832
832
|
async function fixNullVectors() {
|
|
833
|
-
const { tryAcquireWorkerSlot, registerWorkerPid } = await import("./worker-gate-
|
|
833
|
+
const { tryAcquireWorkerSlot, registerWorkerPid } = await import("./worker-gate-Q5Y6B5N7.js");
|
|
834
834
|
if (!tryAcquireWorkerSlot()) {
|
|
835
835
|
process.stderr.write("[exe-doctor] Worker gate full \u2014 waiting for existing backfill workers to finish\n");
|
|
836
836
|
await new Promise((r) => setTimeout(r, 5e3));
|
|
@@ -914,7 +914,7 @@ async function fixBloated(client, bloated, dryRun) {
|
|
|
914
914
|
return chunksCreated;
|
|
915
915
|
}
|
|
916
916
|
async function fixShards(dryRun) {
|
|
917
|
-
const { auditShardHealth } = await import("./shard-manager-
|
|
917
|
+
const { auditShardHealth } = await import("./shard-manager-SP4YL5JQ.js");
|
|
918
918
|
const report = await auditShardHealth({ repair: true, dryRun });
|
|
919
919
|
return {
|
|
920
920
|
total: report.total,
|
|
@@ -951,7 +951,7 @@ function splitAtSentences(text, maxChunkSize) {
|
|
|
951
951
|
}
|
|
952
952
|
async function main(argv = process.argv.slice(2)) {
|
|
953
953
|
const flags = parseFlags(argv);
|
|
954
|
-
const { fastDbInit } = await import("./fast-db-init-
|
|
954
|
+
const { fastDbInit } = await import("./fast-db-init-HVAVS35N.js");
|
|
955
955
|
const client = await fastDbInit();
|
|
956
956
|
const report = await runAudit(client, flags);
|
|
957
957
|
console.log(formatReport(report, flags));
|
|
@@ -962,7 +962,7 @@ ${mode} Applying repairs...
|
|
|
962
962
|
`);
|
|
963
963
|
if (!flags.dryRun) {
|
|
964
964
|
try {
|
|
965
|
-
const { createBackup } = await import("./db-backup-
|
|
965
|
+
const { createBackup } = await import("./db-backup-W56YOLMC.js");
|
|
966
966
|
const backupPath = createBackup("pre-fix");
|
|
967
967
|
if (backupPath) {
|
|
968
968
|
console.log(` Backup created: ${backupPath.split("/").pop()}`);
|
|
@@ -1,10 +1,8 @@
|
|
|
1
1
|
import {
|
|
2
|
-
EXE_AI_DIR
|
|
3
|
-
|
|
4
|
-
} from "./chunk-KHV55ME4.js";
|
|
2
|
+
EXE_AI_DIR
|
|
3
|
+
} from "./chunk-TOWAZ5IV.js";
|
|
5
4
|
|
|
6
5
|
// src/lib/background-jobs.ts
|
|
7
|
-
init_config();
|
|
8
6
|
import { existsSync, mkdirSync, readFileSync, writeFileSync, unlinkSync } from "fs";
|
|
9
7
|
import { execFileSync } from "child_process";
|
|
10
8
|
import os from "os";
|
|
@@ -6,7 +6,7 @@ async function fastDbInit() {
|
|
|
6
6
|
}
|
|
7
7
|
try {
|
|
8
8
|
const { connectEmbedDaemon, sendDaemonRequest, isClientConnected } = await import("./lib/exe-daemon-client.js");
|
|
9
|
-
const { deserializeResultSet } = await import("./daemon-protocol-
|
|
9
|
+
const { deserializeResultSet } = await import("./daemon-protocol-XW2OLNBS.js");
|
|
10
10
|
await Promise.race([
|
|
11
11
|
connectEmbedDaemon(),
|
|
12
12
|
new Promise((_, reject) => setTimeout(() => reject(new Error("Daemon socket timeout (2s)")), 2e3))
|
|
@@ -3,21 +3,19 @@ import {
|
|
|
3
3
|
getClient,
|
|
4
4
|
isInitialized,
|
|
5
5
|
loadEmployees
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-TH6HTK2L.js";
|
|
7
7
|
import {
|
|
8
8
|
PLAN_LIMITS,
|
|
9
9
|
checkLicense,
|
|
10
10
|
isFeatureAllowed
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-NNT2ZNMC.js";
|
|
12
12
|
import {
|
|
13
|
-
EXE_AI_DIR
|
|
14
|
-
|
|
15
|
-
} from "./chunk-KHV55ME4.js";
|
|
13
|
+
EXE_AI_DIR
|
|
14
|
+
} from "./chunk-TOWAZ5IV.js";
|
|
16
15
|
|
|
17
16
|
// src/lib/plan-limits.ts
|
|
18
17
|
import { readFileSync, existsSync } from "fs";
|
|
19
18
|
import path from "path";
|
|
20
|
-
init_config();
|
|
21
19
|
var PlanLimitError = class extends Error {
|
|
22
20
|
constructor(message) {
|
|
23
21
|
super(message);
|