@askexenow/exe-os 0.9.236 → 0.9.238
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/stack-manifests/v0.9.json +53 -1
- package/dist/{active-agent-JD6BCCFZ.js → active-agent-6WX7GZBH.js} +3 -3
- package/dist/{active-agent-RCXBLWQS.js → active-agent-X3GALNAR.js} +3 -3
- package/dist/{agentic-ontology-PAYLA3Q6.js → agentic-ontology-NBU3FHEX.js} +1 -1
- package/dist/{backfill-metadata-63Y4JVSZ.js → backfill-metadata-NG2L5GUP.js} +4 -4
- package/dist/behavior-effectiveness-UP76GMOC.js +344 -0
- package/dist/{behaviors-I7JQLV6G.js → behaviors-DH7XFONJ.js} +3 -3
- package/dist/bin/agentic-ontology-backfill.js +5 -5
- package/dist/bin/agentic-reflection-backfill.js +6 -6
- package/dist/bin/agentic-semantic-label.js +5 -5
- package/dist/bin/backfill-conversations.js +4 -4
- package/dist/bin/backfill-responses.js +4 -4
- package/dist/bin/backfill-vectors.js +5 -5
- package/dist/bin/bulk-sync-postgres.js +6 -6
- package/dist/bin/cleanup-stale-review-tasks.js +9 -9
- package/dist/bin/cli.js +14 -14
- package/dist/bin/exe-agent-config.js +2 -2
- package/dist/bin/exe-agent.js +9 -9
- package/dist/bin/exe-assign.js +5 -5
- package/dist/bin/exe-boot.js +17 -17
- package/dist/bin/exe-call.js +5 -5
- package/dist/bin/exe-cloud.js +4 -4
- package/dist/bin/exe-dispatch.js +9 -9
- package/dist/bin/exe-doctor.js +1 -1
- package/dist/bin/exe-export-behaviors.js +7 -7
- package/dist/bin/exe-forget.js +6 -6
- package/dist/bin/exe-gateway.js +7 -7
- package/dist/bin/exe-heartbeat.js +9 -9
- package/dist/bin/exe-kill.js +12 -12
- package/dist/bin/exe-launch-agent.js +17 -17
- package/dist/bin/exe-new-employee.js +7 -7
- package/dist/bin/exe-pending-messages.js +10 -10
- package/dist/bin/exe-pending-notifications.js +9 -9
- package/dist/bin/exe-pending-reviews.js +9 -9
- package/dist/bin/exe-rename.js +5 -5
- package/dist/bin/exe-review.js +11 -11
- package/dist/bin/exe-search.js +5 -5
- package/dist/bin/exe-session-cleanup.js +14 -14
- package/dist/bin/exe-settings.js +4 -4
- package/dist/bin/exe-start-codex.js +11 -11
- package/dist/bin/exe-start-opencode.js +8 -8
- package/dist/bin/exe-status.js +10 -10
- package/dist/bin/exe-team.js +3 -3
- package/dist/bin/git-sweep.js +9 -9
- package/dist/bin/graph-backfill.js +4 -4
- package/dist/bin/graph-export.js +5 -5
- package/dist/bin/import-history.js +7 -7
- package/dist/bin/install.js +6 -6
- package/dist/bin/intercom-check.js +4 -4
- package/dist/bin/mcp-sessions.js +2 -2
- package/dist/bin/orchestration-metrics.js +4 -4
- package/dist/bin/postgres-agentic-reflection-backfill.js +2 -2
- package/dist/bin/postgres-agentic-semantic-backfill.js +1 -1
- package/dist/bin/pre-publish.js +1 -1
- package/dist/bin/scan-tasks.js +9 -9
- package/dist/bin/setup.js +1 -1
- package/dist/bin/shard-migrate.js +4 -4
- package/dist/{capacity-monitor-NVSZABQG.js → capacity-monitor-KAKNWAA4.js} +10 -10
- package/dist/{catchup-brief-L76MGN2J.js → catchup-brief-ZB2OR45O.js} +11 -11
- package/dist/{chunk-VTLUUTWI.js → chunk-2LYJTK47.js} +40 -1
- package/dist/{chunk-MJMJMHFC.js → chunk-2O5GJFYQ.js} +1 -1
- package/dist/{chunk-N5VQ3PVS.js → chunk-2VXHPSIJ.js} +1 -1
- package/dist/{chunk-Q25V2UO6.js → chunk-3JVO6X4W.js} +1 -1
- package/dist/{chunk-Y2PQS2GI.js → chunk-3NYRIK73.js} +2 -2
- package/dist/{chunk-QK7R2CUS.js → chunk-4HMKJDPB.js} +3 -3
- package/dist/{chunk-5NIUTWV4.js → chunk-5KDROSDV.js} +1 -1
- package/dist/{chunk-24KEYEYL.js → chunk-7LIXU3TB.js} +8 -8
- package/dist/{chunk-NEXKWAVU.js → chunk-7PVUUC3O.js} +5 -5
- package/dist/{chunk-X4AZWJP4.js → chunk-AYBC6AYP.js} +8 -8
- package/dist/{chunk-YVN2WG5T.js → chunk-BTPXNV5W.js} +1 -1
- package/dist/{chunk-5SYO2FD7.js → chunk-C7BVANSU.js} +65 -12
- package/dist/{chunk-Z7A6DTIN.js → chunk-CJEVAKKC.js} +2 -2
- package/dist/{chunk-J2QQMTCD.js → chunk-COMWI7SO.js} +1 -1
- package/dist/{chunk-PBA32J2M.js → chunk-ENWFSMOS.js} +10 -10
- package/dist/{chunk-ENGXTDTJ.js → chunk-EPLBVWIM.js} +479 -149
- package/dist/{chunk-CKTFH5RQ.js → chunk-ES5JM6V2.js} +2 -2
- package/dist/{chunk-NOQSYYVA.js → chunk-FQJWTRCB.js} +1 -1
- package/dist/{chunk-XORJOW4J.js → chunk-G67R75DG.js} +1 -1
- package/dist/{chunk-SUQSNH4N.js → chunk-GXU3XRI5.js} +3 -3
- package/dist/{chunk-CHFBYRJX.js → chunk-HFYCKIVJ.js} +2 -2
- package/dist/{chunk-LX7AMJIX.js → chunk-HUVSY6NF.js} +2 -2
- package/dist/{chunk-CNCTKOX2.js → chunk-IDCJNL7C.js} +1 -1
- package/dist/{chunk-ZOPLM7G3.js → chunk-IQNT6KAE.js} +1 -1
- package/dist/{chunk-XPRYBSMJ.js → chunk-JBMZS5WO.js} +1 -1
- package/dist/{chunk-BWHBPDYB.js → chunk-JBUHOWIV.js} +1 -1
- package/dist/{chunk-2QRT6G4V.js → chunk-JHFXCYZP.js} +1 -1
- package/dist/{chunk-6XOAK64X.js → chunk-JLHSEBNQ.js} +3 -3
- package/dist/{chunk-5NFBE376.js → chunk-K77WC6HA.js} +12 -0
- package/dist/{chunk-LWQ3PFSR.js → chunk-KRLR26L2.js} +2 -2
- package/dist/{chunk-ZAS43I3E.js → chunk-LUCHTCME.js} +1 -1
- package/dist/{chunk-VXVI75ED.js → chunk-LXP6VRFH.js} +1 -1
- package/dist/{chunk-OMHTKVHC.js → chunk-MPG2FFQS.js} +1 -1
- package/dist/{chunk-43AN2SYJ.js → chunk-N4IJWOIS.js} +2 -2
- package/dist/{chunk-2EBKU2XN.js → chunk-NBV23TC4.js} +157 -8
- package/dist/{chunk-PJPPO6EF.js → chunk-NCJNGQUZ.js} +1 -1
- package/dist/{chunk-2UD2P2LO.js → chunk-NJS4GRIR.js} +1 -1
- package/dist/{chunk-L3GKFCXW.js → chunk-NQU2RTCP.js} +8 -8
- package/dist/{chunk-J2LPDECR.js → chunk-NS7FW3NG.js} +2 -2
- package/dist/{chunk-SL7SYDNI.js → chunk-PQBANSH6.js} +2 -2
- package/dist/{chunk-M4ERGSIO.js → chunk-Q4MZN62R.js} +3 -3
- package/dist/{chunk-MDE2ZNWZ.js → chunk-QQFZID36.js} +1 -1
- package/dist/{chunk-Q4GHOMRW.js → chunk-RM6PJ34R.js} +1 -1
- package/dist/{chunk-Z2EJ234K.js → chunk-RXGTA6YQ.js} +3 -3
- package/dist/{chunk-DEAYJXHL.js → chunk-T3ASODFG.js} +3 -3
- package/dist/{chunk-H3UGSTZH.js → chunk-U3XMIHPD.js} +9 -9
- package/dist/{chunk-DGZJXYK7.js → chunk-UISUGXJU.js} +1 -1
- package/dist/{chunk-4DIB3GXJ.js → chunk-VEU6LVBR.js} +1 -1
- package/dist/{chunk-ZPZFR3EN.js → chunk-VK5IBXXT.js} +5 -5
- package/dist/{chunk-WJH6IM7Q.js → chunk-WQCSGDRG.js} +1 -1
- package/dist/{chunk-CFG73TVV.js → chunk-WQXJIMBO.js} +2 -2
- package/dist/{chunk-NFHSUQ2R.js → chunk-XCGJPZ6H.js} +2 -2
- package/dist/{chunk-JH7CK57B.js → chunk-YDG343II.js} +4 -3
- package/dist/{chunk-L6LDDOYW.js → chunk-YENDNLAD.js} +1 -1
- package/dist/{chunk-QUTBXURR.js → chunk-YUQ7GGAL.js} +4 -3
- package/dist/{chunk-26JSRH2T.js → chunk-YUS7IS3I.js} +8 -8
- package/dist/{chunk-4TKI4VW7.js → chunk-ZZBOV6WA.js} +4 -4
- package/dist/{co-activation-XS7CDNIK.js → co-activation-OCQPRJ2I.js} +2 -2
- package/dist/{co-occurrence-R5D6WB4A.js → co-occurrence-S62AC2BR.js} +2 -2
- package/dist/{crdt-sync-NEINCZF7.js → crdt-sync-VS254UOH.js} +1 -1
- package/dist/{crm-webhook-C2LSU33R.js → crm-webhook-CST5WBNY.js} +2 -2
- package/dist/{cto-delegation-gate-4DLESYKG.js → cto-delegation-gate-2PY563OA.js} +8 -8
- package/dist/{daemon-orchestration-IW3MD56I.js → daemon-orchestration-P34RDHTM.js} +11 -11
- package/dist/{db-backup-C44Q44WQ.js → db-backup-JEHRFLYW.js} +1 -1
- package/dist/dreaming-UF4LPNLV.js +31 -0
- package/dist/{exe-drift-B5ZMICND.js → exe-drift-DOWP33NY.js} +3 -3
- package/dist/{exe-export-WPJD5XA3.js → exe-export-QCB5UOXQ.js} +6 -6
- package/dist/{exe-import-AIGIF253.js → exe-import-JHFIXRB5.js} +6 -6
- package/dist/{exe-key-2C23CONG.js → exe-key-ZVKBTZVI.js} +2 -2
- package/dist/{exe-snapshot-2NZ6BL7S.js → exe-snapshot-LBM3LL3I.js} +24 -6
- package/dist/{fast-db-init-O6Y4G47U.js → fast-db-init-PTUUO2IO.js} +1 -1
- package/dist/gateway/index.js +8 -8
- package/dist/{git-staleness-DFHISHY2.js → git-staleness-5SFBUMPC.js} +2 -2
- package/dist/{git-task-sweep-6P4YPAIY.js → git-task-sweep-XMK5IQXK.js} +9 -9
- package/dist/{global-procedures-45Z53UIF.js → global-procedures-W4U257TI.js} +4 -4
- package/dist/{graph-auto-extract-I37N7WQN.js → graph-auto-extract-5ZD4AUSB.js} +2 -2
- package/dist/hooks/bug-report-worker.js +10 -10
- package/dist/hooks/codex-stop-task-finalizer.js +10 -10
- package/dist/hooks/commit-complete.js +11 -11
- package/dist/hooks/error-recall.js +6 -6
- package/dist/hooks/exe-heartbeat-hook.js +3 -3
- package/dist/hooks/ingest.js +6 -6
- package/dist/hooks/instructions-loaded.js +4 -4
- package/dist/hooks/manifest.json +19 -19
- package/dist/hooks/notification.js +4 -4
- package/dist/hooks/post-compact.js +10 -10
- package/dist/hooks/post-tool-combined.js +21 -4
- package/dist/hooks/pre-compact.js +11 -11
- package/dist/hooks/pre-tool-use.js +14 -14
- package/dist/hooks/prompt-submit.js +20 -20
- package/dist/hooks/session-end.js +28 -15
- package/dist/hooks/session-start.js +10 -10
- package/dist/hooks/stop.js +14 -14
- package/dist/hooks/subagent-stop.js +10 -10
- package/dist/hooks/summary-worker.js +14 -14
- package/dist/index.js +18 -18
- package/dist/{installer-SCPRAYJN.js → installer-2HULECDJ.js} +5 -5
- package/dist/{installer-OSIEPXXH.js → installer-BCOJG2SE.js} +5 -5
- package/dist/{installer-3MSU3GSG.js → installer-N5XZAFE4.js} +5 -5
- package/dist/investigation-tracker-WSCY4XBP.js +410 -0
- package/dist/lib/cloud-sync.js +6 -4
- package/dist/lib/consolidation.js +5 -5
- package/dist/lib/database.js +2 -2
- package/dist/lib/db.js +2 -2
- package/dist/lib/employee-templates.js +5 -5
- package/dist/lib/employees.js +2 -2
- package/dist/lib/exe-daemon.js +343 -68
- package/dist/lib/hybrid-search.js +5 -5
- package/dist/lib/identity.js +2 -2
- package/dist/lib/messaging.js +9 -9
- package/dist/lib/reminders.js +3 -3
- package/dist/lib/schedules.js +5 -5
- package/dist/lib/session-registry.js +4 -4
- package/dist/lib/skill-learning.js +4 -4
- package/dist/lib/store.js +4 -4
- package/dist/lib/task-router.js +3 -3
- package/dist/lib/tasks.js +9 -9
- package/dist/lib/tmux-routing.js +8 -8
- package/dist/lib/token-spend.js +3 -3
- package/dist/mcp/register-tools.js +52 -52
- package/dist/mcp/server.js +53 -53
- package/dist/mcp/tools/complete-reminder.js +4 -4
- package/dist/mcp/tools/create-reminder.js +4 -4
- package/dist/mcp/tools/create-task.js +11 -11
- package/dist/mcp/tools/deactivate-behavior.js +5 -5
- package/dist/mcp/tools/list-reminders.js +4 -4
- package/dist/mcp/tools/list-tasks.js +11 -11
- package/dist/mcp/tools/send-message.js +11 -11
- package/dist/mcp/tools/update-task.js +10 -10
- package/dist/{mcp-http-config-KBPJ4QNG.js → mcp-http-config-RTXPLRH5.js} +3 -3
- package/dist/{memory-cards-ICBAONHA.js → memory-cards-3FBGRV6J.js} +2 -2
- package/dist/{memory-graph-extractor-B33AXVOW.js → memory-graph-extractor-5D3FU5N5.js} +3 -3
- package/dist/{memory-poisoning-defense-KNQGXMQ2.js → memory-poisoning-defense-P6GL2RMF.js} +2 -2
- package/dist/{memory-reflection-H6WTTBDO.js → memory-reflection-5CVV2M3G.js} +2 -2
- package/dist/{notifications-3SVZCDEY.js → notifications-NV54INLG.js} +8 -8
- package/dist/{orchestration-events-PCGTHJ67.js → orchestration-events-TEYCD6GO.js} +3 -3
- package/dist/{orchestrator-46YDSPQI.js → orchestrator-JCNHGP6M.js} +10 -10
- package/dist/{pipeline-router-RCPUSLWO.js → pipeline-router-IX635D3U.js} +3 -3
- package/dist/{plan-limits-4JH2GWCP.js → plan-limits-H65VL6LC.js} +3 -3
- package/dist/{projection-worker-B4TWS2FX.js → projection-worker-JMGAPKH6.js} +1 -1
- package/dist/{reranker-CCAEXD25.js → reranker-T4A2M7K2.js} +1 -1
- package/dist/{review-polling-Z7NRBMHV.js → review-polling-SAQ24T6L.js} +9 -9
- package/dist/runtime/index.js +15 -15
- package/dist/{session-events-TNO5ISQB.js → session-events-JNUK47KH.js} +9 -9
- package/dist/{session-kill-telemetry-6FDEUGO5.js → session-kill-telemetry-GLCDARKV.js} +3 -3
- package/dist/{session-scope-MGHWXZYK.js → session-scope-UR7OFFOB.js} +8 -8
- package/dist/{setup-wizard-5O5OQOXH.js → setup-wizard-GQYG36KS.js} +1 -1
- package/dist/{skill-refinement-Y7N2Q25B.js → skill-refinement-WWWFGTUS.js} +2 -2
- package/dist/{steward-gate-H2VKZNW2.js → steward-gate-TAD7GEVL.js} +3 -3
- package/dist/{task-enforcement-QTVMU2RS.js → task-enforcement-2LI5KWFE.js} +8 -8
- package/dist/{task-scope-YQ6O3DIE.js → task-scope-AYK6BVC7.js} +8 -8
- package/dist/{tasks-crud-ZGQZPZAM.js → tasks-crud-OD75EH2G.js} +8 -8
- package/dist/{tasks-review-EM3YKWOR.js → tasks-review-CC2EGWBL.js} +8 -8
- package/dist/{telemetry-upload-QTBI5CFE.js → telemetry-upload-H6BU6QF7.js} +128 -6
- package/dist/{token-budget-OQ6XR5EK.js → token-budget-6TK55BBU.js} +2 -2
- package/dist/{tool-telemetry-NKCCCPQJ.js → tool-telemetry-E7NWXX5R.js} +1 -1
- package/dist/tui/App.js +17 -17
- package/dist/{tui-data-MSZKTQDJ.js → tui-data-ROOXTJQ5.js} +8 -8
- package/dist/{worker-gate-WQ2BEQTX.js → worker-gate-MOQZ2D34.js} +1 -1
- package/dist/{workflow-engine-YB7OOSAT.js → workflow-engine-4MQJI5F2.js} +2 -2
- package/dist/{worktree-W6OAHIBE.js → worktree-K2GDO4QX.js} +4 -4
- package/package.json +1 -1
- package/release-notes.json +105 -202
- package/dist/dreaming-YKXGUTVR.js +0 -12
- /package/dist/{chunk-MBEF2YKQ.js → chunk-A4TPCHMA.js} +0 -0
- /package/dist/{chunk-5O42LXU7.js → chunk-BJOU5MBY.js} +0 -0
- /package/dist/{chunk-THNAZQIH.js → chunk-EAIZLNLP.js} +0 -0
- /package/dist/{chunk-SDKRRTP6.js → chunk-HFF6YG7R.js} +0 -0
- /package/dist/{chunk-N345XXAA.js → chunk-IAPFFVYR.js} +0 -0
- /package/dist/{chunk-6HYAEYQ3.js → chunk-M5TK7JET.js} +0 -0
- /package/dist/{chunk-VJ6HKJMQ.js → chunk-NNEYTOUS.js} +0 -0
- /package/dist/{chunk-CU6CYZOI.js → chunk-P2JDWX67.js} +0 -0
- /package/dist/{chunk-FUVINDE3.js → chunk-RX2KGETT.js} +0 -0
- /package/dist/{chunk-ARETQ22D.js → chunk-YGJTKLGM.js} +0 -0
- /package/dist/{core-memory-NYBNXCKZ.js → core-memory-67AVQ3Z7.js} +0 -0
- /package/dist/{wiki-acl-RMP5KXYK.js → wiki-acl-AR7RIMRY.js} +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
isCrdtSyncEnabled
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-RX2KGETT.js";
|
|
4
4
|
import {
|
|
5
5
|
decryptSyncBlob,
|
|
6
6
|
encryptSyncBlob,
|
|
@@ -12,7 +12,7 @@ import {
|
|
|
12
12
|
loadEmployees,
|
|
13
13
|
registerBinSymlinks,
|
|
14
14
|
saveEmployees
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-2LYJTK47.js";
|
|
16
16
|
import {
|
|
17
17
|
loadDeviceId
|
|
18
18
|
} from "./chunk-D5C56WO3.js";
|
|
@@ -506,7 +506,7 @@ async function cloudSync(config) {
|
|
|
506
506
|
let pulled = 0;
|
|
507
507
|
if (pullResult.records.length > 0) {
|
|
508
508
|
if (isCrdtSyncEnabled()) {
|
|
509
|
-
const { initCrdtDoc, importExistingMemories, readAllMemories } = await import("./crdt-sync-
|
|
509
|
+
const { initCrdtDoc, importExistingMemories, readAllMemories } = await import("./crdt-sync-VS254UOH.js");
|
|
510
510
|
initCrdtDoc();
|
|
511
511
|
importExistingMemories(
|
|
512
512
|
pullResult.records.map((rec) => ({
|
|
@@ -935,7 +935,7 @@ async function cloudSync(config) {
|
|
|
935
935
|
}
|
|
936
936
|
const totalMemories = await countRows("SELECT COUNT(*) as cnt FROM memories WHERE status = 'active' OR status IS NULL");
|
|
937
937
|
try {
|
|
938
|
-
const { getLatestBackup } = await import("./db-backup-
|
|
938
|
+
const { getLatestBackup } = await import("./db-backup-JEHRFLYW.js");
|
|
939
939
|
const latestBackup = getLatestBackup();
|
|
940
940
|
if (latestBackup) {
|
|
941
941
|
const backupSize = statSync(latestBackup).size;
|
|
@@ -1431,9 +1431,14 @@ async function cloudPullGraphRAG(config) {
|
|
|
1431
1431
|
);
|
|
1432
1432
|
if (!data || data.length === 0) return { pulled: 0 };
|
|
1433
1433
|
const blob = data[0];
|
|
1434
|
-
const client = getClient();
|
|
1435
1434
|
let pulled = 0;
|
|
1436
|
-
|
|
1435
|
+
let client = null;
|
|
1436
|
+
try {
|
|
1437
|
+
client = getClient();
|
|
1438
|
+
} catch {
|
|
1439
|
+
process.stderr.write("[cloud-sync] SQLite unavailable for GraphRAG pull \u2014 using PostgreSQL projection only\n");
|
|
1440
|
+
}
|
|
1441
|
+
if (client && blob.entities.length > 0) {
|
|
1437
1442
|
const stmts = blob.entities.map((e) => ({
|
|
1438
1443
|
sql: `INSERT OR IGNORE INTO entities (id, name, type, first_seen, last_seen, properties)
|
|
1439
1444
|
VALUES (?, ?, ?, ?, ?, ?)`,
|
|
@@ -1442,7 +1447,7 @@ async function cloudPullGraphRAG(config) {
|
|
|
1442
1447
|
await client.batch(stmts, "write");
|
|
1443
1448
|
pulled += stmts.length;
|
|
1444
1449
|
}
|
|
1445
|
-
if (blob.relationships.length > 0) {
|
|
1450
|
+
if (client && blob.relationships.length > 0) {
|
|
1446
1451
|
const stmts = blob.relationships.map((r) => ({
|
|
1447
1452
|
sql: `INSERT OR IGNORE INTO relationships
|
|
1448
1453
|
(id, source_entity_id, target_entity_id, type, weight, timestamp, properties, confidence, confidence_label)
|
|
@@ -1462,7 +1467,7 @@ async function cloudPullGraphRAG(config) {
|
|
|
1462
1467
|
await client.batch(stmts, "write");
|
|
1463
1468
|
pulled += stmts.length;
|
|
1464
1469
|
}
|
|
1465
|
-
if (blob.entity_aliases.length > 0) {
|
|
1470
|
+
if (client && blob.entity_aliases.length > 0) {
|
|
1466
1471
|
const stmts = blob.entity_aliases.map((a) => ({
|
|
1467
1472
|
sql: `INSERT OR IGNORE INTO entity_aliases (alias, canonical_entity_id) VALUES (?, ?)`,
|
|
1468
1473
|
args: [sqlSafe(a.alias), sqlSafe(a.canonical_entity_id)]
|
|
@@ -1470,7 +1475,7 @@ async function cloudPullGraphRAG(config) {
|
|
|
1470
1475
|
await client.batch(stmts, "write");
|
|
1471
1476
|
pulled += stmts.length;
|
|
1472
1477
|
}
|
|
1473
|
-
if (blob.entity_memories.length > 0) {
|
|
1478
|
+
if (client && blob.entity_memories.length > 0) {
|
|
1474
1479
|
const stmts = blob.entity_memories.map((em) => ({
|
|
1475
1480
|
sql: `INSERT OR IGNORE INTO entity_memories (entity_id, memory_id) VALUES (?, ?)`,
|
|
1476
1481
|
args: [sqlSafe(em.entity_id), sqlSafe(em.memory_id)]
|
|
@@ -1478,7 +1483,7 @@ async function cloudPullGraphRAG(config) {
|
|
|
1478
1483
|
await client.batch(stmts, "write");
|
|
1479
1484
|
pulled += stmts.length;
|
|
1480
1485
|
}
|
|
1481
|
-
if (blob.relationship_memories.length > 0) {
|
|
1486
|
+
if (client && blob.relationship_memories.length > 0) {
|
|
1482
1487
|
const stmts = blob.relationship_memories.map((rm) => ({
|
|
1483
1488
|
sql: `INSERT OR IGNORE INTO relationship_memories (relationship_id, memory_id) VALUES (?, ?)`,
|
|
1484
1489
|
args: [sqlSafe(rm.relationship_id), sqlSafe(rm.memory_id)]
|
|
@@ -1486,7 +1491,7 @@ async function cloudPullGraphRAG(config) {
|
|
|
1486
1491
|
await client.batch(stmts, "write");
|
|
1487
1492
|
pulled += stmts.length;
|
|
1488
1493
|
}
|
|
1489
|
-
if (blob.hyperedges.length > 0) {
|
|
1494
|
+
if (client && blob.hyperedges.length > 0) {
|
|
1490
1495
|
const stmts = blob.hyperedges.map((h) => ({
|
|
1491
1496
|
sql: `INSERT OR IGNORE INTO hyperedges (id, label, relation, confidence, timestamp)
|
|
1492
1497
|
VALUES (?, ?, ?, ?, ?)`,
|
|
@@ -1495,7 +1500,7 @@ async function cloudPullGraphRAG(config) {
|
|
|
1495
1500
|
await client.batch(stmts, "write");
|
|
1496
1501
|
pulled += stmts.length;
|
|
1497
1502
|
}
|
|
1498
|
-
if (blob.hyperedge_nodes.length > 0) {
|
|
1503
|
+
if (client && blob.hyperedge_nodes.length > 0) {
|
|
1499
1504
|
const stmts = blob.hyperedge_nodes.map((hn) => ({
|
|
1500
1505
|
sql: `INSERT OR IGNORE INTO hyperedge_nodes (hyperedge_id, entity_id) VALUES (?, ?)`,
|
|
1501
1506
|
args: [sqlSafe(hn.hyperedge_id), sqlSafe(hn.entity_id)]
|
|
@@ -1503,6 +1508,53 @@ async function cloudPullGraphRAG(config) {
|
|
|
1503
1508
|
await client.batch(stmts, "write");
|
|
1504
1509
|
pulled += stmts.length;
|
|
1505
1510
|
}
|
|
1511
|
+
const pgPromise = loadPgClient();
|
|
1512
|
+
if (pgPromise) {
|
|
1513
|
+
try {
|
|
1514
|
+
const pg = await pgPromise;
|
|
1515
|
+
const S = "graph";
|
|
1516
|
+
for (const e of blob.entities) {
|
|
1517
|
+
await pg.$executeRawUnsafe(
|
|
1518
|
+
`INSERT INTO ${S}.entities (id, name, type, first_seen, last_seen, properties)
|
|
1519
|
+
VALUES ($1::uuid, $2, $3, $4::timestamptz, $5::timestamptz, $6::jsonb)
|
|
1520
|
+
ON CONFLICT (id) DO UPDATE SET name = EXCLUDED.name, type = EXCLUDED.type,
|
|
1521
|
+
last_seen = EXCLUDED.last_seen, properties = EXCLUDED.properties`,
|
|
1522
|
+
e.id,
|
|
1523
|
+
e.name ?? "unknown",
|
|
1524
|
+
e.type ?? "unknown",
|
|
1525
|
+
e.first_seen ?? (/* @__PURE__ */ new Date()).toISOString(),
|
|
1526
|
+
e.last_seen ?? (/* @__PURE__ */ new Date()).toISOString(),
|
|
1527
|
+
e.properties ?? "{}"
|
|
1528
|
+
);
|
|
1529
|
+
}
|
|
1530
|
+
for (const r of blob.relationships) {
|
|
1531
|
+
await pg.$executeRawUnsafe(
|
|
1532
|
+
`INSERT INTO ${S}.relationships (id, source_entity_id, target_entity_id, type, confidence, properties)
|
|
1533
|
+
VALUES ($1::uuid, $2::uuid, $3::uuid, $4, $5, $6::jsonb)
|
|
1534
|
+
ON CONFLICT (id) DO NOTHING`,
|
|
1535
|
+
r.id,
|
|
1536
|
+
r.source_entity_id,
|
|
1537
|
+
r.target_entity_id,
|
|
1538
|
+
r.type ?? "related_to",
|
|
1539
|
+
r.confidence ?? 0.8,
|
|
1540
|
+
r.properties ?? "{}"
|
|
1541
|
+
);
|
|
1542
|
+
}
|
|
1543
|
+
for (const em of blob.entity_memories) {
|
|
1544
|
+
await pg.$executeRawUnsafe(
|
|
1545
|
+
`INSERT INTO ${S}.entity_memories (entity_id, memory_id)
|
|
1546
|
+
VALUES ($1::uuid, $2::uuid) ON CONFLICT DO NOTHING`,
|
|
1547
|
+
em.entity_id,
|
|
1548
|
+
em.memory_id
|
|
1549
|
+
);
|
|
1550
|
+
}
|
|
1551
|
+
process.stderr.write(`[cloud-sync] Projected ${blob.entities.length} entities + ${blob.relationships.length} relationships to PostgreSQL graph schema
|
|
1552
|
+
`);
|
|
1553
|
+
} catch (pgErr) {
|
|
1554
|
+
process.stderr.write(`[cloud-sync] PostgreSQL graph projection failed: ${pgErr instanceof Error ? pgErr.message : String(pgErr)}
|
|
1555
|
+
`);
|
|
1556
|
+
}
|
|
1557
|
+
}
|
|
1506
1558
|
return { pulled };
|
|
1507
1559
|
}
|
|
1508
1560
|
async function cloudPushTasks(config) {
|
|
@@ -1993,6 +2045,7 @@ async function cloudPullCoreMemory(config) {
|
|
|
1993
2045
|
}
|
|
1994
2046
|
|
|
1995
2047
|
export {
|
|
2048
|
+
loadPgClient,
|
|
1996
2049
|
disposeCloudSync,
|
|
1997
2050
|
pushToPostgres,
|
|
1998
2051
|
migrateEndpoint,
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import {
|
|
2
2
|
PLATFORM_PROCEDURE_TITLES
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-K77WC6HA.js";
|
|
4
4
|
import {
|
|
5
5
|
getClient,
|
|
6
6
|
getIdentity,
|
|
7
7
|
listIdentities,
|
|
8
8
|
updateIdentity
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-2LYJTK47.js";
|
|
10
10
|
import {
|
|
11
11
|
atomicWriteJsonSync
|
|
12
12
|
} from "./chunk-LYH5HE24.js";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
ensureWorktree
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-G67R75DG.js";
|
|
4
4
|
import {
|
|
5
5
|
queueIntercom
|
|
6
6
|
} from "./chunk-QI4IXJN7.js";
|
|
@@ -10,7 +10,7 @@ import {
|
|
|
10
10
|
} from "./chunk-4JERP7NT.js";
|
|
11
11
|
import {
|
|
12
12
|
registerSession
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-NJS4GRIR.js";
|
|
14
14
|
import {
|
|
15
15
|
getTransport
|
|
16
16
|
} from "./chunk-MVW62NIZ.js";
|
|
@@ -19,7 +19,7 @@ import {
|
|
|
19
19
|
} from "./chunk-CX6GL3ZJ.js";
|
|
20
20
|
import {
|
|
21
21
|
recordOrchestrationEventBestEffort
|
|
22
|
-
} from "./chunk-
|
|
22
|
+
} from "./chunk-2O5GJFYQ.js";
|
|
23
23
|
import {
|
|
24
24
|
getAgentRuntime,
|
|
25
25
|
normalizeCcModelName
|
|
@@ -30,7 +30,7 @@ import {
|
|
|
30
30
|
import {
|
|
31
31
|
PlanLimitError,
|
|
32
32
|
assertEmployeeLimitSync
|
|
33
|
-
} from "./chunk-
|
|
33
|
+
} from "./chunk-LXP6VRFH.js";
|
|
34
34
|
import {
|
|
35
35
|
getSessionKey
|
|
36
36
|
} from "./chunk-CVYC6DUW.js";
|
|
@@ -45,7 +45,7 @@ import {
|
|
|
45
45
|
} from "./chunk-MP2AFCGL.js";
|
|
46
46
|
import {
|
|
47
47
|
ensureAgentSymlink
|
|
48
|
-
} from "./chunk-
|
|
48
|
+
} from "./chunk-WQCSGDRG.js";
|
|
49
49
|
import {
|
|
50
50
|
expandDualPrefixTools
|
|
51
51
|
} from "./chunk-HYZV25LY.js";
|
|
@@ -57,7 +57,7 @@ import {
|
|
|
57
57
|
isCoordinatorName,
|
|
58
58
|
loadEmployees,
|
|
59
59
|
loadEmployeesSync
|
|
60
|
-
} from "./chunk-
|
|
60
|
+
} from "./chunk-2LYJTK47.js";
|
|
61
61
|
import {
|
|
62
62
|
loadDeviceId
|
|
63
63
|
} from "./chunk-D5C56WO3.js";
|
|
@@ -527,7 +527,7 @@ async function createTaskCore(input) {
|
|
|
527
527
|
if (isCoordinatorSession) {
|
|
528
528
|
earlySessionScope = resolved;
|
|
529
529
|
} else {
|
|
530
|
-
const { getSessionProject } = await import("./session-scope-
|
|
530
|
+
const { getSessionProject } = await import("./session-scope-UR7OFFOB.js");
|
|
531
531
|
const sessionProject = getSessionProject(resolved);
|
|
532
532
|
if (sessionProject && sessionProject !== input.projectName) {
|
|
533
533
|
scopeMismatchWarning = `session/project mismatch: session "${resolved}" owns "${sessionProject}" but task targets "${input.projectName}". Routed to default scope.`;
|
|
@@ -985,7 +985,7 @@ async function updateTaskStatus(input) {
|
|
|
985
985
|
} catch {
|
|
986
986
|
}
|
|
987
987
|
try {
|
|
988
|
-
const { writeNotification: writeNotification2 } = await import("./notifications-
|
|
988
|
+
const { writeNotification: writeNotification2 } = await import("./notifications-NV54INLG.js");
|
|
989
989
|
await writeNotification2({
|
|
990
990
|
agentId: reviewer,
|
|
991
991
|
agentRole: isCoordinatorName(reviewer) ? "COO" : "manager",
|
|
@@ -1503,7 +1503,7 @@ ${input.result ?? ""}`;
|
|
|
1503
1503
|
}
|
|
1504
1504
|
if (input.status === "done" || input.status === "needs_review") {
|
|
1505
1505
|
try {
|
|
1506
|
-
const { incrementSkillSuccess } = await import("./skill-refinement-
|
|
1506
|
+
const { incrementSkillSuccess } = await import("./skill-refinement-WWWFGTUS.js");
|
|
1507
1507
|
await incrementSkillSuccess(
|
|
1508
1508
|
String(row.assigned_to),
|
|
1509
1509
|
row.project_name ? String(row.project_name) : null
|
|
@@ -2971,7 +2971,7 @@ async function verifyPaneAtCapacity(sessionName) {
|
|
|
2971
2971
|
reason: `capture-pane failed: ${err instanceof Error ? err.message : String(err)}`
|
|
2972
2972
|
};
|
|
2973
2973
|
}
|
|
2974
|
-
const { isAtCapacity } = await import("./capacity-monitor-
|
|
2974
|
+
const { isAtCapacity } = await import("./capacity-monitor-KAKNWAA4.js");
|
|
2975
2975
|
if (!isAtCapacity(pane)) {
|
|
2976
2976
|
return {
|
|
2977
2977
|
atCapacity: false,
|