@cortexkit/opencode-magic-context 0.42.2 → 0.42.3
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/{conflict-warning-hook-6p3xqeac.js → conflict-warning-hook-aedp084d.js} +3 -3
- package/dist/features/magic-context/compaction-marker.d.ts +4 -10
- package/dist/features/magic-context/compaction-marker.d.ts.map +1 -1
- package/dist/hooks/magic-context/read-session-db.d.ts.map +1 -1
- package/dist/hooks/magic-context/read-session-raw.d.ts +4 -4
- package/dist/hooks/magic-context/read-session-raw.d.ts.map +1 -1
- package/dist/{index-36wd1d6k.js → index-ecz14qke.js} +1 -1
- package/dist/{index-nqgjwfzn.js → index-gynz8qdc.js} +1 -1
- package/dist/{index-jmtjh2d3.js → index-sf6x1ga9.js} +1 -1
- package/dist/{index-953x7a79.js → index-wde5446v.js} +55 -35
- package/dist/{index-1974jvn3.js → index-z8552w7e.js} +1 -1
- package/dist/index.js +16 -16
- package/dist/{recomp-orchestrator-5g8f5rhy.js → recomp-orchestrator-447vycpt.js} +4 -4
- package/dist/{send-session-notification-1qeqkswb.js → send-session-notification-2mzgd3zf.js} +2 -2
- package/dist/{storage-meta-session-e6g0mmec.js → storage-meta-session-fkmfhswa.js} +2 -2
- package/dist/v2/server.d.ts +6 -0
- package/dist/v2/server.d.ts.map +1 -0
- package/dist/v2/server.js +10 -0
- package/dist/v2/store-reader.d.ts +63 -0
- package/dist/v2/store-reader.d.ts.map +1 -0
- package/package.json +7 -2
|
@@ -3,10 +3,10 @@ import {
|
|
|
3
3
|
cleanupConflictWarnings2,
|
|
4
4
|
sendSchemaFenceWarning2,
|
|
5
5
|
sendStartupAnnouncement2
|
|
6
|
-
} from "./index-
|
|
6
|
+
} from "./index-ecz14qke.js";
|
|
7
7
|
import"./index-sd3egckz.js";
|
|
8
|
-
import"./index-
|
|
9
|
-
import"./index-
|
|
8
|
+
import"./index-gynz8qdc.js";
|
|
9
|
+
import"./index-z8552w7e.js";
|
|
10
10
|
import"./index-dkv2dn46.js";
|
|
11
11
|
export {
|
|
12
12
|
cleanupConflictWarnings2 as cleanupConflictWarnings,
|
|
@@ -106,17 +106,11 @@ export interface SessionCompactionMarkerRows {
|
|
|
106
106
|
summaryMessageIds: string[];
|
|
107
107
|
}
|
|
108
108
|
/**
|
|
109
|
-
* List
|
|
109
|
+
* List compaction markers that have completed Magic Context summaries.
|
|
110
110
|
*
|
|
111
|
-
*
|
|
112
|
-
*
|
|
113
|
-
*
|
|
114
|
-
* is NOT inherited (PARITY.md gap #25). The fork then owns marker rows its
|
|
115
|
-
* state knows nothing about. This scan enumerates all markers so the caller can
|
|
116
|
-
* diff them against the persisted state and repair the ones it does not own.
|
|
117
|
-
*
|
|
118
|
-
* Errors propagate to the caller (the hygiene pass treats any failure as
|
|
119
|
-
* "skip this pass and retry later" — never as a fatal transform error).
|
|
111
|
+
* The orphan-reconciliation caller cannot act on native or part-only markers.
|
|
112
|
+
* Discovering completed summaries first bounds part reads to their parent
|
|
113
|
+
* boundaries and avoids a full-session part scan plus one message scan per row.
|
|
120
114
|
*/
|
|
121
115
|
export declare function listSessionCompactionMarkers(sessionId: string): SessionCompactionMarkerRows[];
|
|
122
116
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compaction-marker.d.ts","sourceRoot":"","sources":["../../../src/features/magic-context/compaction-marker.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AA4CH,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,SAAK,EAAE,QAAQ,SAAK,GAAG,MAAM,CAE1F;AAED,wBAAgB,cAAc,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,SAAK,EAAE,QAAQ,SAAK,GAAG,MAAM,CAEvF;AAID,wBAAgB,iBAAiB,IAAI,MAAM,CAE1C;AA+GD,wBAAgB,uBAAuB,IAAI,IAAI,CAY9C;AAID,MAAM,WAAW,mBAAmB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;CACvB;AA6BD;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CACnC,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,GACrB,mBAAmB,GAAG,IAAI,CAoC5B;AAED,wBAAgB,uCAAuC,CACnD,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,MAAM,EACrB,cAAc,EAAE,MAAM,GACvB,MAAM,GAAG,IAAI,CASf;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,sBAAsB,CAClC,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,GAClB;IAAE,EAAE,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAMvB;AAID,UAAU,qBAAqB;IAC3B,uDAAuD;IACvD,iBAAiB,EAAE,MAAM,CAAC;IAC1B,mDAAmD;IACnD,gBAAgB,EAAE,MAAM,CAAC;IACzB,iDAAiD;IACjD,gBAAgB,EAAE,MAAM,CAAC;IACzB,8CAA8C;IAC9C,aAAa,EAAE,MAAM,CAAC;CACzB;AAID,MAAM,WAAW,0BAA0B;IACvC,SAAS,EAAE,MAAM,CAAC;IAClB,wDAAwD;IACxD,UAAU,EAAE,MAAM,CAAC;IACnB,gEAAgE;IAChE,YAAY,EAAE,MAAM,CAAC;IACrB,2EAA2E;IAC3E,WAAW,EAAE,MAAM,CAAC;IACpB,wCAAwC;IACxC,SAAS,EAAE,MAAM,CAAC;IAClB,6FAA6F;IAC7F,gBAAgB,CAAC,EAAE,mBAAmB,CAAC;CAC1C;AA8DD;;;GAGG;AACH,wBAAgB,sBAAsB,CAClC,IAAI,EAAE,0BAA0B,GACjC,qBAAqB,GAAG,IAAI,CA0H9B;AAID;;;;;;;;GAQG;AACH,MAAM,WAAW,2BAA2B;IACxC,sEAAsE;IACtE,gBAAgB,EAAE,MAAM,CAAC;IACzB,6DAA6D;IAC7D,iBAAiB,EAAE,MAAM,CAAC;IAC1B,uEAAuE;IACvE,iBAAiB,EAAE,MAAM,EAAE,CAAC;CAC/B;AAED
|
|
1
|
+
{"version":3,"file":"compaction-marker.d.ts","sourceRoot":"","sources":["../../../src/features/magic-context/compaction-marker.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"read-session-db.d.ts","sourceRoot":"","sources":["../../../src/hooks/magic-context/read-session-db.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAqB/C,uEAAuE;AACvE,wBAAgB,gBAAgB,IAAI,OAAO,CAE1C;AAqCD,wBAAgB,qBAAqB,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,QAAQ,KAAK,CAAC,GAAG,CAAC,CAEnE;AAGD,wBAAgB,sBAAsB,IAAI,IAAI,CAE7C;AAED,wBAAgB,+BAA+B,CAAC,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAYvF;AAED,UAAU,gBAAgB;IACtB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9B,KAAK,EAAE,SAAS,OAAO,EAAE,CAAC;CAC7B;AAuED,qFAAqF;AACrF,wBAAgB,kCAAkC,CAAC,QAAQ,EAAE,SAAS,gBAAgB,EAAE,GAAG,OAAO,CAYjG;AAED,8EAA8E;AAC9E,wBAAgB,yCAAyC,CACrD,QAAQ,EAAE,SAAS,gBAAgB,EAAE,GACtC,OAAO,CAYT;AAoBD,mGAAmG;AACnG,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,GAAG,IAAI,CA4EhF;AAED,wBAAgB,2BAA2B,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAGnE;AAqBD,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAWjF;AAED,eAAO,MAAM,uBAAuB;aACvB,IAAI;6BAKY,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;CAG5D,CAAC;AAEF;;;;;;;;;;GAUG;AACH,wBAAgB,2CAA2C,CACvD,EAAE,EAAE,QAAQ,EACZ,SAAS,EAAE,MAAM,GAClB,OAAO,CAKT;AAED,wBAAgB,6BAA6B,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAexE;AAED,wBAAgB,oCAAoC,CAAC,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,
|
|
1
|
+
{"version":3,"file":"read-session-db.d.ts","sourceRoot":"","sources":["../../../src/hooks/magic-context/read-session-db.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAqB/C,uEAAuE;AACvE,wBAAgB,gBAAgB,IAAI,OAAO,CAE1C;AAqCD,wBAAgB,qBAAqB,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,QAAQ,KAAK,CAAC,GAAG,CAAC,CAEnE;AAGD,wBAAgB,sBAAsB,IAAI,IAAI,CAE7C;AAED,wBAAgB,+BAA+B,CAAC,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAYvF;AAED,UAAU,gBAAgB;IACtB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9B,KAAK,EAAE,SAAS,OAAO,EAAE,CAAC;CAC7B;AAuED,qFAAqF;AACrF,wBAAgB,kCAAkC,CAAC,QAAQ,EAAE,SAAS,gBAAgB,EAAE,GAAG,OAAO,CAYjG;AAED,8EAA8E;AAC9E,wBAAgB,yCAAyC,CACrD,QAAQ,EAAE,SAAS,gBAAgB,EAAE,GACtC,OAAO,CAYT;AAoBD,mGAAmG;AACnG,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,GAAG,IAAI,CA4EhF;AAED,wBAAgB,2BAA2B,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAGnE;AAqBD,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAWjF;AAED,eAAO,MAAM,uBAAuB;aACvB,IAAI;6BAKY,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;CAG5D,CAAC;AAEF;;;;;;;;;;GAUG;AACH,wBAAgB,2CAA2C,CACvD,EAAE,EAAE,QAAQ,EACZ,SAAS,EAAE,MAAM,GAClB,OAAO,CAKT;AAED,wBAAgB,6BAA6B,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAexE;AAED,wBAAgB,oCAAoC,CAAC,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAwB7F;AAED,wBAAgB,uBAAuB,CACnC,EAAE,EAAE,QAAQ,EACZ,SAAS,EAAE,MAAM,EACjB,0BAA0B,EAAE,OAAO,GACpC,OAAO,CAuCT;AAkDD;;;;;;;GAOG;AACH,wBAAgB,6BAA6B,CACzC,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,SAAS,MAAM,EAAE,GAC9B,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAyBrB;AAED,wBAAgB,oCAAoC,CAChD,SAAS,EAAE,MAAM,GAClB;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAgChE"}
|
|
@@ -19,11 +19,11 @@ export interface RawMessageOrdinalEntry extends RawMessageOrdinalAnchor {
|
|
|
19
19
|
}
|
|
20
20
|
/**
|
|
21
21
|
* OpenCode message IDs are global primary keys and `part.message_id` references
|
|
22
|
-
* that key.
|
|
23
|
-
* session-only
|
|
24
|
-
*
|
|
22
|
+
* that key. Unary `+` keeps the cross-session correctness filter but prevents
|
|
23
|
+
* SQLite from choosing the session-only index instead of the bounded message-id
|
|
24
|
+
* lookup. Keep the likelihood hint for planner versions that honor it.
|
|
25
25
|
*/
|
|
26
|
-
export declare const RAW_MESSAGE_PARTS_BY_ID_SQL = "SELECT message_id, data, time_updated FROM part WHERE session_id = ? AND likelihood(message_id = ?, 0.000001) ORDER BY time_created ASC, id ASC";
|
|
26
|
+
export declare const RAW_MESSAGE_PARTS_BY_ID_SQL = "SELECT message_id, data, time_updated FROM part WHERE +session_id = ? AND likelihood(message_id = ?, 0.000001) ORDER BY time_created ASC, id ASC";
|
|
27
27
|
export declare function isRawCompactionSummaryInfo(info: unknown): boolean;
|
|
28
28
|
export declare function readRawSessionMessagesFromDb(db: Database, sessionId: string): RawMessage[];
|
|
29
29
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"read-session-raw.d.ts","sourceRoot":"","sources":["../../../src/hooks/magic-context/read-session-raw.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAEpD,MAAM,WAAW,eAAe;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,OAAO,EAAE,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;CACpC;AAED,MAAM,WAAW,UAAW,SAAQ,eAAe;IAC/C,OAAO,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,uBAAuB;IACpC,WAAW,EAAE,MAAM,CAAC;IACpB,EAAE,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,sBAAuB,SAAQ,uBAAuB;IACnE,kBAAkB,EAAE,OAAO,CAAC;IAC5B,YAAY,EAAE,OAAO,CAAC;CACzB;AAeD;;;;;GAKG;AACH,eAAO,MAAM,2BAA2B,
|
|
1
|
+
{"version":3,"file":"read-session-raw.d.ts","sourceRoot":"","sources":["../../../src/hooks/magic-context/read-session-raw.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,7 +11,7 @@ import {
|
|
|
11
11
|
SESSION_SCOPED_TABLES,
|
|
12
12
|
deleteSessionScopedRows,
|
|
13
13
|
updateSessionMeta2
|
|
14
|
-
} from "./index-
|
|
14
|
+
} from "./index-sf6x1ga9.js";
|
|
15
15
|
import {
|
|
16
16
|
resolveOpenCodeDbPath,
|
|
17
17
|
openCodeDbPathExists,
|
|
@@ -25,7 +25,7 @@ import {
|
|
|
25
25
|
withReadOnlySessionDb,
|
|
26
26
|
getRawSessionMessageCountFromDb,
|
|
27
27
|
getMessageTimesFromOpenCodeDb
|
|
28
|
-
} from "./index-
|
|
28
|
+
} from "./index-z8552w7e.js";
|
|
29
29
|
import {
|
|
30
30
|
pushNotification2
|
|
31
31
|
} from "./index-jdxxq8cz.js";
|
|
@@ -47,7 +47,7 @@ import {
|
|
|
47
47
|
getErrorMessage,
|
|
48
48
|
describeError,
|
|
49
49
|
sendStatusNotification2
|
|
50
|
-
} from "./index-
|
|
50
|
+
} from "./index-gynz8qdc.js";
|
|
51
51
|
import {
|
|
52
52
|
piModelRefToCanonical,
|
|
53
53
|
modelRefLookupOrder
|
|
@@ -10606,7 +10606,7 @@ function deleteToolTagsByOwner(db, sessionId, ownerMsgId) {
|
|
|
10606
10606
|
}
|
|
10607
10607
|
|
|
10608
10608
|
// src/hooks/magic-context/read-session-raw.ts
|
|
10609
|
-
var RAW_MESSAGE_PARTS_BY_ID_SQL = "SELECT message_id, data, time_updated FROM part WHERE session_id = ? AND likelihood(message_id = ?, 0.000001) ORDER BY time_created ASC, id ASC";
|
|
10609
|
+
var RAW_MESSAGE_PARTS_BY_ID_SQL = "SELECT message_id, data, time_updated FROM part WHERE +session_id = ? AND likelihood(message_id = ?, 0.000001) ORDER BY time_created ASC, id ASC";
|
|
10610
10610
|
function isRawMessageRow(row) {
|
|
10611
10611
|
if (row === null || typeof row !== "object")
|
|
10612
10612
|
return false;
|
|
@@ -10668,7 +10668,7 @@ function readRawSessionMessagesFromDb(db, sessionId) {
|
|
|
10668
10668
|
const placeholders = messageIds.map(() => "?").join(", ");
|
|
10669
10669
|
const partRows = db.prepare(`SELECT message_id, data, time_updated
|
|
10670
10670
|
FROM part
|
|
10671
|
-
WHERE session_id = ?
|
|
10671
|
+
WHERE +session_id = ?
|
|
10672
10672
|
AND likelihood(message_id IN (${placeholders}), 0.000001)
|
|
10673
10673
|
ORDER BY message_id ASC, time_created ASC, id ASC`).all(sessionId, ...messageIds).filter(isRawPartRow);
|
|
10674
10674
|
for (const part of partRows) {
|
|
@@ -10719,7 +10719,7 @@ function readRawSessionMessagePageFromDb(db, sessionId, afterOrdinal, limit, fin
|
|
|
10719
10719
|
const placeholders = messageRows.map(() => "?").join(", ");
|
|
10720
10720
|
const partRows = db.prepare(`SELECT message_id, data, time_updated
|
|
10721
10721
|
FROM part
|
|
10722
|
-
WHERE session_id = ?
|
|
10722
|
+
WHERE +session_id = ?
|
|
10723
10723
|
AND likelihood(message_id IN (${placeholders}), 0.000001)
|
|
10724
10724
|
ORDER BY message_id ASC, time_created ASC, id ASC`).all(sessionId, ...messageRows.map((row) => row.id)).filter(isRawPartRow);
|
|
10725
10725
|
const partsByMessageId = new Map;
|
|
@@ -10807,7 +10807,7 @@ function readRawSessionTailFromDb(db, sessionId, baseOrdinal, anchorMessageId) {
|
|
|
10807
10807
|
for (let i = 0;i < ids.length; i += CHUNK) {
|
|
10808
10808
|
const slice = ids.slice(i, i + CHUNK);
|
|
10809
10809
|
const placeholders = slice.map(() => "?").join(",");
|
|
10810
|
-
const partRows = db.prepare(`SELECT message_id, data, time_updated FROM part WHERE session_id = ? AND likelihood(message_id IN (${placeholders}), 0.000001) ORDER BY time_created ASC, id ASC`).all(sessionId, ...slice).filter(isRawPartRow);
|
|
10810
|
+
const partRows = db.prepare(`SELECT message_id, data, time_updated FROM part WHERE +session_id = ? AND likelihood(message_id IN (${placeholders}), 0.000001) ORDER BY time_created ASC, id ASC`).all(sessionId, ...slice).filter(isRawPartRow);
|
|
10811
10811
|
for (const part of partRows) {
|
|
10812
10812
|
const list = partsByMessageId.get(part.message_id) ?? [];
|
|
10813
10813
|
list.push(attachRawPartVersion(parseJsonUnknown(part.data), part.time_updated));
|
|
@@ -10973,7 +10973,7 @@ function readRawSeedTailFromDb(db, sessionId, boundaryId) {
|
|
|
10973
10973
|
SELECT c.id, m.data, c.time_created, m.time_updated, c.ordinal,
|
|
10974
10974
|
p.data AS part_data, p.time_updated AS part_updated
|
|
10975
10975
|
FROM canonical c JOIN message m ON m.id = c.id
|
|
10976
|
-
LEFT JOIN part p ON p.session_id = ? AND likelihood(p.message_id = c.id, 0.000001)
|
|
10976
|
+
LEFT JOIN part p ON +p.session_id = ? AND likelihood(p.message_id = c.id, 0.000001)
|
|
10977
10977
|
WHERE ? IS NULL OR c.ordinal >= (SELECT ordinal FROM canonical WHERE id = ?)
|
|
10978
10978
|
ORDER BY c.ordinal, p.time_created, p.id
|
|
10979
10979
|
`).all(sessionId, sessionId, boundaryId, boundaryId);
|
|
@@ -31373,7 +31373,7 @@ function removeLegacyMarkerLineageRows(db, args) {
|
|
|
31373
31373
|
AND EXISTS (
|
|
31374
31374
|
SELECT 1
|
|
31375
31375
|
FROM part p
|
|
31376
|
-
WHERE p.session_id = m.session_id
|
|
31376
|
+
WHERE +p.session_id = m.session_id
|
|
31377
31377
|
AND p.message_id = m.id
|
|
31378
31378
|
AND COALESCE(json_extract(p.data, '$.type'), '') = 'text'
|
|
31379
31379
|
AND COALESCE(json_extract(p.data, '$.text'), '') = ?
|
|
@@ -31381,14 +31381,14 @@ function removeLegacyMarkerLineageRows(db, args) {
|
|
|
31381
31381
|
const legacySummaryIds = legacySummaries.flatMap((row) => typeof row.id === "string" ? [row.id] : []);
|
|
31382
31382
|
if (legacySummaryIds.length === 0)
|
|
31383
31383
|
return;
|
|
31384
|
-
const deleteSummaryParts = db.prepare("DELETE FROM part WHERE session_id = ? AND message_id = ?");
|
|
31384
|
+
const deleteSummaryParts = db.prepare("DELETE FROM part WHERE +session_id = ? AND message_id = ?");
|
|
31385
31385
|
const deleteSummary = db.prepare("DELETE FROM message WHERE session_id = ? AND id = ?");
|
|
31386
31386
|
for (const summaryMessageId of legacySummaryIds) {
|
|
31387
31387
|
deleteSummaryParts.run(args.sessionId, summaryMessageId);
|
|
31388
31388
|
deleteSummary.run(args.sessionId, summaryMessageId);
|
|
31389
31389
|
}
|
|
31390
31390
|
db.prepare(`DELETE FROM part
|
|
31391
|
-
WHERE session_id = ?
|
|
31391
|
+
WHERE +session_id = ?
|
|
31392
31392
|
AND message_id = ?
|
|
31393
31393
|
AND id <> ?
|
|
31394
31394
|
AND COALESCE(json_extract(data, '$.type'), '') = 'compaction'
|
|
@@ -31470,36 +31470,56 @@ function injectCompactionMarker(args) {
|
|
|
31470
31470
|
}
|
|
31471
31471
|
function listSessionCompactionMarkers(sessionId) {
|
|
31472
31472
|
const db = getWritableOpenCodeDb();
|
|
31473
|
-
const
|
|
31474
|
-
FROM
|
|
31473
|
+
const summaryRows = db.prepare(`SELECT id, json_extract(data, '$.parentID') AS boundary_message_id
|
|
31474
|
+
FROM message
|
|
31475
31475
|
WHERE session_id = ?
|
|
31476
|
-
AND COALESCE(json_extract(data, '$.
|
|
31477
|
-
|
|
31478
|
-
|
|
31479
|
-
|
|
31480
|
-
|
|
31481
|
-
|
|
31482
|
-
|
|
31483
|
-
AND COALESCE(json_extract(data, '$.finish'), '') = 'stop'
|
|
31484
|
-
AND COALESCE(json_extract(data, '$.providerID'), '') = 'magic-context'`);
|
|
31485
|
-
for (const row of partRows) {
|
|
31486
|
-
if (typeof row.id !== "string" || typeof row.message_id !== "string")
|
|
31476
|
+
AND COALESCE(json_extract(data, '$.summary'), 0) = 1
|
|
31477
|
+
AND COALESCE(json_extract(data, '$.finish'), '') = 'stop'
|
|
31478
|
+
AND COALESCE(json_extract(data, '$.providerID'), '') = 'magic-context'
|
|
31479
|
+
ORDER BY time_created ASC, id ASC`).all(sessionId);
|
|
31480
|
+
const summaryIdsByBoundary = new Map;
|
|
31481
|
+
for (const row of summaryRows) {
|
|
31482
|
+
if (typeof row.id !== "string" || typeof row.boundary_message_id !== "string")
|
|
31487
31483
|
continue;
|
|
31488
|
-
const
|
|
31489
|
-
|
|
31490
|
-
|
|
31491
|
-
|
|
31492
|
-
|
|
31493
|
-
|
|
31494
|
-
|
|
31484
|
+
const summaryIds = summaryIdsByBoundary.get(row.boundary_message_id) ?? [];
|
|
31485
|
+
summaryIds.push(row.id);
|
|
31486
|
+
summaryIdsByBoundary.set(row.boundary_message_id, summaryIds);
|
|
31487
|
+
}
|
|
31488
|
+
const boundaryIds = [...summaryIdsByBoundary.keys()];
|
|
31489
|
+
const markers = [];
|
|
31490
|
+
const chunkSize = 800;
|
|
31491
|
+
for (let offset = 0;offset < boundaryIds.length; offset += chunkSize) {
|
|
31492
|
+
const boundaryChunk = boundaryIds.slice(offset, offset + chunkSize);
|
|
31493
|
+
const placeholders = boundaryChunk.map(() => "?").join(", ");
|
|
31494
|
+
const partRows = db.prepare(`SELECT id, message_id, time_created
|
|
31495
|
+
FROM part
|
|
31496
|
+
WHERE +session_id = ?
|
|
31497
|
+
AND likelihood(message_id IN (${placeholders}), 0.000001)
|
|
31498
|
+
AND COALESCE(json_extract(data, '$.type'), '') = 'compaction'
|
|
31499
|
+
ORDER BY time_created ASC, id ASC`).all(sessionId, ...boundaryChunk);
|
|
31500
|
+
for (const row of partRows) {
|
|
31501
|
+
if (typeof row.id !== "string" || typeof row.message_id !== "string" || typeof row.time_created !== "number") {
|
|
31502
|
+
continue;
|
|
31503
|
+
}
|
|
31504
|
+
const summaryMessageIds = summaryIdsByBoundary.get(row.message_id);
|
|
31505
|
+
if (!summaryMessageIds)
|
|
31506
|
+
continue;
|
|
31507
|
+
markers.push({
|
|
31508
|
+
compactionPartId: row.id,
|
|
31509
|
+
boundaryMessageId: row.message_id,
|
|
31510
|
+
summaryMessageIds: [...summaryMessageIds],
|
|
31511
|
+
timeCreated: row.time_created
|
|
31512
|
+
});
|
|
31513
|
+
}
|
|
31495
31514
|
}
|
|
31496
|
-
|
|
31515
|
+
markers.sort((left, right) => left.timeCreated - right.timeCreated || left.compactionPartId.localeCompare(right.compactionPartId));
|
|
31516
|
+
return markers.map(({ timeCreated: _, ...marker }) => marker);
|
|
31497
31517
|
}
|
|
31498
31518
|
function removeForeignCompactionMarker(sessionId, marker, protectedSummaryMessageId) {
|
|
31499
31519
|
try {
|
|
31500
31520
|
const db = getWritableOpenCodeDb();
|
|
31501
31521
|
db.transaction(() => {
|
|
31502
|
-
const deletePartsOfMessage = db.prepare("DELETE FROM part WHERE session_id = ? AND message_id = ?");
|
|
31522
|
+
const deletePartsOfMessage = db.prepare("DELETE FROM part WHERE +session_id = ? AND message_id = ?");
|
|
31503
31523
|
const deleteMessage = db.prepare("DELETE FROM message WHERE session_id = ? AND id = ?");
|
|
31504
31524
|
for (const summaryMessageId of marker.summaryMessageIds) {
|
|
31505
31525
|
if (summaryMessageId === protectedSummaryMessageId)
|
|
@@ -31562,7 +31582,7 @@ function removeMcOwnedCompactionMarkers(sessionId, summaryText) {
|
|
|
31562
31582
|
AND EXISTS (
|
|
31563
31583
|
SELECT 1
|
|
31564
31584
|
FROM part p
|
|
31565
|
-
WHERE p.session_id = m.session_id
|
|
31585
|
+
WHERE +p.session_id = m.session_id
|
|
31566
31586
|
AND p.message_id = m.id
|
|
31567
31587
|
AND COALESCE(json_extract(p.data, '$.type'), '') = 'text'
|
|
31568
31588
|
AND COALESCE(json_extract(p.data, '$.text'), '') = ?
|
|
@@ -31622,7 +31642,7 @@ function removeMcOwnedCompactionMarkers(sessionId, summaryText) {
|
|
|
31622
31642
|
let removedLineages = 0;
|
|
31623
31643
|
let removedRows = 0;
|
|
31624
31644
|
let retainedLineages = 0;
|
|
31625
|
-
const deletePartsOfMessage = db.prepare("DELETE FROM part WHERE session_id = ? AND message_id = ?");
|
|
31645
|
+
const deletePartsOfMessage = db.prepare("DELETE FROM part WHERE +session_id = ? AND message_id = ?");
|
|
31626
31646
|
const deleteMessage = db.prepare("DELETE FROM message WHERE session_id = ? AND id = ?");
|
|
31627
31647
|
const deletePart = db.prepare("DELETE FROM part WHERE session_id = ? AND id = ?");
|
|
31628
31648
|
const deleteSummaries = (summaryIds) => {
|
|
@@ -675,7 +675,7 @@ function assistantAwaitingToolsFromOpenCodeDb(db, sessionId) {
|
|
|
675
675
|
return false;
|
|
676
676
|
if (latestAssistant.finish === "tool-calls")
|
|
677
677
|
return true;
|
|
678
|
-
const partRows = db.prepare("SELECT data FROM part WHERE session_id = ? AND likelihood(message_id = ?, 0.000001)").all(sessionId, latestAssistant.id);
|
|
678
|
+
const partRows = db.prepare("SELECT data FROM part WHERE +session_id = ? AND likelihood(message_id = ?, 0.000001)").all(sessionId, latestAssistant.id);
|
|
679
679
|
return partRows.some((row) => {
|
|
680
680
|
if (typeof row.data !== "string" || row.data.length === 0)
|
|
681
681
|
return false;
|
package/dist/index.js
CHANGED
|
@@ -542,7 +542,7 @@ import {
|
|
|
542
542
|
setRecompTerminal2,
|
|
543
543
|
runManagedRecomp2,
|
|
544
544
|
runManagedUpgrade2
|
|
545
|
-
} from "./index-
|
|
545
|
+
} from "./index-wde5446v.js";
|
|
546
546
|
import {
|
|
547
547
|
stripJsonComments,
|
|
548
548
|
isPrototypePollutionKey,
|
|
@@ -589,7 +589,7 @@ import {
|
|
|
589
589
|
assistantAwaitingTools,
|
|
590
590
|
getMessageTimesFromOpenCodeDb,
|
|
591
591
|
findLastAssistantModelFromOpenCodeDb
|
|
592
|
-
} from "./index-
|
|
592
|
+
} from "./index-z8552w7e.js";
|
|
593
593
|
import {
|
|
594
594
|
getErrorMessage,
|
|
595
595
|
describeError,
|
|
@@ -598,13 +598,13 @@ import {
|
|
|
598
598
|
clearIgnoredMessages2,
|
|
599
599
|
observeIgnoredNotificationEvent2,
|
|
600
600
|
sendStatusNotification2
|
|
601
|
-
} from "./index-
|
|
601
|
+
} from "./index-gynz8qdc.js";
|
|
602
602
|
import {
|
|
603
603
|
detectConflicts,
|
|
604
604
|
resolveCompactionForBoot,
|
|
605
605
|
sendConflictWarning2,
|
|
606
606
|
cleanupConflictWarnings2
|
|
607
|
-
} from "./index-
|
|
607
|
+
} from "./index-ecz14qke.js";
|
|
608
608
|
import {
|
|
609
609
|
resolveHistorianModel2,
|
|
610
610
|
resolveOpenCodeAgentOverrides2,
|
|
@@ -630,7 +630,7 @@ import {
|
|
|
630
630
|
retryPendingSessionCleanups2,
|
|
631
631
|
retryPendingRustSessionCleanupsForProject2,
|
|
632
632
|
clearSession2
|
|
633
|
-
} from "./index-
|
|
633
|
+
} from "./index-sf6x1ga9.js";
|
|
634
634
|
import {
|
|
635
635
|
registerNotificationSink2,
|
|
636
636
|
pushNotification2,
|
|
@@ -13418,7 +13418,7 @@ function normalizeOpenCodeRows(db, sessionId, rows) {
|
|
|
13418
13418
|
const placeholders = messageIds.map(() => "?").join(", ");
|
|
13419
13419
|
const partRows = db.prepare(`SELECT message_id, data
|
|
13420
13420
|
FROM part
|
|
13421
|
-
WHERE session_id = ?
|
|
13421
|
+
WHERE +session_id = ?
|
|
13422
13422
|
AND likelihood(message_id IN (${placeholders}), 0.000001)
|
|
13423
13423
|
ORDER BY time_created ASC, id ASC`).all(sessionId, ...messageIds);
|
|
13424
13424
|
const partsByMessageId = new Map;
|
|
@@ -29494,8 +29494,8 @@ function registerRpcHandlers(rpcServer, args) {
|
|
|
29494
29494
|
const db = getDb();
|
|
29495
29495
|
if (!db)
|
|
29496
29496
|
return { ok: false, error: "db unavailable" };
|
|
29497
|
-
const { runManagedRecomp } = await import("./recomp-orchestrator-
|
|
29498
|
-
const { sendIgnoredMessage } = await import("./send-session-notification-
|
|
29497
|
+
const { runManagedRecomp } = await import("./recomp-orchestrator-447vycpt.js");
|
|
29498
|
+
const { sendIgnoredMessage } = await import("./send-session-notification-2mzgd3zf.js");
|
|
29499
29499
|
log(`[rpc] recomp requested for session ${sessionId}`);
|
|
29500
29500
|
const ctx = await buildManagedCtx(db);
|
|
29501
29501
|
runManagedRecomp(ctx, sessionId).then((message) => {
|
|
@@ -29513,8 +29513,8 @@ function registerRpcHandlers(rpcServer, args) {
|
|
|
29513
29513
|
const db = getDb();
|
|
29514
29514
|
if (!db)
|
|
29515
29515
|
return { ok: false, error: "db unavailable" };
|
|
29516
|
-
const { runManagedUpgrade } = await import("./recomp-orchestrator-
|
|
29517
|
-
const { sendIgnoredMessage } = await import("./send-session-notification-
|
|
29516
|
+
const { runManagedUpgrade } = await import("./recomp-orchestrator-447vycpt.js");
|
|
29517
|
+
const { sendIgnoredMessage } = await import("./send-session-notification-2mzgd3zf.js");
|
|
29518
29518
|
log(`[rpc] session-upgrade requested for session ${sessionId}`);
|
|
29519
29519
|
const ctx = await buildManagedCtx(db);
|
|
29520
29520
|
runManagedUpgrade(ctx, sessionId).then((message) => {
|
|
@@ -29530,7 +29530,7 @@ function registerRpcHandlers(rpcServer, args) {
|
|
|
29530
29530
|
if (!db)
|
|
29531
29531
|
return { ok: false, error: "db unavailable" };
|
|
29532
29532
|
try {
|
|
29533
|
-
const { updateSessionMeta } = await import("./storage-meta-session-
|
|
29533
|
+
const { updateSessionMeta } = await import("./storage-meta-session-fkmfhswa.js");
|
|
29534
29534
|
updateSessionMeta(db, sessionId, { upgradeRemindedAt: Date.now() });
|
|
29535
29535
|
return { ok: true };
|
|
29536
29536
|
} catch (error) {
|
|
@@ -43435,7 +43435,7 @@ var server = async (ctx) => {
|
|
|
43435
43435
|
if (hasBannerEntries)
|
|
43436
43436
|
setTimeout(async () => {
|
|
43437
43437
|
try {
|
|
43438
|
-
const { sendStatusNotification } = await import("./send-session-notification-
|
|
43438
|
+
const { sendStatusNotification } = await import("./send-session-notification-2mzgd3zf.js");
|
|
43439
43439
|
const clientWithSessions = ctx.client;
|
|
43440
43440
|
const sessions = await Promise.resolve(clientWithSessions.session?.list?.()).catch(() => null);
|
|
43441
43441
|
const sessionList = Array.isArray(sessions) ? sessions : sessions?.data;
|
|
@@ -43452,7 +43452,7 @@ var server = async (ctx) => {
|
|
|
43452
43452
|
log(`[magic-context] opencode_db_missing path=${openCodeDbResolution.path} source=${openCodeDbResolution.source}`);
|
|
43453
43453
|
setTimeout(async () => {
|
|
43454
43454
|
try {
|
|
43455
|
-
const { sendStatusNotification } = await import("./send-session-notification-
|
|
43455
|
+
const { sendStatusNotification } = await import("./send-session-notification-2mzgd3zf.js");
|
|
43456
43456
|
const clientWithSessions = ctx.client;
|
|
43457
43457
|
const sessions = await Promise.resolve(clientWithSessions.session?.list?.()).catch(() => null);
|
|
43458
43458
|
const sessionList = Array.isArray(sessions) ? sessions : sessions?.data;
|
|
@@ -43698,12 +43698,12 @@ var server = async (ctx) => {
|
|
|
43698
43698
|
{
|
|
43699
43699
|
const fence = getSchemaFenceRejection();
|
|
43700
43700
|
if (fence) {
|
|
43701
|
-
import("./conflict-warning-hook-
|
|
43701
|
+
import("./conflict-warning-hook-aedp084d.js").then(({ sendSchemaFenceWarning }) => sendSchemaFenceWarning(ctx.client, ctx.directory, fence));
|
|
43702
43702
|
}
|
|
43703
43703
|
}
|
|
43704
43704
|
const serverUrl = ctx.serverUrl;
|
|
43705
43705
|
const serverUrlStr = serverUrl instanceof URL ? serverUrl.toString().replace(/\/$/, "") : typeof serverUrl === "string" ? serverUrl.replace(/\/$/, "") : undefined;
|
|
43706
|
-
import("./send-session-notification-
|
|
43706
|
+
import("./send-session-notification-2mzgd3zf.js").then(({ setNotificationServerUrl }) => {
|
|
43707
43707
|
setNotificationServerUrl(serverUrlStr);
|
|
43708
43708
|
});
|
|
43709
43709
|
if (conflictResult?.hasConflict) {
|
|
@@ -43726,7 +43726,7 @@ var server = async (ctx) => {
|
|
|
43726
43726
|
}) => {
|
|
43727
43727
|
if (!shouldShowAnnouncement())
|
|
43728
43728
|
return;
|
|
43729
|
-
return import("./conflict-warning-hook-
|
|
43729
|
+
return import("./conflict-warning-hook-aedp084d.js").then(({ sendStartupAnnouncement }) => sendStartupAnnouncement(ctx.client, ctx.directory, ANNOUNCEMENT_VERSION, ANNOUNCEMENT_FEATURES, ANNOUNCEMENT_FOOTER, markAnnouncementSeen));
|
|
43730
43730
|
}).catch(() => {});
|
|
43731
43731
|
}, 8000);
|
|
43732
43732
|
}
|
|
@@ -3,12 +3,12 @@ import {
|
|
|
3
3
|
setRecompTerminal2,
|
|
4
4
|
runManagedRecomp2,
|
|
5
5
|
runManagedUpgrade2
|
|
6
|
-
} from "./index-
|
|
6
|
+
} from "./index-wde5446v.js";
|
|
7
7
|
import"./index-xdtge3y2.js";
|
|
8
|
-
import"./index-
|
|
8
|
+
import"./index-sf6x1ga9.js";
|
|
9
9
|
import"./index-sd3egckz.js";
|
|
10
|
-
import"./index-
|
|
11
|
-
import"./index-
|
|
10
|
+
import"./index-gynz8qdc.js";
|
|
11
|
+
import"./index-z8552w7e.js";
|
|
12
12
|
import"./index-jdxxq8cz.js";
|
|
13
13
|
import"./index-dkv2dn46.js";
|
|
14
14
|
export {
|
package/dist/{send-session-notification-1qeqkswb.js → send-session-notification-2mzgd3zf.js}
RENAMED
|
@@ -5,8 +5,8 @@ import {
|
|
|
5
5
|
clearIgnoredMessages2,
|
|
6
6
|
observeIgnoredNotificationEvent2,
|
|
7
7
|
sendStatusNotification2
|
|
8
|
-
} from "./index-
|
|
9
|
-
import"./index-
|
|
8
|
+
} from "./index-gynz8qdc.js";
|
|
9
|
+
import"./index-z8552w7e.js";
|
|
10
10
|
import"./index-dkv2dn46.js";
|
|
11
11
|
export {
|
|
12
12
|
clearIgnoredMessages2 as clearIgnoredMessages,
|
|
@@ -6,8 +6,8 @@ import {
|
|
|
6
6
|
retryPendingSessionCleanups2,
|
|
7
7
|
retryPendingRustSessionCleanupsForProject2,
|
|
8
8
|
clearSession2
|
|
9
|
-
} from "./index-
|
|
10
|
-
import"./index-
|
|
9
|
+
} from "./index-sf6x1ga9.js";
|
|
10
|
+
import"./index-z8552w7e.js";
|
|
11
11
|
import"./index-dkv2dn46.js";
|
|
12
12
|
export {
|
|
13
13
|
advanceToolReclaimWatermark2 as advanceToolReclaimWatermark,
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/v2/server.ts"],"names":[],"mappings":";;;;AACA,wBAKE"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
/** Source rule: oc-audit-7a31b5c0f7.md:186-202; sanitization follows owner R16.
|
|
2
|
+
* The real GA CLI 2.0.3 placement probe confirms OPENCODE_DB is honoured.
|
|
3
|
+
* Isolation must still use private XDG roots, not rely solely on the filename.
|
|
4
|
+
*/
|
|
5
|
+
export declare function sourceDatabaseFilename(channel: string, env?: NodeJS.ProcessEnv): string;
|
|
6
|
+
/** GA data root: aft-playbook-fe8d4871f.md:46-48, with the CLI filename rule. */
|
|
7
|
+
export declare function gaDatabasePath(dataHome: string, channel?: string, env?: NodeJS.ProcessEnv): string;
|
|
8
|
+
export type MessageType = "agent-switched" | "model-switched" | "location-switched" | "user" | "synthetic" | "system" | "skill" | "shell" | "assistant" | "compaction" | "idle";
|
|
9
|
+
export interface MessageData {
|
|
10
|
+
[key: string]: unknown;
|
|
11
|
+
content?: Array<Record<string, unknown>>;
|
|
12
|
+
text?: string;
|
|
13
|
+
tokens?: {
|
|
14
|
+
input: number;
|
|
15
|
+
output: number;
|
|
16
|
+
reasoning: number;
|
|
17
|
+
cache: {
|
|
18
|
+
read: number;
|
|
19
|
+
write: number;
|
|
20
|
+
};
|
|
21
|
+
};
|
|
22
|
+
time?: {
|
|
23
|
+
created: number;
|
|
24
|
+
completed?: number;
|
|
25
|
+
streamed?: number;
|
|
26
|
+
};
|
|
27
|
+
}
|
|
28
|
+
export interface IdleData extends MessageData {
|
|
29
|
+
outcome: "succeeded" | "failed" | "interrupted";
|
|
30
|
+
}
|
|
31
|
+
export interface CompactionData extends MessageData {
|
|
32
|
+
status: string;
|
|
33
|
+
summary?: string;
|
|
34
|
+
recent?: string;
|
|
35
|
+
}
|
|
36
|
+
export interface StoreRow<T extends MessageType = MessageType> {
|
|
37
|
+
id: string;
|
|
38
|
+
session_id: string;
|
|
39
|
+
type: T;
|
|
40
|
+
seq: number;
|
|
41
|
+
data: T extends "idle" ? IdleData : T extends "compaction" ? CompactionData : MessageData;
|
|
42
|
+
}
|
|
43
|
+
/** Opens an existing store read-only; missing/corrupt stores propagate errors, never an empty history. */
|
|
44
|
+
export declare class V2StoreReader {
|
|
45
|
+
private readonly db;
|
|
46
|
+
constructor(path: string);
|
|
47
|
+
close(): void;
|
|
48
|
+
/** Exclusive cursor, ascending seq. IDs are not chronological in the v2 store. */
|
|
49
|
+
page(sessionID: string, options?: {
|
|
50
|
+
after?: number;
|
|
51
|
+
limit?: number;
|
|
52
|
+
type?: MessageType;
|
|
53
|
+
}): {
|
|
54
|
+
rows: StoreRow[];
|
|
55
|
+
cursor: number | undefined;
|
|
56
|
+
};
|
|
57
|
+
latestCompaction(sessionID: string): StoreRow<"compaction"> | undefined;
|
|
58
|
+
idleRows(sessionID: string, after?: number): StoreRow<"idle">[];
|
|
59
|
+
/** Include the completed checkpoint itself, matching the host history cut. */
|
|
60
|
+
window(sessionID: string): StoreRow[];
|
|
61
|
+
private all;
|
|
62
|
+
}
|
|
63
|
+
//# sourceMappingURL=store-reader.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"store-reader.d.ts","sourceRoot":"","sources":["../../src/v2/store-reader.ts"],"names":[],"mappings":"AAGA;;;GAGG;AACH,wBAAgB,sBAAsB,CAClC,OAAO,EAAE,MAAM,EACf,GAAG,GAAE,MAAM,CAAC,UAAwB,GACrC,MAAM,CASR;AAED,iFAAiF;AACjF,wBAAgB,cAAc,CAC1B,QAAQ,EAAE,MAAM,EAChB,OAAO,SAAW,EAClB,GAAG,GAAE,MAAM,CAAC,UAAwB,GACrC,MAAM,CAGR;AAGD,MAAM,MAAM,WAAW,GACjB,gBAAgB,GAChB,gBAAgB,GAChB,mBAAmB,GACnB,MAAM,GACN,WAAW,GACX,QAAQ,GACR,OAAO,GACP,OAAO,GACP,WAAW,GACX,YAAY,GACZ,MAAM,CAAC;AACb,MAAM,WAAW,WAAW;IACxB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IACvB,OAAO,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IACzC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE;QACL,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,EAAE,MAAM,CAAC;QAClB,KAAK,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAA;SAAE,CAAC;KAC1C,CAAC;IACF,IAAI,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CACrE;AACD,MAAM,WAAW,QAAS,SAAQ,WAAW;IACzC,OAAO,EAAE,WAAW,GAAG,QAAQ,GAAG,aAAa,CAAC;CACnD;AACD,MAAM,WAAW,cAAe,SAAQ,WAAW;IAC/C,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB;AACD,MAAM,WAAW,QAAQ,CAAC,CAAC,SAAS,WAAW,GAAG,WAAW;IACzD,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,CAAC,CAAC;IACR,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,CAAC,SAAS,MAAM,GAAG,QAAQ,GAAG,CAAC,SAAS,YAAY,GAAG,cAAc,GAAG,WAAW,CAAC;CAC7F;AAmBD,0GAA0G;AAC1G,qBAAa,aAAa;IACtB,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAW;gBAClB,IAAI,EAAE,MAAM;IAGxB,KAAK,IAAI,IAAI;IAIb,kFAAkF;IAClF,IAAI,CACA,SAAS,EAAE,MAAM,EACjB,OAAO,GAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,WAAW,CAAA;KAAO,GACrE;QAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;QAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAA;KAAE;IAoBnD,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,QAAQ,CAAC,YAAY,CAAC,GAAG,SAAS;IAQvE,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,SAAK,GAAG,QAAQ,CAAC,MAAM,CAAC,EAAE;IAG3D,8EAA8E;IAC9E,MAAM,CAAC,SAAS,EAAE,MAAM,GAAG,QAAQ,EAAE;IAMrC,OAAO,CAAC,GAAG;CASd"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cortexkit/opencode-magic-context",
|
|
3
|
-
"version": "0.42.
|
|
3
|
+
"version": "0.42.3",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "OpenCode plugin for Magic Context — cross-session memory and context management",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -34,7 +34,8 @@
|
|
|
34
34
|
"README.md"
|
|
35
35
|
],
|
|
36
36
|
"scripts": {
|
|
37
|
-
"build": "tsc -p ../retina-local-fs/tsconfig.build.json && bun run build:tui && rm -f dist/index.js dist/transformers-web.js dist/transformers-node-wasm.js dist/*-*.js && bun build src/features/magic-context/memory/transformers-web-entry.ts --outfile dist/transformers-web.js --target browser --format esm --external onnxruntime-web && bun scripts/build-transformers-node-wasm.ts dist && bun build src/index.ts --outdir dist --target node --format esm --splitting --external @opencode-ai/plugin --external onnxruntime-node --external onnxruntime-web --external sharp --external bun:sqlite --external node:sqlite && tsc --emitDeclarationOnly",
|
|
37
|
+
"build": "tsc -p ../retina-local-fs/tsconfig.build.json && bun run build:tui && rm -f dist/index.js dist/transformers-web.js dist/transformers-node-wasm.js dist/*-*.js && bun build src/features/magic-context/memory/transformers-web-entry.ts --outfile dist/transformers-web.js --target browser --format esm --external onnxruntime-web && bun scripts/build-transformers-node-wasm.ts dist && bun build src/index.ts --outdir dist --target node --format esm --splitting --external @opencode-ai/plugin --external onnxruntime-node --external onnxruntime-web --external sharp --external bun:sqlite --external node:sqlite && bun run build:v2 && tsc --emitDeclarationOnly",
|
|
38
|
+
"build:v2": "bun build src/v2/server.ts --outfile dist/v2/server.js --target node --format esm --external @opencode/plugin && bun test src/v2/server.test.ts",
|
|
38
39
|
"build:tui": "bun scripts/build-tui.ts",
|
|
39
40
|
"check:tui-compiled": "bun run build:tui && git diff --exit-code -- src/tui-compiled && test -z \"$(git status --porcelain -- src/tui-compiled)\"",
|
|
40
41
|
"check:transformers-node-wasm": "bun scripts/verify-transformers-node-wasm.ts",
|
|
@@ -69,6 +70,10 @@
|
|
|
69
70
|
"sharp": "^0.35.0"
|
|
70
71
|
},
|
|
71
72
|
"devDependencies": {
|
|
73
|
+
"@opencode/plugin": "2.0.3",
|
|
74
|
+
"@opencode/cli": "2.0.3",
|
|
75
|
+
"@opencode/client": "2.0.3",
|
|
76
|
+
"effect": "4.0.0-rc.112",
|
|
72
77
|
"@ai-sdk/anthropic": "3.0.82",
|
|
73
78
|
"@huggingface/transformers": "^4.1.0",
|
|
74
79
|
"@ai-sdk/openai-compatible": "2.0.41",
|