@askexenow/exe-os 0.9.144 → 0.9.145
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/deploy/compose/.env.customer.example +2 -2
- package/deploy/compose/.env.default +1 -1
- package/deploy/compose/.env.example +2 -2
- package/deploy/compose/README.md +1 -1
- package/deploy/compose/docker-compose.yml +7 -7
- package/deploy/compose/generate-env.ts +5 -5
- package/deploy/stack-manifests/v0.9.json +31 -31
- package/dist/{active-agent-NVYSMA2V.js → active-agent-GJOJUEMF.js} +9 -9
- package/dist/{active-agent-Q3IKFOF6.js → active-agent-HUDSZRUG.js} +9 -9
- package/dist/agent-context-HH7TL5ZP.js +9 -0
- package/dist/{agent-loop-G4VUR5ME.js → agent-loop-OCJFYO72.js} +1 -1
- package/dist/{agentic-ontology-Q3OVWKAK.js → agentic-ontology-5PGUVMDP.js} +2 -2
- package/dist/{asana-ASFYLGKF.js → asana-BSDR6NW4.js} +1 -1
- package/dist/{backfill-metadata-GZIPWZAJ.js → backfill-metadata-ZDJ5B37R.js} +10 -14
- package/dist/{background-jobs-LS6PTJKF.js → background-jobs-4N4JSZVZ.js} +4 -4
- package/dist/{bash-Y5PEW5UQ.js → bash-X54PZMOG.js} +1 -1
- package/dist/behaviors-TXLHEM5J.js +22 -0
- package/dist/bin/age-ontology-load.js +4 -4
- package/dist/bin/agentic-ontology-backfill.js +13 -15
- package/dist/bin/agentic-reflection-backfill.js +13 -13
- package/dist/bin/agentic-semantic-label.js +13 -17
- package/dist/bin/backfill-conversations.js +14 -19
- package/dist/bin/backfill-responses.js +14 -19
- package/dist/bin/backfill-vectors.js +17 -20
- package/dist/bin/bulk-sync-postgres.js +15 -17
- package/dist/bin/cc-doctor.js +5 -5
- package/dist/bin/cleanup-stale-review-tasks.js +25 -29
- package/dist/bin/cli.js +19 -19
- package/dist/bin/exe-agent-config.js +9 -15
- package/dist/bin/exe-agent.js +9 -9
- package/dist/bin/exe-assign.js +16 -19
- package/dist/bin/exe-boot.js +47 -64
- package/dist/bin/exe-call.js +10 -12
- package/dist/bin/exe-cloud.js +12 -12
- package/dist/bin/exe-dispatch.js +25 -31
- package/dist/bin/exe-doctor.js +2 -2
- package/dist/bin/exe-export-behaviors.js +13 -13
- package/dist/bin/exe-forget.js +13 -15
- package/dist/bin/exe-gateway.js +21 -23
- package/dist/bin/exe-healthcheck.js +5 -5
- package/dist/bin/exe-heartbeat.js +25 -35
- package/dist/bin/exe-kill.js +13 -17
- package/dist/bin/exe-launch-agent.js +55 -54
- package/dist/bin/exe-new-employee.js +13 -17
- package/dist/bin/exe-pending-messages.js +25 -25
- package/dist/bin/exe-pending-notifications.js +29 -29
- package/dist/bin/exe-pending-reviews.js +24 -28
- package/dist/bin/exe-rename.js +9 -11
- package/dist/bin/exe-review.js +27 -33
- package/dist/bin/exe-search.js +11 -11
- package/dist/bin/exe-session-cleanup.js +94 -41
- package/dist/bin/exe-settings.js +13 -19
- package/dist/bin/exe-start-codex.js +21 -31
- package/dist/bin/exe-start-opencode.js +16 -20
- package/dist/bin/exe-start.sh +7 -2
- package/dist/bin/exe-status.js +25 -25
- package/dist/bin/exe-support.js +5 -5
- package/dist/bin/exe-team.js +7 -11
- package/dist/bin/git-sweep.js +24 -24
- package/dist/bin/graph-backfill.js +13 -15
- package/dist/bin/graph-export.js +12 -14
- package/dist/bin/graph-layer-benchmark.js +1 -1
- package/dist/bin/install.js +54 -23
- package/dist/bin/intercom-check.js +12 -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 +2 -2
- package/dist/bin/scan-tasks.js +26 -30
- package/dist/bin/setup.js +5 -5
- package/dist/bin/shard-migrate.js +12 -14
- package/dist/bin/stack-update.js +4 -6
- package/dist/bin/update.js +1 -1
- package/dist/{branding-ZOKU45NY.js → branding-52J2ILJX.js} +3 -3
- package/dist/capacity-monitor-HWN2JX5W.js +46 -0
- package/dist/{catchup-brief-HLGROPH6.js → catchup-brief-UERCIVM5.js} +28 -32
- package/dist/{chunk-XSF6G7O2.js → chunk-2R3N4DQY.js} +4 -4
- package/dist/{chunk-AV77PUPD.js → chunk-32LFUJVG.js} +1076 -841
- package/dist/chunk-3H4VU65X.js +209 -0
- package/dist/chunk-3TXOH3SJ.js +20 -0
- package/dist/{chunk-GPCQRSAR.js → chunk-4F56OUR7.js} +3 -9
- package/dist/{chunk-ZCYQZQTA.js → chunk-53VUIKOE.js} +1 -1
- package/dist/{chunk-7YZJUTQ4.js → chunk-56T5TMNK.js} +2 -2
- package/dist/{chunk-TBO4RYRU.js → chunk-5F3EXHT7.js} +1 -1
- package/dist/{chunk-KKYDUT2Z.js → chunk-5WTYETQO.js} +6 -15
- package/dist/{chunk-YSRJHKHL.js → chunk-63UVIM7S.js} +5 -10
- package/dist/{chunk-KRLOFIPI.js → chunk-64WZEXXA.js} +2 -21
- package/dist/{chunk-DUXNECD3.js → chunk-65UQ7H5U.js} +3 -7
- package/dist/{chunk-53JBNNU3.js → chunk-6BUUY7FG.js} +6 -28
- package/dist/{chunk-YGHMRSH5.js → chunk-6D23UNXU.js} +3 -9
- package/dist/{chunk-MI4RRRX5.js → chunk-7APRWURX.js} +37 -26
- package/dist/{chunk-3RT5V3M4.js → chunk-7KR5PV4P.js} +2 -4
- package/dist/{chunk-KVM3XRPC.js → chunk-7PEYIW53.js} +2 -4
- package/dist/{chunk-VISRYICE.js → chunk-7PTII6F4.js} +2 -4
- package/dist/{chunk-CO7XAJJ2.js → chunk-AAVODJ4F.js} +2 -4
- package/dist/{chunk-2WGSIVI4.js → chunk-AHMUF6RO.js} +1 -3
- package/dist/{chunk-47MZMRQZ.js → chunk-AJ2XDY27.js} +35 -105
- package/dist/{chunk-FCNKI3SH.js → chunk-B6Q6WAD7.js} +2 -7
- package/dist/{chunk-ZK3WQY7Q.js → chunk-BHV7PX5V.js} +2 -4
- package/dist/{chunk-HLYXFVVT.js → chunk-BXCJOACQ.js} +6 -12
- package/dist/{chunk-T2WBLUN7.js → chunk-BY4OTURZ.js} +5 -17
- package/dist/{chunk-SI5TLMB6.js → chunk-C4EVFN7J.js} +88 -12
- package/dist/{chunk-YRLMCI3J.js → chunk-CDDRSIGK.js} +271 -131
- package/dist/{chunk-QC34Z6ZI.js → chunk-CQCURHDV.js} +41 -31
- package/dist/{chunk-HP43GLZ6.js → chunk-CVYC6DUW.js} +8 -19
- package/dist/{chunk-4C3NEI64.js → chunk-CWPE6QVM.js} +1 -1
- package/dist/{chunk-DDUIVBH6.js → chunk-DBLBWWFS.js} +4 -6
- package/dist/{chunk-HHKKLWAI.js → chunk-DCJ42FEN.js} +1 -1
- package/dist/{chunk-52LCN4JK.js → chunk-ER3UJ2VL.js} +3 -5
- package/dist/{chunk-XCTQO7TN.js → chunk-F7JVVLGH.js} +1 -1
- package/dist/{chunk-VU447UAO.js → chunk-FLSASUV3.js} +6 -2
- package/dist/chunk-FXU7JOXK.js +6 -0
- package/dist/{chunk-VTQRACP7.js → chunk-G3VR3MJI.js} +23 -50
- package/dist/{chunk-VAOAI6DS.js → chunk-GCMT6RWI.js} +1 -1
- package/dist/chunk-GJV3WDWM.js +14 -0
- package/dist/{chunk-5JIVAJJU.js → chunk-GK5VMHSN.js} +1 -1
- package/dist/{chunk-DC4ZD76Y.js → chunk-GZIAQYGI.js} +2 -28
- package/dist/{chunk-76HPWZJC.js → chunk-H4KUTL2T.js} +1 -1
- package/dist/{chunk-V3YNF3JK.js → chunk-H4YONWQX.js} +218 -253
- package/dist/{chunk-OCYP6VU6.js → chunk-H6OEU54G.js} +22 -19
- package/dist/{chunk-HJMM4QMY.js → chunk-HOKOOBDL.js} +6 -25
- package/dist/{chunk-LXX2UDWL.js → chunk-HV75RBMK.js} +1 -3
- package/dist/{chunk-6BFIFI5F.js → chunk-HYZV25LY.js} +7 -18
- package/dist/{chunk-TLXIKKEG.js → chunk-I4WAKJ6W.js} +74 -67
- package/dist/{chunk-AFEXRICE.js → chunk-I5VJNTDL.js} +34 -45
- package/dist/{chunk-LT55GKEK.js → chunk-IBVB2NGY.js} +6 -10
- package/dist/{chunk-KX3KLDG7.js → chunk-IPSFAUK5.js} +3 -7
- package/dist/{chunk-EVP2WD5S.js → chunk-JUITBJ7J.js} +1 -5
- package/dist/{chunk-IUQL3KZV.js → chunk-K3PSCQLK.js} +2 -4
- package/dist/{chunk-CNNT4QSN.js → chunk-K6MMN6AW.js} +7 -20
- package/dist/{chunk-QASVYG2B.js → chunk-KHV55ME4.js} +4 -3
- package/dist/{chunk-EOWQ6DMH.js → chunk-KLRP6ZG3.js} +10 -16
- package/dist/{chunk-C54PGWHV.js → chunk-KQTGSD23.js} +11 -14
- package/dist/{chunk-V6O4GN5M.js → chunk-LOQCOHEW.js} +2 -12
- package/dist/{chunk-OC7FNHGA.js → chunk-LWVZLTMD.js} +3 -7
- package/dist/{chunk-YEXCXJRS.js → chunk-MFGARIVE.js} +1 -1
- package/dist/chunk-MP2AFCGL.js +53 -0
- package/dist/{chunk-WZDI6UJ6.js → chunk-MPXPPKJ4.js} +3 -3
- package/dist/{chunk-A46SAHYB.js → chunk-MUVPQCQA.js} +1 -1
- package/dist/{chunk-WLW7QV2C.js → chunk-NA3MXUU6.js} +135 -187
- package/dist/{chunk-R23EMFJV.js → chunk-NAFWZIP3.js} +2 -7
- package/dist/{chunk-AYUYBWGD.js → chunk-NE6RPW5C.js} +7 -32
- package/dist/chunk-NGP6LSV2.js +25 -0
- package/dist/{chunk-EZY3BNIW.js → chunk-NQAZ2CP7.js} +40 -51
- package/dist/{chunk-XMAP37LE.js → chunk-NT6R4ATM.js} +1 -1
- package/dist/{chunk-NCVFW4JS.js → chunk-O7CTVDC3.js} +2 -2
- package/dist/{chunk-TOR5ZPKF.js → chunk-OPU3NYOO.js} +5 -17
- package/dist/{chunk-SRQXDGUO.js → chunk-OYCQ6PFC.js} +6 -6
- package/dist/{chunk-KFQGP6VL.js → chunk-PNKVD2UK.js} +0 -7
- package/dist/{chunk-MFO7MNSD.js → chunk-QGGH7LOU.js} +1 -10
- package/dist/{chunk-3XUWTXNC.js → chunk-QSSABSCM.js} +41 -7
- package/dist/chunk-RLCZBSUB.js +123 -0
- package/dist/{chunk-37RJAKHZ.js → chunk-RNN4MZDN.js} +4 -12
- package/dist/{chunk-BNH4LWKE.js → chunk-RWJY7KMP.js} +34 -13
- package/dist/{chunk-VH2CK32C.js → chunk-RWURKLS3.js} +1 -1
- package/dist/{chunk-UAAOJHVR.js → chunk-S465RWY7.js} +41 -128
- package/dist/{chunk-TGR3H3DM.js → chunk-SR6D65DA.js} +5 -11
- package/dist/{chunk-MAA3266Q.js → chunk-TFZZL3QF.js} +1 -1
- package/dist/{chunk-NEAHEC5G.js → chunk-TXSJ2L5O.js} +7 -30
- package/dist/{chunk-TDIUACZ6.js → chunk-UVH6FA5E.js} +5 -2
- package/dist/{chunk-QLQCSJC4.js → chunk-UWBU44UP.js} +1 -1
- package/dist/{chunk-ROTT6N5K.js → chunk-UXDQ4ERA.js} +74 -33
- package/dist/{chunk-WDN5IY66.js → chunk-V4O2APMI.js} +1 -1
- package/dist/{chunk-PNLYLN6K.js → chunk-VRD452MQ.js} +2 -4
- package/dist/{chunk-SCP545OR.js → chunk-VX4X2O6J.js} +7 -12
- package/dist/{chunk-EHF676BW.js → chunk-VXQDZH5T.js} +5 -13
- package/dist/{chunk-2RCYI7O4.js → chunk-W7NQE65M.js} +1 -3
- package/dist/{chunk-QBLI377G.js → chunk-WJW564IP.js} +55 -6
- package/dist/{chunk-QUPRWJKI.js → chunk-WLEVAIL5.js} +11 -5
- package/dist/{chunk-DSVN3QRR.js → chunk-WTJS6PCC.js} +1 -1
- package/dist/{chunk-EYRQWVPQ.js → chunk-X7DJ2QZW.js} +3 -5
- package/dist/{chunk-76R35J76.js → chunk-XAHIVBTU.js} +7 -15
- package/dist/{chunk-67WOKLTZ.js → chunk-XEA6DSLR.js} +12 -27
- package/dist/{chunk-AV4RLRM2.js → chunk-XQ2ZBOAD.js} +64 -41
- package/dist/{chunk-7PJP3TZV.js → chunk-Y2VVTK2E.js} +2 -13
- package/dist/chunk-YSU7JB7H.js +0 -0
- package/dist/{chunk-PJHHFJAN.js → chunk-ZQX6UOP6.js} +10 -28
- package/dist/{code-context-index-WCJ6RWCY.js → code-context-index-SRTAWCZQ.js} +7 -6
- package/dist/content-extractor-H4IPL533.js +8 -0
- package/dist/{conversation-entity-extractor-7S4JFUOM.js → conversation-entity-extractor-IZ3ECP4A.js} +2 -2
- package/dist/{conversation-wiki-populator-H6WM5SFU.js → conversation-wiki-populator-K4BQXHHO.js} +2 -2
- package/dist/{core-memory-N2SN7CF5.js → core-memory-JZ34WT5R.js} +34 -3
- package/dist/{crdt-sync-WYAIMNUX.js → crdt-sync-4TOVD4QN.js} +2 -2
- package/dist/{crm-bridge-Q5JBVJ6P.js → crm-bridge-27QVOWPI.js} +1 -1
- package/dist/{crm-webhook-PIFEQH7A.js → crm-webhook-77XHBWL7.js} +3 -3
- package/dist/{cto-delegation-gate-MKIVEDB4.js → cto-delegation-gate-AWENA4VT.js} +23 -29
- package/dist/daemon-auth-Z7O3LO23.js +13 -0
- package/dist/{daemon-orchestration-RZLIILS6.js → daemon-orchestration-BG4NPWOK.js} +40 -28
- package/dist/{daemon-protocol-RLH2XM2K.js → daemon-protocol-N7MOJ4U3.js} +2 -4
- package/dist/{db-backup-K2M7HENN.js → db-backup-E34JMBZD.js} +4 -6
- package/dist/{devtools-PLJCAU53.js → devtools-ZL5NCINM.js} +1 -1
- package/dist/{discord-G4BQJ2VX.js → discord-QOFQKX6S.js} +1 -1
- package/dist/{email-XMRNMFXR.js → email-NY5HB4WA.js} +1 -1
- package/dist/{entity-boost-62SBVNCD.js → entity-boost-V6KSRGG4.js} +2 -2
- package/dist/{exe-drift-2LL7OCRF.js → exe-drift-YFWCC26O.js} +7 -7
- package/dist/{exe-export-TQZ6FVKC.js → exe-export-YRACBEUY.js} +12 -12
- package/dist/{exe-import-PB3VIFF7.js → exe-import-DY57L2OI.js} +12 -12
- package/dist/{exe-key-BZTGYI2O.js → exe-key-U2JJH4MO.js} +8 -10
- package/dist/{exe-org-7ZJNIBL2.js → exe-org-45OTYZZJ.js} +4 -4
- package/dist/{factory-YTD23AW7.js → factory-2PB537KA.js} +1 -1
- package/dist/fast-db-init-67TQTHWT.js +7 -0
- package/dist/{file-edit-FJVEO7XZ.js → file-edit-GSXUFUDC.js} +1 -1
- package/dist/{file-read-Q2NH3J35.js → file-read-Z3F3PUCK.js} +1 -1
- package/dist/{file-write-UNSFXNH4.js → file-write-X77JXZ2C.js} +1 -1
- package/dist/gateway/index.js +13 -13
- package/dist/{gateway-client-E4UWC45R.js → gateway-client-IPKKEYKY.js} +2 -2
- package/dist/{git-staleness-QXWQPH74.js → git-staleness-I662R7RL.js} +7 -9
- package/dist/git-task-sweep-XWFCP2HA.js +37 -0
- package/dist/{glob-GRMXLDMB.js → glob-2PWAXTZ2.js} +1 -1
- package/dist/global-procedures-IEIJBCAH.js +19 -0
- package/dist/{graph-query-JBQDJJFP.js → graph-query-NCDYOT4Y.js} +1 -1
- package/dist/{graph-rag-73U3RTBB.js → graph-rag-2YLGRBW5.js} +2 -2
- package/dist/{grep-NBV6SKYZ.js → grep-GTV6WAZ4.js} +1 -1
- package/dist/{hook-integrity-LAWB6YQH.js → hook-integrity-LLPJPAXW.js} +2 -2
- package/dist/hooks/bug-report-worker.js +27 -35
- package/dist/hooks/codex-stop-task-finalizer.js +26 -32
- package/dist/hooks/commit-complete.js +26 -26
- package/dist/hooks/error-recall.js +17 -19
- package/dist/hooks/exe-heartbeat-hook.js +10 -12
- package/dist/hooks/ingest-worker.js +14 -13
- package/dist/hooks/ingest.js +23 -25
- package/dist/hooks/instructions-loaded.js +11 -13
- package/dist/hooks/notification.js +10 -10
- package/dist/hooks/post-compact.js +25 -27
- package/dist/hooks/post-tool-combined.js +6 -6
- package/dist/hooks/pre-compact.js +31 -32
- package/dist/hooks/pre-tool-use.js +31 -35
- package/dist/hooks/prompt-submit.js +90 -67
- package/dist/hooks/session-end.js +40 -42
- package/dist/hooks/session-start.js +10 -10
- package/dist/hooks/stop.js +36 -44
- package/dist/hooks/subagent-stop.js +26 -30
- package/dist/hooks/summary-worker.js +36 -43
- package/dist/{hooks-KD3N2D7P.js → hooks-UK2AYRCA.js} +1 -1
- package/dist/imessage-LINH4V4D.js +7 -0
- package/dist/index.js +32 -32
- package/dist/{installer-BIDJSBAP.js → installer-PB63JTTG.js} +11 -11
- package/dist/{installer-2O362XY7.js → installer-SSR2OOLO.js} +11 -11
- package/dist/{installer-OYGB6GAI.js → installer-ZONYB3XK.js} +11 -11
- package/dist/{intercom-queue-PEEGAJ33.js → intercom-queue-MMZT2MA2.js} +2 -4
- package/dist/{key-backup-status-2CMNBKEM.js → key-backup-status-4WKIQOAS.js} +3 -3
- package/dist/lib/agent-config.js +5 -7
- package/dist/lib/cloud-sync.js +14 -10
- package/dist/lib/cloudflare-dns.js +1 -1
- package/dist/lib/config.js +3 -3
- package/dist/lib/consolidation.js +17 -13
- package/dist/lib/crypto.js +2 -4
- package/dist/lib/database.js +6 -8
- package/dist/lib/db-daemon-client.js +7 -17
- package/dist/lib/db.js +6 -10
- package/dist/lib/device-registry.js +3 -3
- package/dist/lib/embedder.js +9 -10
- package/dist/lib/employee-templates.js +9 -9
- package/dist/lib/employees.js +10 -8
- package/dist/lib/error-detector.js +3 -3
- package/dist/lib/exe-daemon-client.js +6 -7
- package/dist/lib/exe-daemon.js +368 -399
- package/dist/lib/file-grep.js +1 -1
- package/dist/lib/hybrid-search.js +11 -11
- package/dist/lib/identity-templates.js +1 -1
- package/dist/lib/identity.js +6 -8
- package/dist/lib/keychain.js +2 -2
- package/dist/lib/license.js +4 -6
- package/dist/lib/messaging.js +24 -24
- package/dist/lib/post-tool-memory.js +7 -7
- package/dist/lib/registry-proxy.js +1 -1
- package/dist/lib/reminders.js +7 -7
- package/dist/lib/runtime-table.js +3 -5
- package/dist/lib/schedules.js +11 -11
- package/dist/lib/session-registry.js +2 -4
- package/dist/lib/session-wrappers.js +1 -1
- package/dist/lib/skill-learning.js +8 -10
- package/dist/lib/status-brief.js +2 -2
- package/dist/lib/store.js +10 -10
- package/dist/lib/task-router.js +7 -7
- package/dist/lib/tasks.js +24 -28
- package/dist/lib/tmux-routing.js +23 -25
- package/dist/lib/tmux-status.js +2 -4
- package/dist/lib/tmux-transport.js +3 -5
- package/dist/lib/token-spend.js +7 -7
- package/dist/lib/transport.js +3 -5
- package/dist/lib/ws-auth.js +1 -1
- package/dist/lib/ws-client.js +2 -2
- package/dist/license-gate-JY2KFIKO.js +14 -0
- package/dist/mcp/register-tools.js +77 -77
- package/dist/mcp/server.js +92 -86
- package/dist/mcp/tools/complete-reminder.js +8 -8
- package/dist/mcp/tools/create-reminder.js +8 -8
- package/dist/mcp/tools/create-task.js +26 -28
- package/dist/mcp/tools/deactivate-behavior.js +11 -11
- package/dist/mcp/tools/list-reminders.js +8 -8
- package/dist/mcp/tools/list-tasks.js +27 -28
- package/dist/mcp/tools/send-message.js +26 -26
- package/dist/mcp/tools/update-task.js +25 -27
- package/dist/{mcp-diagnostics-OOZ3TDPY.js → mcp-diagnostics-CWMVPHVC.js} +1 -1
- package/dist/{mcp-disconnect-tracker-I5WJ4LQ5.js → mcp-disconnect-tracker-RM3GEERR.js} +1 -1
- package/dist/{mcp-http-config-GLSLF2OL.js → mcp-http-config-PDGSOYNQ.js} +7 -7
- package/dist/{memory-cards-PCZ2KWMN.js → memory-cards-OLE6MGO7.js} +7 -9
- package/dist/{memory-poisoning-defense-JY4NU3AY.js → memory-poisoning-defense-OOHJIXIX.js} +7 -9
- package/dist/{memory-queue-7N7ZEY2K.js → memory-queue-TGWXMENR.js} +4 -4
- package/dist/memory-queue-client-RZP5F4EA.js +15 -0
- package/dist/{memory-reflection-IVHZRUQQ.js → memory-reflection-Z7CT6JLY.js} +7 -9
- package/dist/{message-queue-client-3RWYNZIR.js → message-queue-client-TWIA2GIH.js} +1 -1
- package/dist/notifications-SREXGSAQ.js +42 -0
- package/dist/{oauth-server-S45RTRRF.js → oauth-server-NSWGKLLA.js} +1 -1
- package/dist/{orchestration-phase-NTQZNPAZ.js → orchestration-phase-WLQMEP4M.js} +4 -4
- package/dist/orchestrator-CHQURQSC.js +30 -0
- package/dist/{permission-presets-WI524OSE.js → permission-presets-3XKJNM6N.js} +1 -1
- package/dist/{permissions-TYT6YMNZ.js → permissions-EZH3ULLD.js} +1 -1
- package/dist/{pg-ssl-KFHNJPGO.js → pg-ssl-4ZNXKUNH.js} +1 -1
- package/dist/plan-limits-7L75PB33.js +25 -0
- package/dist/{preferences-5YRRHGXS.js → preferences-K2GKUQSJ.js} +3 -3
- package/dist/project-name-OBIDABHE.js +10 -0
- package/dist/{projection-worker-YIJ7Q66A.js → projection-worker-HSGE44JA.js} +5 -5
- package/dist/push-notifications-EOTMKJ6B.js +15 -0
- package/dist/{reranker-2BSQ2V5M.js → reranker-ME4CK2ZQ.js} +4 -4
- package/dist/{review-gate-E6K7QQE5.js → review-gate-M3U2YAW6.js} +1 -1
- package/dist/review-polling-DQCN4TNM.js +121 -0
- package/dist/runtime/index.js +26 -26
- package/dist/{self-query-router-IZANO632.js → self-query-router-TRPHL54X.js} +50 -2
- package/dist/session-events-ZZBFYL5Z.js +34 -0
- package/dist/{session-kill-telemetry-2IB6IQSS.js → session-kill-telemetry-MUFET632.js} +7 -9
- package/dist/{chunk-YPQMQWA2.js → session-scope-QUUDZM2L.js} +27 -32
- package/dist/setup-wizard-NXWCEK63.js +12 -0
- package/dist/{shard-manager-IIII7AAS.js → shard-manager-VYMJM7NR.js} +4 -4
- package/dist/{signal-XN2C7PIG.js → signal-C263RUND.js} +1 -1
- package/dist/{slack-Z77TFJCK.js → slack-N7PL6QMX.js} +1 -1
- package/dist/{task-enforcement-VDCQ5H3H.js → task-enforcement-WJ3S6JTL.js} +23 -27
- package/dist/{task-scanner-IMIR3T7T.js → task-scanner-YHWRG4ZJ.js} +1 -1
- package/dist/task-scope-V2CTRHG7.js +32 -0
- package/dist/tasks-crud-W2XPUGKK.js +54 -0
- package/dist/tasks-review-BR2SBSYG.js +44 -0
- package/dist/{telegram-CRPZO7JT.js → telegram-B54FFOXD.js} +1 -1
- package/dist/{telemetry-SPVGPKU7.js → telemetry-7IQCPV4Q.js} +1 -1
- package/dist/{token-budget-VX5ZTLAG.js → token-budget-H2XSWO4D.js} +7 -9
- package/dist/{tool-capability-index-JBS2FDIG.js → tool-capability-index-5X2CCGIK.js} +3 -3
- package/dist/{tool-gates-FSNGZNXW.js → tool-gates-3DNTD7G3.js} +1 -1
- package/dist/{tool-gates-P6HATVYH.js → tool-gates-SGFMDREY.js} +1 -1
- package/dist/{tool-registry-436LVVLY.js → tool-registry-2VUAZXTW.js} +1 -1
- package/dist/{tool-telemetry-ASYRVRIY.js → tool-telemetry-NVPSPRYP.js} +2 -2
- package/dist/tui/App.js +75 -87
- package/dist/{tui-data-UHFRO64P.js → tui-data-QN4O565C.js} +24 -28
- package/dist/{update-check-LZGZISRJ.js → update-check-ERUKV2G6.js} +1 -1
- package/dist/{webhook-VVP7KQVC.js → webhook-L5FGAUPJ.js} +1 -1
- package/dist/{webhook-pipe-B6Z2QMRY.js → webhook-pipe-B7GJCJAI.js} +1 -1
- package/dist/{whatsapp-4IDUW46W.js → whatsapp-7FK2PRWO.js} +1 -1
- package/dist/{whatsapp-accounts-RTJF3LM6.js → whatsapp-accounts-VIHRSLGB.js} +1 -1
- package/dist/{wiki-acl-OSBQJD2E.js → wiki-acl-R4IIHICT.js} +1 -1
- package/dist/{wiki-client-TDZ74RHN.js → wiki-client-EUDJA7O2.js} +1 -1
- package/dist/{worker-gate-CVWHVSX3.js → worker-gate-3KDXLIJC.js} +6 -4
- package/dist/{workflow-engine-2XZK77ZX.js → workflow-engine-GISKRYSO.js} +3 -3
- package/dist/{worktree-O2DKCB33.js → worktree-B3FHAHEM.js} +2 -4
- package/package.json +4 -3
- package/release-notes.json +146 -146
- package/src/commands/exe/intercom.md +19 -3
- package/stack.release.json +8 -8
- package/dist/agent-context-CDWUZEXY.js +0 -11
- package/dist/behaviors-A4W3CBE5.js +0 -22
- package/dist/capacity-monitor-7VX6NW5J.js +0 -48
- package/dist/chunk-4NYQAS33.js +0 -17
- package/dist/chunk-57HCNSFO.js +0 -39
- package/dist/chunk-ELE2C7L4.js +0 -31
- package/dist/chunk-GGTUUI7J.js +0 -6
- package/dist/chunk-JT76KRZQ.js +0 -35
- package/dist/chunk-MBRLA4E3.js +0 -119
- package/dist/chunk-WZQ4CPRG.js +0 -64
- package/dist/content-extractor-UVZXRIPC.js +0 -8
- package/dist/daemon-auth-5WZWXJWL.js +0 -15
- package/dist/fast-db-init-TLDOE64G.js +0 -7
- package/dist/git-task-sweep-HELKXKNQ.js +0 -37
- package/dist/global-procedures-4BN6BD4N.js +0 -19
- package/dist/imessage-L7WKA2WD.js +0 -7
- package/dist/license-gate-PAW5WWP6.js +0 -14
- package/dist/memory-queue-client-W63JO34U.js +0 -14
- package/dist/notifications-FCTKUQAU.js +0 -44
- package/dist/orchestrator-VQL47YQP.js +0 -30
- package/dist/plan-limits-TK4424RV.js +0 -27
- package/dist/project-name-7G6XPXQ6.js +0 -12
- package/dist/push-notifications-66EQCPHZ.js +0 -17
- package/dist/session-events-JZPK3UUM.js +0 -34
- package/dist/session-scope-QPBPO5XV.js +0 -36
- package/dist/setup-wizard-UFLDL2QP.js +0 -12
- package/dist/task-scope-YIPIPEVK.js +0 -34
- package/dist/tasks-crud-E4B3ORQX.js +0 -54
- package/dist/tasks-review-6Y7IB572.js +0 -46
- /package/dist/{chunk-GGFH5MTN.js → chunk-2HV2EQW2.js} +0 -0
- /package/dist/{chunk-V2UBYCSC.js → chunk-APRP5D27.js} +0 -0
- /package/dist/{chunk-E3ZIGQH4.js → chunk-D5MPHVWH.js} +0 -0
- /package/dist/{chunk-VKFBVBAN.js → chunk-F3ULERRZ.js} +0 -0
- /package/dist/{chunk-5OANXJSV.js → chunk-HIQ5RDA7.js} +0 -0
package/release-notes.json
CHANGED
|
@@ -1,10 +1,21 @@
|
|
|
1
1
|
{
|
|
2
|
-
"current": "0.9.
|
|
2
|
+
"current": "0.9.145",
|
|
3
3
|
"notes": {
|
|
4
|
-
"0.9.
|
|
5
|
-
"version": "0.9.
|
|
6
|
-
"date": "2026-05-
|
|
4
|
+
"0.9.145": {
|
|
5
|
+
"version": "0.9.145",
|
|
6
|
+
"date": "2026-05-27",
|
|
7
7
|
"features": [
|
|
8
|
+
"add diagnostics(action=\"merge_agent_memories\") for reassigning memories across agent IDs",
|
|
9
|
+
"add task dependency tree visualization (action=dependency_tree)",
|
|
10
|
+
"graceful COO auto-relaunch after context-full exit",
|
|
11
|
+
"desktop push notifications on task completion (macOS/Linux)",
|
|
12
|
+
"rename GHCR image exed → exe-os across all deploy/stack references",
|
|
13
|
+
"passive daemon-restart detection — agents get one-time /mcp notice",
|
|
14
|
+
"daemon restart orchestrator — single authority for all restart decisions",
|
|
15
|
+
"query router cache tuning + cross-session tasks + shared skills",
|
|
16
|
+
"socket health probe + tmux env guard + reviewer queue fallback (features 1, 2)",
|
|
17
|
+
"stale review auto-cleanup + file-copy size limit (features 5, 6)",
|
|
18
|
+
"self-query router LRU cache + coordinator auto-restart on context capacity",
|
|
8
19
|
"close_task auto-merges PR + pulls main + builds + prunes + respawns",
|
|
9
20
|
"auto-respawn Tom after close_task if more tasks queued",
|
|
10
21
|
"message WAL fallback — messages survive daemon downtime",
|
|
@@ -18,45 +29,34 @@
|
|
|
18
29
|
"behavior hygiene — platform procedure + COO identity + company procedure",
|
|
19
30
|
"MCP auto-reconnect to daemon — survives deploy restarts transparently",
|
|
20
31
|
"event-driven notifications — stop polling managers, let task state drive everything",
|
|
21
|
-
"MCP disconnect tracker + daemon observability"
|
|
22
|
-
"MCP lifecycle logging to file — FULL transparency on every disconnect",
|
|
23
|
-
"automatic P0 bug fixing — daemon auto-dispatch + GitHub Actions fallback",
|
|
24
|
-
"enforce worktrees for engineer sessions — prevent direct main commits",
|
|
25
|
-
"multi-device coordination — routing, handoff, device status",
|
|
26
|
-
"hook tamper protection — SHA-256 manifest + verification before spawn",
|
|
27
|
-
"governed collaborative memory — visibility tags + write governance",
|
|
28
|
-
"cache-sharing protocol — pub/sub memory bus for inter-agent sharing",
|
|
29
|
-
"multi-modal memory — media attachments on memories",
|
|
30
|
-
"comprehensive \"last 20%\" integration tests + audit_trail read path",
|
|
31
|
-
"wire memory poisoning defense into writeMemory() pipeline",
|
|
32
|
-
"memory poisoning defense — trust levels, anomaly detection, quarantine"
|
|
32
|
+
"MCP disconnect tracker + daemon observability"
|
|
33
33
|
],
|
|
34
34
|
"fixes": [
|
|
35
|
-
"
|
|
36
|
-
"
|
|
37
|
-
"
|
|
38
|
-
"
|
|
39
|
-
"
|
|
40
|
-
"
|
|
41
|
-
"
|
|
42
|
-
"
|
|
43
|
-
"
|
|
44
|
-
"
|
|
45
|
-
"
|
|
46
|
-
"
|
|
47
|
-
"
|
|
48
|
-
"
|
|
49
|
-
"
|
|
50
|
-
"
|
|
51
|
-
"
|
|
52
|
-
"
|
|
53
|
-
"
|
|
54
|
-
"
|
|
55
|
-
"
|
|
56
|
-
"
|
|
57
|
-
"
|
|
58
|
-
"
|
|
59
|
-
"
|
|
35
|
+
"add sessionScopeFilter to worker-gate + create-task queries",
|
|
36
|
+
"replace require() with ESM import in shouldAutoInstance",
|
|
37
|
+
"intercom-check passes project_name to scanFromDb — prevents cross-project task pollution",
|
|
38
|
+
"periodic WAL checkpoint (TRUNCATE) every 5 minutes in daemon",
|
|
39
|
+
"orphan task routing + cloud push content hash (cherry-pick from tom4)",
|
|
40
|
+
"upgrade code_context platform procedure to P0 + add graph tools",
|
|
41
|
+
"defer initStore() to background — MCP startup is now instant",
|
|
42
|
+
"multi-project session isolation in create-task dispatch",
|
|
43
|
+
"consolidate shouldAutoInstance() — single source of truth for spawn decisions",
|
|
44
|
+
"entity type normalization + intercom Codex/OpenCode pane safety",
|
|
45
|
+
"intercom fast-path reads signal file directly + 2s daemon socket timeout",
|
|
46
|
+
"set AGENT_ID in tmux spawn env — hooks can now read task signal files",
|
|
47
|
+
"auto-wake respects singleton roles — no more yoshi2/mari2 duplicates",
|
|
48
|
+
"daemon signal-nudge — auto-wake detects .pending files and nudges idle agents",
|
|
49
|
+
"defer close_task auto-respawn to prevent caller MCP disruption",
|
|
50
|
+
"allow in_progress → open transition for dead session claim release",
|
|
51
|
+
"GraphRAG idle gate + CPU event label + watchdog stale dedup",
|
|
52
|
+
"exe-start.sh defaults instance number to 1 for non-wrapper invocation",
|
|
53
|
+
"session-end 15s timeout + log rotation + agent name validation",
|
|
54
|
+
"harden createTaskCore atomicity + add orphan task file cleanup",
|
|
55
|
+
"honestly document 3 stub features — HyDE, visibility tiers, write-time contradiction",
|
|
56
|
+
"preserve memory_type in consolidation INSERT + dedup intercom memories",
|
|
57
|
+
"harden stack update readiness gates",
|
|
58
|
+
"resolveProjectDir inherits coordinator session's repo — employees spawn in same repo as their coordinator",
|
|
59
|
+
"resolve merge conflict in install.ts — use restart orchestrator"
|
|
60
60
|
],
|
|
61
61
|
"security": [
|
|
62
62
|
"fix shell injection, SSRF, socket leaks, backup validation",
|
|
@@ -73,7 +73,12 @@
|
|
|
73
73
|
"fix 4 pricing tier bypass vulnerabilities (audit F1-F4)"
|
|
74
74
|
],
|
|
75
75
|
"other": [
|
|
76
|
+
"bump to v0.9.145 for publish",
|
|
77
|
+
"revert: keep workflow files unchanged — GitHub OAuth blocks workflow scope",
|
|
78
|
+
"stage remaining Yoshi fixes — features + bug cleanup",
|
|
79
|
+
"add tests for daemon restart orchestrator module",
|
|
76
80
|
"publish v0.9.144 — ESM require() fix + reliable task signals + OAuth 2.1",
|
|
81
|
+
"add MCP tool tests for message, cloud-sync, and file-copy",
|
|
77
82
|
"add coverage for send_message, cloud_sync, file_copy MCP tools (Track A)",
|
|
78
83
|
"Recover MCP sessions after daemon restart",
|
|
79
84
|
"publish v0.9.143 — all fixes live",
|
|
@@ -92,22 +97,28 @@
|
|
|
92
97
|
"document raw SQL fallback in orchestrator auto-approve path",
|
|
93
98
|
"Finalize orchestration rollout fixes",
|
|
94
99
|
"Scope device governance task queries",
|
|
95
|
-
"bump v0.9.138 — 7 critical bug fixes, 10 features, 16 commits"
|
|
96
|
-
"bump v0.9.137 — Memanto typed schema, push notifications, lazy consolidation",
|
|
97
|
-
"bump v0.9.136 — daemon OOM fix, process monitor, auto-notify reviewer",
|
|
98
|
-
"bump v0.9.135 — code debt cleanup, 28 new tests, full observability",
|
|
99
|
-
"Codex MCP regression tests (18) + DB singleton integration tests (10)",
|
|
100
|
-
"release notes for v0.9.134"
|
|
100
|
+
"bump v0.9.138 — 7 critical bug fixes, 10 features, 16 commits"
|
|
101
101
|
],
|
|
102
102
|
"migration_notes": [
|
|
103
103
|
"If daemon goes down, agents will now fail instead of silently",
|
|
104
104
|
"exe-daemon.ts kills old embed.pid process and cleans up"
|
|
105
105
|
]
|
|
106
106
|
},
|
|
107
|
-
"0.9.
|
|
108
|
-
"version": "0.9.
|
|
109
|
-
"date": "2026-05-
|
|
107
|
+
"0.9.144": {
|
|
108
|
+
"version": "0.9.144",
|
|
109
|
+
"date": "2026-05-27",
|
|
110
110
|
"features": [
|
|
111
|
+
"add diagnostics(action=\"merge_agent_memories\") for reassigning memories across agent IDs",
|
|
112
|
+
"add task dependency tree visualization (action=dependency_tree)",
|
|
113
|
+
"graceful COO auto-relaunch after context-full exit",
|
|
114
|
+
"desktop push notifications on task completion (macOS/Linux)",
|
|
115
|
+
"rename GHCR image exed → exe-os across all deploy/stack references",
|
|
116
|
+
"passive daemon-restart detection — agents get one-time /mcp notice",
|
|
117
|
+
"daemon restart orchestrator — single authority for all restart decisions",
|
|
118
|
+
"query router cache tuning + cross-session tasks + shared skills",
|
|
119
|
+
"socket health probe + tmux env guard + reviewer queue fallback (features 1, 2)",
|
|
120
|
+
"stale review auto-cleanup + file-copy size limit (features 5, 6)",
|
|
121
|
+
"self-query router LRU cache + coordinator auto-restart on context capacity",
|
|
111
122
|
"close_task auto-merges PR + pulls main + builds + prunes + respawns",
|
|
112
123
|
"auto-respawn Tom after close_task if more tasks queued",
|
|
113
124
|
"message WAL fallback — messages survive daemon downtime",
|
|
@@ -121,45 +132,34 @@
|
|
|
121
132
|
"behavior hygiene — platform procedure + COO identity + company procedure",
|
|
122
133
|
"MCP auto-reconnect to daemon — survives deploy restarts transparently",
|
|
123
134
|
"event-driven notifications — stop polling managers, let task state drive everything",
|
|
124
|
-
"MCP disconnect tracker + daemon observability"
|
|
125
|
-
"MCP lifecycle logging to file — FULL transparency on every disconnect",
|
|
126
|
-
"automatic P0 bug fixing — daemon auto-dispatch + GitHub Actions fallback",
|
|
127
|
-
"enforce worktrees for engineer sessions — prevent direct main commits",
|
|
128
|
-
"multi-device coordination — routing, handoff, device status",
|
|
129
|
-
"hook tamper protection — SHA-256 manifest + verification before spawn",
|
|
130
|
-
"governed collaborative memory — visibility tags + write governance",
|
|
131
|
-
"cache-sharing protocol — pub/sub memory bus for inter-agent sharing",
|
|
132
|
-
"multi-modal memory — media attachments on memories",
|
|
133
|
-
"comprehensive \"last 20%\" integration tests + audit_trail read path",
|
|
134
|
-
"wire memory poisoning defense into writeMemory() pipeline",
|
|
135
|
-
"memory poisoning defense — trust levels, anomaly detection, quarantine"
|
|
135
|
+
"MCP disconnect tracker + daemon observability"
|
|
136
136
|
],
|
|
137
137
|
"fixes": [
|
|
138
|
-
"
|
|
139
|
-
"
|
|
140
|
-
"
|
|
141
|
-
"
|
|
142
|
-
"
|
|
143
|
-
"
|
|
144
|
-
"
|
|
145
|
-
"
|
|
146
|
-
"
|
|
147
|
-
"
|
|
148
|
-
"
|
|
149
|
-
"
|
|
150
|
-
"
|
|
151
|
-
"daemon
|
|
152
|
-
"
|
|
153
|
-
"
|
|
154
|
-
"
|
|
155
|
-
"
|
|
156
|
-
"
|
|
157
|
-
"
|
|
158
|
-
"
|
|
159
|
-
"
|
|
160
|
-
"
|
|
161
|
-
"
|
|
162
|
-
"
|
|
138
|
+
"add sessionScopeFilter to worker-gate + create-task queries",
|
|
139
|
+
"replace require() with ESM import in shouldAutoInstance",
|
|
140
|
+
"intercom-check passes project_name to scanFromDb — prevents cross-project task pollution",
|
|
141
|
+
"periodic WAL checkpoint (TRUNCATE) every 5 minutes in daemon",
|
|
142
|
+
"orphan task routing + cloud push content hash (cherry-pick from tom4)",
|
|
143
|
+
"upgrade code_context platform procedure to P0 + add graph tools",
|
|
144
|
+
"defer initStore() to background — MCP startup is now instant",
|
|
145
|
+
"multi-project session isolation in create-task dispatch",
|
|
146
|
+
"consolidate shouldAutoInstance() — single source of truth for spawn decisions",
|
|
147
|
+
"entity type normalization + intercom Codex/OpenCode pane safety",
|
|
148
|
+
"intercom fast-path reads signal file directly + 2s daemon socket timeout",
|
|
149
|
+
"set AGENT_ID in tmux spawn env — hooks can now read task signal files",
|
|
150
|
+
"auto-wake respects singleton roles — no more yoshi2/mari2 duplicates",
|
|
151
|
+
"daemon signal-nudge — auto-wake detects .pending files and nudges idle agents",
|
|
152
|
+
"defer close_task auto-respawn to prevent caller MCP disruption",
|
|
153
|
+
"allow in_progress → open transition for dead session claim release",
|
|
154
|
+
"GraphRAG idle gate + CPU event label + watchdog stale dedup",
|
|
155
|
+
"exe-start.sh defaults instance number to 1 for non-wrapper invocation",
|
|
156
|
+
"session-end 15s timeout + log rotation + agent name validation",
|
|
157
|
+
"harden createTaskCore atomicity + add orphan task file cleanup",
|
|
158
|
+
"honestly document 3 stub features — HyDE, visibility tiers, write-time contradiction",
|
|
159
|
+
"preserve memory_type in consolidation INSERT + dedup intercom memories",
|
|
160
|
+
"harden stack update readiness gates",
|
|
161
|
+
"resolveProjectDir inherits coordinator session's repo — employees spawn in same repo as their coordinator",
|
|
162
|
+
"resolve merge conflict in install.ts — use restart orchestrator"
|
|
163
163
|
],
|
|
164
164
|
"security": [
|
|
165
165
|
"fix shell injection, SSRF, socket leaks, backup validation",
|
|
@@ -176,6 +176,12 @@
|
|
|
176
176
|
"fix 4 pricing tier bypass vulnerabilities (audit F1-F4)"
|
|
177
177
|
],
|
|
178
178
|
"other": [
|
|
179
|
+
"revert: keep workflow files unchanged — GitHub OAuth blocks workflow scope",
|
|
180
|
+
"stage remaining Yoshi fixes — features + bug cleanup",
|
|
181
|
+
"add tests for daemon restart orchestrator module",
|
|
182
|
+
"publish v0.9.144 — ESM require() fix + reliable task signals + OAuth 2.1",
|
|
183
|
+
"add MCP tool tests for message, cloud-sync, and file-copy",
|
|
184
|
+
"add coverage for send_message, cloud_sync, file_copy MCP tools (Track A)",
|
|
179
185
|
"Recover MCP sessions after daemon restart",
|
|
180
186
|
"publish v0.9.143 — all fixes live",
|
|
181
187
|
"publish v0.9.142",
|
|
@@ -194,21 +200,15 @@
|
|
|
194
200
|
"Finalize orchestration rollout fixes",
|
|
195
201
|
"Scope device governance task queries",
|
|
196
202
|
"bump v0.9.138 — 7 critical bug fixes, 10 features, 16 commits",
|
|
197
|
-
"bump v0.9.137 — Memanto typed schema, push notifications, lazy consolidation"
|
|
198
|
-
"bump v0.9.136 — daemon OOM fix, process monitor, auto-notify reviewer",
|
|
199
|
-
"bump v0.9.135 — code debt cleanup, 28 new tests, full observability",
|
|
200
|
-
"Codex MCP regression tests (18) + DB singleton integration tests (10)",
|
|
201
|
-
"release notes for v0.9.134",
|
|
202
|
-
"benchmark score entry for f95b862",
|
|
203
|
-
"add GitHub Actions CI pipeline — build + test on push"
|
|
203
|
+
"bump v0.9.137 — Memanto typed schema, push notifications, lazy consolidation"
|
|
204
204
|
],
|
|
205
205
|
"migration_notes": [
|
|
206
206
|
"If daemon goes down, agents will now fail instead of silently",
|
|
207
207
|
"exe-daemon.ts kills old embed.pid process and cleans up"
|
|
208
208
|
]
|
|
209
209
|
},
|
|
210
|
-
"0.9.
|
|
211
|
-
"version": "0.9.
|
|
210
|
+
"0.9.143": {
|
|
211
|
+
"version": "0.9.143",
|
|
212
212
|
"date": "2026-05-26",
|
|
213
213
|
"features": [
|
|
214
214
|
"close_task auto-merges PR + pulls main + builds + prunes + respawns",
|
|
@@ -240,6 +240,7 @@
|
|
|
240
240
|
"fixes": [
|
|
241
241
|
"prune old worktree on close_task before respawning fresh",
|
|
242
242
|
"exe-launch-agent resolves multi-instance names — tom2/tom3 no longer rejected",
|
|
243
|
+
"worktree isolation for all runtimes + token budget enforcement + atomic memory versioning",
|
|
243
244
|
"cross-device sync dedup — cooldown key prevents duplicate pushes",
|
|
244
245
|
"merge gate checks branch name not git author — was silently passing",
|
|
245
246
|
"resume_employee uses autoInstance — spawns tom2/tom3 for parallel",
|
|
@@ -261,8 +262,7 @@
|
|
|
261
262
|
"atomic writes for agent-config.json, roster (orchestration + rename)",
|
|
262
263
|
"atomic JSON writes + config.json corruption recovery",
|
|
263
264
|
"boot poll timeout no longer fails dispatch — session exists, task pending",
|
|
264
|
-
"master key clobber guard + COO naming in user-facing strings"
|
|
265
|
-
"MCP port retry + instant embed skip when OOM marker set"
|
|
265
|
+
"master key clobber guard + COO naming in user-facing strings"
|
|
266
266
|
],
|
|
267
267
|
"security": [
|
|
268
268
|
"fix shell injection, SSRF, socket leaks, backup validation",
|
|
@@ -279,6 +279,9 @@
|
|
|
279
279
|
"fix 4 pricing tier bypass vulnerabilities (audit F1-F4)"
|
|
280
280
|
],
|
|
281
281
|
"other": [
|
|
282
|
+
"Recover MCP sessions after daemon restart",
|
|
283
|
+
"publish v0.9.143 — all fixes live",
|
|
284
|
+
"publish v0.9.142",
|
|
282
285
|
"publish v0.9.141",
|
|
283
286
|
"ops: journalctl rotation + certbot expiry alerting",
|
|
284
287
|
"revert: daemon heap back to 33% of RAM — no artificial cap",
|
|
@@ -300,20 +303,20 @@
|
|
|
300
303
|
"Codex MCP regression tests (18) + DB singleton integration tests (10)",
|
|
301
304
|
"release notes for v0.9.134",
|
|
302
305
|
"benchmark score entry for f95b862",
|
|
303
|
-
"add GitHub Actions CI pipeline — build + test on push"
|
|
304
|
-
"gitignore GitHub workflows — add via web UI instead",
|
|
305
|
-
"remove ci.yml — GitHub token lacks workflow scope, will add via web UI",
|
|
306
|
-
"gitignore — add dist-next, db.sqlite, .wrangler; remove temp scripts"
|
|
306
|
+
"add GitHub Actions CI pipeline — build + test on push"
|
|
307
307
|
],
|
|
308
308
|
"migration_notes": [
|
|
309
309
|
"If daemon goes down, agents will now fail instead of silently",
|
|
310
310
|
"exe-daemon.ts kills old embed.pid process and cleans up"
|
|
311
311
|
]
|
|
312
312
|
},
|
|
313
|
-
"0.9.
|
|
314
|
-
"version": "0.9.
|
|
313
|
+
"0.9.142": {
|
|
314
|
+
"version": "0.9.142",
|
|
315
315
|
"date": "2026-05-26",
|
|
316
316
|
"features": [
|
|
317
|
+
"close_task auto-merges PR + pulls main + builds + prunes + respawns",
|
|
318
|
+
"auto-respawn Tom after close_task if more tasks queued",
|
|
319
|
+
"message WAL fallback — messages survive daemon downtime",
|
|
317
320
|
"entity type hierarchy — subtypes with rollup queries (PG-2)",
|
|
318
321
|
"temporal validity windows for graph queries (PG-3)",
|
|
319
322
|
"backup restore CLI + restoreBackup function",
|
|
@@ -335,12 +338,19 @@
|
|
|
335
338
|
"multi-modal memory — media attachments on memories",
|
|
336
339
|
"comprehensive \"last 20%\" integration tests + audit_trail read path",
|
|
337
340
|
"wire memory poisoning defense into writeMemory() pipeline",
|
|
338
|
-
"memory poisoning defense — trust levels, anomaly detection, quarantine"
|
|
339
|
-
"VPS Phase 4 — media→R2 bridge + cross-product queries + migration CLI",
|
|
340
|
-
"Palantir typed ontology — schema, validation, temporal edges",
|
|
341
|
-
"R2 media storage client — shared upload/download for all products"
|
|
341
|
+
"memory poisoning defense — trust levels, anomaly detection, quarantine"
|
|
342
342
|
],
|
|
343
343
|
"fixes": [
|
|
344
|
+
"prune old worktree on close_task before respawning fresh",
|
|
345
|
+
"exe-launch-agent resolves multi-instance names — tom2/tom3 no longer rejected",
|
|
346
|
+
"cross-device sync dedup — cooldown key prevents duplicate pushes",
|
|
347
|
+
"merge gate checks branch name not git author — was silently passing",
|
|
348
|
+
"resume_employee uses autoInstance — spawns tom2/tom3 for parallel",
|
|
349
|
+
"security hardening — fail-closed behavior auth gates",
|
|
350
|
+
"send_message intercom uses force:true — bypass 5-min debounce",
|
|
351
|
+
"global session cap 10→50 — match MCP session cap",
|
|
352
|
+
"/exe-call ALWAYS fires + tmux send-keys blocked for ALL agents",
|
|
353
|
+
"SIGTERM graceful shutdown — remove process.exit(0) from initMetrics",
|
|
344
354
|
"stale task escalation — surface alive-but-stalled agents to COO",
|
|
345
355
|
"cloud sync upsert + entity type hierarchy + temporal validity + file_copy security",
|
|
346
356
|
"daemon memory leak + duplicate watchdog + HTTP body limit + WAL flush",
|
|
@@ -355,17 +365,7 @@
|
|
|
355
365
|
"atomic JSON writes + config.json corruption recovery",
|
|
356
366
|
"boot poll timeout no longer fails dispatch — session exists, task pending",
|
|
357
367
|
"master key clobber guard + COO naming in user-facing strings",
|
|
358
|
-
"MCP port retry + instant embed skip when OOM marker set"
|
|
359
|
-
"install.ts uses spawn lock + SIGTERM grace + restart cooldown",
|
|
360
|
-
"daemon restart hardening — OOM guard + 60s cooldown + health check guard",
|
|
361
|
-
"stop daemon crash loop — embed client no longer kills daemon when OOM marker set",
|
|
362
|
-
"support endpoints askexe.com → cloud.askexe.com (bypass CF WAF)",
|
|
363
|
-
"reduce any types 68→52, typed adapter factories + HTTP responses",
|
|
364
|
-
"pg pool limits, queue overflow health log, any reduction 71→68",
|
|
365
|
-
"reduce any types 81→71, tighten lint budget to 72",
|
|
366
|
-
"/exe-afk detects non-tmux sessions, suggests /loop instead",
|
|
367
|
-
"cross-repo boundary — platform procedure + pre-tool-use guard",
|
|
368
|
-
"UNIQUE dedup index + dependency hygiene + ESM import fix"
|
|
368
|
+
"MCP port retry + instant embed skip when OOM marker set"
|
|
369
369
|
],
|
|
370
370
|
"security": [
|
|
371
371
|
"fix shell injection, SSRF, socket leaks, backup validation",
|
|
@@ -382,6 +382,7 @@
|
|
|
382
382
|
"fix 4 pricing tier bypass vulnerabilities (audit F1-F4)"
|
|
383
383
|
],
|
|
384
384
|
"other": [
|
|
385
|
+
"publish v0.9.141",
|
|
385
386
|
"ops: journalctl rotation + certbot expiry alerting",
|
|
386
387
|
"revert: daemon heap back to 33% of RAM — no artificial cap",
|
|
387
388
|
"v0.9.140 publish + heap cap 4GB (was 33% unbounded)",
|
|
@@ -405,18 +406,19 @@
|
|
|
405
406
|
"add GitHub Actions CI pipeline — build + test on push",
|
|
406
407
|
"gitignore GitHub workflows — add via web UI instead",
|
|
407
408
|
"remove ci.yml — GitHub token lacks workflow scope, will add via web UI",
|
|
408
|
-
"gitignore — add dist-next, db.sqlite, .wrangler; remove temp scripts"
|
|
409
|
-
"accumulated fixes — hooks, adapters, config, cloud-sync, rate-limiter, CI pipeline"
|
|
409
|
+
"gitignore — add dist-next, db.sqlite, .wrangler; remove temp scripts"
|
|
410
410
|
],
|
|
411
411
|
"migration_notes": [
|
|
412
412
|
"If daemon goes down, agents will now fail instead of silently",
|
|
413
413
|
"exe-daemon.ts kills old embed.pid process and cleans up"
|
|
414
414
|
]
|
|
415
415
|
},
|
|
416
|
-
"0.9.
|
|
417
|
-
"version": "0.9.
|
|
416
|
+
"0.9.141": {
|
|
417
|
+
"version": "0.9.141",
|
|
418
418
|
"date": "2026-05-26",
|
|
419
419
|
"features": [
|
|
420
|
+
"entity type hierarchy — subtypes with rollup queries (PG-2)",
|
|
421
|
+
"temporal validity windows for graph queries (PG-3)",
|
|
420
422
|
"backup restore CLI + restoreBackup function",
|
|
421
423
|
"ESLint setup + dependency hygiene + any type reduction",
|
|
422
424
|
"config(action=\"hire\") MCP tool — COO can hire employees directly",
|
|
@@ -439,11 +441,23 @@
|
|
|
439
441
|
"memory poisoning defense — trust levels, anomaly detection, quarantine",
|
|
440
442
|
"VPS Phase 4 — media→R2 bridge + cross-product queries + migration CLI",
|
|
441
443
|
"Palantir typed ontology — schema, validation, temporal edges",
|
|
442
|
-
"R2 media storage client — shared upload/download for all products"
|
|
443
|
-
"wire workflow-engine into gateway — trigger patterns + integration test",
|
|
444
|
-
"wire GoTrue auth into gateway MCP tools + X-User-Id header"
|
|
444
|
+
"R2 media storage client — shared upload/download for all products"
|
|
445
445
|
],
|
|
446
446
|
"fixes": [
|
|
447
|
+
"stale task escalation — surface alive-but-stalled agents to COO",
|
|
448
|
+
"cloud sync upsert + entity type hierarchy + temporal validity + file_copy security",
|
|
449
|
+
"daemon memory leak + duplicate watchdog + HTTP body limit + WAL flush",
|
|
450
|
+
"heap pressure alarm was false positive — compared heapUsed/heapTotal instead of heapUsed/heapLimit",
|
|
451
|
+
"strengthen scoped SQL audit — cover UPDATE/INSERT, expand exemptions",
|
|
452
|
+
"hard block tmux send-keys for non-coordinator agents",
|
|
453
|
+
"MCP disconnect procedure — explicitly block tmux send-keys workaround",
|
|
454
|
+
"file_copy MCP tool — path boundary enforcement + symlink traversal block",
|
|
455
|
+
"cloud sync task pull uses ON CONFLICT upsert with updated_at guard",
|
|
456
|
+
"multi-instance Tom dispatch — create_task fans out to tom2, tom3",
|
|
457
|
+
"atomic writes for agent-config.json, roster (orchestration + rename)",
|
|
458
|
+
"atomic JSON writes + config.json corruption recovery",
|
|
459
|
+
"boot poll timeout no longer fails dispatch — session exists, task pending",
|
|
460
|
+
"master key clobber guard + COO naming in user-facing strings",
|
|
447
461
|
"MCP port retry + instant embed skip when OOM marker set",
|
|
448
462
|
"install.ts uses spawn lock + SIGTERM grace + restart cooldown",
|
|
449
463
|
"daemon restart hardening — OOM guard + 60s cooldown + health check guard",
|
|
@@ -454,21 +468,7 @@
|
|
|
454
468
|
"reduce any types 81→71, tighten lint budget to 72",
|
|
455
469
|
"/exe-afk detects non-tmux sessions, suggests /loop instead",
|
|
456
470
|
"cross-repo boundary — platform procedure + pre-tool-use guard",
|
|
457
|
-
"UNIQUE dedup index + dependency hygiene + ESM import fix"
|
|
458
|
-
"task dispatch + completion bypass intercom debounce (force=true)",
|
|
459
|
-
"--role flag for exe-new-employee — was silently ignored",
|
|
460
|
-
"clear fresh audit release blockers",
|
|
461
|
-
"MCP stale session returns 404 per spec for client self-healing",
|
|
462
|
-
"resume_employee no longer requires project_name",
|
|
463
|
-
"daemon heap ceiling at 33% of total RAM",
|
|
464
|
-
"remove daemon heap cap — 15% of RAM, no ceiling",
|
|
465
|
-
"daemon heap scaling — 2GB floor for mid-range, 15% scaling",
|
|
466
|
-
"scale daemon heap to machine RAM — 10% of total, 8GB cap for 64GB+",
|
|
467
|
-
"daemon heap 1536→4096MB for 64GB+ machines — stop OOM crash loop",
|
|
468
|
-
"fix audit production advisories",
|
|
469
|
-
"fix audit test hermeticity gates",
|
|
470
|
-
"disable file grep in shared daemon mode — wrong project results",
|
|
471
|
-
"fix audit P0 memory queue and file grep"
|
|
471
|
+
"UNIQUE dedup index + dependency hygiene + ESM import fix"
|
|
472
472
|
],
|
|
473
473
|
"security": [
|
|
474
474
|
"fix shell injection, SSRF, socket leaks, backup validation",
|
|
@@ -485,6 +485,10 @@
|
|
|
485
485
|
"fix 4 pricing tier bypass vulnerabilities (audit F1-F4)"
|
|
486
486
|
],
|
|
487
487
|
"other": [
|
|
488
|
+
"ops: journalctl rotation + certbot expiry alerting",
|
|
489
|
+
"revert: daemon heap back to 33% of RAM — no artificial cap",
|
|
490
|
+
"v0.9.140 publish + heap cap 4GB (was 33% unbounded)",
|
|
491
|
+
"PG-1 cross-repo entity federation design document",
|
|
488
492
|
"add lint step + automated npm publish workflow",
|
|
489
493
|
"audit: scoped SQL + package budget + TUI vendored + TODO classification",
|
|
490
494
|
"add full readiness audit evidence",
|
|
@@ -505,11 +509,7 @@
|
|
|
505
509
|
"gitignore GitHub workflows — add via web UI instead",
|
|
506
510
|
"remove ci.yml — GitHub token lacks workflow scope, will add via web UI",
|
|
507
511
|
"gitignore — add dist-next, db.sqlite, .wrangler; remove temp scripts",
|
|
508
|
-
"accumulated fixes — hooks, adapters, config, cloud-sync, rate-limiter, CI pipeline"
|
|
509
|
-
"stack manifest v0.9.9 — session routing, DB safety, Codex MCP, 20 fixes",
|
|
510
|
-
"protect api router cloud migration routes",
|
|
511
|
-
"Proxy cloud sync routes through api router",
|
|
512
|
-
"bump v0.9.132"
|
|
512
|
+
"accumulated fixes — hooks, adapters, config, cloud-sync, rate-limiter, CI pipeline"
|
|
513
513
|
],
|
|
514
514
|
"migration_notes": [
|
|
515
515
|
"If daemon goes down, agents will now fail instead of silently",
|
|
@@ -33,9 +33,25 @@ if [ "$AGENT" = "UNKNOWN" ] || [ "$AGENT" = "default" ]; then
|
|
|
33
33
|
exit 0
|
|
34
34
|
fi
|
|
35
35
|
|
|
36
|
-
#
|
|
37
|
-
#
|
|
38
|
-
#
|
|
36
|
+
# FAST PATH: Check task signal file first (no Node.js, no DB, <10ms).
|
|
37
|
+
# If a .pending signal exists, output it immediately — no need for the
|
|
38
|
+
# slow intercom-check.js which hits the daemon socket (can hang 75s).
|
|
39
|
+
SIGNAL_FILE="$HOME/.exe-os/task-signals/${AGENT}.pending"
|
|
40
|
+
if [ -f "$SIGNAL_FILE" ]; then
|
|
41
|
+
SIGNAL=$(cat "$SIGNAL_FILE" 2>/dev/null)
|
|
42
|
+
TITLE=$(echo "$SIGNAL" | node -e "try{const d=JSON.parse(require('fs').readFileSync(0,'utf8'));console.log(d.title)}catch{}" 2>/dev/null)
|
|
43
|
+
PRIORITY=$(echo "$SIGNAL" | node -e "try{const d=JSON.parse(require('fs').readFileSync(0,'utf8'));console.log(d.priority)}catch{}" 2>/dev/null)
|
|
44
|
+
TASK_ID=$(echo "$SIGNAL" | node -e "try{const d=JSON.parse(require('fs').readFileSync(0,'utf8'));console.log(d.task_id)}catch{}" 2>/dev/null)
|
|
45
|
+
echo "MANDATORY: You have 1 unstarted task(s)."
|
|
46
|
+
echo "Highest priority: ${TITLE} [${PRIORITY}]"
|
|
47
|
+
echo ""
|
|
48
|
+
echo "START WORKING NOW. Run get_task(task_id=\"${TASK_ID}\") and begin immediately."
|
|
49
|
+
rm -f "$SIGNAL_FILE"
|
|
50
|
+
exit 0
|
|
51
|
+
fi
|
|
52
|
+
|
|
53
|
+
# Full check — one Node process for all intercom queries (coordinator reviews, messages, notifications).
|
|
54
|
+
# Only runs if no signal file exists (signal file is the fast path for task dispatch).
|
|
39
55
|
if [ "$AGENT" = "$COORDINATOR" ] || [ "$AGENT" = "exe" ]; then
|
|
40
56
|
EXE_SESSION="$SESSION_NAME" EXE_SESSION_NAME="$SESSION_NAME" node "$(npm root -g)/@askexenow/exe-os/dist/bin/intercom-check.js" "$AGENT" --coordinator 2>/dev/null
|
|
41
57
|
else
|
package/stack.release.json
CHANGED
|
@@ -2,11 +2,11 @@
|
|
|
2
2
|
"$schema": "https://updates.askexe.com/schemas/stack.release.schema.json",
|
|
3
3
|
"schemaVersion": 1,
|
|
4
4
|
"repo": "AskExe/exe-os",
|
|
5
|
-
"service": "
|
|
5
|
+
"service": "exe-os",
|
|
6
6
|
"packageName": "@askexenow/exe-os",
|
|
7
|
-
"version": "0.9.
|
|
8
|
-
"image": "
|
|
9
|
-
"imageEnv": "
|
|
7
|
+
"version": "0.9.9",
|
|
8
|
+
"image": "registry.askexe.com/askexe/exe-os:v0.9.9",
|
|
9
|
+
"imageEnv": "EXE_OS_IMAGE_TAG",
|
|
10
10
|
"stackParticipation": {
|
|
11
11
|
"required": true,
|
|
12
12
|
"compatibleStack": ">=0.9.0 <1.0.0",
|
|
@@ -29,12 +29,12 @@
|
|
|
29
29
|
],
|
|
30
30
|
"migrations": {
|
|
31
31
|
"command": "npm run build",
|
|
32
|
-
"rollback": "Restore previous
|
|
32
|
+
"rollback": "Restore previous EXE_OS_IMAGE_TAG and restart exe-os; local SQLCipher memory data is not overwritten by updates."
|
|
33
33
|
},
|
|
34
34
|
"config": {
|
|
35
35
|
"envExample": "deploy/compose/.env.example",
|
|
36
36
|
"requiredEnv": [
|
|
37
|
-
"
|
|
37
|
+
"EXE_OS_IMAGE_TAG",
|
|
38
38
|
"EXED_MCP_TOKEN",
|
|
39
39
|
"EXED_DEVICE_ID"
|
|
40
40
|
]
|
|
@@ -42,9 +42,9 @@
|
|
|
42
42
|
"breakingChanges": [],
|
|
43
43
|
"dataSovereignty": "Customer-local memory/tasks/behaviors stay in SQLCipher/local storage. Updates must not overwrite roster, identity, behavior, or local memory files.",
|
|
44
44
|
"releaseLine": "v0.9 private/customer pilot; v1.0 is public-beta stable.",
|
|
45
|
-
"highGhostStack": "0.9.
|
|
45
|
+
"highGhostStack": "0.9.9",
|
|
46
46
|
"deploymentScope": "customer"
|
|
47
47
|
},
|
|
48
48
|
"deploymentScope": "customer",
|
|
49
|
-
"highGhostStack": "0.9.
|
|
49
|
+
"highGhostStack": "0.9.9"
|
|
50
50
|
}
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
deactivateBehavior,
|
|
3
|
-
init_behaviors,
|
|
4
|
-
listBehaviors,
|
|
5
|
-
listBehaviorsByDomain,
|
|
6
|
-
listBehaviorsSince,
|
|
7
|
-
storeBehavior
|
|
8
|
-
} from "./chunk-BNH4LWKE.js";
|
|
9
|
-
import "./chunk-WLW7QV2C.js";
|
|
10
|
-
import "./chunk-53JBNNU3.js";
|
|
11
|
-
import "./chunk-4NYQAS33.js";
|
|
12
|
-
import "./chunk-QASVYG2B.js";
|
|
13
|
-
import "./chunk-VAOAI6DS.js";
|
|
14
|
-
import "./chunk-KFQGP6VL.js";
|
|
15
|
-
init_behaviors();
|
|
16
|
-
export {
|
|
17
|
-
deactivateBehavior,
|
|
18
|
-
listBehaviors,
|
|
19
|
-
listBehaviorsByDomain,
|
|
20
|
-
listBehaviorsSince,
|
|
21
|
-
storeBehavior
|
|
22
|
-
};
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
CTX_FLOOR_PERCENT,
|
|
3
|
-
_resetLastRelaunchCache,
|
|
4
|
-
_resetPendingCapacityKills,
|
|
5
|
-
confirmCapacityKill,
|
|
6
|
-
createOrRefreshResumeTask,
|
|
7
|
-
extractContextPercent,
|
|
8
|
-
init_capacity_monitor,
|
|
9
|
-
isAtCapacity,
|
|
10
|
-
isWithinRelaunchCooldown,
|
|
11
|
-
pollCapacityDead
|
|
12
|
-
} from "./chunk-TLXIKKEG.js";
|
|
13
|
-
import "./chunk-AYUYBWGD.js";
|
|
14
|
-
import "./chunk-V3YNF3JK.js";
|
|
15
|
-
import "./chunk-V6O4GN5M.js";
|
|
16
|
-
import "./chunk-NEAHEC5G.js";
|
|
17
|
-
import "./chunk-KRLOFIPI.js";
|
|
18
|
-
import "./chunk-57HCNSFO.js";
|
|
19
|
-
import "./chunk-MBRLA4E3.js";
|
|
20
|
-
import "./chunk-DC4ZD76Y.js";
|
|
21
|
-
import "./chunk-PJHHFJAN.js";
|
|
22
|
-
import "./chunk-VTQRACP7.js";
|
|
23
|
-
import "./chunk-JT76KRZQ.js";
|
|
24
|
-
import "./chunk-67WOKLTZ.js";
|
|
25
|
-
import "./chunk-HP43GLZ6.js";
|
|
26
|
-
import "./chunk-ELE2C7L4.js";
|
|
27
|
-
import "./chunk-WZQ4CPRG.js";
|
|
28
|
-
import "./chunk-7PJP3TZV.js";
|
|
29
|
-
import "./chunk-6BFIFI5F.js";
|
|
30
|
-
import "./chunk-WLW7QV2C.js";
|
|
31
|
-
import "./chunk-53JBNNU3.js";
|
|
32
|
-
import "./chunk-4NYQAS33.js";
|
|
33
|
-
import "./chunk-AFEXRICE.js";
|
|
34
|
-
import "./chunk-QASVYG2B.js";
|
|
35
|
-
import "./chunk-VAOAI6DS.js";
|
|
36
|
-
import "./chunk-KFQGP6VL.js";
|
|
37
|
-
init_capacity_monitor();
|
|
38
|
-
export {
|
|
39
|
-
CTX_FLOOR_PERCENT,
|
|
40
|
-
_resetLastRelaunchCache,
|
|
41
|
-
_resetPendingCapacityKills,
|
|
42
|
-
confirmCapacityKill,
|
|
43
|
-
createOrRefreshResumeTask,
|
|
44
|
-
extractContextPercent,
|
|
45
|
-
isAtCapacity,
|
|
46
|
-
isWithinRelaunchCooldown,
|
|
47
|
-
pollCapacityDead
|
|
48
|
-
};
|