@askexenow/exe-os 0.9.136 → 0.9.138
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/{agentic-ontology-2TD5YS4O.js → agentic-ontology-TU2FNTHI.js} +1 -1
- package/dist/{backfill-metadata-5LNLRCA6.js → backfill-metadata-LVUAD6WY.js} +3 -3
- package/dist/{behaviors-PPFGGHYD.js → behaviors-V3O5YYUK.js} +2 -2
- package/dist/bin/agentic-ontology-backfill.js +4 -4
- package/dist/bin/agentic-reflection-backfill.js +5 -5
- package/dist/bin/agentic-semantic-label.js +4 -4
- package/dist/bin/backfill-conversations.js +3 -3
- package/dist/bin/backfill-responses.js +3 -3
- package/dist/bin/backfill-vectors.js +3 -3
- package/dist/bin/bulk-sync-postgres.js +5 -5
- package/dist/bin/cleanup-stale-review-tasks.js +5 -4
- package/dist/bin/cli.js +54 -11
- package/dist/bin/exe-agent.js +10 -10
- package/dist/bin/exe-assign.js +3 -3
- package/dist/bin/exe-boot.js +10 -9
- package/dist/bin/exe-call.js +3 -3
- package/dist/bin/exe-cloud.js +3 -3
- package/dist/bin/exe-dispatch.js +6 -5
- package/dist/bin/exe-doctor.js +1 -1
- package/dist/bin/exe-export-behaviors.js +6 -6
- package/dist/bin/exe-forget.js +5 -5
- package/dist/bin/exe-gateway.js +3 -3
- package/dist/bin/exe-heartbeat.js +5 -4
- package/dist/bin/exe-kill.js +5 -5
- package/dist/bin/exe-launch-agent.js +48 -14
- package/dist/bin/exe-new-employee.js +5 -5
- package/dist/bin/exe-pending-messages.js +6 -5
- package/dist/bin/exe-pending-notifications.js +5 -4
- package/dist/bin/exe-pending-reviews.js +5 -4
- package/dist/bin/exe-rename.js +3 -3
- package/dist/bin/exe-review.js +4 -4
- package/dist/bin/exe-search.js +4 -4
- package/dist/bin/exe-session-cleanup.js +9 -8
- package/dist/bin/exe-settings.js +3 -3
- package/dist/bin/exe-start-codex.js +7 -7
- package/dist/bin/exe-start-opencode.js +6 -6
- package/dist/bin/exe-status.js +6 -6
- package/dist/bin/exe-team.js +2 -2
- package/dist/bin/git-sweep.js +5 -4
- package/dist/bin/graph-backfill.js +3 -3
- package/dist/bin/graph-export.js +4 -4
- package/dist/bin/install.js +3 -3
- package/dist/bin/intercom-check.js +4 -4
- package/dist/bin/postgres-agentic-reflection-backfill.js +2 -2
- package/dist/bin/postgres-agentic-semantic-backfill.js +1 -1
- package/dist/bin/scan-tasks.js +10 -9
- package/dist/bin/setup.js +1 -1
- package/dist/bin/shard-migrate.js +3 -3
- package/dist/branding-JEE7MJF2.js +99 -0
- package/dist/{capacity-monitor-PFHHXTEN.js → capacity-monitor-56DTRWOS.js} +6 -5
- package/dist/{catchup-brief-Y75GOHWU.js → catchup-brief-6GRGQ2EK.js} +7 -6
- package/dist/{chunk-ZJ7N6BNZ.js → chunk-2G6QGXVX.js} +21 -0
- package/dist/{chunk-S67DRFRK.js → chunk-2ISCJ5PQ.js} +1 -1
- package/dist/{chunk-5NLZS5KX.js → chunk-5QCIPC7Z.js} +2 -2
- package/dist/{chunk-VIONSYFC.js → chunk-7FYOTSJP.js} +1 -1
- package/dist/{chunk-3BVZNKAZ.js → chunk-7GOVGBBM.js} +3 -3
- package/dist/{chunk-T65APBMF.js → chunk-7TW5HR4E.js} +39 -21
- package/dist/{chunk-YMMTBQQY.js → chunk-7V3BJHG6.js} +2 -2
- package/dist/{chunk-DIQOUMHM.js → chunk-ABIGFAFY.js} +1 -1
- package/dist/{chunk-MPZRPM5X.js → chunk-AHQDWRSM.js} +1 -1
- package/dist/{chunk-KHUJEI3A.js → chunk-BOPKW4AV.js} +1 -1
- package/dist/{chunk-3UKHLUXH.js → chunk-BQ5YXRBI.js} +1 -1
- package/dist/{chunk-TXRDECEW.js → chunk-BUHXM7ZL.js} +3 -3
- package/dist/{chunk-5DZTDWFU.js → chunk-BYNEC472.js} +1 -1
- package/dist/{chunk-X3KJ3TT7.js → chunk-E6ORBQHP.js} +1 -0
- package/dist/{chunk-XDWCEQLH.js → chunk-EBMHOMN2.js} +6 -6
- package/dist/{chunk-GISRZK6K.js → chunk-EZ2TJX6O.js} +19 -3
- package/dist/{chunk-ZNWYU3VE.js → chunk-EZTYTAVU.js} +8 -8
- package/dist/{chunk-E2XB56OH.js → chunk-F63ZHBZY.js} +1 -1
- package/dist/{chunk-CTEENZVZ.js → chunk-FQZY4M45.js} +20 -3
- package/dist/{chunk-ARZWYVYC.js → chunk-GRLQJ27R.js} +1 -1
- package/dist/{chunk-D7FYU6DX.js → chunk-I2LCIAUC.js} +2 -2
- package/dist/{chunk-UXGZ3V3U.js → chunk-ITMXM6GF.js} +1 -1
- package/dist/{chunk-FM4UBRBE.js → chunk-JN2RIMLI.js} +3 -3
- package/dist/{chunk-ARQQ4T47.js → chunk-K7W7UJ6Z.js} +1 -1
- package/dist/{chunk-NBJIGVPG.js → chunk-LEVPSCVX.js} +43 -7
- package/dist/{chunk-AVUQCUZC.js → chunk-LPIY2AUD.js} +1 -1
- package/dist/{chunk-GU2Z6K2T.js → chunk-MQNM4FW4.js} +3 -2
- package/dist/{chunk-O2ENLWKX.js → chunk-MSFSQSJO.js} +1 -1
- package/dist/{chunk-NSVI6RZ5.js → chunk-N2ZX27ID.js} +1 -1
- package/dist/{chunk-5DHM77JE.js → chunk-NBYMO4RZ.js} +2 -0
- package/dist/{chunk-A63V4QMR.js → chunk-NFMNO3XE.js} +732 -544
- package/dist/{chunk-4ADWX7S6.js → chunk-OVFU26ZD.js} +5 -5
- package/dist/{chunk-5XNCH6UM.js → chunk-OZ4SN7ZF.js} +1 -1
- package/dist/{chunk-REFUKSCU.js → chunk-PB5RHF74.js} +2 -2
- package/dist/{chunk-QKBDAHFM.js → chunk-PFGFOALA.js} +1 -1
- package/dist/chunk-PKPW2W33.js +134 -0
- package/dist/{chunk-IMZM3H6N.js → chunk-R3IILARI.js} +2 -2
- package/dist/{chunk-VAPODXIB.js → chunk-T5A4EGUG.js} +1 -1
- package/dist/{chunk-TERS54YJ.js → chunk-TIJYLKNW.js} +1 -1
- package/dist/{chunk-WQ6FW5JD.js → chunk-TRLP7FHS.js} +1 -1
- package/dist/{chunk-IUKRBQ2B.js → chunk-TT3ND3MM.js} +2 -2
- package/dist/{chunk-NR3MPNTF.js → chunk-UT3OZWST.js} +8 -8
- package/dist/{chunk-XK3P2PRN.js → chunk-VGOFRIAI.js} +2 -2
- package/dist/{chunk-NFRFF6QS.js → chunk-VOA7GHIO.js} +1 -1
- package/dist/{chunk-J7LFCZMQ.js → chunk-WTPYZG4I.js} +65 -15
- package/dist/{chunk-G2HJSPM4.js → chunk-Z36IJ3XX.js} +2 -2
- package/dist/{chunk-W7G2DOLC.js → chunk-ZKOQD4FT.js} +5 -5
- package/dist/core-memory-DUENM2P6.js +79 -0
- package/dist/{crdt-sync-UUJDUXTJ.js → crdt-sync-SENINDKP.js} +1 -1
- package/dist/{crm-webhook-UXZORR4I.js → crm-webhook-JIXOP3UR.js} +2 -2
- package/dist/{cto-delegation-gate-7MIMXB4T.js → cto-delegation-gate-5ETBWFAI.js} +4 -3
- package/dist/{daemon-orchestration-FIL7U2RV.js → daemon-orchestration-6UNZTZHX.js} +10 -6
- package/dist/{entity-boost-CSKKVLPV.js → entity-boost-CZZVTBSY.js} +79 -0
- package/dist/{exe-drift-D7YCMMR3.js → exe-drift-WLMWMSOM.js} +3 -3
- package/dist/{exe-export-YKP26EW6.js → exe-export-3RQMZAR3.js} +5 -5
- package/dist/{exe-import-HSQORBEH.js → exe-import-URXIQGOM.js} +5 -5
- package/dist/{exe-key-QLXFQGNV.js → exe-key-47ZUWMGT.js} +1 -1
- package/dist/{fast-db-init-RFYRERZL.js → fast-db-init-Z67ITX23.js} +1 -1
- package/dist/gateway/index.js +8 -8
- package/dist/{gateway-client-APTYJNCL.js → gateway-client-VFKE2WJX.js} +1 -1
- package/dist/{git-staleness-2IBA7MM2.js → git-staleness-PP7MPTZS.js} +1 -1
- package/dist/{git-task-sweep-ZZQHHVXR.js → git-task-sweep-TMVL5UUD.js} +5 -4
- package/dist/{global-procedures-6B5JT3B5.js → global-procedures-OQFOUA5G.js} +2 -2
- package/dist/hooks/bug-report-worker.js +8 -7
- package/dist/hooks/codex-stop-task-finalizer.js +8 -7
- package/dist/hooks/commit-complete.js +7 -6
- package/dist/hooks/error-recall.js +4 -4
- package/dist/hooks/ingest.js +2 -2
- package/dist/hooks/instructions-loaded.js +3 -3
- package/dist/hooks/notification.js +1 -1
- package/dist/hooks/post-compact.js +5 -4
- package/dist/hooks/post-tool-combined.js +3 -3
- package/dist/hooks/pre-compact.js +6 -5
- package/dist/hooks/pre-tool-use.js +9 -8
- package/dist/hooks/prompt-submit.js +12 -11
- package/dist/hooks/session-end.js +10 -9
- package/dist/hooks/session-start.js +4 -4
- package/dist/hooks/stop.js +8 -7
- package/dist/hooks/subagent-stop.js +5 -4
- package/dist/hooks/summary-worker.js +8 -7
- package/dist/index.js +13 -12
- package/dist/{installer-GDMELU5L.js → installer-RVGGMXQU.js} +4 -4
- package/dist/{installer-EIUTCCHV.js → installer-RVLKWR3X.js} +2 -2
- package/dist/{installer-WZEN2XJ7.js → installer-V7BGTU55.js} +2 -2
- package/dist/lib/cloud-sync.js +3 -3
- package/dist/lib/consolidation.js +4 -4
- package/dist/lib/database.js +1 -1
- package/dist/lib/db.js +1 -1
- package/dist/lib/employee-templates.js +3 -3
- package/dist/lib/exe-daemon.js +103 -21
- package/dist/lib/hybrid-search.js +4 -4
- package/dist/lib/identity.js +2 -2
- package/dist/lib/messaging.js +5 -4
- package/dist/lib/reminders.js +2 -2
- package/dist/lib/schedules.js +4 -4
- package/dist/lib/skill-learning.js +3 -3
- package/dist/lib/store.js +3 -3
- package/dist/lib/tasks.js +7 -6
- package/dist/lib/tmux-routing.js +4 -3
- package/dist/lib/token-spend.js +2 -2
- package/dist/lib/ws-client.js +1 -1
- package/dist/mcp/register-tools.js +45 -45
- package/dist/mcp/server.js +45 -45
- package/dist/mcp/tools/complete-reminder.js +3 -3
- package/dist/mcp/tools/create-reminder.js +3 -3
- package/dist/mcp/tools/create-task.js +8 -7
- package/dist/mcp/tools/deactivate-behavior.js +3 -3
- package/dist/mcp/tools/list-reminders.js +3 -3
- package/dist/mcp/tools/list-tasks.js +8 -7
- package/dist/mcp/tools/send-message.js +6 -5
- package/dist/mcp/tools/update-task.js +8 -7
- package/dist/{memory-cards-MA5SIQKN.js → memory-cards-H2GNWDF2.js} +1 -1
- package/dist/{memory-reflection-VHCEW3UN.js → memory-reflection-J3LYZM5Y.js} +1 -1
- package/dist/{notifications-NY2OVCDV.js → notifications-3ZZS36PK.js} +4 -3
- package/dist/{orchestrator-ZVOTKKV6.js → orchestrator-W7XYR7EZ.js} +6 -5
- package/dist/{plan-limits-UQTXKXJQ.js → plan-limits-3FXBGHWT.js} +2 -2
- package/dist/{projection-worker-UL47LRTS.js → projection-worker-XGV76EMZ.js} +1 -1
- package/dist/push-notifications-S4QIZWJI.js +17 -0
- package/dist/runtime/index.js +11 -10
- package/dist/{session-events-DU6PKAJN.js → session-events-27MUL77I.js} +5 -4
- package/dist/{session-kill-telemetry-5XGSTQJS.js → session-kill-telemetry-WVFJ4U3A.js} +2 -2
- package/dist/{session-scope-WJRSCUKP.js → session-scope-QZTSCYLT.js} +5 -4
- package/dist/{setup-wizard-36V5GCGG.js → setup-wizard-JEYXHYVS.js} +1 -1
- package/dist/{task-scope-7XCYEZAG.js → task-scope-2L5DLU6T.js} +4 -3
- package/dist/{tasks-crud-DUNJJUV3.js → tasks-crud-MDCY6JHU.js} +5 -4
- package/dist/{tasks-review-BPSW2TBZ.js → tasks-review-QO55FYZI.js} +4 -3
- package/dist/{tool-gates-CAFAD576.js → tool-gates-FSNGZNXW.js} +1 -1
- package/dist/{tool-gates-5IWU2EVV.js → tool-gates-P6HATVYH.js} +1 -1
- package/dist/{tool-telemetry-Q6ZSUTHS.js → tool-telemetry-NW6HQYPA.js} +1 -1
- package/dist/tui/App.js +13 -12
- package/dist/{tui-data-GUMMW3IG.js → tui-data-6CKBIJJJ.js} +4 -3
- package/dist/{workflow-engine-A6K4MHN3.js → workflow-engine-7W4MSNBF.js} +1 -1
- package/package.json +2 -1
- package/release-notes.json +33343 -0
- package/dist/{chunk-M6ODLM7X.js → chunk-2FWMSQWU.js} +0 -0
- package/dist/{chunk-4AZA3DZM.js → chunk-6AJ4KAAB.js} +0 -0
- package/dist/{chunk-7U65IF2W.js → chunk-DLMPVZ4I.js} +0 -0
- package/dist/{chunk-KQW5PWOA.js → chunk-F3MUSAZY.js} +3 -3
- /package/dist/{chunk-KI3UEJUR.js → chunk-G3LVAJON.js} +0 -0
- /package/dist/{chunk-M6FENV7U.js → chunk-GMARURIG.js} +0 -0
- /package/dist/{chunk-FR5FFQ6G.js → chunk-KJMSHBWT.js} +0 -0
- /package/dist/{chunk-RCKUCKED.js → chunk-N6BE2CUT.js} +0 -0
- /package/dist/{chunk-6ZXIG7R6.js → chunk-WZ63HFR2.js} +0 -0
- /package/dist/{wiki-acl-QY5EXWEQ.js → wiki-acl-RVCO4WSP.js} +0 -0
|
@@ -3,11 +3,11 @@ import {
|
|
|
3
3
|
buildRawVisibilityFilter,
|
|
4
4
|
buildWikiScopeFilter,
|
|
5
5
|
searchMemories
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-OVFU26ZD.js";
|
|
7
7
|
import {
|
|
8
8
|
getClient,
|
|
9
9
|
init_database
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-2G6QGXVX.js";
|
|
11
11
|
|
|
12
12
|
// src/lib/hybrid-search.ts
|
|
13
13
|
init_database();
|
|
@@ -118,7 +118,7 @@ async function hybridSearch(queryText, agentId, options) {
|
|
|
118
118
|
queryVector ? searchMemories(queryVector, agentId, fetchOptions) : Promise.resolve([]),
|
|
119
119
|
includeStructuredCards ? (async () => {
|
|
120
120
|
try {
|
|
121
|
-
const { searchMemoryCards } = await import("./memory-cards-
|
|
121
|
+
const { searchMemoryCards } = await import("./memory-cards-H2GNWDF2.js");
|
|
122
122
|
return await searchMemoryCards(effectiveQuery, agentId, fetchOptions);
|
|
123
123
|
} catch {
|
|
124
124
|
return [];
|
|
@@ -127,7 +127,7 @@ async function hybridSearch(queryText, agentId, options) {
|
|
|
127
127
|
// Reflection insights: patterns, contradictions, summaries across sessions
|
|
128
128
|
includeStructuredCards ? (async () => {
|
|
129
129
|
try {
|
|
130
|
-
const { searchReflections } = await import("./memory-reflection-
|
|
130
|
+
const { searchReflections } = await import("./memory-reflection-J3LYZM5Y.js");
|
|
131
131
|
const insights = await searchReflections(effectiveQuery, agentId, 5);
|
|
132
132
|
return insights.map((ins) => ({
|
|
133
133
|
id: ins.id,
|
|
@@ -174,7 +174,7 @@ async function hybridSearch(queryText, agentId, options) {
|
|
|
174
174
|
let entityBoostRan = false;
|
|
175
175
|
if (merged.length > 0) {
|
|
176
176
|
try {
|
|
177
|
-
const { applyEntityBoost } = await import("./entity-boost-
|
|
177
|
+
const { applyEntityBoost } = await import("./entity-boost-CZZVTBSY.js");
|
|
178
178
|
const boosted = await applyEntityBoost(merged, effectiveQuery, getClient());
|
|
179
179
|
merged = boosted.results;
|
|
180
180
|
graphContextMap = boosted.graphContext;
|
|
@@ -403,7 +403,7 @@ async function lightweightSearch(queryText, agentId, options) {
|
|
|
403
403
|
}
|
|
404
404
|
if (options?.includeStructuredCards !== true) return results;
|
|
405
405
|
try {
|
|
406
|
-
const { searchMemoryCards } = await import("./memory-cards-
|
|
406
|
+
const { searchMemoryCards } = await import("./memory-cards-H2GNWDF2.js");
|
|
407
407
|
const cardResults = await searchMemoryCards(queryText, agentId, options);
|
|
408
408
|
if (cardResults.length > 0) {
|
|
409
409
|
return rrfMergeMulti([results, cardResults], limit, RRF_K, [1, 0.85]);
|
|
@@ -3,11 +3,11 @@ import {
|
|
|
3
3
|
init_task_scope,
|
|
4
4
|
logTaskCreated,
|
|
5
5
|
sessionScopeFilter
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-FQZY4M45.js";
|
|
7
7
|
import {
|
|
8
8
|
getClient,
|
|
9
9
|
init_database
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-2G6QGXVX.js";
|
|
11
11
|
import {
|
|
12
12
|
init_employees,
|
|
13
13
|
isCoordinatorName,
|
|
@@ -192,7 +192,7 @@ async function createTaskCore(input) {
|
|
|
192
192
|
if (isCoordinatorSession) {
|
|
193
193
|
earlySessionScope = resolved;
|
|
194
194
|
} else {
|
|
195
|
-
const { getSessionProject } = await import("./session-scope-
|
|
195
|
+
const { getSessionProject } = await import("./session-scope-QZTSCYLT.js");
|
|
196
196
|
const sessionProject = getSessionProject(resolved);
|
|
197
197
|
if (sessionProject && sessionProject !== input.projectName) {
|
|
198
198
|
scopeMismatchWarning = `session/project mismatch: session "${resolved}" owns "${sessionProject}" but task targets "${input.projectName}". Routed to default scope.`;
|
|
@@ -481,6 +481,22 @@ async function updateTaskStatus(input) {
|
|
|
481
481
|
const row = await resolveTask(client, input.taskId);
|
|
482
482
|
const taskId = String(row.id);
|
|
483
483
|
const taskFile = String(row.task_file);
|
|
484
|
+
const VALID_TRANSITIONS = {
|
|
485
|
+
open: ["in_progress", "done", "cancelled", "blocked"],
|
|
486
|
+
in_progress: ["done", "needs_review", "blocked", "cancelled"],
|
|
487
|
+
done: ["needs_review", "closed"],
|
|
488
|
+
blocked: ["open", "in_progress", "cancelled"],
|
|
489
|
+
needs_review: ["closed", "in_progress", "open"],
|
|
490
|
+
cancelled: ["open"]
|
|
491
|
+
// allow re-opening cancelled tasks
|
|
492
|
+
};
|
|
493
|
+
const currentStatus = String(row.status);
|
|
494
|
+
const validNext = VALID_TRANSITIONS[currentStatus];
|
|
495
|
+
if (validNext && !validNext.includes(input.status)) {
|
|
496
|
+
throw new Error(
|
|
497
|
+
`Invalid task transition: ${currentStatus} \u2192 ${input.status}. Valid transitions from "${currentStatus}": [${validNext.join(", ")}]`
|
|
498
|
+
);
|
|
499
|
+
}
|
|
484
500
|
if (input.status === "done" && String(row.assigned_by) === "system" && taskFile.includes("review-")) {
|
|
485
501
|
process.stderr.write(
|
|
486
502
|
`[updateTask] Review task "${String(row.title)}" being marked done (assigned to ${String(row.assigned_to)})
|
|
@@ -1,3 +1,10 @@
|
|
|
1
|
+
import {
|
|
2
|
+
fastDbInit
|
|
3
|
+
} from "./chunk-KJMSHBWT.js";
|
|
4
|
+
import {
|
|
5
|
+
init_task_scope,
|
|
6
|
+
sessionScopeFilter
|
|
7
|
+
} from "./chunk-FQZY4M45.js";
|
|
1
8
|
import {
|
|
2
9
|
formatStatusAll,
|
|
3
10
|
formatStatusDeep,
|
|
@@ -5,17 +12,10 @@ import {
|
|
|
5
12
|
inTmux,
|
|
6
13
|
init_tmux_status
|
|
7
14
|
} from "./chunk-DC4ZD76Y.js";
|
|
8
|
-
import {
|
|
9
|
-
fastDbInit
|
|
10
|
-
} from "./chunk-FR5FFQ6G.js";
|
|
11
|
-
import {
|
|
12
|
-
init_task_scope,
|
|
13
|
-
sessionScopeFilter
|
|
14
|
-
} from "./chunk-CTEENZVZ.js";
|
|
15
15
|
import {
|
|
16
16
|
getClient,
|
|
17
17
|
init_database
|
|
18
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-2G6QGXVX.js";
|
|
19
19
|
import {
|
|
20
20
|
init_employees,
|
|
21
21
|
isCoordinatorRole,
|
|
@@ -10,6 +10,10 @@ import {
|
|
|
10
10
|
getTransport,
|
|
11
11
|
init_transport
|
|
12
12
|
} from "./chunk-R4M6XCMU.js";
|
|
13
|
+
import {
|
|
14
|
+
init_tmux_status,
|
|
15
|
+
tmux_status_exports
|
|
16
|
+
} from "./chunk-DC4ZD76Y.js";
|
|
13
17
|
import {
|
|
14
18
|
DEFAULT_PROVIDER,
|
|
15
19
|
PROVIDER_TABLE,
|
|
@@ -32,7 +36,7 @@ import {
|
|
|
32
36
|
PlanLimitError,
|
|
33
37
|
assertEmployeeLimitSync,
|
|
34
38
|
init_plan_limits
|
|
35
|
-
} from "./chunk-
|
|
39
|
+
} from "./chunk-GRLQJ27R.js";
|
|
36
40
|
import {
|
|
37
41
|
getSessionKey,
|
|
38
42
|
init_session_key
|
|
@@ -48,7 +52,7 @@ import {
|
|
|
48
52
|
import {
|
|
49
53
|
getClient,
|
|
50
54
|
init_database
|
|
51
|
-
} from "./chunk-
|
|
55
|
+
} from "./chunk-2G6QGXVX.js";
|
|
52
56
|
import {
|
|
53
57
|
ensureAgentSymlink,
|
|
54
58
|
init_agent_symlinks
|
|
@@ -1148,7 +1152,7 @@ async function verifyPaneAtCapacity(sessionName) {
|
|
|
1148
1152
|
reason: `capture-pane failed: ${err instanceof Error ? err.message : String(err)}`
|
|
1149
1153
|
};
|
|
1150
1154
|
}
|
|
1151
|
-
const { isAtCapacity } = await import("./capacity-monitor-
|
|
1155
|
+
const { isAtCapacity } = await import("./capacity-monitor-56DTRWOS.js");
|
|
1152
1156
|
if (!isAtCapacity(pane)) {
|
|
1153
1157
|
return {
|
|
1154
1158
|
atCapacity: false,
|
|
@@ -1405,6 +1409,19 @@ function ensureEmployee(employeeName, exeSession, projectDir, opts) {
|
|
|
1405
1409
|
return { status: "failed", sessionName: "", error: err.message };
|
|
1406
1410
|
}
|
|
1407
1411
|
}
|
|
1412
|
+
try {
|
|
1413
|
+
const MAX_CONCURRENT = Number(process.env.EXE_MAX_SESSIONS) || 10;
|
|
1414
|
+
const { listTmuxSessions } = (init_tmux_status(), __toCommonJS(tmux_status_exports));
|
|
1415
|
+
const liveSessions = listTmuxSessions().filter((s) => !isExeSession(s));
|
|
1416
|
+
if (liveSessions.length >= MAX_CONCURRENT) {
|
|
1417
|
+
return {
|
|
1418
|
+
status: "failed",
|
|
1419
|
+
sessionName: "",
|
|
1420
|
+
error: `Global session cap reached (${liveSessions.length}/${MAX_CONCURRENT}). Set EXE_MAX_SESSIONS to increase.`
|
|
1421
|
+
};
|
|
1422
|
+
}
|
|
1423
|
+
} catch {
|
|
1424
|
+
}
|
|
1408
1425
|
if (employeeName.includes("-")) {
|
|
1409
1426
|
const bare = employeeName.split("-")[0].replace(/\d+$/, "");
|
|
1410
1427
|
return {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
init_task_scope,
|
|
3
3
|
sessionScopeFilter
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-FQZY4M45.js";
|
|
5
5
|
|
|
6
6
|
// src/lib/git-task-sweep.ts
|
|
7
7
|
init_task_scope();
|
|
@@ -180,7 +180,7 @@ async function sweepTasks(projectName, options = {}) {
|
|
|
180
180
|
}
|
|
181
181
|
if (!dryRun) {
|
|
182
182
|
try {
|
|
183
|
-
const { updateTaskStatus } = await import("./tasks-crud-
|
|
183
|
+
const { updateTaskStatus } = await import("./tasks-crud-MDCY6JHU.js");
|
|
184
184
|
await updateTaskStatus({
|
|
185
185
|
taskId: task.id,
|
|
186
186
|
status: "needs_review",
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import {
|
|
2
2
|
init_tasks,
|
|
3
3
|
updateTask
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-WTPYZG4I.js";
|
|
5
5
|
import {
|
|
6
6
|
TASK_ALREADY_CLAIMED_PREFIX,
|
|
7
7
|
init_tasks_crud,
|
|
8
8
|
resolveTask
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-EZ2TJX6O.js";
|
|
10
10
|
import {
|
|
11
11
|
getClient,
|
|
12
12
|
init_database
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-2G6QGXVX.js";
|
|
14
14
|
import {
|
|
15
15
|
canCoordinate,
|
|
16
16
|
init_employees
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
isCrdtSyncEnabled
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-6AJ4KAAB.js";
|
|
4
4
|
import {
|
|
5
5
|
decryptSyncBlob,
|
|
6
6
|
encryptSyncBlob,
|
|
@@ -10,7 +10,7 @@ import {
|
|
|
10
10
|
import {
|
|
11
11
|
getClient,
|
|
12
12
|
init_database
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-2G6QGXVX.js";
|
|
14
14
|
import {
|
|
15
15
|
init_employees,
|
|
16
16
|
loadEmployees,
|
|
@@ -447,7 +447,7 @@ async function cloudSync(config) {
|
|
|
447
447
|
let pulled = 0;
|
|
448
448
|
if (pullResult.records.length > 0) {
|
|
449
449
|
if (isCrdtSyncEnabled()) {
|
|
450
|
-
const { initCrdtDoc, importExistingMemories, readAllMemories } = await import("./crdt-sync-
|
|
450
|
+
const { initCrdtDoc, importExistingMemories, readAllMemories } = await import("./crdt-sync-SENINDKP.js");
|
|
451
451
|
initCrdtDoc();
|
|
452
452
|
importExistingMemories(
|
|
453
453
|
pullResult.records.map((rec) => ({
|
|
@@ -468,11 +468,29 @@ async function cloudSync(config) {
|
|
|
468
468
|
const pulledIds = new Set(pullResult.records.map((r) => String(r.id ?? "")));
|
|
469
469
|
const merged = readAllMemories().filter((rec) => pulledIds.has(rec.id));
|
|
470
470
|
const stmts = merged.map((rec) => ({
|
|
471
|
-
sql: `INSERT
|
|
471
|
+
sql: `INSERT INTO memories
|
|
472
472
|
(id, agent_id, agent_role, session_id, timestamp,
|
|
473
473
|
tool_name, project_name, has_error, raw_text, version,
|
|
474
474
|
author_device_id, scope)
|
|
475
|
-
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
|
|
475
|
+
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
|
|
476
|
+
ON CONFLICT(id) DO UPDATE SET
|
|
477
|
+
agent_id = excluded.agent_id,
|
|
478
|
+
agent_role = excluded.agent_role,
|
|
479
|
+
session_id = excluded.session_id,
|
|
480
|
+
timestamp = excluded.timestamp,
|
|
481
|
+
tool_name = excluded.tool_name,
|
|
482
|
+
project_name = excluded.project_name,
|
|
483
|
+
has_error = excluded.has_error,
|
|
484
|
+
raw_text = excluded.raw_text,
|
|
485
|
+
version = excluded.version,
|
|
486
|
+
author_device_id = excluded.author_device_id,
|
|
487
|
+
scope = excluded.scope,
|
|
488
|
+
vector = COALESCE(memories.vector, excluded.vector),
|
|
489
|
+
importance = COALESCE(memories.importance, excluded.importance),
|
|
490
|
+
confidence = COALESCE(memories.confidence, excluded.confidence),
|
|
491
|
+
memory_type = COALESCE(memories.memory_type, excluded.memory_type),
|
|
492
|
+
tier = COALESCE(memories.tier, excluded.tier),
|
|
493
|
+
strength = COALESCE(memories.strength, excluded.strength)`,
|
|
476
494
|
args: [
|
|
477
495
|
sqlSafe(rec.id),
|
|
478
496
|
sqlSafe(rec.agent_id),
|
|
@@ -514,11 +532,29 @@ async function cloudSync(config) {
|
|
|
514
532
|
process.stderr.write("[cloud-sync] conflict detection query failed: " + (e instanceof Error ? e.message : String(e)) + "\n");
|
|
515
533
|
}
|
|
516
534
|
const stmts = pullResult.records.map((rec) => ({
|
|
517
|
-
sql: `INSERT
|
|
535
|
+
sql: `INSERT INTO memories
|
|
518
536
|
(id, agent_id, agent_role, session_id, timestamp,
|
|
519
537
|
tool_name, project_name, has_error, raw_text, version,
|
|
520
538
|
author_device_id, scope)
|
|
521
|
-
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
|
|
539
|
+
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
|
|
540
|
+
ON CONFLICT(id) DO UPDATE SET
|
|
541
|
+
agent_id = excluded.agent_id,
|
|
542
|
+
agent_role = excluded.agent_role,
|
|
543
|
+
session_id = excluded.session_id,
|
|
544
|
+
timestamp = excluded.timestamp,
|
|
545
|
+
tool_name = excluded.tool_name,
|
|
546
|
+
project_name = excluded.project_name,
|
|
547
|
+
has_error = excluded.has_error,
|
|
548
|
+
raw_text = excluded.raw_text,
|
|
549
|
+
version = excluded.version,
|
|
550
|
+
author_device_id = excluded.author_device_id,
|
|
551
|
+
scope = excluded.scope,
|
|
552
|
+
vector = COALESCE(memories.vector, excluded.vector),
|
|
553
|
+
importance = COALESCE(memories.importance, excluded.importance),
|
|
554
|
+
confidence = COALESCE(memories.confidence, excluded.confidence),
|
|
555
|
+
memory_type = COALESCE(memories.memory_type, excluded.memory_type),
|
|
556
|
+
tier = COALESCE(memories.tier, excluded.tier),
|
|
557
|
+
strength = COALESCE(memories.strength, excluded.strength)`,
|
|
522
558
|
args: [
|
|
523
559
|
sqlSafe(rec.id),
|
|
524
560
|
sqlSafe(rec.agent_id),
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
vectorToBlob
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-OVFU26ZD.js";
|
|
4
4
|
import {
|
|
5
5
|
init_employees,
|
|
6
6
|
isCoordinatorName
|
|
@@ -47,6 +47,7 @@ function groupMemories(memories) {
|
|
|
47
47
|
byDay.set(day, list);
|
|
48
48
|
}
|
|
49
49
|
for (const [day, dayMemories] of byDay) {
|
|
50
|
+
if (dayMemories.length < 3) continue;
|
|
50
51
|
if (dayMemories.length <= 15) {
|
|
51
52
|
clusters.push({
|
|
52
53
|
agentId,
|
|
@@ -101,7 +102,7 @@ var DEFAULT_ROLE_PROMPT = `Extract EXACTLY THREE types of insights:
|
|
|
101
102
|
3. OPEN QUESTIONS \u2014 things that seem unresolved or risky (at most 2)`;
|
|
102
103
|
function buildConsolidationPrompt(cluster, agentRole) {
|
|
103
104
|
const snippets = cluster.memories.map((m, i) => {
|
|
104
|
-
const text = m.raw_text.length >
|
|
105
|
+
const text = m.raw_text.length > 2e3 ? m.raw_text.slice(0, 2e3) + "..." : m.raw_text;
|
|
105
106
|
return `${i + 1}. [${m.tool_name}] ${text}`;
|
|
106
107
|
}).join("\n");
|
|
107
108
|
const rolePrompt = agentRole && ROLE_PROMPTS[agentRole] || DEFAULT_ROLE_PROMPT;
|
|
@@ -13,6 +13,8 @@ var MessageQueue = class {
|
|
|
13
13
|
enqueue(data) {
|
|
14
14
|
this.pruneExpired();
|
|
15
15
|
if (this.queue.length >= this.maxSize) {
|
|
16
|
+
process.stderr.write(`[msg-queue] Dropping oldest message (queue at ${this.maxSize} cap)
|
|
17
|
+
`);
|
|
16
18
|
this.queue.shift();
|
|
17
19
|
}
|
|
18
20
|
this.queue.push({ data, enqueuedAt: Date.now() });
|