@remnic/core 9.69.38 → 9.69.39
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/access-admin-ops-surface.d.ts +2 -2
- package/dist/access-admin-ops-surface.js +18 -18
- package/dist/access-authorization-probe.d.ts +2 -2
- package/dist/access-authorization-probe.js +19 -19
- package/dist/access-boundary.d.ts +2 -2
- package/dist/access-boundary.js +18 -18
- package/dist/access-cli.js +67 -66
- package/dist/access-cli.js.map +1 -1
- package/dist/access-extraction-force-flush.d.ts +2 -2
- package/dist/access-extraction-force-flush.js +18 -18
- package/dist/access-http-briefing.d.ts +2 -2
- package/dist/access-http-briefing.js +19 -19
- package/dist/access-http-lcm-compaction.d.ts +2 -2
- package/dist/access-http-lifecycle-flush.d.ts +2 -2
- package/dist/access-http-offline-stream.d.ts +2 -2
- package/dist/access-http-query.js +20 -20
- package/dist/access-http.d.ts +3 -3
- package/dist/access-http.js +35 -35
- package/dist/access-identity-continuity-surface.d.ts +1 -1
- package/dist/access-identity-continuity-surface.js +18 -18
- package/dist/access-lcm-surface.d.ts +2 -2
- package/dist/access-lcm-surface.js +18 -18
- package/dist/access-mcp.d.ts +2 -2
- package/dist/access-mcp.js +25 -25
- package/dist/access-namespace-preflight.js +18 -18
- package/dist/access-observe-transcript.d.ts +1 -1
- package/dist/access-observe-write-surface.d.ts +2 -2
- package/dist/access-observe-write-surface.js +18 -18
- package/dist/access-offline-manifest.d.ts +1 -1
- package/dist/access-operations-batch.js +19 -19
- package/dist/access-operations.d.ts +2 -2
- package/dist/access-operations.js +24 -24
- package/dist/access-recall-concurrency.d.ts +2 -2
- package/dist/access-recall-concurrency.js +18 -18
- package/dist/access-recall-response.d.ts +2 -2
- package/dist/access-recall-response.js +18 -18
- package/dist/access-recall-surface.d.ts +2 -2
- package/dist/access-recall-surface.js +18 -18
- package/dist/{access-service-gBcdRUHY.d.ts → access-service-MY4bsr_Q.d.ts} +1 -1
- package/dist/access-service-helpers.d.ts +2 -2
- package/dist/access-service.d.ts +2 -2
- package/dist/access-service.js +18 -18
- package/dist/access-surface-catalog.d.ts +2 -2
- package/dist/access-surface-catalog.js +20 -20
- package/dist/active-recall.js +2 -2
- package/dist/adapters/index.js +4 -4
- package/dist/adapters/registry.js +2 -2
- package/dist/bootstrap.d.ts +1 -1
- package/dist/briefing.js +7 -7
- package/dist/causal-consolidation.js +8 -8
- package/dist/{chunk-2PTNJTBE.js → chunk-2ZTDRNCS.js} +2 -2
- package/dist/{chunk-BX4EOMKT.js → chunk-3EKVN2OP.js} +2 -2
- package/dist/{chunk-DPMTLJCT.js → chunk-3NPNBVFR.js} +2 -2
- package/dist/{chunk-OKO57IXB.js → chunk-4JVQRFZD.js} +4 -4
- package/dist/{chunk-6PRY6CLC.js → chunk-4RZLTZVM.js} +1 -1
- package/dist/{chunk-PPQEP4OH.js → chunk-54NX5EG4.js} +2 -2
- package/dist/{chunk-2OGTN37H.js → chunk-5SPCMAUC.js} +3 -3
- package/dist/{chunk-TUKGXQ5T.js → chunk-5YCNDC3C.js} +2 -2
- package/dist/chunk-6AGWBKQU.js +94 -0
- package/dist/chunk-6AGWBKQU.js.map +1 -0
- package/dist/{chunk-BJEJUOGM.js → chunk-6YAIN5XJ.js} +2 -2
- package/dist/{chunk-X2NFFBTO.js → chunk-A7GQBJP5.js} +4 -4
- package/dist/{chunk-ZKZFFWLV.js → chunk-AAZEKXUP.js} +2 -2
- package/dist/{chunk-6ZMNTRU3.js → chunk-AENM6GKU.js} +2 -2
- package/dist/{chunk-7S53BPTU.js → chunk-CZTPU65V.js} +8 -8
- package/dist/{chunk-UQNYPK7G.js → chunk-D545Z7UH.js} +2 -2
- package/dist/{chunk-GT4ZHOKT.js → chunk-ENBPQEVU.js} +2 -2
- package/dist/{chunk-TRHBQVVO.js → chunk-EYKIDK33.js} +11 -11
- package/dist/{chunk-EY5JAWZC.js → chunk-F4EHXVP7.js} +2 -2
- package/dist/{chunk-474DL7UB.js → chunk-FNHLI2RE.js} +3 -3
- package/dist/{chunk-2MT4ADLQ.js → chunk-FWWWUPOE.js} +2 -2
- package/dist/{chunk-M3MYMWXG.js → chunk-FXHOZGSE.js} +2 -2
- package/dist/{chunk-VHOSM5G4.js → chunk-GG5FHZJJ.js} +2 -2
- package/dist/{chunk-CBFYCDYO.js → chunk-GI4ZBWPQ.js} +3 -3
- package/dist/{chunk-KDFDXEXZ.js → chunk-GMIQV6DD.js} +2 -2
- package/dist/{chunk-XGRXQR6T.js → chunk-IL6ODG6M.js} +2 -2
- package/dist/{chunk-XWLLFKHM.js → chunk-IQEJIOEU.js} +7 -7
- package/dist/{chunk-MLWMR2GE.js → chunk-JKKII6GX.js} +2 -2
- package/dist/{chunk-T32B72QX.js → chunk-JTQR6L2N.js} +2 -2
- package/dist/{chunk-BRZWWUCJ.js → chunk-LMLGBG6H.js} +2 -2
- package/dist/{chunk-3OYSIVOO.js → chunk-LPYYY4AP.js} +152 -112
- package/dist/chunk-LPYYY4AP.js.map +1 -0
- package/dist/{chunk-A6CKMIPK.js → chunk-MUTVRKKY.js} +8 -8
- package/dist/{chunk-JPOX2AJB.js → chunk-NXGSONWM.js} +2 -2
- package/dist/{chunk-GGAXFTNH.js → chunk-O4M4BDIJ.js} +2 -2
- package/dist/{chunk-VV4ZVUE6.js → chunk-O76F5QPP.js} +2 -2
- package/dist/{chunk-G43PMSME.js → chunk-OPBFP4TF.js} +3 -3
- package/dist/{chunk-JNSENHV5.js → chunk-PCOVEDPK.js} +3 -3
- package/dist/{chunk-VMNCZ627.js → chunk-Q432REND.js} +2 -2
- package/dist/{chunk-QMWKENNK.js → chunk-Q4AUIFUA.js} +4 -4
- package/dist/{chunk-74AHCL56.js → chunk-Q7CLGFA7.js} +2 -2
- package/dist/{chunk-5AERZWJD.js → chunk-QTQ6XKGT.js} +3 -3
- package/dist/{chunk-K5DA5TRG.js → chunk-RLJHJQUY.js} +2 -2
- package/dist/{chunk-GQQVEH6V.js → chunk-TA4C3XB7.js} +2 -2
- package/dist/{chunk-V6G2PSXA.js → chunk-TNZNSMVJ.js} +26 -26
- package/dist/{chunk-JA2QJOAX.js → chunk-TSP5WH72.js} +2 -2
- package/dist/{chunk-NWMUSKED.js → chunk-UHRZ324M.js} +3 -3
- package/dist/{chunk-62QIQEUC.js → chunk-UZEHHXYC.js} +13 -13
- package/dist/{chunk-TTSJ7WUC.js → chunk-VBSNUH4J.js} +2 -2
- package/dist/{chunk-R4VAUNNC.js → chunk-VJIE4D2I.js} +2 -2
- package/dist/{chunk-BYZKLEWG.js → chunk-VSL63CFJ.js} +5 -5
- package/dist/{chunk-4B3HBIFX.js → chunk-WBM2MVBK.js} +2 -2
- package/dist/{chunk-ULDBGA5W.js → chunk-WIWLX65T.js} +2 -2
- package/dist/{chunk-XN6XT6GR.js → chunk-X4TD4O2F.js} +2 -2
- package/dist/{chunk-UIOIDW3L.js → chunk-XH3HGI2N.js} +2 -2
- package/dist/chunk-YDVAM7S4.js +221 -0
- package/dist/chunk-YDVAM7S4.js.map +1 -0
- package/dist/{chunk-VELCIWJZ.js → chunk-YKREX63Z.js} +19 -10
- package/dist/chunk-YKREX63Z.js.map +1 -0
- package/dist/{chunk-HVS7TH2Y.js → chunk-ZBW7A667.js} +2 -2
- package/dist/{cli-BNg-TAlz.d.ts → cli-DGq0MNpO.d.ts} +2 -2
- package/dist/cli.d.ts +3 -3
- package/dist/cli.js +49 -49
- package/dist/coding/export-okf-codegraph.js +6 -6
- package/dist/compounding/engine.js +7 -7
- package/dist/config.js +2 -2
- package/dist/connectors/codex-materialize-runner.js +7 -7
- package/dist/connectors/index.js +7 -7
- package/dist/convergence-refresh.js +9 -9
- package/dist/corpus-watermark.js +9 -9
- package/dist/deep-recall-http-glue.d.ts +2 -2
- package/dist/deep-recall-mcp-tools.d.ts +2 -2
- package/dist/entity-retrieval.js +7 -7
- package/dist/explicit-capture.d.ts +1 -1
- package/dist/external-wiki-access.d.ts +2 -2
- package/dist/external-wiki-access.js +19 -19
- package/dist/external-wiki-mcp-tools.d.ts +2 -2
- package/dist/extraction.js +7 -7
- package/dist/harmonic-retrieval.js +1 -1
- package/dist/index.d.ts +6 -6
- package/dist/index.js +78 -69
- package/dist/lcm/engine.js +2 -2
- package/dist/lcm/index.js +4 -4
- package/dist/location/index.js +9 -9
- package/dist/maintenance/memory-governance.js +7 -7
- package/dist/maintenance/rebuild-memory-lifecycle-ledger.js +7 -7
- package/dist/maintenance/rebuild-memory-projection.js +8 -8
- package/dist/mcp-memory-inspector-app.d.ts +2 -2
- package/dist/memory-subject-cli.d.ts +2 -2
- package/dist/memory-subject.d.ts +2 -2
- package/dist/namespaces/migrate.js +8 -8
- package/dist/namespaces/search.js +4 -4
- package/dist/namespaces/storage.js +7 -7
- package/dist/operator-doctor-corpus.js +10 -10
- package/dist/operator-toolkit.js +17 -17
- package/dist/orchestration/maintenance.js +15 -15
- package/dist/{orchestrator-DocO0_hw.d.ts → orchestrator-ComHLm49.d.ts} +13 -2
- package/dist/orchestrator.d.ts +1 -1
- package/dist/orchestrator.js +67 -66
- package/dist/{public-http-C0FoTiL_.d.ts → public-http-CuK4_Cb1.d.ts} +1 -1
- package/dist/recall-state-view-admission.js +4 -4
- package/dist/recall-state-view-anchors.d.ts +85 -0
- package/dist/recall-state-view-anchors.js +21 -0
- package/dist/recall-state-view-anchors.js.map +1 -0
- package/dist/recall-state-view-inject.js +2 -2
- package/dist/recall-state-view-render.js +2 -2
- package/dist/recall-state-view-widen.js +2 -2
- package/dist/recall-state-view-wire.js +3 -3
- package/dist/recall-state-view.d.ts +37 -1
- package/dist/recall-state-view.js +11 -3
- package/dist/resume-bundles.js +3 -3
- package/dist/search/factory.js +3 -3
- package/dist/search/index.js +7 -7
- package/dist/semantic-consolidation.js +8 -8
- package/dist/semantic-rule-promotion.js +7 -7
- package/dist/semantic-rule-verifier.js +7 -7
- package/dist/source-agent-qualifier.js +7 -7
- package/dist/standup/build.js +7 -7
- package/dist/storage.js +6 -6
- package/dist/support-passport/index.d.ts +5 -5
- package/dist/support-passport/index.js +21 -21
- package/dist/transfer/export-okf.js +7 -7
- package/dist/verified-recall.js +7 -7
- package/dist/who-knows-cli.d.ts +2 -2
- package/dist/who-knows-cli.js +8 -8
- package/dist/who-knows.d.ts +2 -2
- package/dist/who-knows.js +7 -7
- package/package.json +2 -2
- package/src/orchestration/recall-internal.ts +91 -74
- package/src/orchestration/recall-rerank-coordinator.ts +41 -4
- package/src/orchestration/recall-search-pipeline.ts +25 -18
- package/src/orchestration/recall-state-view-pipeline.test.ts +89 -0
- package/src/recall-rerank-coordinator.test.ts +153 -0
- package/src/recall-state-view-anchors.ts +163 -0
- package/src/recall-state-view-widen.ts +21 -7
- package/src/recall-state-view-zero-diff.test.ts +30 -0
- package/src/recall-state-view.test.ts +161 -0
- package/src/recall-state-view.ts +206 -35
- package/src/trust-score-recall-paths.test.ts +1 -1
- package/dist/chunk-255PC37A.js +0 -120
- package/dist/chunk-255PC37A.js.map +0 -1
- package/dist/chunk-3OYSIVOO.js.map +0 -1
- package/dist/chunk-VELCIWJZ.js.map +0 -1
- /package/dist/{chunk-2PTNJTBE.js.map → chunk-2ZTDRNCS.js.map} +0 -0
- /package/dist/{chunk-BX4EOMKT.js.map → chunk-3EKVN2OP.js.map} +0 -0
- /package/dist/{chunk-DPMTLJCT.js.map → chunk-3NPNBVFR.js.map} +0 -0
- /package/dist/{chunk-OKO57IXB.js.map → chunk-4JVQRFZD.js.map} +0 -0
- /package/dist/{chunk-6PRY6CLC.js.map → chunk-4RZLTZVM.js.map} +0 -0
- /package/dist/{chunk-PPQEP4OH.js.map → chunk-54NX5EG4.js.map} +0 -0
- /package/dist/{chunk-2OGTN37H.js.map → chunk-5SPCMAUC.js.map} +0 -0
- /package/dist/{chunk-TUKGXQ5T.js.map → chunk-5YCNDC3C.js.map} +0 -0
- /package/dist/{chunk-BJEJUOGM.js.map → chunk-6YAIN5XJ.js.map} +0 -0
- /package/dist/{chunk-X2NFFBTO.js.map → chunk-A7GQBJP5.js.map} +0 -0
- /package/dist/{chunk-ZKZFFWLV.js.map → chunk-AAZEKXUP.js.map} +0 -0
- /package/dist/{chunk-6ZMNTRU3.js.map → chunk-AENM6GKU.js.map} +0 -0
- /package/dist/{chunk-7S53BPTU.js.map → chunk-CZTPU65V.js.map} +0 -0
- /package/dist/{chunk-UQNYPK7G.js.map → chunk-D545Z7UH.js.map} +0 -0
- /package/dist/{chunk-GT4ZHOKT.js.map → chunk-ENBPQEVU.js.map} +0 -0
- /package/dist/{chunk-TRHBQVVO.js.map → chunk-EYKIDK33.js.map} +0 -0
- /package/dist/{chunk-EY5JAWZC.js.map → chunk-F4EHXVP7.js.map} +0 -0
- /package/dist/{chunk-474DL7UB.js.map → chunk-FNHLI2RE.js.map} +0 -0
- /package/dist/{chunk-2MT4ADLQ.js.map → chunk-FWWWUPOE.js.map} +0 -0
- /package/dist/{chunk-M3MYMWXG.js.map → chunk-FXHOZGSE.js.map} +0 -0
- /package/dist/{chunk-VHOSM5G4.js.map → chunk-GG5FHZJJ.js.map} +0 -0
- /package/dist/{chunk-CBFYCDYO.js.map → chunk-GI4ZBWPQ.js.map} +0 -0
- /package/dist/{chunk-KDFDXEXZ.js.map → chunk-GMIQV6DD.js.map} +0 -0
- /package/dist/{chunk-XGRXQR6T.js.map → chunk-IL6ODG6M.js.map} +0 -0
- /package/dist/{chunk-XWLLFKHM.js.map → chunk-IQEJIOEU.js.map} +0 -0
- /package/dist/{chunk-MLWMR2GE.js.map → chunk-JKKII6GX.js.map} +0 -0
- /package/dist/{chunk-T32B72QX.js.map → chunk-JTQR6L2N.js.map} +0 -0
- /package/dist/{chunk-BRZWWUCJ.js.map → chunk-LMLGBG6H.js.map} +0 -0
- /package/dist/{chunk-A6CKMIPK.js.map → chunk-MUTVRKKY.js.map} +0 -0
- /package/dist/{chunk-JPOX2AJB.js.map → chunk-NXGSONWM.js.map} +0 -0
- /package/dist/{chunk-GGAXFTNH.js.map → chunk-O4M4BDIJ.js.map} +0 -0
- /package/dist/{chunk-VV4ZVUE6.js.map → chunk-O76F5QPP.js.map} +0 -0
- /package/dist/{chunk-G43PMSME.js.map → chunk-OPBFP4TF.js.map} +0 -0
- /package/dist/{chunk-JNSENHV5.js.map → chunk-PCOVEDPK.js.map} +0 -0
- /package/dist/{chunk-VMNCZ627.js.map → chunk-Q432REND.js.map} +0 -0
- /package/dist/{chunk-QMWKENNK.js.map → chunk-Q4AUIFUA.js.map} +0 -0
- /package/dist/{chunk-74AHCL56.js.map → chunk-Q7CLGFA7.js.map} +0 -0
- /package/dist/{chunk-5AERZWJD.js.map → chunk-QTQ6XKGT.js.map} +0 -0
- /package/dist/{chunk-K5DA5TRG.js.map → chunk-RLJHJQUY.js.map} +0 -0
- /package/dist/{chunk-GQQVEH6V.js.map → chunk-TA4C3XB7.js.map} +0 -0
- /package/dist/{chunk-V6G2PSXA.js.map → chunk-TNZNSMVJ.js.map} +0 -0
- /package/dist/{chunk-JA2QJOAX.js.map → chunk-TSP5WH72.js.map} +0 -0
- /package/dist/{chunk-NWMUSKED.js.map → chunk-UHRZ324M.js.map} +0 -0
- /package/dist/{chunk-62QIQEUC.js.map → chunk-UZEHHXYC.js.map} +0 -0
- /package/dist/{chunk-TTSJ7WUC.js.map → chunk-VBSNUH4J.js.map} +0 -0
- /package/dist/{chunk-R4VAUNNC.js.map → chunk-VJIE4D2I.js.map} +0 -0
- /package/dist/{chunk-BYZKLEWG.js.map → chunk-VSL63CFJ.js.map} +0 -0
- /package/dist/{chunk-4B3HBIFX.js.map → chunk-WBM2MVBK.js.map} +0 -0
- /package/dist/{chunk-ULDBGA5W.js.map → chunk-WIWLX65T.js.map} +0 -0
- /package/dist/{chunk-XN6XT6GR.js.map → chunk-X4TD4O2F.js.map} +0 -0
- /package/dist/{chunk-UIOIDW3L.js.map → chunk-XH3HGI2N.js.map} +0 -0
- /package/dist/{chunk-HVS7TH2Y.js.map → chunk-ZBW7A667.js.map} +0 -0
|
@@ -0,0 +1,221 @@
|
|
|
1
|
+
import {
|
|
2
|
+
coerceBooleanLike
|
|
3
|
+
} from "./chunk-PQVCH2AE.js";
|
|
4
|
+
|
|
5
|
+
// src/recall-state-view.ts
|
|
6
|
+
var DEFAULT_RECALL_STATE_VIEWS = false;
|
|
7
|
+
var CHANGE_WORDS = ["switch", "switches", "switched", "switching", "change", "changes", "changed", "changing"];
|
|
8
|
+
var CHANGE_PHRASE_RE = /\bwhen\s+did\b|\bused\s+to\b/;
|
|
9
|
+
var CHANGE_WORD_RE = new RegExp(`\\b(?:${CHANGE_WORDS.join("|")})\\b`);
|
|
10
|
+
var EVENT_POINTER_RE = /\b(?:before|after)\s+(?:the|a|an|this|that|these|those)\b/;
|
|
11
|
+
function parseRecallStateViews(raw) {
|
|
12
|
+
return coerceBooleanLike(raw, "recallStateViews") === true;
|
|
13
|
+
}
|
|
14
|
+
function isChangeOrientedQuery(query) {
|
|
15
|
+
const lower = query.toLowerCase();
|
|
16
|
+
return CHANGE_PHRASE_RE.test(lower) || CHANGE_WORD_RE.test(lower) || EVENT_POINTER_RE.test(lower);
|
|
17
|
+
}
|
|
18
|
+
function shouldWidenSuperseded(successorId, candidateIds) {
|
|
19
|
+
return typeof successorId === "string" && successorId.length > 0 && candidateIds.has(successorId);
|
|
20
|
+
}
|
|
21
|
+
function formatSupersededPrefix(date, successorId) {
|
|
22
|
+
return `[superseded ${date} by ${successorId}]`;
|
|
23
|
+
}
|
|
24
|
+
function resultStateViewId(result) {
|
|
25
|
+
return result.id ?? result.docid ?? "";
|
|
26
|
+
}
|
|
27
|
+
function stateViewKey(namespace, id) {
|
|
28
|
+
return `${typeof namespace === "string" ? namespace : ""}\0${id}`;
|
|
29
|
+
}
|
|
30
|
+
function resultStateViewKey(result) {
|
|
31
|
+
const id = resultStateViewId(result);
|
|
32
|
+
return id ? stateViewKey(result.namespace, id) : "";
|
|
33
|
+
}
|
|
34
|
+
function stateViewIdFromKey(key) {
|
|
35
|
+
const sep = key.indexOf("\0");
|
|
36
|
+
return sep === -1 ? key : key.slice(sep + 1);
|
|
37
|
+
}
|
|
38
|
+
function buildSuccessorMap(results, chains) {
|
|
39
|
+
const byPred = /* @__PURE__ */ new Map();
|
|
40
|
+
const link = (predKey, succKey, overwrite) => {
|
|
41
|
+
if (!predKey || !succKey) return;
|
|
42
|
+
if (overwrite || !byPred.has(predKey)) byPred.set(predKey, succKey);
|
|
43
|
+
};
|
|
44
|
+
for (const chain of chains) {
|
|
45
|
+
if (chain.predecessorId && chain.successorId) {
|
|
46
|
+
link(
|
|
47
|
+
stateViewKey(chain.namespace, chain.predecessorId),
|
|
48
|
+
stateViewKey(chain.namespace, chain.successorId),
|
|
49
|
+
false
|
|
50
|
+
);
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
for (const result of results) {
|
|
54
|
+
const key = resultStateViewKey(result);
|
|
55
|
+
if (key && result.supersedes) {
|
|
56
|
+
link(stateViewKey(result.namespace, result.supersedes), key, false);
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
for (const result of results) {
|
|
60
|
+
const key = resultStateViewKey(result);
|
|
61
|
+
if (key && result.supersededBy) {
|
|
62
|
+
link(key, stateViewKey(result.namespace, result.supersededBy), true);
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
return byPred;
|
|
66
|
+
}
|
|
67
|
+
function successorLinkOf(result, byPred) {
|
|
68
|
+
const key = resultStateViewKey(result);
|
|
69
|
+
return {
|
|
70
|
+
superseded: result.status === "superseded" || Boolean(result.supersededBy) || byPred.has(key),
|
|
71
|
+
successorKey: result.supersededBy ? stateViewKey(result.namespace, result.supersededBy) : byPred.get(key)
|
|
72
|
+
};
|
|
73
|
+
}
|
|
74
|
+
function labelFor(key, result, byPred, admittedIds, asOfMs) {
|
|
75
|
+
const { successorKey } = successorLinkOf(result, byPred);
|
|
76
|
+
const isPred = shouldWidenSuperseded(successorKey, admittedIds);
|
|
77
|
+
let isSucc = false;
|
|
78
|
+
for (const [predId, succId] of byPred) {
|
|
79
|
+
if (succId === key && admittedIds.has(predId)) {
|
|
80
|
+
isSucc = true;
|
|
81
|
+
break;
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
if (isPred && isSucc) return "transition";
|
|
85
|
+
if (isPred) return "historical";
|
|
86
|
+
if (isSucc) return "current";
|
|
87
|
+
if (result.status === "superseded") {
|
|
88
|
+
return asOfMs === null ? "historical" : snapshotStateLabel(result, asOfMs);
|
|
89
|
+
}
|
|
90
|
+
return "current";
|
|
91
|
+
}
|
|
92
|
+
function snapshotStateLabel(result, asOfMs) {
|
|
93
|
+
const invalidAtMs = Date.parse(result.invalidAt ?? "");
|
|
94
|
+
const boundaryMs = Number.isFinite(invalidAtMs) ? invalidAtMs : Date.parse(result.supersededAt ?? "");
|
|
95
|
+
return Number.isFinite(boundaryMs) && boundaryMs <= asOfMs ? "historical" : "current";
|
|
96
|
+
}
|
|
97
|
+
function annotateStateView(results, query, chains, options = {}) {
|
|
98
|
+
const enabled = options.enabled === true;
|
|
99
|
+
if (!enabled || !isChangeOrientedQuery(query)) return results;
|
|
100
|
+
const asOfMs = typeof options.asOfMs === "number" && Number.isFinite(options.asOfMs) ? options.asOfMs : null;
|
|
101
|
+
const byPred = buildSuccessorMap(results, chains);
|
|
102
|
+
const candidateIds = /* @__PURE__ */ new Set();
|
|
103
|
+
for (const result of results) {
|
|
104
|
+
const key = resultStateViewKey(result);
|
|
105
|
+
if (key) candidateIds.add(key);
|
|
106
|
+
}
|
|
107
|
+
let admitted;
|
|
108
|
+
if (asOfMs !== null) {
|
|
109
|
+
admitted = results.slice();
|
|
110
|
+
} else {
|
|
111
|
+
admitted = [];
|
|
112
|
+
for (const result of results) {
|
|
113
|
+
const { superseded, successorKey } = successorLinkOf(result, byPred);
|
|
114
|
+
if (!superseded || shouldWidenSuperseded(successorKey, candidateIds)) {
|
|
115
|
+
admitted.push(result);
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
let admittedIds2 = new Set(admitted.map(resultStateViewKey).filter(Boolean));
|
|
119
|
+
for (let changed = true; changed; ) {
|
|
120
|
+
changed = false;
|
|
121
|
+
for (let i = admitted.length - 1; i >= 0; i -= 1) {
|
|
122
|
+
const row = admitted[i];
|
|
123
|
+
const { superseded, successorKey } = successorLinkOf(row, byPred);
|
|
124
|
+
if (superseded && !shouldWidenSuperseded(successorKey, admittedIds2)) {
|
|
125
|
+
admitted.splice(i, 1);
|
|
126
|
+
changed = true;
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
if (changed) admittedIds2 = new Set(admitted.map(resultStateViewKey).filter(Boolean));
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
const admittedIds = new Set(admitted.map(resultStateViewKey).filter(Boolean));
|
|
133
|
+
return admitted.map((result) => {
|
|
134
|
+
const key = resultStateViewKey(result);
|
|
135
|
+
const { successorKey } = successorLinkOf(result, byPred);
|
|
136
|
+
const stateLabel = labelFor(key, result, byPred, admittedIds, asOfMs);
|
|
137
|
+
if (result.supersededBy || !successorKey) return { ...result, stateLabel };
|
|
138
|
+
return { ...result, stateLabel, supersededBy: stateViewIdFromKey(successorKey) };
|
|
139
|
+
});
|
|
140
|
+
}
|
|
141
|
+
function reconcileStateViewPairs(results) {
|
|
142
|
+
const byPred = buildSuccessorMap(results, []);
|
|
143
|
+
let kept = results.slice();
|
|
144
|
+
for (let changed = true; changed; ) {
|
|
145
|
+
changed = false;
|
|
146
|
+
const keptKeys = new Set(kept.map(resultStateViewKey).filter(Boolean));
|
|
147
|
+
const next = [];
|
|
148
|
+
for (const row of kept) {
|
|
149
|
+
const { superseded, successorKey } = successorLinkOf(row, byPred);
|
|
150
|
+
if (superseded && !shouldWidenSuperseded(successorKey, keptKeys)) {
|
|
151
|
+
changed = true;
|
|
152
|
+
continue;
|
|
153
|
+
}
|
|
154
|
+
next.push(row);
|
|
155
|
+
}
|
|
156
|
+
if (changed) kept = next;
|
|
157
|
+
}
|
|
158
|
+
return kept;
|
|
159
|
+
}
|
|
160
|
+
function capStateViewPackets(ordered, limit) {
|
|
161
|
+
const safeLimit = typeof limit === "number" && Number.isFinite(limit) ? Math.max(0, Math.floor(limit)) : 0;
|
|
162
|
+
if (safeLimit === 0) return [];
|
|
163
|
+
if (ordered.length === 0) return [];
|
|
164
|
+
const byPred = buildSuccessorMap(ordered, []);
|
|
165
|
+
const parent = /* @__PURE__ */ new Map();
|
|
166
|
+
const root = (key) => {
|
|
167
|
+
let current = key;
|
|
168
|
+
for (; ; ) {
|
|
169
|
+
const up = parent.get(current);
|
|
170
|
+
if (up === void 0 || up === current) {
|
|
171
|
+
parent.set(current, current);
|
|
172
|
+
return current;
|
|
173
|
+
}
|
|
174
|
+
current = up;
|
|
175
|
+
}
|
|
176
|
+
};
|
|
177
|
+
const union = (a, b) => {
|
|
178
|
+
const ra = root(a);
|
|
179
|
+
const rb = root(b);
|
|
180
|
+
if (ra !== rb) parent.set(ra, rb);
|
|
181
|
+
};
|
|
182
|
+
const keys = [];
|
|
183
|
+
const keyToIndex = /* @__PURE__ */ new Map();
|
|
184
|
+
for (let i = 0; i < ordered.length; i += 1) {
|
|
185
|
+
const key = resultStateViewKey(ordered[i]) || `#idx${i}`;
|
|
186
|
+
keys.push(key);
|
|
187
|
+
if (!parent.has(key)) parent.set(key, key);
|
|
188
|
+
const first = keyToIndex.get(key);
|
|
189
|
+
if (first !== void 0) union(keys[first], key);
|
|
190
|
+
else keyToIndex.set(key, i);
|
|
191
|
+
}
|
|
192
|
+
for (const [predKey, succKey] of byPred) {
|
|
193
|
+
const predIdx = keyToIndex.get(predKey);
|
|
194
|
+
const succIdx = keyToIndex.get(succKey);
|
|
195
|
+
if (predIdx !== void 0 && succIdx !== void 0) union(keys[predIdx], keys[succIdx]);
|
|
196
|
+
}
|
|
197
|
+
const selectedRoots = /* @__PURE__ */ new Set();
|
|
198
|
+
for (let i = 0; i < ordered.length && selectedRoots.size < safeLimit; i += 1) {
|
|
199
|
+
selectedRoots.add(root(keys[i]));
|
|
200
|
+
}
|
|
201
|
+
const selected = [];
|
|
202
|
+
for (let i = 0; i < ordered.length; i += 1) {
|
|
203
|
+
if (selectedRoots.has(root(keys[i]))) selected.push(ordered[i]);
|
|
204
|
+
}
|
|
205
|
+
return selected;
|
|
206
|
+
}
|
|
207
|
+
|
|
208
|
+
export {
|
|
209
|
+
DEFAULT_RECALL_STATE_VIEWS,
|
|
210
|
+
parseRecallStateViews,
|
|
211
|
+
isChangeOrientedQuery,
|
|
212
|
+
shouldWidenSuperseded,
|
|
213
|
+
formatSupersededPrefix,
|
|
214
|
+
resultStateViewId,
|
|
215
|
+
stateViewKey,
|
|
216
|
+
resultStateViewKey,
|
|
217
|
+
annotateStateView,
|
|
218
|
+
reconcileStateViewPairs,
|
|
219
|
+
capStateViewPackets
|
|
220
|
+
};
|
|
221
|
+
//# sourceMappingURL=chunk-YDVAM7S4.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/recall-state-view.ts"],"sourcesContent":["/**\n * Recall state views (issue #1952).\n *\n * Config key: `recallStateViews` (default false). When false, annotateStateView\n * is identity: same array reference, no `stateLabel`. config.ts is at its\n * fileSizeGrandfather ceiling, so parseConfig wiring waits for a later PR.\n * Call `parseRecallStateViews` at the recall seam when that lands.\n *\n * Change-intent morphology lives here (do not grow intent.ts). A superseded\n * memory is admitted only when its successor is also in the candidate set.\n *\n * #2859 — chain identities are namespace-qualified (`namespace\\0id`): the\n * same id in two namespaces never cross-anchors. The reverse chain derives\n * from the successor's `supersedes` back-pointer when a predecessor lacks\n * `supersededBy`, and asOf snapshot labels use the temporal validity\n * boundary (predecessor `invalidAt` / successor `validAt`), not the\n * `supersededAt` write time.\n */\nimport { coerceBooleanLike } from \"./connectors/coerce.js\";\n\nexport type StateLabel = \"current\" | \"historical\" | \"transition\";\n\nexport interface StateViewChain {\n predecessorId: string;\n successorId: string;\n supersededAt?: string;\n /** #2859 — namespace scope; a chain link never crosses namespaces. */\n namespace?: string;\n}\n\nexport interface StateViewResult {\n id?: string;\n docid?: string;\n status?: string;\n /** #2859 — namespace that owns this row; qualifies every chain identity. */\n namespace?: string;\n /** #2859 — back-pointer: id of the row this one replaced. */\n supersedes?: string;\n supersededBy?: string;\n supersededAt?: string;\n /** #2859 — fact validity start (frontmatter `valid_at`). */\n validAt?: string;\n /** #2859 — fact validity end (frontmatter `invalid_at`). */\n invalidAt?: string;\n stateLabel?: StateLabel;\n}\n\nexport const DEFAULT_RECALL_STATE_VIEWS = false;\n\nconst CHANGE_WORDS = [\"switch\", \"switches\", \"switched\", \"switching\", \"change\", \"changes\", \"changed\", \"changing\"];\n\n// Phrase matches are token-bounded: \"when Didi\" must not fire the\n// \"when did\" phrase, and \"confused to\" must not fire \"used to\".\nconst CHANGE_PHRASE_RE = /\\bwhen\\s+did\\b|\\bused\\s+to\\b/;\nconst CHANGE_WORD_RE = new RegExp(`\\\\b(?:${CHANGE_WORDS.join(\"|\")})\\\\b`);\n// Bare \"before\"/\"after\" are ordinary sequencing (\"before lunch\",\n// \"after install\"). They carry change intent only when they point at a\n// specific event through a determiner (\"before the move\", \"after the\n// cutover\").\nconst EVENT_POINTER_RE = /\\b(?:before|after)\\s+(?:the|a|an|this|that|these|those)\\b/;\n\nexport function parseRecallStateViews(raw: unknown): boolean {\n return coerceBooleanLike(raw, \"recallStateViews\") === true;\n}\n\nexport function isChangeOrientedQuery(query: string): boolean {\n const lower = query.toLowerCase();\n return CHANGE_PHRASE_RE.test(lower) || CHANGE_WORD_RE.test(lower) || EVENT_POINTER_RE.test(lower);\n}\n\nexport function shouldWidenSuperseded(\n successorId: string | undefined,\n candidateIds: ReadonlySet<string>,\n): boolean {\n return typeof successorId === \"string\" && successorId.length > 0 && candidateIds.has(successorId);\n}\n\nexport function formatSupersededPrefix(date: string, successorId: string): string {\n return `[superseded ${date} by ${successorId}]`;\n}\n\nexport function resultStateViewId(result: StateViewResult): string {\n return result.id ?? result.docid ?? \"\";\n}\n\n/**\n * #2859 — namespace-qualified chain identity. Namespace fanout can surface\n * the same id from two namespaces; every successor/admission match runs on\n * `namespace\\0id` keys so a row in one namespace can never anchor (or be\n * anchored by) an identically-named row in another.\n */\nexport function stateViewKey(namespace: string | undefined, id: string): string {\n return `${typeof namespace === \"string\" ? namespace : \"\"}\\u0000${id}`;\n}\n\nexport function resultStateViewKey(result: StateViewResult): string {\n const id = resultStateViewId(result);\n return id ? stateViewKey(result.namespace, id) : \"\";\n}\n\n/** Inverse of {@link stateViewKey}: the id after the namespace separator. */\nfunction stateViewIdFromKey(key: string): string {\n const sep = key.indexOf(\"\\u0000\");\n return sep === -1 ? key : key.slice(sep + 1);\n}\n\n/**\n * predecessorKey → successorKey, namespace-qualified. Precedence: explicit\n * chains, then successor rows' `supersedes` back-pointers (#2859 — derives\n * the reverse chain when the predecessor lacks `supersededBy`), then the\n * predecessor's own `supersededBy` (authoritative when present).\n */\nfunction buildSuccessorMap(\n results: readonly StateViewResult[],\n chains: readonly StateViewChain[],\n): Map<string, string> {\n const byPred = new Map<string, string>();\n const link = (predKey: string, succKey: string, overwrite: boolean): void => {\n if (!predKey || !succKey) return;\n if (overwrite || !byPred.has(predKey)) byPred.set(predKey, succKey);\n };\n for (const chain of chains) {\n if (chain.predecessorId && chain.successorId) {\n link(\n stateViewKey(chain.namespace, chain.predecessorId),\n stateViewKey(chain.namespace, chain.successorId),\n false,\n );\n }\n }\n for (const result of results) {\n const key = resultStateViewKey(result);\n if (key && result.supersedes) {\n link(stateViewKey(result.namespace, result.supersedes), key, false);\n }\n }\n for (const result of results) {\n const key = resultStateViewKey(result);\n if (key && result.supersededBy) {\n link(key, stateViewKey(result.namespace, result.supersededBy), true);\n }\n }\n return byPred;\n}\n\nfunction successorLinkOf(\n result: StateViewResult,\n byPred: ReadonlyMap<string, string>,\n): { superseded: boolean; successorKey: string | undefined } {\n const key = resultStateViewKey(result);\n return {\n superseded:\n result.status === \"superseded\" ||\n Boolean(result.supersededBy) ||\n byPred.has(key),\n successorKey: result.supersededBy\n ? stateViewKey(result.namespace, result.supersededBy)\n : byPred.get(key),\n };\n}\n\nfunction labelFor(\n key: string,\n result: StateViewResult,\n byPred: Map<string, string>,\n admittedIds: ReadonlySet<string>,\n asOfMs: number | null,\n): StateLabel {\n const { successorKey } = successorLinkOf(result, byPred);\n const isPred = shouldWidenSuperseded(successorKey, admittedIds);\n let isSucc = false;\n for (const [predId, succId] of byPred) {\n if (succId === key && admittedIds.has(predId)) {\n isSucc = true;\n break;\n }\n }\n if (isPred && isSucc) return \"transition\";\n if (isPred) return \"historical\";\n if (isSucc) return \"current\";\n if (result.status === \"superseded\") {\n // #1952 asOf mode: the successor is legitimately absent under the\n // historical pin (a linked successor takes the pair branches above).\n // The row was the live fact at the snapshot when the temporal\n // validity boundary postdates the pin (\"current\" relative to the\n // snapshot); already replaced at the pin is \"historical\". #2859: the\n // boundary is the fact's validity flip — `invalidAt` (the supersession\n // pipeline sets it to the successor's valid_at) — not the\n // `supersededAt` write time; legacy rows without a window fall back\n // to supersededAt.\n return asOfMs === null ? \"historical\" : snapshotStateLabel(result, asOfMs);\n }\n return \"current\";\n}\n\nfunction snapshotStateLabel(result: StateViewResult, asOfMs: number): StateLabel {\n const invalidAtMs = Date.parse(result.invalidAt ?? \"\");\n const boundaryMs = Number.isFinite(invalidAtMs)\n ? invalidAtMs\n : Date.parse(result.supersededAt ?? \"\");\n return Number.isFinite(boundaryMs) && boundaryMs <= asOfMs ? \"historical\" : \"current\";\n}\n\nexport function annotateStateView<T extends StateViewResult>(\n results: T[],\n query: string,\n chains: readonly StateViewChain[],\n options: { enabled?: boolean; asOfMs?: number } = {},\n): T[] {\n const enabled = options.enabled === true;\n if (!enabled || !isChangeOrientedQuery(query)) return results;\n // #1952 asOf mode: under a historical pin the pipeline's isValidAsOf\n // gate already decided validity at the pinned instant, so a predecessor\n // must not be discarded merely because its successor is absent under\n // the same filter. A valid asOf result is never emptied here.\n const asOfMs =\n typeof options.asOfMs === \"number\" && Number.isFinite(options.asOfMs)\n ? options.asOfMs\n : null;\n\n const byPred = buildSuccessorMap(results, chains);\n const candidateIds = new Set<string>();\n for (const result of results) {\n const key = resultStateViewKey(result);\n if (key) candidateIds.add(key);\n }\n let admitted: T[];\n if (asOfMs !== null) {\n admitted = results.slice();\n } else {\n admitted = [];\n for (const result of results) {\n const { superseded, successorKey } = successorLinkOf(result, byPred);\n if (!superseded || shouldWidenSuperseded(successorKey, candidateIds)) {\n admitted.push(result);\n }\n }\n\n // #1952 contract: superseded never appears without its successor. A\n // successor can itself be dropped (filtered elsewhere, or transitively\n // orphaned), so reconcile to a fixpoint instead of trusting the first pass.\n let admittedIds = new Set(admitted.map(resultStateViewKey).filter(Boolean));\n for (let changed = true; changed; ) {\n changed = false;\n for (let i = admitted.length - 1; i >= 0; i -= 1) {\n const row = admitted[i]!;\n const { superseded, successorKey } = successorLinkOf(row, byPred);\n if (superseded && !shouldWidenSuperseded(successorKey, admittedIds)) {\n admitted.splice(i, 1);\n changed = true;\n }\n }\n if (changed) admittedIds = new Set(admitted.map(resultStateViewKey).filter(Boolean));\n }\n }\n\n const admittedIds = new Set(admitted.map(resultStateViewKey).filter(Boolean));\n return admitted.map((result) => {\n const key = resultStateViewKey(result);\n const { successorKey } = successorLinkOf(result, byPred);\n const stateLabel = labelFor(key, result, byPred, admittedIds, asOfMs);\n if (result.supersededBy || !successorKey) return { ...result, stateLabel };\n return { ...result, stateLabel, supersededBy: stateViewIdFromKey(successorKey) };\n });\n}\n\n/**\n * #2859 — drop superseded rows whose successor is not in the pool BEFORE\n * the user cap/MMR runs, so post-cap orphan removal can never underfill\n * the result set. Reconciles to a fixpoint (a dropped successor orphans\n * its own predecessors). Rows with no successor links pass through in\n * order. ponytail: repeated full-pool passes are O(n²) on one long chain;\n * recall pools stay small, memoize per-key if pools ever grow.\n */\nexport function reconcileStateViewPairs<T extends StateViewResult>(results: readonly T[]): T[] {\n const byPred = buildSuccessorMap(results, []);\n let kept = results.slice();\n for (let changed = true; changed; ) {\n changed = false;\n const keptKeys = new Set(kept.map(resultStateViewKey).filter(Boolean));\n const next: T[] = [];\n for (const row of kept) {\n const { superseded, successorKey } = successorLinkOf(row, byPred);\n if (superseded && !shouldWidenSuperseded(successorKey, keptKeys)) {\n changed = true;\n continue;\n }\n next.push(row);\n }\n if (changed) kept = next;\n }\n return kept;\n}\n\n/**\n * #2859 — packet-counting cap. A predecessor/successor chain admitted\n * together is ONE complete evidence packet: it consumes a single slot of\n * the user cap, and the slice never splits a packet at the boundary (no\n * underfill from post-cap orphan removal). Rows keep their incoming\n * (MMR) order; packets are ordered by first appearance. Call\n * reconcileStateViewPairs first so orphans never consume a slot.\n */\nexport function capStateViewPackets<T extends StateViewResult>(\n ordered: readonly T[],\n limit: number,\n): T[] {\n const safeLimit =\n typeof limit === \"number\" && Number.isFinite(limit) ? Math.max(0, Math.floor(limit)) : 0;\n if (safeLimit === 0) return [];\n if (ordered.length === 0) return [];\n\n const byPred = buildSuccessorMap(ordered, []);\n // Union-find over row keys; blank-key rows become per-index singletons.\n const parent = new Map<string, string>();\n const root = (key: string): string => {\n let current = key;\n for (;;) {\n const up = parent.get(current);\n if (up === undefined || up === current) {\n parent.set(current, current);\n return current;\n }\n current = up;\n }\n };\n const union = (a: string, b: string): void => {\n const ra = root(a);\n const rb = root(b);\n if (ra !== rb) parent.set(ra, rb);\n };\n const keys: string[] = [];\n const keyToIndex = new Map<string, number>();\n for (let i = 0; i < ordered.length; i += 1) {\n // ponytail: blank-key rows must stay distinct singletons; index-keyed.\n const key = resultStateViewKey(ordered[i]!) || `#idx${i}`;\n keys.push(key);\n if (!parent.has(key)) parent.set(key, key);\n const first = keyToIndex.get(key);\n if (first !== undefined) union(keys[first]!, key);\n else keyToIndex.set(key, i);\n }\n for (const [predKey, succKey] of byPred) {\n const predIdx = keyToIndex.get(predKey);\n const succIdx = keyToIndex.get(succKey);\n if (predIdx !== undefined && succIdx !== undefined) union(keys[predIdx]!, keys[succIdx]!);\n }\n // Packets ordered by first appearance; admit whole packets until the cap.\n const selectedRoots = new Set<string>();\n for (let i = 0; i < ordered.length && selectedRoots.size < safeLimit; i += 1) {\n selectedRoots.add(root(keys[i]!));\n }\n const selected: T[] = [];\n for (let i = 0; i < ordered.length; i += 1) {\n if (selectedRoots.has(root(keys[i]!))) selected.push(ordered[i]!);\n }\n return selected;\n}\n"],"mappings":"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","names":["admittedIds"]}
|
|
@@ -2,9 +2,10 @@ import {
|
|
|
2
2
|
annotateStateView,
|
|
3
3
|
isChangeOrientedQuery,
|
|
4
4
|
parseRecallStateViews,
|
|
5
|
-
|
|
6
|
-
shouldWidenSuperseded
|
|
7
|
-
|
|
5
|
+
resultStateViewKey,
|
|
6
|
+
shouldWidenSuperseded,
|
|
7
|
+
stateViewKey
|
|
8
|
+
} from "./chunk-YDVAM7S4.js";
|
|
8
9
|
|
|
9
10
|
// src/recall-state-view-widen.ts
|
|
10
11
|
function widenRecallStateViews(results, query, config, pool = [], stateViewActive, asOfMs) {
|
|
@@ -13,19 +14,27 @@ function widenRecallStateViews(results, query, config, pool = [], stateViewActiv
|
|
|
13
14
|
if (!enabled || !isChangeOrientedQuery(query)) return results;
|
|
14
15
|
const asOfActive = typeof asOfMs === "number" && Number.isFinite(asOfMs);
|
|
15
16
|
const candidateIds = /* @__PURE__ */ new Set();
|
|
17
|
+
const supersedesAnchors = /* @__PURE__ */ new Set();
|
|
16
18
|
for (const result of results) {
|
|
17
|
-
const
|
|
18
|
-
if (
|
|
19
|
+
const key = resultStateViewKey(result);
|
|
20
|
+
if (!key) continue;
|
|
21
|
+
candidateIds.add(key);
|
|
22
|
+
if (result.supersedes) {
|
|
23
|
+
supersedesAnchors.add(stateViewKey(result.namespace, result.supersedes));
|
|
24
|
+
}
|
|
19
25
|
}
|
|
20
26
|
const seen = new Set(candidateIds);
|
|
21
27
|
const extra = [];
|
|
22
28
|
if (!asOfActive) {
|
|
23
29
|
for (const item of pool) {
|
|
24
|
-
const
|
|
25
|
-
if (!
|
|
26
|
-
|
|
30
|
+
const key = resultStateViewKey(item);
|
|
31
|
+
if (!key || seen.has(key)) continue;
|
|
32
|
+
const successorKey = item.supersededBy ? stateViewKey(item.namespace, item.supersededBy) : void 0;
|
|
33
|
+
if (!shouldWidenSuperseded(successorKey, candidateIds) && !supersedesAnchors.has(key)) {
|
|
34
|
+
continue;
|
|
35
|
+
}
|
|
27
36
|
extra.push(item);
|
|
28
|
-
seen.add(
|
|
37
|
+
seen.add(key);
|
|
29
38
|
}
|
|
30
39
|
}
|
|
31
40
|
return annotateStateView(extra.length > 0 ? results.concat(extra) : results, query, [], {
|
|
@@ -37,4 +46,4 @@ function widenRecallStateViews(results, query, config, pool = [], stateViewActiv
|
|
|
37
46
|
export {
|
|
38
47
|
widenRecallStateViews
|
|
39
48
|
};
|
|
40
|
-
//# sourceMappingURL=chunk-
|
|
49
|
+
//# sourceMappingURL=chunk-YKREX63Z.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/recall-state-view-widen.ts"],"sourcesContent":["/**\n * Recall state-view widening (issue #1952).\n *\n * When recallStateViews is on and the query is change-oriented, admit a\n * superseded memory only if its successor is already in the candidate set.\n * Flag off / non-change queries are identity.\n */\nimport {\n annotateStateView,\n isChangeOrientedQuery,\n parseRecallStateViews,\n resultStateViewKey,\n shouldWidenSuperseded,\n stateViewKey,\n type StateViewResult,\n} from \"./recall-state-view.js\";\n\nexport function widenRecallStateViews<T extends StateViewResult>(\n results: T[],\n query: string,\n config: unknown,\n pool: readonly T[] = [],\n /**\n * #1952 — per-request effective flag (per-call `stateView` OR config,\n * gated on change intent), computed once at recall entry and threaded\n * through. When `true` it wins over the config read so a per-call\n * override survives a global `false` at the inject seam. Callers that\n * omit it keep the legacy config-only behavior.\n */\n stateViewActive?: boolean,\n /**\n * #1952 — historical recall pin (epoch ms). When set, the pool is\n * never widened (pool rows did not survive the asOf validity filter,\n * so pulling a not-yet-valid successor into a historical snapshot\n * would be wrong) and annotation runs in asOf mode: a predecessor is\n * kept and labeled relative to the snapshot without requiring its\n * successor.\n */\n asOfMs?: number,\n): T[] {\n const raw =\n typeof config === \"object\" && config !== null && \"recallStateViews\" in config\n ? config.recallStateViews\n : undefined;\n const enabled = stateViewActive === true || parseRecallStateViews(raw);\n if (!enabled || !isChangeOrientedQuery(query)) return results;\n const asOfActive = typeof asOfMs === \"number\" && Number.isFinite(asOfMs);\n\n // #2859: matches are namespace-qualified, and a successor's `supersedes`\n // back-pointer anchors its predecessor even when the predecessor's own\n // `supersededBy` is absent.\n const candidateIds = new Set<string>();\n const supersedesAnchors = new Set<string>();\n for (const result of results) {\n const key = resultStateViewKey(result);\n if (!key) continue;\n candidateIds.add(key);\n if (result.supersedes) {\n supersedesAnchors.add(stateViewKey(result.namespace, result.supersedes));\n }\n }\n\n const seen = new Set(candidateIds);\n const extra: T[] = [];\n if (!asOfActive) {\n for (const item of pool) {\n const key = resultStateViewKey(item);\n if (!key || seen.has(key)) continue;\n const successorKey = item.supersededBy\n ? stateViewKey(item.namespace, item.supersededBy)\n : undefined;\n if (!shouldWidenSuperseded(successorKey, candidateIds) && !supersedesAnchors.has(key)) {\n continue;\n }\n extra.push(item);\n seen.add(key);\n }\n }\n\n return annotateStateView(extra.length > 0 ? results.concat(extra) : results, query, [], {\n enabled: true,\n ...(asOfActive ? { asOfMs } : {}),\n });\n}\n"],"mappings":";;;;;;;;;;AAiBO,SAAS,sBACd,SACA,OACA,QACA,OAAqB,CAAC,GAQtB,iBASA,QACK;AACL,QAAM,MACJ,OAAO,WAAW,YAAY,WAAW,QAAQ,sBAAsB,SACnE,OAAO,mBACP;AACN,QAAM,UAAU,oBAAoB,QAAQ,sBAAsB,GAAG;AACrE,MAAI,CAAC,WAAW,CAAC,sBAAsB,KAAK,EAAG,QAAO;AACtD,QAAM,aAAa,OAAO,WAAW,YAAY,OAAO,SAAS,MAAM;AAKvE,QAAM,eAAe,oBAAI,IAAY;AACrC,QAAM,oBAAoB,oBAAI,IAAY;AAC1C,aAAW,UAAU,SAAS;AAC5B,UAAM,MAAM,mBAAmB,MAAM;AACrC,QAAI,CAAC,IAAK;AACV,iBAAa,IAAI,GAAG;AACpB,QAAI,OAAO,YAAY;AACrB,wBAAkB,IAAI,aAAa,OAAO,WAAW,OAAO,UAAU,CAAC;AAAA,IACzE;AAAA,EACF;AAEA,QAAM,OAAO,IAAI,IAAI,YAAY;AACjC,QAAM,QAAa,CAAC;AACpB,MAAI,CAAC,YAAY;AACf,eAAW,QAAQ,MAAM;AACvB,YAAM,MAAM,mBAAmB,IAAI;AACnC,UAAI,CAAC,OAAO,KAAK,IAAI,GAAG,EAAG;AAC3B,YAAM,eAAe,KAAK,eACtB,aAAa,KAAK,WAAW,KAAK,YAAY,IAC9C;AACJ,UAAI,CAAC,sBAAsB,cAAc,YAAY,KAAK,CAAC,kBAAkB,IAAI,GAAG,GAAG;AACrF;AAAA,MACF;AACA,YAAM,KAAK,IAAI;AACf,WAAK,IAAI,GAAG;AAAA,IACd;AAAA,EACF;AAEA,SAAO,kBAAkB,MAAM,SAAS,IAAI,QAAQ,OAAO,KAAK,IAAI,SAAS,OAAO,CAAC,GAAG;AAAA,IACtF,SAAS;AAAA,IACT,GAAI,aAAa,EAAE,OAAO,IAAI,CAAC;AAAA,EACjC,CAAC;AACH;","names":[]}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
SupportPassportError,
|
|
3
3
|
getOperation
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-UZEHHXYC.js";
|
|
5
5
|
import {
|
|
6
6
|
abortError,
|
|
7
7
|
isAbortError
|
|
@@ -499,4 +499,4 @@ export {
|
|
|
499
499
|
buildSupportPassportPublicRequestHandler,
|
|
500
500
|
composeSupportPassportExternalRequestHandlers
|
|
501
501
|
};
|
|
502
|
-
//# sourceMappingURL=chunk-
|
|
502
|
+
//# sourceMappingURL=chunk-ZBW7A667.js.map
|
|
@@ -2,10 +2,10 @@ import { CompoundingPromotionReport } from './compounding/engine.js';
|
|
|
2
2
|
import { ConversationIndexBackendInspection } from './conversation-index/backend.js';
|
|
3
3
|
import { MigrateObservationsResult } from './maintenance/migrate-observations.js';
|
|
4
4
|
import { M as MemoryFile, m as MemoryFrontmatter, x as MemoryStatus, ac as BehaviorSignalEvent, Q as QmdSearchResult, ah as BulkImportResult, am as MemoryActionEvent, K as MemoryLifecycleEvent } from './types-Cyr32ABj.js';
|
|
5
|
-
import { C as ConversationIndexCoordinator, T as TierMigrationCoordinator, O as Orchestrator } from './orchestrator-
|
|
5
|
+
import { C as ConversationIndexCoordinator, T as TierMigrationCoordinator, O as Orchestrator } from './orchestrator-ComHLm49.js';
|
|
6
6
|
import { S as StorageManager } from './storage-wvX01lht.js';
|
|
7
7
|
import { TrustZoneDemoSeedResult, TrustZoneName, TrustZonePromotionResult, TrustZoneStoreStatus } from './trust-zones.js';
|
|
8
|
-
import { f as EngramAccessService } from './access-service-
|
|
8
|
+
import { f as EngramAccessService } from './access-service-MY4bsr_Q.js';
|
|
9
9
|
import { Writable, Readable } from 'node:stream';
|
|
10
10
|
import { ResolveSecretRefFn } from './resolve-auth-token.js';
|
|
11
11
|
import { CausalTrajectoryStoreStatus } from './causal-trajectory.js';
|
package/dist/cli.d.ts
CHANGED
|
@@ -2,11 +2,11 @@ import './compounding/engine.js';
|
|
|
2
2
|
import './conversation-index/backend.js';
|
|
3
3
|
import './maintenance/migrate-observations.js';
|
|
4
4
|
import './types-Cyr32ABj.js';
|
|
5
|
-
import './orchestrator-
|
|
5
|
+
import './orchestrator-ComHLm49.js';
|
|
6
6
|
import './storage-wvX01lht.js';
|
|
7
7
|
import './trust-zones.js';
|
|
8
|
-
export { c as AccessHttpServeCliCommandOptions, d as ArchiveObservationsCliCommandOptions, e as AuditMemoryCliCommandOptions, B as BulkImportCliCommandOptions, C as CliApi, g as CliCommand, h as CliProgram, i as CompatCliCommandOptions, j as ConnectorsRunCliOutputOptions, k as ConversationIndexHealthCliOrchestrator, D as DashboardStartCliCommandOptions, l as DedupeCandidate, E as ExactDedupePlan, G as GraphHealthCliCommandOptions, M as MemoryActionAuditCliCommandOptions, m as MemoryActionAuditCliNamespaceSummary, n as MemoryActionAuditCliReport, o as MemoryGovernanceCliCommandOptions, q as MemoryGovernanceReportCliCommandOptions, s as MemoryGovernanceRestoreCliCommandOptions, t as MemoryReviewDispositionCliCommandOptions, u as MemoryTimelineCliCommandOptions, v as MigrateCliOrchestrator, w as MigrateCliReport, x as MigrateObservationsCliCommandOptions, P as PolicyDiffCliReport, y as PolicyDiffEntry, z as PolicyRollbackCliReport, F as PolicyStatusCliReport, H as PolicyTuningCliOrchestrator, R as RebuildMemoryLifecycleLedgerCliCommandOptions, I as RebuildMemoryProjectionCliCommandOptions, J as RebuildObservationsCliCommandOptions, K as RepairMemoryProjectionCliCommandOptions, L as ReplayCliCommandOptions, N as ReplayCliOrchestrator, O as RouteCliCommandOptions, S as SessionIntegrityCliCommandOptions, Q as SessionRepairCliCommandOptions, T as TailscaleStatusCliCommandOptions, U as TailscaleSyncCliCommandOptions, V as TierMigrateCliAdapter, W as TierMigrateCoordinatorCliAdapter, X as TierMigrateLegacyCliAdapter, Y as TierStatusCliAdapter, Z as TierStatusCoordinatorCliAdapter, _ as TierStatusLegacyCliAdapter, $ as TrainingExportCliCommandOptions, a0 as VerifyMemoryProjectionCliCommandOptions, a1 as WebDavServeCliCommandOptions, a2 as WorkProjectCliCommandOptions, a3 as WorkTaskCliCommandOptions, a4 as emitConnectorsRunCliResult, a5 as filterNormalMemorySearchResults, a6 as hasDestructivePurgeFailures, a7 as isNormalRetrievalVisibleMemory, a8 as listMemoryMarkdownFilePaths, a9 as parseDurationToMs, aa as parseStrictCliDate, ab as planAggressiveDuplicateDeletions, ac as planExactDuplicateDeletions, ad as registerCli, ae as resolveAccessPrincipalOverride, af as resolveMemoryDirForNamespace, ag as runAbstractionNodeStatusCliCommand, ah as runAccessHttpServeCliCommand, ai as runAccessHttpStatusCliCommand, aj as runAccessHttpStopCliCommand, ak as runAccessMcpServeCliCommand, al as runArchiveObservationsCliCommand, r as runAuditMemoryCliCommand, am as runBenchmarkBaselineReportCliCommand, an as runBenchmarkBaselineSnapshotCliCommand, ao as runBenchmarkCiGateCliCommand, ap as runBenchmarkImportCliCommand, aq as runBenchmarkStatusCliCommand, ar as runBenchmarkStoredBaselineCiGateCliCommand, as as runBenchmarkValidateCliCommand, b as runBulkImportCliCommand, at as runCausalTrajectoryStatusCliCommand, au as runCommitmentLifecycleCliCommand, av as runCommitmentRecordCliCommand, aw as runCommitmentSetStateCliCommand, ax as runCommitmentStatusCliCommand, ay as runCompatCliCommand, az as runCompoundingPromoteCliCommand, aA as runConversationIndexHealthCliCommand, aB as runConversationIndexInspectCliCommand, aC as runConversationIndexRebuildCliCommand, aD as runCueAnchorStatusCliCommand, aE as runDashboardStartCliCommand, aF as runDashboardStatusCliCommand, aG as runDashboardStopCliCommand, aH as runGraphHealthCliCommand, aI as runHarmonicSearchCliCommand, aJ as runMemoryActionAuditCliCommand, aK as runMemoryGovernanceCliCommand, aL as runMemoryGovernanceReportCliCommand, aM as runMemoryGovernanceRestoreCliCommand, aN as runMemoryReviewDispositionCliCommand, aO as runMemoryTimelineCliCommand, aP as runMigrateNormalizeFrontmatterCliCommand, aQ as runMigrateObservationsCliCommand, aR as runMigrateRechunkCliCommand, aS as runMigrateReextractCliCommand, aT as runMigrateRescoreImportanceCliCommand, aU as runObjectiveStateStatusCliCommand, aV as runPolicyDiffCliCommand, aW as runPolicyRollbackCliCommand, aX as runPolicyStatusCliCommand, aY as runRebuildMemoryLifecycleLedgerCliCommand, aZ as runRebuildMemoryProjectionCliCommand, a_ as runRebuildObservationsCliCommand, a$ as runRepairMemoryProjectionCliCommand, b0 as runReplayCliCommand, b1 as runResumeBundleBuildCliCommand, b2 as runResumeBundleRecordCliCommand, b3 as runResumeBundleStatusCliCommand, b4 as runRouteCliCommand, b5 as runSemanticRulePromoteCliCommand, b6 as runSemanticRuleVerifyCliCommand, b7 as runSessionCheckCliCommand, b8 as runSessionRepairCliCommand, b9 as runTailscaleStatusCliCommand, ba as runTailscaleSyncCliCommand, bb as runTierMigrateCliCommand, bc as runTierStatusCliCommand, bd as runTrainingExportCliCommand, be as runTrustZoneDemoSeedCliCommand, bf as runTrustZonePromoteCliCommand, bg as runTrustZoneStatusCliCommand, bh as runUtilityLearningCliCommand, bi as runUtilityLearningStatusCliCommand, bj as runUtilityTelemetryRecordCliCommand, bk as runUtilityTelemetryStatusCliCommand, bl as runVerifiedRecallSearchCliCommand, bm as runVerifyMemoryProjectionCliCommand, bn as runWebDavServeCliCommand, bo as runWebDavStopCliCommand, bp as runWorkProductRecallSearchCliCommand, bq as runWorkProductRecordCliCommand, br as runWorkProductStatusCliCommand, bs as runWorkProjectCliCommand, bt as runWorkTaskCliCommand } from './cli-
|
|
9
|
-
import './access-service-
|
|
8
|
+
export { c as AccessHttpServeCliCommandOptions, d as ArchiveObservationsCliCommandOptions, e as AuditMemoryCliCommandOptions, B as BulkImportCliCommandOptions, C as CliApi, g as CliCommand, h as CliProgram, i as CompatCliCommandOptions, j as ConnectorsRunCliOutputOptions, k as ConversationIndexHealthCliOrchestrator, D as DashboardStartCliCommandOptions, l as DedupeCandidate, E as ExactDedupePlan, G as GraphHealthCliCommandOptions, M as MemoryActionAuditCliCommandOptions, m as MemoryActionAuditCliNamespaceSummary, n as MemoryActionAuditCliReport, o as MemoryGovernanceCliCommandOptions, q as MemoryGovernanceReportCliCommandOptions, s as MemoryGovernanceRestoreCliCommandOptions, t as MemoryReviewDispositionCliCommandOptions, u as MemoryTimelineCliCommandOptions, v as MigrateCliOrchestrator, w as MigrateCliReport, x as MigrateObservationsCliCommandOptions, P as PolicyDiffCliReport, y as PolicyDiffEntry, z as PolicyRollbackCliReport, F as PolicyStatusCliReport, H as PolicyTuningCliOrchestrator, R as RebuildMemoryLifecycleLedgerCliCommandOptions, I as RebuildMemoryProjectionCliCommandOptions, J as RebuildObservationsCliCommandOptions, K as RepairMemoryProjectionCliCommandOptions, L as ReplayCliCommandOptions, N as ReplayCliOrchestrator, O as RouteCliCommandOptions, S as SessionIntegrityCliCommandOptions, Q as SessionRepairCliCommandOptions, T as TailscaleStatusCliCommandOptions, U as TailscaleSyncCliCommandOptions, V as TierMigrateCliAdapter, W as TierMigrateCoordinatorCliAdapter, X as TierMigrateLegacyCliAdapter, Y as TierStatusCliAdapter, Z as TierStatusCoordinatorCliAdapter, _ as TierStatusLegacyCliAdapter, $ as TrainingExportCliCommandOptions, a0 as VerifyMemoryProjectionCliCommandOptions, a1 as WebDavServeCliCommandOptions, a2 as WorkProjectCliCommandOptions, a3 as WorkTaskCliCommandOptions, a4 as emitConnectorsRunCliResult, a5 as filterNormalMemorySearchResults, a6 as hasDestructivePurgeFailures, a7 as isNormalRetrievalVisibleMemory, a8 as listMemoryMarkdownFilePaths, a9 as parseDurationToMs, aa as parseStrictCliDate, ab as planAggressiveDuplicateDeletions, ac as planExactDuplicateDeletions, ad as registerCli, ae as resolveAccessPrincipalOverride, af as resolveMemoryDirForNamespace, ag as runAbstractionNodeStatusCliCommand, ah as runAccessHttpServeCliCommand, ai as runAccessHttpStatusCliCommand, aj as runAccessHttpStopCliCommand, ak as runAccessMcpServeCliCommand, al as runArchiveObservationsCliCommand, r as runAuditMemoryCliCommand, am as runBenchmarkBaselineReportCliCommand, an as runBenchmarkBaselineSnapshotCliCommand, ao as runBenchmarkCiGateCliCommand, ap as runBenchmarkImportCliCommand, aq as runBenchmarkStatusCliCommand, ar as runBenchmarkStoredBaselineCiGateCliCommand, as as runBenchmarkValidateCliCommand, b as runBulkImportCliCommand, at as runCausalTrajectoryStatusCliCommand, au as runCommitmentLifecycleCliCommand, av as runCommitmentRecordCliCommand, aw as runCommitmentSetStateCliCommand, ax as runCommitmentStatusCliCommand, ay as runCompatCliCommand, az as runCompoundingPromoteCliCommand, aA as runConversationIndexHealthCliCommand, aB as runConversationIndexInspectCliCommand, aC as runConversationIndexRebuildCliCommand, aD as runCueAnchorStatusCliCommand, aE as runDashboardStartCliCommand, aF as runDashboardStatusCliCommand, aG as runDashboardStopCliCommand, aH as runGraphHealthCliCommand, aI as runHarmonicSearchCliCommand, aJ as runMemoryActionAuditCliCommand, aK as runMemoryGovernanceCliCommand, aL as runMemoryGovernanceReportCliCommand, aM as runMemoryGovernanceRestoreCliCommand, aN as runMemoryReviewDispositionCliCommand, aO as runMemoryTimelineCliCommand, aP as runMigrateNormalizeFrontmatterCliCommand, aQ as runMigrateObservationsCliCommand, aR as runMigrateRechunkCliCommand, aS as runMigrateReextractCliCommand, aT as runMigrateRescoreImportanceCliCommand, aU as runObjectiveStateStatusCliCommand, aV as runPolicyDiffCliCommand, aW as runPolicyRollbackCliCommand, aX as runPolicyStatusCliCommand, aY as runRebuildMemoryLifecycleLedgerCliCommand, aZ as runRebuildMemoryProjectionCliCommand, a_ as runRebuildObservationsCliCommand, a$ as runRepairMemoryProjectionCliCommand, b0 as runReplayCliCommand, b1 as runResumeBundleBuildCliCommand, b2 as runResumeBundleRecordCliCommand, b3 as runResumeBundleStatusCliCommand, b4 as runRouteCliCommand, b5 as runSemanticRulePromoteCliCommand, b6 as runSemanticRuleVerifyCliCommand, b7 as runSessionCheckCliCommand, b8 as runSessionRepairCliCommand, b9 as runTailscaleStatusCliCommand, ba as runTailscaleSyncCliCommand, bb as runTierMigrateCliCommand, bc as runTierStatusCliCommand, bd as runTrainingExportCliCommand, be as runTrustZoneDemoSeedCliCommand, bf as runTrustZonePromoteCliCommand, bg as runTrustZoneStatusCliCommand, bh as runUtilityLearningCliCommand, bi as runUtilityLearningStatusCliCommand, bj as runUtilityTelemetryRecordCliCommand, bk as runUtilityTelemetryStatusCliCommand, bl as runVerifiedRecallSearchCliCommand, bm as runVerifyMemoryProjectionCliCommand, bn as runWebDavServeCliCommand, bo as runWebDavStopCliCommand, bp as runWorkProductRecallSearchCliCommand, bq as runWorkProductRecordCliCommand, br as runWorkProductStatusCliCommand, bs as runWorkProjectCliCommand, bt as runWorkTaskCliCommand } from './cli-DGq0MNpO.js';
|
|
9
|
+
import './access-service-MY4bsr_Q.js';
|
|
10
10
|
import 'node:stream';
|
|
11
11
|
import './resolve-auth-token.js';
|
|
12
12
|
import './causal-trajectory.js';
|
package/dist/cli.js
CHANGED
|
@@ -91,12 +91,12 @@ import {
|
|
|
91
91
|
runWorkProductStatusCliCommand,
|
|
92
92
|
runWorkProjectCliCommand,
|
|
93
93
|
runWorkTaskCliCommand
|
|
94
|
-
} from "./chunk-
|
|
94
|
+
} from "./chunk-TNZNSMVJ.js";
|
|
95
|
+
import "./chunk-54BGIBCR.js";
|
|
95
96
|
import "./chunk-H4CKS5B2.js";
|
|
96
97
|
import "./chunk-MMACM5G2.js";
|
|
97
|
-
import "./chunk-54BGIBCR.js";
|
|
98
98
|
import "./chunk-FXZTL7F7.js";
|
|
99
|
-
import "./chunk-
|
|
99
|
+
import "./chunk-VBSNUH4J.js";
|
|
100
100
|
import "./chunk-BV2TIZ4F.js";
|
|
101
101
|
import "./chunk-HDDRVXX4.js";
|
|
102
102
|
import "./chunk-PYHOAXTI.js";
|
|
@@ -105,40 +105,40 @@ import "./chunk-OZKVVUJB.js";
|
|
|
105
105
|
import "./chunk-2DL3OFLD.js";
|
|
106
106
|
import "./chunk-G4IAEX6D.js";
|
|
107
107
|
import "./chunk-2NLLXCJG.js";
|
|
108
|
-
import "./chunk-UP6MOYCB.js";
|
|
109
108
|
import "./chunk-765K3SAT.js";
|
|
109
|
+
import "./chunk-UP6MOYCB.js";
|
|
110
110
|
import "./chunk-FGDKJJZS.js";
|
|
111
111
|
import "./chunk-AJVLDJU6.js";
|
|
112
112
|
import "./chunk-TBUEE7XF.js";
|
|
113
113
|
import "./chunk-SZDLX763.js";
|
|
114
114
|
import "./chunk-PYIFUBRK.js";
|
|
115
|
+
import "./chunk-TA4C3XB7.js";
|
|
115
116
|
import "./chunk-DQTCGVFK.js";
|
|
116
117
|
import "./chunk-YLBE6PLR.js";
|
|
117
118
|
import "./chunk-IIFFC3RL.js";
|
|
118
119
|
import "./chunk-AXFWMRKI.js";
|
|
119
|
-
import "./chunk-GQQVEH6V.js";
|
|
120
120
|
import "./chunk-UJX4I26O.js";
|
|
121
121
|
import "./chunk-2524MOWK.js";
|
|
122
122
|
import "./chunk-HSSERO3E.js";
|
|
123
123
|
import "./chunk-NOUJNHWG.js";
|
|
124
124
|
import "./chunk-W3K3HITK.js";
|
|
125
125
|
import "./chunk-EBA5DA77.js";
|
|
126
|
-
import "./chunk-
|
|
126
|
+
import "./chunk-AAZEKXUP.js";
|
|
127
127
|
import "./chunk-HL4DB7TO.js";
|
|
128
128
|
import "./chunk-OJP3N7UK.js";
|
|
129
|
-
import "./chunk-
|
|
130
|
-
import "./chunk-
|
|
131
|
-
import "./chunk-
|
|
129
|
+
import "./chunk-ENBPQEVU.js";
|
|
130
|
+
import "./chunk-AENM6GKU.js";
|
|
131
|
+
import "./chunk-WBM2MVBK.js";
|
|
132
132
|
import "./chunk-G7NYVKD6.js";
|
|
133
133
|
import "./chunk-AM4T6CHX.js";
|
|
134
134
|
import "./chunk-4BCHFSC7.js";
|
|
135
135
|
import "./chunk-3T74IZB3.js";
|
|
136
136
|
import "./chunk-2LA3H54D.js";
|
|
137
|
-
import "./chunk-
|
|
138
|
-
import "./chunk-
|
|
137
|
+
import "./chunk-MUTVRKKY.js";
|
|
138
|
+
import "./chunk-FNHLI2RE.js";
|
|
139
139
|
import "./chunk-KFY3SGN7.js";
|
|
140
140
|
import "./chunk-CMTINOFS.js";
|
|
141
|
-
import "./chunk-
|
|
141
|
+
import "./chunk-JKKII6GX.js";
|
|
142
142
|
import "./chunk-RMMVQQA6.js";
|
|
143
143
|
import "./chunk-KXRX7YC2.js";
|
|
144
144
|
import "./chunk-GGRRF4PZ.js";
|
|
@@ -152,7 +152,7 @@ import "./chunk-AUDJPF4N.js";
|
|
|
152
152
|
import "./chunk-44442YCH.js";
|
|
153
153
|
import "./chunk-Y4Z4I6WK.js";
|
|
154
154
|
import "./chunk-2SGLMP2E.js";
|
|
155
|
-
import "./chunk-
|
|
155
|
+
import "./chunk-UHRZ324M.js";
|
|
156
156
|
import "./chunk-KJTKLXTH.js";
|
|
157
157
|
import "./chunk-2DQ2XREU.js";
|
|
158
158
|
import "./chunk-NHLLKEKK.js";
|
|
@@ -160,7 +160,7 @@ import "./chunk-OKTXM5H4.js";
|
|
|
160
160
|
import "./chunk-B7RWBZXW.js";
|
|
161
161
|
import "./chunk-YBPYIAA5.js";
|
|
162
162
|
import "./chunk-6TBIWIAG.js";
|
|
163
|
-
import "./chunk-
|
|
163
|
+
import "./chunk-FWWWUPOE.js";
|
|
164
164
|
import "./chunk-ZKOPY4WW.js";
|
|
165
165
|
import "./chunk-62OKGIJA.js";
|
|
166
166
|
import "./chunk-5HYUUFMQ.js";
|
|
@@ -184,34 +184,34 @@ import "./chunk-KFZY2OFH.js";
|
|
|
184
184
|
import "./chunk-YFTNZMGR.js";
|
|
185
185
|
import "./chunk-C6WMSXCJ.js";
|
|
186
186
|
import "./chunk-B32WYRXX.js";
|
|
187
|
-
import "./chunk-
|
|
187
|
+
import "./chunk-EYKIDK33.js";
|
|
188
188
|
import "./chunk-V7IZKJI3.js";
|
|
189
189
|
import "./chunk-XW2T4QAW.js";
|
|
190
|
-
import "./chunk-
|
|
190
|
+
import "./chunk-Q4AUIFUA.js";
|
|
191
|
+
import "./chunk-J64TK33U.js";
|
|
191
192
|
import "./chunk-RSUYKGGZ.js";
|
|
192
193
|
import "./chunk-42NQ7AVG.js";
|
|
193
194
|
import "./chunk-TMSXWOBZ.js";
|
|
194
|
-
import "./chunk-TB6CBZ5V.js";
|
|
195
|
-
import "./chunk-J64TK33U.js";
|
|
196
195
|
import "./chunk-7RXCMVFQ.js";
|
|
196
|
+
import "./chunk-TB6CBZ5V.js";
|
|
197
197
|
import "./chunk-3HSRWJTC.js";
|
|
198
198
|
import "./chunk-TRLOFIQC.js";
|
|
199
|
-
import "./chunk-
|
|
200
|
-
import "./chunk-
|
|
199
|
+
import "./chunk-NXGSONWM.js";
|
|
200
|
+
import "./chunk-ZBW7A667.js";
|
|
201
201
|
import "./chunk-SRT6SHVZ.js";
|
|
202
|
-
import "./chunk-
|
|
202
|
+
import "./chunk-5SPCMAUC.js";
|
|
203
203
|
import "./chunk-EAARGPWI.js";
|
|
204
204
|
import "./chunk-A5KNZSNA.js";
|
|
205
205
|
import "./chunk-HUSTM6PU.js";
|
|
206
206
|
import "./chunk-D24OXEPB.js";
|
|
207
|
-
import "./chunk-
|
|
208
|
-
import "./chunk-
|
|
209
|
-
import "./chunk-
|
|
210
|
-
import "./chunk-
|
|
211
|
-
import "./chunk-
|
|
207
|
+
import "./chunk-VSL63CFJ.js";
|
|
208
|
+
import "./chunk-TSP5WH72.js";
|
|
209
|
+
import "./chunk-D545Z7UH.js";
|
|
210
|
+
import "./chunk-PCOVEDPK.js";
|
|
211
|
+
import "./chunk-F4EHXVP7.js";
|
|
212
212
|
import "./chunk-7T4TOGMS.js";
|
|
213
213
|
import "./chunk-7YQ6ESEA.js";
|
|
214
|
-
import "./chunk-
|
|
214
|
+
import "./chunk-OPBFP4TF.js";
|
|
215
215
|
import "./chunk-SCXURCVT.js";
|
|
216
216
|
import "./chunk-EQWEIIKQ.js";
|
|
217
217
|
import "./chunk-JDX2OA4R.js";
|
|
@@ -222,22 +222,22 @@ import "./chunk-E4RMZGRS.js";
|
|
|
222
222
|
import "./chunk-DGS34QSY.js";
|
|
223
223
|
import "./chunk-ZQUVBZI4.js";
|
|
224
224
|
import "./chunk-CK5KOVHW.js";
|
|
225
|
-
import "./chunk-
|
|
226
|
-
import "./chunk-
|
|
225
|
+
import "./chunk-O76F5QPP.js";
|
|
226
|
+
import "./chunk-54NX5EG4.js";
|
|
227
227
|
import "./chunk-AB3A7EFH.js";
|
|
228
228
|
import "./chunk-QVSRE355.js";
|
|
229
|
-
import "./chunk-
|
|
229
|
+
import "./chunk-3NPNBVFR.js";
|
|
230
230
|
import "./chunk-TIDEL77O.js";
|
|
231
231
|
import "./chunk-GZ3R6XOE.js";
|
|
232
|
-
import "./chunk-
|
|
233
|
-
import "./chunk-
|
|
232
|
+
import "./chunk-GMIQV6DD.js";
|
|
233
|
+
import "./chunk-UZEHHXYC.js";
|
|
234
234
|
import "./chunk-W4F3C7N7.js";
|
|
235
235
|
import "./chunk-MPC7TYTZ.js";
|
|
236
236
|
import "./chunk-ZHXSOMYH.js";
|
|
237
|
+
import "./chunk-CC37E3QM.js";
|
|
237
238
|
import "./chunk-2J3V5QEO.js";
|
|
238
239
|
import "./chunk-VQ7B2Q6M.js";
|
|
239
|
-
import "./chunk-
|
|
240
|
-
import "./chunk-BX4EOMKT.js";
|
|
240
|
+
import "./chunk-3EKVN2OP.js";
|
|
241
241
|
import "./chunk-PJSK6OJM.js";
|
|
242
242
|
import "./chunk-GNVZQ5JN.js";
|
|
243
243
|
import "./chunk-YN2UN7N3.js";
|
|
@@ -252,7 +252,7 @@ import "./chunk-H7XKCNR6.js";
|
|
|
252
252
|
import "./chunk-M6HBPLBA.js";
|
|
253
253
|
import "./chunk-SOBJ6NEY.js";
|
|
254
254
|
import "./chunk-ZEGL7YCC.js";
|
|
255
|
-
import "./chunk-
|
|
255
|
+
import "./chunk-O4M4BDIJ.js";
|
|
256
256
|
import "./chunk-CVILPI77.js";
|
|
257
257
|
import "./chunk-6WHJ2EAB.js";
|
|
258
258
|
import "./chunk-AQEJKOKI.js";
|
|
@@ -261,7 +261,7 @@ import "./chunk-UD7UNYRD.js";
|
|
|
261
261
|
import "./chunk-IISBCCWR.js";
|
|
262
262
|
import "./chunk-2YA5N2BY.js";
|
|
263
263
|
import "./chunk-HWLIMQE2.js";
|
|
264
|
-
import "./chunk-
|
|
264
|
+
import "./chunk-4RZLTZVM.js";
|
|
265
265
|
import "./chunk-EI6V5UXY.js";
|
|
266
266
|
import "./chunk-CEO4DONG.js";
|
|
267
267
|
import "./chunk-SGUDMW2K.js";
|
|
@@ -282,12 +282,12 @@ import "./chunk-SV4Z2S67.js";
|
|
|
282
282
|
import "./chunk-WTWQA7BB.js";
|
|
283
283
|
import "./chunk-VZIAVM72.js";
|
|
284
284
|
import "./chunk-HRATODNO.js";
|
|
285
|
-
import "./chunk-
|
|
286
|
-
import "./chunk-
|
|
287
|
-
import "./chunk-
|
|
285
|
+
import "./chunk-IL6ODG6M.js";
|
|
286
|
+
import "./chunk-GI4ZBWPQ.js";
|
|
287
|
+
import "./chunk-GG5FHZJJ.js";
|
|
288
288
|
import "./chunk-UFGFMWAD.js";
|
|
289
289
|
import "./chunk-BMWN7B3Y.js";
|
|
290
|
-
import "./chunk-
|
|
290
|
+
import "./chunk-JTQR6L2N.js";
|
|
291
291
|
import "./chunk-5FAGCOZD.js";
|
|
292
292
|
import "./chunk-EUT2WCWS.js";
|
|
293
293
|
import "./chunk-2LSZVONP.js";
|
|
@@ -301,24 +301,24 @@ import "./chunk-CSAKJVXW.js";
|
|
|
301
301
|
import "./chunk-K2XUWZBM.js";
|
|
302
302
|
import "./chunk-OD4FM2U7.js";
|
|
303
303
|
import "./chunk-ZY2MNJR6.js";
|
|
304
|
-
import "./chunk-
|
|
304
|
+
import "./chunk-VJIE4D2I.js";
|
|
305
305
|
import "./chunk-3UXOZBHV.js";
|
|
306
306
|
import "./chunk-V6EGNVUT.js";
|
|
307
|
-
import "./chunk-
|
|
308
|
-
import "./chunk-
|
|
309
|
-
import "./chunk-UHVXE24Y.js";
|
|
307
|
+
import "./chunk-5YCNDC3C.js";
|
|
308
|
+
import "./chunk-CZTPU65V.js";
|
|
310
309
|
import "./chunk-46WM6JX2.js";
|
|
310
|
+
import "./chunk-UHVXE24Y.js";
|
|
311
311
|
import "./chunk-D5F7TKMH.js";
|
|
312
|
-
import "./chunk-
|
|
313
|
-
import "./chunk-
|
|
312
|
+
import "./chunk-6YAIN5XJ.js";
|
|
313
|
+
import "./chunk-4JVQRFZD.js";
|
|
314
|
+
import "./chunk-TNSCIPBQ.js";
|
|
314
315
|
import "./chunk-YQNNHLCG.js";
|
|
315
316
|
import "./chunk-6KTXE6A3.js";
|
|
316
317
|
import "./chunk-BD7JTBYP.js";
|
|
317
318
|
import "./chunk-OB3XMWX5.js";
|
|
318
|
-
import "./chunk-CYEPCZN5.js";
|
|
319
|
-
import "./chunk-TNSCIPBQ.js";
|
|
320
319
|
import "./chunk-4O6WRBGE.js";
|
|
321
320
|
import "./chunk-GUMZC2BO.js";
|
|
321
|
+
import "./chunk-CYEPCZN5.js";
|
|
322
322
|
import "./chunk-TFA6HPOA.js";
|
|
323
323
|
import "./chunk-F4TWWUMP.js";
|
|
324
324
|
import "./chunk-72A4L5JJ.js";
|
|
@@ -363,7 +363,7 @@ import "./chunk-6JMQR72P.js";
|
|
|
363
363
|
import "./chunk-QLK3SL7Q.js";
|
|
364
364
|
import "./chunk-FEHIOYML.js";
|
|
365
365
|
import "./chunk-P32IDSHD.js";
|
|
366
|
-
import "./chunk-
|
|
366
|
+
import "./chunk-YDVAM7S4.js";
|
|
367
367
|
import "./chunk-WNIUPHWV.js";
|
|
368
368
|
import "./chunk-IJ6WHMFB.js";
|
|
369
369
|
import "./chunk-3SG4FGDV.js";
|