@remnic/core 9.69.61 → 9.69.64
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.js +27 -27
- package/dist/access-authorization-probe.js +28 -28
- package/dist/access-boundary.js +27 -27
- package/dist/access-cli.js +68 -68
- package/dist/access-extraction-force-flush.js +27 -27
- package/dist/access-http-briefing.js +28 -28
- package/dist/access-http-query.js +29 -29
- package/dist/access-http.js +44 -44
- package/dist/access-identity-continuity-surface.js +27 -27
- package/dist/access-lcm-surface.js +27 -27
- package/dist/access-mcp-output-schemas.d.ts.map +1 -1
- package/dist/access-mcp-output-schemas.js +1 -1
- package/dist/access-mcp.js +37 -37
- package/dist/access-namespace-preflight.js +27 -27
- package/dist/access-observe-write-surface.js +27 -27
- package/dist/access-operations-batch.js +28 -28
- package/dist/access-operations.js +35 -35
- package/dist/access-recall-concurrency.js +27 -27
- package/dist/access-recall-response.d.ts.map +1 -1
- package/dist/access-recall-response.js +27 -27
- package/dist/access-recall-surface.js +27 -27
- package/dist/access-service.d.ts +4 -0
- package/dist/access-service.d.ts.map +1 -1
- package/dist/access-service.js +27 -27
- package/dist/access-surface-catalog.js +29 -29
- package/dist/active-recall.js +9 -9
- package/dist/briefing.js +10 -10
- package/dist/buffer.js +5 -5
- package/dist/causal-consolidation.js +11 -11
- package/dist/{chunk-52VL6LCY.js → chunk-2VH2JWYN.js} +2 -2
- package/dist/{chunk-WD32KTVI.js → chunk-2ZVSQPAA.js} +32 -16
- package/dist/chunk-2ZVSQPAA.js.map +1 -0
- package/dist/{chunk-G4WZDQ32.js → chunk-3NG5OOCX.js} +2 -2
- package/dist/{chunk-KG2OOAFF.js → chunk-3NTVCMDD.js} +2 -2
- package/dist/{chunk-7OC3Q5X4.js → chunk-3S4R2HA5.js} +2 -2
- package/dist/{chunk-NORFVW2H.js → chunk-4RWPQZYD.js} +2 -2
- package/dist/{chunk-B5GMOOY2.js → chunk-5AABWM72.js} +3 -3
- package/dist/{chunk-KRPMISWO.js → chunk-5C765XYU.js} +2 -2
- package/dist/{chunk-WLZYGLJ4.js → chunk-5MA7ZLPD.js} +5 -7
- package/dist/chunk-5MA7ZLPD.js.map +1 -0
- package/dist/{chunk-XOLVM3AT.js → chunk-5WXJE5TV.js} +2 -2
- package/dist/{chunk-2C5Z7CWB.js → chunk-6YTL3JYX.js} +2 -2
- package/dist/{chunk-F4PEETM4.js → chunk-755VRFBS.js} +2 -2
- package/dist/{chunk-HNOKNHFO.js → chunk-7L747CFR.js} +2 -2
- package/dist/{chunk-WPGR3RW4.js → chunk-7VO6E5UD.js} +2 -2
- package/dist/{chunk-LMLPLIT4.js → chunk-AQ6IBVFQ.js} +2 -2
- package/dist/{chunk-XN4CPSCN.js → chunk-B2JE56NB.js} +2 -2
- package/dist/{chunk-L4WBADKG.js → chunk-B5EZWPSM.js} +2 -2
- package/dist/{chunk-EIU642TN.js → chunk-BE4GMH45.js} +2 -2
- package/dist/{chunk-NLE6TSLG.js → chunk-BLVHDY2U.js} +5 -7
- package/dist/chunk-BLVHDY2U.js.map +1 -0
- package/dist/{chunk-JTTLH646.js → chunk-C2W6JKQQ.js} +2 -2
- package/dist/{chunk-FG5QU7A2.js → chunk-CFCAFAJC.js} +2 -2
- package/dist/{chunk-ZJ6MEVTX.js → chunk-CZM4MHZF.js} +37 -32
- package/dist/chunk-CZM4MHZF.js.map +1 -0
- package/dist/{chunk-M4PHCEPU.js → chunk-DDY7LJMP.js} +2 -2
- package/dist/{chunk-2L5DIVDU.js → chunk-DT33WNG2.js} +4 -4
- package/dist/{chunk-SZAWZPY6.js → chunk-E7SKAUEW.js} +7 -7
- package/dist/{chunk-NRVGODSE.js → chunk-EK4MOTHM.js} +6 -6
- package/dist/{chunk-QEGKMZNQ.js → chunk-FO5NDQZH.js} +3 -3
- package/dist/chunk-G26YNEOC.js +37 -0
- package/dist/chunk-G26YNEOC.js.map +1 -0
- package/dist/{chunk-GMHWCPLP.js → chunk-GZLSIPYU.js} +2 -2
- package/dist/{chunk-ZFUPRODV.js → chunk-HPWJ5B7D.js} +39 -3
- package/dist/chunk-HPWJ5B7D.js.map +1 -0
- package/dist/{chunk-SEHKTE4F.js → chunk-I4IKTNZP.js} +3 -3
- package/dist/{chunk-W65KK3X6.js → chunk-II4TIQCU.js} +2 -2
- package/dist/{chunk-FWVDTLRK.js → chunk-IJQEVNEF.js} +1 -1
- package/dist/{chunk-KXJ7XYUT.js → chunk-IOUQUXHO.js} +2 -2
- package/dist/{chunk-V3JM4XEI.js → chunk-ITLFUILH.js} +2 -2
- package/dist/{chunk-ZNFHWNDM.js → chunk-IULYVB5X.js} +5 -5
- package/dist/{chunk-Z3YQOV45.js → chunk-JLU7WK22.js} +2 -2
- package/dist/{chunk-NRTVZSPO.js → chunk-L4HT5QZ5.js} +2 -2
- package/dist/{chunk-5QZHDS4X.js → chunk-LI4IWBLN.js} +2 -2
- package/dist/{chunk-LY3SDHMI.js → chunk-LQ4OSM5V.js} +3 -3
- package/dist/{chunk-2OUSWDY6.js → chunk-M3TMVHQ2.js} +2 -2
- package/dist/{chunk-IDRSTHVR.js → chunk-MB3HMRXM.js} +2 -2
- package/dist/{chunk-4P3ZBL5E.js → chunk-MUGLJAZ3.js} +2 -2
- package/dist/{chunk-ZOASYXBS.js → chunk-MY2PLXSM.js} +6 -2
- package/dist/chunk-MY2PLXSM.js.map +1 -0
- package/dist/{chunk-4IFSMCRS.js → chunk-NYN4ZMPL.js} +2 -2
- package/dist/{chunk-K7S2IMGJ.js → chunk-O7QF3TCV.js} +322 -25
- package/dist/{chunk-K7S2IMGJ.js.map → chunk-O7QF3TCV.js.map} +1 -1
- package/dist/{chunk-KV44HTMJ.js → chunk-OBD77TYC.js} +2 -2
- package/dist/{chunk-GYNCJSQ7.js → chunk-OCEIHKH5.js} +3 -3
- package/dist/{chunk-DC5CTLCZ.js → chunk-PSGRZFBH.js} +10 -10
- package/dist/{chunk-FQGY7XB2.js → chunk-S52VKUUW.js} +2 -2
- package/dist/{chunk-D7MAYFQP.js → chunk-S7LWX2PQ.js} +2 -2
- package/dist/{chunk-TYP7GYRI.js → chunk-SB4ZWVKI.js} +2 -2
- package/dist/{chunk-KVO2BTA4.js → chunk-T2YX56QI.js} +2 -2
- package/dist/{chunk-G6NQ3L4T.js → chunk-T3FMRLWQ.js} +2 -2
- package/dist/{chunk-CDQO5DCD.js → chunk-TO3G56GM.js} +2 -2
- package/dist/{chunk-WEQZ5OYK.js → chunk-U6GKPSZH.js} +2 -2
- package/dist/{chunk-FM5HN7LL.js → chunk-WQC54W25.js} +9 -17
- package/dist/chunk-WQC54W25.js.map +1 -0
- package/dist/{chunk-XDH5MO6L.js → chunk-WZ33AIOP.js} +2 -2
- package/dist/{chunk-TM7S5UHD.js → chunk-XDIFADVN.js} +2 -2
- package/dist/{chunk-SVWYZXIL.js → chunk-XDOXR3U6.js} +2 -2
- package/dist/{chunk-VKDWYDFQ.js → chunk-XGLBVYEA.js} +5 -5
- package/dist/{chunk-5Y7VCE3A.js → chunk-XJNSOI23.js} +2 -2
- package/dist/{chunk-LDP6LBDS.js → chunk-Y3AFTYK4.js} +2 -2
- package/dist/{chunk-YL2W6NUG.js → chunk-YGJMMMPN.js} +4 -4
- package/dist/{chunk-KIOXEHWF.js → chunk-YIDBKTZJ.js} +2 -2
- package/dist/{chunk-F5ZCNJ3V.js → chunk-ZPPWW576.js} +2 -2
- package/dist/{chunk-TQAXUYUE.js → chunk-ZSXSMVW6.js} +2 -2
- package/dist/{chunk-6RD7MSIO.js → chunk-ZUT4FK5W.js} +2 -2
- package/dist/cli.js +54 -54
- package/dist/coding/export-okf-codegraph.js +9 -9
- package/dist/compounding/engine.js +10 -10
- package/dist/config.js +9 -9
- package/dist/connectors/codex-materialize-runner.js +10 -10
- package/dist/connectors/index.js +10 -10
- package/dist/convergence-refresh.js +12 -12
- package/dist/corpus-watermark.js +12 -12
- package/dist/entity-retrieval.js +10 -10
- package/dist/external-wiki-access.js +28 -28
- package/dist/extraction.js +16 -16
- package/dist/harmonic-retrieval.js +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +70 -68
- package/dist/location/index.js +12 -12
- package/dist/maintenance/memory-governance.js +10 -10
- package/dist/maintenance/rebuild-memory-lifecycle-ledger.js +10 -10
- package/dist/maintenance/rebuild-memory-projection.js +11 -11
- package/dist/memory-browse-operations.js +28 -28
- package/dist/memory-browse.js +5 -5
- package/dist/model-registry.d.ts.map +1 -1
- package/dist/model-registry.js +1 -1
- package/dist/namespaces/migrate.js +11 -11
- package/dist/namespaces/search.js +8 -8
- package/dist/namespaces/storage.js +10 -10
- package/dist/operator-doctor-corpus.js +13 -13
- package/dist/operator-toolkit.js +18 -18
- package/dist/orchestration/maintenance.js +18 -18
- package/dist/orchestration/recall-internal.d.ts.map +1 -1
- package/dist/orchestrator.js +68 -68
- package/dist/profiling.d.ts.map +1 -1
- package/dist/profiling.js +1 -1
- package/dist/qmd.js +2 -2
- package/dist/recall-composition-decision.d.ts +9 -0
- package/dist/recall-composition-decision.d.ts.map +1 -1
- package/dist/recall-composition-decision.js +2 -1
- package/dist/recall-navigation-operations.js +28 -28
- package/dist/recall-navigation.js +27 -27
- package/dist/recall-state-view-admission.js +5 -5
- package/dist/recall-why-service.d.ts.map +1 -1
- package/dist/recall-why-service.js +5 -5
- package/dist/resume-bundles.js +9 -9
- package/dist/search/factory.js +7 -7
- package/dist/search/index.js +7 -7
- package/dist/search/lancedb-backend.js +2 -2
- package/dist/search/meilisearch-backend.js +2 -2
- package/dist/search/orama-backend.js +2 -2
- package/dist/search/port.d.ts +9 -0
- package/dist/search/port.d.ts.map +1 -1
- package/dist/search/port.js +7 -1
- package/dist/search/remote-backend.js +2 -2
- package/dist/security/audit-memory-cli.d.ts.map +1 -1
- package/dist/security/audit-memory.d.ts +10 -0
- package/dist/security/audit-memory.d.ts.map +1 -1
- package/dist/security/injection-screen.d.ts +1 -2
- package/dist/security/injection-screen.d.ts.map +1 -1
- package/dist/semantic-consolidation.js +11 -11
- package/dist/semantic-rule-promotion.js +10 -10
- package/dist/semantic-rule-verifier.js +10 -10
- package/dist/source-agent-qualifier.js +13 -13
- package/dist/standup/build.js +10 -10
- package/dist/storage.js +9 -9
- package/dist/summarizer.js +2 -2
- package/dist/support-passport/index.js +30 -30
- package/dist/transfer/export-okf.js +10 -10
- package/dist/verified-recall.js +10 -10
- package/dist/who-knows-cli.js +11 -11
- package/dist/who-knows.js +10 -10
- package/package.json +12 -2
- package/src/access-mcp-output-schemas.ts +4 -0
- package/src/access-recall-response.ts +26 -1
- package/src/access-service.ts +1 -0
- package/src/index.ts +1 -1
- package/src/model-registry.test.ts +22 -1
- package/src/model-registry.ts +7 -6
- package/src/orchestration/recall-internal.ts +8 -5
- package/src/profiling.test.ts +20 -1
- package/src/profiling.ts +7 -7
- package/src/recall-composition-decision.test.ts +75 -0
- package/src/recall-composition-decision.ts +52 -3
- package/src/recall-retrieval-failure.test.ts +245 -0
- package/src/recall-why-service.ts +8 -24
- package/src/search/port.ts +32 -0
- package/src/security/audit-memory-cli.test.ts +90 -0
- package/src/security/audit-memory-cli.ts +7 -0
- package/src/security/audit-memory.ts +14 -0
- package/src/security/injection-screen.test.ts +245 -0
- package/src/security/injection-screen.ts +341 -11
- package/dist/chunk-FM5HN7LL.js.map +0 -1
- package/dist/chunk-NLE6TSLG.js.map +0 -1
- package/dist/chunk-U2VDCFXW.js +0 -19
- package/dist/chunk-U2VDCFXW.js.map +0 -1
- package/dist/chunk-WD32KTVI.js.map +0 -1
- package/dist/chunk-WLZYGLJ4.js.map +0 -1
- package/dist/chunk-ZFUPRODV.js.map +0 -1
- package/dist/chunk-ZJ6MEVTX.js.map +0 -1
- package/dist/chunk-ZOASYXBS.js.map +0 -1
- /package/dist/{chunk-52VL6LCY.js.map → chunk-2VH2JWYN.js.map} +0 -0
- /package/dist/{chunk-G4WZDQ32.js.map → chunk-3NG5OOCX.js.map} +0 -0
- /package/dist/{chunk-KG2OOAFF.js.map → chunk-3NTVCMDD.js.map} +0 -0
- /package/dist/{chunk-7OC3Q5X4.js.map → chunk-3S4R2HA5.js.map} +0 -0
- /package/dist/{chunk-NORFVW2H.js.map → chunk-4RWPQZYD.js.map} +0 -0
- /package/dist/{chunk-B5GMOOY2.js.map → chunk-5AABWM72.js.map} +0 -0
- /package/dist/{chunk-KRPMISWO.js.map → chunk-5C765XYU.js.map} +0 -0
- /package/dist/{chunk-XOLVM3AT.js.map → chunk-5WXJE5TV.js.map} +0 -0
- /package/dist/{chunk-2C5Z7CWB.js.map → chunk-6YTL3JYX.js.map} +0 -0
- /package/dist/{chunk-F4PEETM4.js.map → chunk-755VRFBS.js.map} +0 -0
- /package/dist/{chunk-HNOKNHFO.js.map → chunk-7L747CFR.js.map} +0 -0
- /package/dist/{chunk-WPGR3RW4.js.map → chunk-7VO6E5UD.js.map} +0 -0
- /package/dist/{chunk-LMLPLIT4.js.map → chunk-AQ6IBVFQ.js.map} +0 -0
- /package/dist/{chunk-XN4CPSCN.js.map → chunk-B2JE56NB.js.map} +0 -0
- /package/dist/{chunk-L4WBADKG.js.map → chunk-B5EZWPSM.js.map} +0 -0
- /package/dist/{chunk-EIU642TN.js.map → chunk-BE4GMH45.js.map} +0 -0
- /package/dist/{chunk-JTTLH646.js.map → chunk-C2W6JKQQ.js.map} +0 -0
- /package/dist/{chunk-FG5QU7A2.js.map → chunk-CFCAFAJC.js.map} +0 -0
- /package/dist/{chunk-M4PHCEPU.js.map → chunk-DDY7LJMP.js.map} +0 -0
- /package/dist/{chunk-2L5DIVDU.js.map → chunk-DT33WNG2.js.map} +0 -0
- /package/dist/{chunk-SZAWZPY6.js.map → chunk-E7SKAUEW.js.map} +0 -0
- /package/dist/{chunk-NRVGODSE.js.map → chunk-EK4MOTHM.js.map} +0 -0
- /package/dist/{chunk-QEGKMZNQ.js.map → chunk-FO5NDQZH.js.map} +0 -0
- /package/dist/{chunk-GMHWCPLP.js.map → chunk-GZLSIPYU.js.map} +0 -0
- /package/dist/{chunk-SEHKTE4F.js.map → chunk-I4IKTNZP.js.map} +0 -0
- /package/dist/{chunk-W65KK3X6.js.map → chunk-II4TIQCU.js.map} +0 -0
- /package/dist/{chunk-FWVDTLRK.js.map → chunk-IJQEVNEF.js.map} +0 -0
- /package/dist/{chunk-KXJ7XYUT.js.map → chunk-IOUQUXHO.js.map} +0 -0
- /package/dist/{chunk-V3JM4XEI.js.map → chunk-ITLFUILH.js.map} +0 -0
- /package/dist/{chunk-ZNFHWNDM.js.map → chunk-IULYVB5X.js.map} +0 -0
- /package/dist/{chunk-Z3YQOV45.js.map → chunk-JLU7WK22.js.map} +0 -0
- /package/dist/{chunk-NRTVZSPO.js.map → chunk-L4HT5QZ5.js.map} +0 -0
- /package/dist/{chunk-5QZHDS4X.js.map → chunk-LI4IWBLN.js.map} +0 -0
- /package/dist/{chunk-LY3SDHMI.js.map → chunk-LQ4OSM5V.js.map} +0 -0
- /package/dist/{chunk-2OUSWDY6.js.map → chunk-M3TMVHQ2.js.map} +0 -0
- /package/dist/{chunk-IDRSTHVR.js.map → chunk-MB3HMRXM.js.map} +0 -0
- /package/dist/{chunk-4P3ZBL5E.js.map → chunk-MUGLJAZ3.js.map} +0 -0
- /package/dist/{chunk-4IFSMCRS.js.map → chunk-NYN4ZMPL.js.map} +0 -0
- /package/dist/{chunk-KV44HTMJ.js.map → chunk-OBD77TYC.js.map} +0 -0
- /package/dist/{chunk-GYNCJSQ7.js.map → chunk-OCEIHKH5.js.map} +0 -0
- /package/dist/{chunk-DC5CTLCZ.js.map → chunk-PSGRZFBH.js.map} +0 -0
- /package/dist/{chunk-FQGY7XB2.js.map → chunk-S52VKUUW.js.map} +0 -0
- /package/dist/{chunk-D7MAYFQP.js.map → chunk-S7LWX2PQ.js.map} +0 -0
- /package/dist/{chunk-TYP7GYRI.js.map → chunk-SB4ZWVKI.js.map} +0 -0
- /package/dist/{chunk-KVO2BTA4.js.map → chunk-T2YX56QI.js.map} +0 -0
- /package/dist/{chunk-G6NQ3L4T.js.map → chunk-T3FMRLWQ.js.map} +0 -0
- /package/dist/{chunk-CDQO5DCD.js.map → chunk-TO3G56GM.js.map} +0 -0
- /package/dist/{chunk-WEQZ5OYK.js.map → chunk-U6GKPSZH.js.map} +0 -0
- /package/dist/{chunk-XDH5MO6L.js.map → chunk-WZ33AIOP.js.map} +0 -0
- /package/dist/{chunk-TM7S5UHD.js.map → chunk-XDIFADVN.js.map} +0 -0
- /package/dist/{chunk-SVWYZXIL.js.map → chunk-XDOXR3U6.js.map} +0 -0
- /package/dist/{chunk-VKDWYDFQ.js.map → chunk-XGLBVYEA.js.map} +0 -0
- /package/dist/{chunk-5Y7VCE3A.js.map → chunk-XJNSOI23.js.map} +0 -0
- /package/dist/{chunk-LDP6LBDS.js.map → chunk-Y3AFTYK4.js.map} +0 -0
- /package/dist/{chunk-YL2W6NUG.js.map → chunk-YGJMMMPN.js.map} +0 -0
- /package/dist/{chunk-KIOXEHWF.js.map → chunk-YIDBKTZJ.js.map} +0 -0
- /package/dist/{chunk-F5ZCNJ3V.js.map → chunk-ZPPWW576.js.map} +0 -0
- /package/dist/{chunk-TQAXUYUE.js.map → chunk-ZSXSMVW6.js.map} +0 -0
- /package/dist/{chunk-6RD7MSIO.js.map → chunk-ZUT4FK5W.js.map} +0 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
SUPPORT_PASSPORT_DRAFT_MAX_CONTENT_CHARACTERS,
|
|
3
3
|
SUPPORT_PASSPORT_DRAFT_MAX_MEMORIES
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-2ZVSQPAA.js";
|
|
5
5
|
import {
|
|
6
6
|
SUPPORT_PASSPORT_SOURCE_MEMORY_ID_MAX_LENGTH
|
|
7
7
|
} from "./chunk-PWPIERBM.js";
|
|
@@ -343,4 +343,4 @@ export {
|
|
|
343
343
|
parseSupportPassportModelJob,
|
|
344
344
|
SupportPassportModelBridge
|
|
345
345
|
};
|
|
346
|
-
//# sourceMappingURL=chunk-
|
|
346
|
+
//# sourceMappingURL=chunk-DDY7LJMP.js.map
|
|
@@ -43,13 +43,13 @@ import {
|
|
|
43
43
|
} from "./chunk-AB3A7EFH.js";
|
|
44
44
|
import {
|
|
45
45
|
applyToolOutputSchemas
|
|
46
|
-
} from "./chunk-
|
|
46
|
+
} from "./chunk-MY2PLXSM.js";
|
|
47
47
|
import {
|
|
48
48
|
getOperation
|
|
49
|
-
} from "./chunk-
|
|
49
|
+
} from "./chunk-2ZVSQPAA.js";
|
|
50
50
|
import {
|
|
51
51
|
WHO_KNOWS_MCP_TOOLS
|
|
52
|
-
} from "./chunk-
|
|
52
|
+
} from "./chunk-7L747CFR.js";
|
|
53
53
|
import {
|
|
54
54
|
PROMOTION_CANDIDATES_MCP_TOOLS
|
|
55
55
|
} from "./chunk-VYCOJKSX.js";
|
|
@@ -4004,4 +4004,4 @@ export {
|
|
|
4004
4004
|
MCP_MIGRATED_OPERATIONS,
|
|
4005
4005
|
EngramMcpServer
|
|
4006
4006
|
};
|
|
4007
|
-
//# sourceMappingURL=chunk-
|
|
4007
|
+
//# sourceMappingURL=chunk-DT33WNG2.js.map
|
|
@@ -3,7 +3,7 @@ import {
|
|
|
3
3
|
readNamespaceMaintenanceLastRanStatuses,
|
|
4
4
|
readNamespaceMaintenanceStatuses,
|
|
5
5
|
runNamespaceMaintenancePlan
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-5AABWM72.js";
|
|
7
7
|
import {
|
|
8
8
|
analyzeSessionIntegrity,
|
|
9
9
|
applySessionRepair,
|
|
@@ -14,7 +14,7 @@ import {
|
|
|
14
14
|
} from "./chunk-CMTINOFS.js";
|
|
15
15
|
import {
|
|
16
16
|
summarizeCorpusAndReplica
|
|
17
|
-
} from "./chunk-
|
|
17
|
+
} from "./chunk-GZLSIPYU.js";
|
|
18
18
|
import {
|
|
19
19
|
readJudgeVerdictStats
|
|
20
20
|
} from "./chunk-OZKOPQCM.js";
|
|
@@ -41,14 +41,14 @@ import {
|
|
|
41
41
|
} from "./chunk-2PKGJPQL.js";
|
|
42
42
|
import {
|
|
43
43
|
readAggregateExtractionWatermark
|
|
44
|
-
} from "./chunk-
|
|
44
|
+
} from "./chunk-5C765XYU.js";
|
|
45
45
|
import {
|
|
46
46
|
listMemoryGovernanceRuns,
|
|
47
47
|
readMemoryGovernanceRunArtifact
|
|
48
|
-
} from "./chunk-
|
|
48
|
+
} from "./chunk-AQ6IBVFQ.js";
|
|
49
49
|
import {
|
|
50
50
|
listNamespaces
|
|
51
|
-
} from "./chunk-
|
|
51
|
+
} from "./chunk-FO5NDQZH.js";
|
|
52
52
|
import {
|
|
53
53
|
analyzeGraphHealth
|
|
54
54
|
} from "./chunk-GWK7FEUL.js";
|
|
@@ -57,7 +57,7 @@ import {
|
|
|
57
57
|
} from "./chunk-3SG4FGDV.js";
|
|
58
58
|
import {
|
|
59
59
|
StorageManager
|
|
60
|
-
} from "./chunk-
|
|
60
|
+
} from "./chunk-LI4IWBLN.js";
|
|
61
61
|
import {
|
|
62
62
|
lintWorkspaceFiles
|
|
63
63
|
} from "./chunk-DM2T26WE.js";
|
|
@@ -1683,4 +1683,4 @@ export {
|
|
|
1683
1683
|
runBenchmarkRecall,
|
|
1684
1684
|
runOperatorRepair
|
|
1685
1685
|
};
|
|
1686
|
-
//# sourceMappingURL=chunk-
|
|
1686
|
+
//# sourceMappingURL=chunk-E7SKAUEW.js.map
|
|
@@ -1,21 +1,21 @@
|
|
|
1
1
|
import {
|
|
2
2
|
RemoteSearchBackend
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-7VO6E5UD.js";
|
|
4
4
|
import {
|
|
5
5
|
EmbedHelper
|
|
6
6
|
} from "./chunk-Z4TXB4K7.js";
|
|
7
7
|
import {
|
|
8
8
|
LanceDbBackend
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-S7LWX2PQ.js";
|
|
10
10
|
import {
|
|
11
11
|
MeilisearchBackend
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-T2YX56QI.js";
|
|
13
13
|
import {
|
|
14
14
|
NoopSearchBackend
|
|
15
15
|
} from "./chunk-CYEPCZN5.js";
|
|
16
16
|
import {
|
|
17
17
|
OramaBackend
|
|
18
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-T3FMRLWQ.js";
|
|
19
19
|
import {
|
|
20
20
|
createConversationIndexBackend
|
|
21
21
|
} from "./chunk-TFA6HPOA.js";
|
|
@@ -24,7 +24,7 @@ import {
|
|
|
24
24
|
} from "./chunk-F4TWWUMP.js";
|
|
25
25
|
import {
|
|
26
26
|
QmdClient
|
|
27
|
-
} from "./chunk-
|
|
27
|
+
} from "./chunk-3NTVCMDD.js";
|
|
28
28
|
import {
|
|
29
29
|
resolveIndexingCapabilities,
|
|
30
30
|
resolvePipelineProcessingCapabilities,
|
|
@@ -179,4 +179,4 @@ export {
|
|
|
179
179
|
createConversationSearchBackend,
|
|
180
180
|
createConversationIndexRuntime
|
|
181
181
|
};
|
|
182
|
-
//# sourceMappingURL=chunk-
|
|
182
|
+
//# sourceMappingURL=chunk-EK4MOTHM.js.map
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import {
|
|
2
2
|
NamespaceStorageRouter
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-3NG5OOCX.js";
|
|
4
4
|
import {
|
|
5
5
|
namespaceCollectionName
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-C2W6JKQQ.js";
|
|
7
7
|
import {
|
|
8
8
|
isSafeRouteNamespace
|
|
9
9
|
} from "./chunk-PCXDUHQH.js";
|
|
@@ -213,4 +213,4 @@ export {
|
|
|
213
213
|
verifyNamespaces,
|
|
214
214
|
runNamespaceMigration
|
|
215
215
|
};
|
|
216
|
-
//# sourceMappingURL=chunk-
|
|
216
|
+
//# sourceMappingURL=chunk-FO5NDQZH.js.map
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
// src/search/port.ts
|
|
2
|
+
function reportSearchDegradation(execution, degradation) {
|
|
3
|
+
try {
|
|
4
|
+
execution?.onDegradation?.(degradation);
|
|
5
|
+
} catch {
|
|
6
|
+
}
|
|
7
|
+
}
|
|
8
|
+
var FATAL_SEARCH_DEGRADATION_CODES = Object.freeze({
|
|
9
|
+
backend_unavailable: true,
|
|
10
|
+
backend_error: true,
|
|
11
|
+
daemon_timeout: true,
|
|
12
|
+
daemon_loading: true,
|
|
13
|
+
subprocess_error: true,
|
|
14
|
+
deadline_exceeded: true,
|
|
15
|
+
remote_error: true
|
|
16
|
+
});
|
|
17
|
+
function fatalSearchDegradations(degradations) {
|
|
18
|
+
return degradations.filter((d) => FATAL_SEARCH_DEGRADATION_CODES[d.code] === true);
|
|
19
|
+
}
|
|
20
|
+
function describeSearchDegradations(degradations) {
|
|
21
|
+
return degradations.map((d) => `${d.backend}:${d.code}${d.detail !== void 0 ? ` (${d.detail})` : ""}`).join("; ");
|
|
22
|
+
}
|
|
23
|
+
function resolveEnsureCollectionArgs(collectionOrExecution, execution) {
|
|
24
|
+
if (typeof collectionOrExecution === "string") {
|
|
25
|
+
return { collection: collectionOrExecution, execution };
|
|
26
|
+
}
|
|
27
|
+
return { collection: void 0, execution: collectionOrExecution ?? execution };
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
export {
|
|
31
|
+
reportSearchDegradation,
|
|
32
|
+
FATAL_SEARCH_DEGRADATION_CODES,
|
|
33
|
+
fatalSearchDegradations,
|
|
34
|
+
describeSearchDegradations,
|
|
35
|
+
resolveEnsureCollectionArgs
|
|
36
|
+
};
|
|
37
|
+
//# sourceMappingURL=chunk-G26YNEOC.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/search/port.ts"],"sourcesContent":["import type { QmdSearchResult } from \"../types.js\";\n\n/** Alias so consumers don't need to reference \"Qmd\" in a backend-agnostic context. */\nexport type SearchResult = QmdSearchResult;\n\nexport interface SearchQueryOptions {\n intent?: string;\n explain?: boolean;\n candidateLimit?: number;\n rerank?: boolean;\n chunkStrategy?: \"auto\" | \"regex\";\n structuredSearches?: Array<{ type: \"lex\" | \"vec\" | \"hyde\"; query: string }>;\n}\n\n/**\n * A search that returned empty (or partial) results because the backend was\n * unavailable, still loading, or timed out — cases that are otherwise\n * indistinguishable from a genuine \"no matches\" (issue #1536, CLAUDE.md\n * rule 34).\n */\nexport interface SearchDegradation {\n backend: \"qmd\" | \"remote\" | \"meilisearch\" | \"orama\" | \"lancedb\";\n code:\n | \"backend_unavailable\"\n | \"backend_error\"\n | \"daemon_timeout\"\n | \"daemon_loading\"\n | \"subprocess_error\"\n | \"deadline_exceeded\"\n | \"remote_error\"\n | \"vector_tier_unavailable\";\n detail?: string;\n}\n\nexport interface SearchExecutionOptions {\n signal?: AbortSignal;\n /**\n * Observer invoked when the backend degrades during this call (#1536).\n * Callers that need to distinguish empty-because-degraded from\n * empty-because-no-matches (recall x-ray, fallback decisions) pass a\n * collector here. Observer failures are swallowed by the notifier —\n * observability must never break search.\n */\n onDegradation?: (degradation: SearchDegradation) => void;\n}\n\nexport function reportSearchDegradation(\n execution: SearchExecutionOptions | undefined,\n degradation: SearchDegradation\n): void {\n try {\n execution?.onDegradation?.(degradation);\n } catch {\n // Observability must never break search.\n }\n}\n\n/**\n * Codes that mean the search backend could NOT answer, so an empty\n * result set carries no information (issue #3082 / recall_why #3033).\n * `vector_tier_unavailable` is excluded on purpose: the lexical tier\n * still answered, so the result set is degraded but real.\n */\nexport const FATAL_SEARCH_DEGRADATION_CODES: Readonly<\n Partial<Record<SearchDegradation[\"code\"], true>>\n> = Object.freeze({\n backend_unavailable: true,\n backend_error: true,\n daemon_timeout: true,\n daemon_loading: true,\n subprocess_error: true,\n deadline_exceeded: true,\n remote_error: true,\n});\n\nexport function fatalSearchDegradations(\n degradations: readonly SearchDegradation[],\n): SearchDegradation[] {\n return degradations.filter((d) => FATAL_SEARCH_DEGRADATION_CODES[d.code] === true);\n}\n\nexport function describeSearchDegradations(\n degradations: readonly SearchDegradation[],\n): string {\n return degradations\n .map((d) => `${d.backend}:${d.code}${d.detail !== undefined ? ` (${d.detail})` : \"\"}`)\n .join(\"; \");\n}\n\nexport function resolveEnsureCollectionArgs(\n collectionOrExecution?: string | SearchExecutionOptions,\n execution?: SearchExecutionOptions\n): { collection?: string; execution?: SearchExecutionOptions } {\n if (typeof collectionOrExecution === \"string\") {\n return { collection: collectionOrExecution, execution };\n }\n return { collection: undefined, execution: collectionOrExecution ?? execution };\n}\n\n/**\n * Optional status report for search backends that track embedding backlog.\n * Backends without embedding pipelines return null from status().\n */\nexport interface SearchBackendStatus {\n pendingEmbeddings: number | null;\n oldestPendingAgeMs: number | null;\n totalFiles: number | null;\n embeddedFiles: number | null;\n}\n\n/**\n * Abstract search backend interface.\n *\n * Implementations:\n * - QmdClient (default, local hybrid BM25+vector+reranking)\n * - OramaBackend (embedded, pure JS, hybrid FTS+vector)\n * - LanceDbBackend (embedded, native Arrow bindings, RRF reranking)\n * - MeilisearchBackend (server-based SDK, hybrid search)\n * - RemoteSearchBackend (HTTP REST adapter)\n * - NoopSearchBackend (graceful degradation)\n *\n * See docs/writing-a-search-backend.md for the implementation guide.\n */\nexport interface SearchBackend {\n // ── Lifecycle ──\n probe(execution?: SearchExecutionOptions): Promise<boolean>;\n /**\n * Optional non-mutating availability probe for health/readiness checks.\n * Implementations must avoid auto-upgrades, collection creation, daemon\n * startup, or any other runtime-modifying side effects.\n */\n checkAvailability?(execution?: SearchExecutionOptions): Promise<boolean>;\n isAvailable(): boolean;\n debugStatus(): string;\n /** Optional embedding backlog status for health surfaces. */\n status?(): Promise<SearchBackendStatus>;\n\n // ── Search ──\n search(\n query: string,\n collection?: string,\n maxResults?: number,\n options?: SearchQueryOptions,\n execution?: SearchExecutionOptions\n ): Promise<SearchResult[]>;\n searchGlobal(query: string, maxResults?: number, execution?: SearchExecutionOptions): Promise<SearchResult[]>;\n bm25Search(\n query: string,\n collection?: string,\n maxResults?: number,\n execution?: SearchExecutionOptions\n ): Promise<SearchResult[]>;\n vectorSearch(\n query: string,\n collection?: string,\n maxResults?: number,\n execution?: SearchExecutionOptions\n ): Promise<SearchResult[]>;\n hybridSearch(\n query: string,\n collection?: string,\n maxResults?: number,\n execution?: SearchExecutionOptions\n ): Promise<SearchResult[]>;\n\n // ── Maintenance ──\n update(execution?: SearchExecutionOptions): Promise<void>;\n /**\n * Wall-clock ms of the most recent SUCCESSFUL index refresh, or null when the\n * backend has never run one. Ordinary update() is fail-open: it returns\n * silently (without throwing or advancing this timestamp) when the backend is\n * unavailable or the call is suppressed by a min-interval / failure backoff.\n * Callers that must know whether update() actually indexed — so they can\n * invalidate dependent caches only on a real refresh — snapshot this before\n * the call and treat the backend as refreshed iff the value advanced. Optional\n * because not every backend tracks it; absent means \"assume refreshed\".\n */\n readonly lastUpdateRanAtMs?: number | null;\n /**\n * Optional strict refresh used by callers that must know whether the backend\n * was actually refreshed before writing success markers. Ordinary update\n * calls remain fail-open for migration/maintenance resilience.\n */\n updateStrict?(execution?: SearchExecutionOptions): Promise<void>;\n updateCollection(collection: string, execution?: SearchExecutionOptions): Promise<void>;\n updateCollectionFromDir?(collection: string, memoryDir: string, execution?: SearchExecutionOptions): Promise<void>;\n /**\n * True when update() refreshes every indexed collection, not just this\n * backend's configured collection. Namespace routers use this to avoid\n * repeating the same expensive global update once per namespace.\n */\n updatesAllCollections?(): boolean;\n /**\n * Optional strict refresh used by callers that must know whether a collection\n * was actually refreshed before writing success markers. Ordinary update\n * calls remain fail-open for migration/maintenance resilience.\n */\n updateCollectionStrict?(collection: string, execution?: SearchExecutionOptions): Promise<void>;\n embed(): Promise<void>;\n /**\n * Optional strict embed used by callers that must know vectors were actually\n * refreshed before writing success markers.\n */\n embedStrict?(): Promise<void>;\n embedCollection(collection: string): Promise<void>;\n /**\n * Optional strict collection embed used by callers that must know vectors were\n * actually refreshed before writing success markers.\n */\n embedCollectionStrict?(collection: string): Promise<void>;\n\n // ── Collection management ──\n /**\n * True only when the backend can bind, isolate, search, and delete collections\n * outside Remnic's primary memory roots.\n */\n supportsAdditionalCollections?(): boolean;\n /**\n * Prevent a collection from participating in unscoped/global searches.\n * Dedicated corpora must call this immediately after collection creation.\n */\n excludeCollectionFromGlobalSearch?(collection: string, execution?: SearchExecutionOptions): Promise<void>;\n /** Remove a non-primary collection and its backend-owned index state. */\n deleteCollection?(collection: string, execution?: SearchExecutionOptions): Promise<boolean>;\n /** Canonical source root currently bound to a named collection. */\n collectionRoot?(collection: string, execution?: SearchExecutionOptions): Promise<string | null>;\n /** Collection-scoped status for observability surfaces. */\n collectionStatus?(collection: string): Promise<Pick<SearchBackendStatus, \"totalFiles\">>;\n /**\n * Optional non-mutating collection probe. Backends that can distinguish a\n * missing collection from a transient probe failure should implement this so\n * callers can avoid auto-creating collections in unsafe layouts.\n */\n checkCollection?(\n collectionOrExecution?: string | SearchExecutionOptions,\n execution?: SearchExecutionOptions\n ): Promise<\"present\" | \"missing\" | \"unknown\" | \"skipped\">;\n ensureCollection(\n memoryDir: string,\n execution?: SearchExecutionOptions\n ): Promise<\"present\" | \"missing\" | \"unknown\" | \"skipped\">;\n ensureCollection(\n memoryDir: string,\n collection?: string,\n execution?: SearchExecutionOptions\n ): Promise<\"present\" | \"missing\" | \"unknown\" | \"skipped\">;\n}\n"],"mappings":";AA8CO,SAAS,wBACd,WACA,aACM;AACN,MAAI;AACF,eAAW,gBAAgB,WAAW;AAAA,EACxC,QAAQ;AAAA,EAER;AACF;AAQO,IAAM,iCAET,OAAO,OAAO;AAAA,EAChB,qBAAqB;AAAA,EACrB,eAAe;AAAA,EACf,gBAAgB;AAAA,EAChB,gBAAgB;AAAA,EAChB,kBAAkB;AAAA,EAClB,mBAAmB;AAAA,EACnB,cAAc;AAChB,CAAC;AAEM,SAAS,wBACd,cACqB;AACrB,SAAO,aAAa,OAAO,CAAC,MAAM,+BAA+B,EAAE,IAAI,MAAM,IAAI;AACnF;AAEO,SAAS,2BACd,cACQ;AACR,SAAO,aACJ,IAAI,CAAC,MAAM,GAAG,EAAE,OAAO,IAAI,EAAE,IAAI,GAAG,EAAE,WAAW,SAAY,KAAK,EAAE,MAAM,MAAM,EAAE,EAAE,EACpF,KAAK,IAAI;AACd;AAEO,SAAS,4BACd,uBACA,WAC6D;AAC7D,MAAI,OAAO,0BAA0B,UAAU;AAC7C,WAAO,EAAE,YAAY,uBAAuB,UAAU;AAAA,EACxD;AACA,SAAO,EAAE,YAAY,QAAW,WAAW,yBAAyB,UAAU;AAChF;","names":[]}
|
|
@@ -4,7 +4,7 @@ import {
|
|
|
4
4
|
import {
|
|
5
5
|
computeCorpusWatermarks,
|
|
6
6
|
resolveCorpusNamespaceRoots
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-TO3G56GM.js";
|
|
8
8
|
|
|
9
9
|
// src/operator-doctor-corpus.ts
|
|
10
10
|
var DIGEST_PREFIX_LENGTH = 12;
|
|
@@ -78,4 +78,4 @@ export {
|
|
|
78
78
|
corpusWatermarksFromCheck,
|
|
79
79
|
summarizeCorpusAndReplica
|
|
80
80
|
};
|
|
81
|
-
//# sourceMappingURL=chunk-
|
|
81
|
+
//# sourceMappingURL=chunk-GZLSIPYU.js.map
|
|
@@ -4,6 +4,10 @@ import {
|
|
|
4
4
|
composeMissingMemoryContext,
|
|
5
5
|
composeRecallContext
|
|
6
6
|
} from "./chunk-NVKO5YKP.js";
|
|
7
|
+
import {
|
|
8
|
+
describeSearchDegradations,
|
|
9
|
+
fatalSearchDegradations
|
|
10
|
+
} from "./chunk-G26YNEOC.js";
|
|
7
11
|
import {
|
|
8
12
|
isAbortError
|
|
9
13
|
} from "./chunk-BTTPKDIL.js";
|
|
@@ -31,16 +35,48 @@ function compactRecallContextFromBuckets(buckets) {
|
|
|
31
35
|
return sections.join(RECALL_CONTEXT_SEPARATOR);
|
|
32
36
|
}
|
|
33
37
|
function decideRecallContextComposition(input) {
|
|
34
|
-
const
|
|
38
|
+
const observed = input.backendDegradations ?? [];
|
|
39
|
+
const qmdExpected = input.qmdExpected !== false;
|
|
40
|
+
const fatal = fatalSearchDegradations(observed).filter(
|
|
41
|
+
(d) => qmdExpected || d.backend !== "qmd" || d.code !== "backend_unavailable"
|
|
42
|
+
);
|
|
43
|
+
if (fatal.length > 0 && input.context.trim().length === 0) {
|
|
44
|
+
const missing = composeMissingMemoryContext({
|
|
45
|
+
detail: describeSearchDegradations(fatal)
|
|
46
|
+
});
|
|
47
|
+
const composition2 = input.footer ? { ...missing, footer: input.footer } : missing;
|
|
48
|
+
return {
|
|
49
|
+
composition: composition2,
|
|
50
|
+
context: composeRecallContext(composition2),
|
|
51
|
+
truncated: false
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
const bounded = boundRecallContextComposition({
|
|
35
55
|
context: input.context,
|
|
36
56
|
footer: input.footer,
|
|
37
57
|
maxChars: input.maxChars,
|
|
38
58
|
compactContext: input.compactContext
|
|
39
59
|
});
|
|
60
|
+
if (fatal.length === 0) {
|
|
61
|
+
return {
|
|
62
|
+
composition: bounded,
|
|
63
|
+
context: composeRecallContext(bounded),
|
|
64
|
+
truncated: bounded.degradation?.reason === "budget-clipped" || bounded.degradation?.reason === "budget-compacted"
|
|
65
|
+
};
|
|
66
|
+
}
|
|
67
|
+
const composition = {
|
|
68
|
+
...bounded,
|
|
69
|
+
degradation: {
|
|
70
|
+
state: "degraded",
|
|
71
|
+
reason: "backend-unavailable",
|
|
72
|
+
detail: describeSearchDegradations(fatal),
|
|
73
|
+
...bounded.degradation?.budget ? { budget: bounded.degradation.budget } : {}
|
|
74
|
+
}
|
|
75
|
+
};
|
|
40
76
|
return {
|
|
41
77
|
composition,
|
|
42
78
|
context: composeRecallContext(composition),
|
|
43
|
-
truncated:
|
|
79
|
+
truncated: bounded.degradation?.reason === "budget-clipped" || bounded.degradation?.reason === "budget-compacted"
|
|
44
80
|
};
|
|
45
81
|
}
|
|
46
82
|
function notifyContextComposition(onContextComposition, composition, onError) {
|
|
@@ -66,4 +102,4 @@ export {
|
|
|
66
102
|
notifyContextComposition,
|
|
67
103
|
recallFailureComposition
|
|
68
104
|
};
|
|
69
|
-
//# sourceMappingURL=chunk-
|
|
105
|
+
//# sourceMappingURL=chunk-HPWJ5B7D.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/recall-composition-decision.ts"],"sourcesContent":["/**\n * Recall composition decision (#2972 layer 2).\n *\n * Extracted from recall-internal so that file stays under its ratchet\n * ceiling. Classifies injected memory context as complete / degraded /\n * missing, builds the compact (first-line) form from section buckets,\n * and turns outer-recall failures into the missing-note instead of \"\".\n */\n\nimport { isAbortError } from \"./abort-error.js\";\nimport {\n boundRecallContextComposition,\n composeMissingMemoryContext,\n composeRecallContext,\n RECALL_CONTEXT_SEPARATOR,\n type RecallContextComposition,\n} from \"./recall-context-composition.js\";\nimport {\n describeSearchDegradations,\n fatalSearchDegradations,\n type SearchDegradation,\n} from \"./search/port.js\";\n\nexport type RecallCompositionChunk = string | { readonly content: string };\n\nexport interface DecideRecallContextCompositionInput {\n context: string;\n compactContext?: string;\n footer?: string;\n maxChars: number;\n /** Mid-recall backend degradations (#3082). Absent on the healthy path. */\n backendDegradations?: readonly SearchDegradation[];\n /**\n * When false, `{ backend: \"qmd\", code: \"backend_unavailable\" }` is the\n * QMD-disabled/noop skip marker, not an outage. Other backends still count.\n * Default true so unit tests that pass degradations stay honest.\n */\n qmdExpected?: boolean;\n}\n\nexport interface DecidedRecallContextComposition {\n composition: RecallContextComposition;\n context: string;\n truncated: boolean;\n}\n\nfunction firstLine(content: string): string {\n const trimmed = content.trim();\n if (trimmed.length === 0) return \"\";\n const newline = trimmed.indexOf(\"\\n\");\n return newline === -1 ? trimmed : trimmed.slice(0, newline).trimEnd();\n}\n\nfunction chunkContent(chunk: RecallCompositionChunk): string {\n return typeof chunk === \"string\" ? chunk : chunk.content;\n}\n\n/**\n * Shallow form of every section chunk: the first line of each entry,\n * so a budget miss prefers breadth-complete-but-shallow over a clipped\n * tail. Empty chunks contribute nothing.\n */\nexport function compactRecallContextFromBuckets(\n buckets: Iterable<readonly [unknown, readonly RecallCompositionChunk[]]>,\n): string {\n const sections: string[] = [];\n for (const [, chunks] of buckets) {\n const lines: string[] = [];\n for (const chunk of chunks) {\n const line = firstLine(chunkContent(chunk));\n if (line.length > 0) lines.push(line);\n }\n if (lines.length > 0) sections.push(lines.join(\"\\n\"));\n }\n return sections.join(RECALL_CONTEXT_SEPARATOR);\n}\n\nexport function decideRecallContextComposition(\n input: DecideRecallContextCompositionInput,\n): DecidedRecallContextComposition {\n const observed = input.backendDegradations ?? [];\n const qmdExpected = input.qmdExpected !== false;\n const fatal = fatalSearchDegradations(observed).filter(\n (d) => qmdExpected || d.backend !== \"qmd\" || d.code !== \"backend_unavailable\",\n );\n if (fatal.length > 0 && input.context.trim().length === 0) {\n const missing = composeMissingMemoryContext({\n detail: describeSearchDegradations(fatal),\n });\n const composition = input.footer\n ? { ...missing, footer: input.footer }\n : missing;\n return {\n composition,\n context: composeRecallContext(composition),\n truncated: false,\n };\n }\n const bounded = boundRecallContextComposition({\n context: input.context,\n footer: input.footer,\n maxChars: input.maxChars,\n compactContext: input.compactContext,\n });\n if (fatal.length === 0) {\n return {\n composition: bounded,\n context: composeRecallContext(bounded),\n truncated:\n bounded.degradation?.reason === \"budget-clipped\" ||\n bounded.degradation?.reason === \"budget-compacted\",\n };\n }\n const composition = {\n ...bounded,\n degradation: {\n state: \"degraded\" as const,\n reason: \"backend-unavailable\" as const,\n detail: describeSearchDegradations(fatal),\n ...(bounded.degradation?.budget ? { budget: bounded.degradation.budget } : {}),\n },\n };\n return {\n composition,\n context: composeRecallContext(composition),\n truncated:\n bounded.degradation?.reason === \"budget-clipped\" ||\n bounded.degradation?.reason === \"budget-compacted\",\n };\n}\n\nexport function notifyContextComposition(\n onContextComposition:\n | ((composition: RecallContextComposition) => void | PromiseLike<void>)\n | undefined,\n composition: RecallContextComposition,\n onError: (err: unknown) => void,\n): void {\n if (!onContextComposition) return;\n try {\n const result = onContextComposition(composition);\n if (result && typeof result.then === \"function\") {\n void Promise.resolve(result).catch(onError);\n }\n } catch (err) {\n onError(err);\n }\n}\n\n/**\n * Outer-recall failure: abort stays silent (empty string). Timeout and\n * other errors become the missing-note so a failed query is never\n * indistinguishable from \"no matches\".\n */\nexport function recallFailureComposition(err: unknown): RecallContextComposition | null {\n if (isAbortError(err)) return null;\n const detail =\n err instanceof Error && err.message === \"recall timeout\"\n ? \"timeout\"\n : \"recall_failed\";\n return composeMissingMemoryContext({ detail });\n}\n"],"mappings":";;;;;;;;;;;;;;;AA8CA,SAAS,UAAU,SAAyB;AAC1C,QAAM,UAAU,QAAQ,KAAK;AAC7B,MAAI,QAAQ,WAAW,EAAG,QAAO;AACjC,QAAM,UAAU,QAAQ,QAAQ,IAAI;AACpC,SAAO,YAAY,KAAK,UAAU,QAAQ,MAAM,GAAG,OAAO,EAAE,QAAQ;AACtE;AAEA,SAAS,aAAa,OAAuC;AAC3D,SAAO,OAAO,UAAU,WAAW,QAAQ,MAAM;AACnD;AAOO,SAAS,gCACd,SACQ;AACR,QAAM,WAAqB,CAAC;AAC5B,aAAW,CAAC,EAAE,MAAM,KAAK,SAAS;AAChC,UAAM,QAAkB,CAAC;AACzB,eAAW,SAAS,QAAQ;AAC1B,YAAM,OAAO,UAAU,aAAa,KAAK,CAAC;AAC1C,UAAI,KAAK,SAAS,EAAG,OAAM,KAAK,IAAI;AAAA,IACtC;AACA,QAAI,MAAM,SAAS,EAAG,UAAS,KAAK,MAAM,KAAK,IAAI,CAAC;AAAA,EACtD;AACA,SAAO,SAAS,KAAK,wBAAwB;AAC/C;AAEO,SAAS,+BACd,OACiC;AACjC,QAAM,WAAW,MAAM,uBAAuB,CAAC;AAC/C,QAAM,cAAc,MAAM,gBAAgB;AAC1C,QAAM,QAAQ,wBAAwB,QAAQ,EAAE;AAAA,IAC9C,CAAC,MAAM,eAAe,EAAE,YAAY,SAAS,EAAE,SAAS;AAAA,EAC1D;AACA,MAAI,MAAM,SAAS,KAAK,MAAM,QAAQ,KAAK,EAAE,WAAW,GAAG;AACzD,UAAM,UAAU,4BAA4B;AAAA,MAC1C,QAAQ,2BAA2B,KAAK;AAAA,IAC1C,CAAC;AACD,UAAMA,eAAc,MAAM,SACtB,EAAE,GAAG,SAAS,QAAQ,MAAM,OAAO,IACnC;AACJ,WAAO;AAAA,MACL,aAAAA;AAAA,MACA,SAAS,qBAAqBA,YAAW;AAAA,MACzC,WAAW;AAAA,IACb;AAAA,EACF;AACA,QAAM,UAAU,8BAA8B;AAAA,IAC5C,SAAS,MAAM;AAAA,IACf,QAAQ,MAAM;AAAA,IACd,UAAU,MAAM;AAAA,IAChB,gBAAgB,MAAM;AAAA,EACxB,CAAC;AACD,MAAI,MAAM,WAAW,GAAG;AACtB,WAAO;AAAA,MACL,aAAa;AAAA,MACb,SAAS,qBAAqB,OAAO;AAAA,MACrC,WACE,QAAQ,aAAa,WAAW,oBAChC,QAAQ,aAAa,WAAW;AAAA,IACpC;AAAA,EACF;AACA,QAAM,cAAc;AAAA,IAClB,GAAG;AAAA,IACH,aAAa;AAAA,MACX,OAAO;AAAA,MACP,QAAQ;AAAA,MACR,QAAQ,2BAA2B,KAAK;AAAA,MACxC,GAAI,QAAQ,aAAa,SAAS,EAAE,QAAQ,QAAQ,YAAY,OAAO,IAAI,CAAC;AAAA,IAC9E;AAAA,EACF;AACA,SAAO;AAAA,IACL;AAAA,IACA,SAAS,qBAAqB,WAAW;AAAA,IACzC,WACE,QAAQ,aAAa,WAAW,oBAChC,QAAQ,aAAa,WAAW;AAAA,EACpC;AACF;AAEO,SAAS,yBACd,sBAGA,aACA,SACM;AACN,MAAI,CAAC,qBAAsB;AAC3B,MAAI;AACF,UAAM,SAAS,qBAAqB,WAAW;AAC/C,QAAI,UAAU,OAAO,OAAO,SAAS,YAAY;AAC/C,WAAK,QAAQ,QAAQ,MAAM,EAAE,MAAM,OAAO;AAAA,IAC5C;AAAA,EACF,SAAS,KAAK;AACZ,YAAQ,GAAG;AAAA,EACb;AACF;AAOO,SAAS,yBAAyB,KAA+C;AACtF,MAAI,aAAa,GAAG,EAAG,QAAO;AAC9B,QAAM,SACJ,eAAe,SAAS,IAAI,YAAY,mBACpC,YACA;AACN,SAAO,4BAA4B,EAAE,OAAO,CAAC;AAC/C;","names":["composition"]}
|
|
@@ -7,10 +7,10 @@ import {
|
|
|
7
7
|
import {
|
|
8
8
|
listMemoryGovernanceRuns,
|
|
9
9
|
readMemoryGovernanceRunArtifact
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-AQ6IBVFQ.js";
|
|
11
11
|
import {
|
|
12
12
|
StorageManager
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-LI4IWBLN.js";
|
|
14
14
|
import {
|
|
15
15
|
normalizeProjectionPreview,
|
|
16
16
|
normalizeProjectionTags
|
|
@@ -1005,4 +1005,4 @@ export {
|
|
|
1005
1005
|
verifyMemoryProjection,
|
|
1006
1006
|
repairMemoryProjection
|
|
1007
1007
|
};
|
|
1008
|
-
//# sourceMappingURL=chunk-
|
|
1008
|
+
//# sourceMappingURL=chunk-I4IKTNZP.js.map
|
|
@@ -3,7 +3,7 @@ import {
|
|
|
3
3
|
} from "./chunk-KJTKLXTH.js";
|
|
4
4
|
import {
|
|
5
5
|
StorageManager
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-LI4IWBLN.js";
|
|
7
7
|
import {
|
|
8
8
|
assertInjectedStorageRooted
|
|
9
9
|
} from "./chunk-JE334SIA.js";
|
|
@@ -260,4 +260,4 @@ export {
|
|
|
260
260
|
backupExistingLedger,
|
|
261
261
|
rebuildMemoryLifecycleLedger
|
|
262
262
|
};
|
|
263
|
-
//# sourceMappingURL=chunk-
|
|
263
|
+
//# sourceMappingURL=chunk-II4TIQCU.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
StorageManager
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-LI4IWBLN.js";
|
|
4
4
|
import {
|
|
5
5
|
getCachedRuleMemories,
|
|
6
6
|
setCachedRuleMemories
|
|
@@ -119,4 +119,4 @@ export {
|
|
|
119
119
|
compareVerifiedSemanticRuleResults,
|
|
120
120
|
searchVerifiedSemanticRules
|
|
121
121
|
};
|
|
122
|
-
//# sourceMappingURL=chunk-
|
|
122
|
+
//# sourceMappingURL=chunk-IOUQUXHO.js.map
|
|
@@ -23,7 +23,7 @@ import {
|
|
|
23
23
|
} from "./chunk-NVKO5YKP.js";
|
|
24
24
|
import {
|
|
25
25
|
compareEntityTimestamps
|
|
26
|
-
} from "./chunk-
|
|
26
|
+
} from "./chunk-LI4IWBLN.js";
|
|
27
27
|
import {
|
|
28
28
|
normalizeEntityName
|
|
29
29
|
} from "./chunk-YXZG5TVN.js";
|
|
@@ -918,4 +918,4 @@ export {
|
|
|
918
918
|
entityIndexVersion,
|
|
919
919
|
entityRecentTranscriptLookbackHours
|
|
920
920
|
};
|
|
921
|
-
//# sourceMappingURL=chunk-
|
|
921
|
+
//# sourceMappingURL=chunk-ITLFUILH.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
buildStandup,
|
|
3
3
|
parseStandupDate
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-BE4GMH45.js";
|
|
5
5
|
import {
|
|
6
6
|
backfillMemoryStorage,
|
|
7
7
|
runLocationBackfill,
|
|
@@ -9,16 +9,16 @@ import {
|
|
|
9
9
|
runLocationDay,
|
|
10
10
|
runLocationStatus,
|
|
11
11
|
runLocationSync
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-OCEIHKH5.js";
|
|
13
13
|
import {
|
|
14
14
|
externalWikiSearchOperation
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-MUGLJAZ3.js";
|
|
16
16
|
import {
|
|
17
17
|
DECISION_SUBCOMMANDS,
|
|
18
18
|
DELTA_SUBCOMMANDS,
|
|
19
19
|
defineOperation,
|
|
20
20
|
isCodegraphToolName
|
|
21
|
-
} from "./chunk-
|
|
21
|
+
} from "./chunk-2ZVSQPAA.js";
|
|
22
22
|
import {
|
|
23
23
|
CorrectionContractError
|
|
24
24
|
} from "./chunk-QLK3SL7Q.js";
|
|
@@ -1914,4 +1914,4 @@ export {
|
|
|
1914
1914
|
codegraphIngestTracesOperation,
|
|
1915
1915
|
REGISTERED_OPERATIONS
|
|
1916
1916
|
};
|
|
1917
|
-
//# sourceMappingURL=chunk-
|
|
1917
|
+
//# sourceMappingURL=chunk-IULYVB5X.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
isNamespaceKind
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-755VRFBS.js";
|
|
4
4
|
import {
|
|
5
5
|
EngramAccessInputError
|
|
6
6
|
} from "./chunk-3MUKQQ7A.js";
|
|
@@ -40,4 +40,4 @@ export {
|
|
|
40
40
|
positiveIntQueryParam,
|
|
41
41
|
optionalNamespaceKindQueryParam
|
|
42
42
|
};
|
|
43
|
-
//# sourceMappingURL=chunk-
|
|
43
|
+
//# sourceMappingURL=chunk-JLU7WK22.js.map
|
|
@@ -3,7 +3,7 @@ import {
|
|
|
3
3
|
} from "./chunk-B7RWBZXW.js";
|
|
4
4
|
import {
|
|
5
5
|
StorageManager
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-LI4IWBLN.js";
|
|
7
7
|
import {
|
|
8
8
|
getCachedEpisodeMap,
|
|
9
9
|
setCachedEpisodeMap
|
|
@@ -109,4 +109,4 @@ export {
|
|
|
109
109
|
compareVerifiedEpisodeResults,
|
|
110
110
|
searchVerifiedEpisodes
|
|
111
111
|
};
|
|
112
|
-
//# sourceMappingURL=chunk-
|
|
112
|
+
//# sourceMappingURL=chunk-L4HT5QZ5.js.map
|
|
@@ -17,7 +17,7 @@ import {
|
|
|
17
17
|
} from "./chunk-UHVXE24Y.js";
|
|
18
18
|
import {
|
|
19
19
|
normalizeQmdResultPath
|
|
20
|
-
} from "./chunk-
|
|
20
|
+
} from "./chunk-C2W6JKQQ.js";
|
|
21
21
|
import {
|
|
22
22
|
withholdToolScopedFromSharedNamespace
|
|
23
23
|
} from "./chunk-S2V7RUCL.js";
|
|
@@ -11348,4 +11348,4 @@ export {
|
|
|
11348
11348
|
isValidBufferSurpriseEvent,
|
|
11349
11349
|
StorageManager3 as StorageManager
|
|
11350
11350
|
};
|
|
11351
|
-
//# sourceMappingURL=chunk-
|
|
11351
|
+
//# sourceMappingURL=chunk-LI4IWBLN.js.map
|
|
@@ -21,13 +21,13 @@ import {
|
|
|
21
21
|
defineOperation,
|
|
22
22
|
parseNamespacePreflightWriteOp,
|
|
23
23
|
resolveAuthorizedNamespaceWritablePreflight
|
|
24
|
-
} from "./chunk-
|
|
24
|
+
} from "./chunk-2ZVSQPAA.js";
|
|
25
25
|
import {
|
|
26
26
|
parseSharedWriteOutputControls
|
|
27
27
|
} from "./chunk-IFBSZGW3.js";
|
|
28
28
|
import {
|
|
29
29
|
validateBriefingFormat
|
|
30
|
-
} from "./chunk-
|
|
30
|
+
} from "./chunk-Y3AFTYK4.js";
|
|
31
31
|
import {
|
|
32
32
|
parseDeepRecallMaxSteps
|
|
33
33
|
} from "./chunk-A7AISUJI.js";
|
|
@@ -603,4 +603,4 @@ defineOperation({ name: "graph_events", description: "SSE graph events.", schema
|
|
|
603
603
|
defineOperation({ name: "chat_message", description: "Chat message.", schema: strictSchema({ message: S.str, chatSessionId: S.str }), handler: async (_i, _ctx) => ({ result: { ok: true } }) });
|
|
604
604
|
defineOperation({ name: "chat_events", description: "SSE chat events.", schema: strictSchema({}), handler: async (_i, _ctx) => ({ result: { stream: "sse" } }) });
|
|
605
605
|
defineOperation({ name: "adapters_status", description: "Adapter registry metadata (issue #1850 round 5). Marker op: the HTTP transport builds the response from its own adapterRegistry, but the op still must be registered so it appears in listRegisteredOperations and enforceTokenOp can gate it for scoped tokens.", schema: strictSchema({}), handler: async (_i, _ctx) => ({ result: { ok: true } }) });
|
|
606
|
-
//# sourceMappingURL=chunk-
|
|
606
|
+
//# sourceMappingURL=chunk-LQ4OSM5V.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
rebuildMemoryProjection
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-I4IKTNZP.js";
|
|
4
4
|
|
|
5
5
|
// src/convergence-refresh.ts
|
|
6
6
|
async function refreshConvergedNamespaces(namespaces, namespaceSearchRouter, getStorage, searchEnabled) {
|
|
@@ -32,4 +32,4 @@ async function refreshConvergedNamespaces(namespaces, namespaceSearchRouter, get
|
|
|
32
32
|
export {
|
|
33
33
|
refreshConvergedNamespaces
|
|
34
34
|
};
|
|
35
|
-
//# sourceMappingURL=chunk-
|
|
35
|
+
//# sourceMappingURL=chunk-M3TMVHQ2.js.map
|
|
@@ -10,7 +10,7 @@ import {
|
|
|
10
10
|
} from "./chunk-AERXJCOG.js";
|
|
11
11
|
import {
|
|
12
12
|
deriveSourceConnector
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-S52VKUUW.js";
|
|
14
14
|
import {
|
|
15
15
|
resolvePipelineProcessingCapabilities
|
|
16
16
|
} from "./chunk-BMXEBWBT.js";
|
|
@@ -112,4 +112,4 @@ export {
|
|
|
112
112
|
renderExtractionConversation,
|
|
113
113
|
applyGroundingWithConnector
|
|
114
114
|
};
|
|
115
|
-
//# sourceMappingURL=chunk-
|
|
115
|
+
//# sourceMappingURL=chunk-MB3HMRXM.js.map
|
|
@@ -3,7 +3,7 @@ import {
|
|
|
3
3
|
} from "./chunk-7T4TOGMS.js";
|
|
4
4
|
import {
|
|
5
5
|
defineOperation
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-2ZVSQPAA.js";
|
|
7
7
|
|
|
8
8
|
// src/external-wiki-access.ts
|
|
9
9
|
import { z } from "zod";
|
|
@@ -26,4 +26,4 @@ var externalWikiSearchOperation = defineOperation({
|
|
|
26
26
|
export {
|
|
27
27
|
externalWikiSearchOperation
|
|
28
28
|
};
|
|
29
|
-
//# sourceMappingURL=chunk-
|
|
29
|
+
//# sourceMappingURL=chunk-MUGLJAZ3.js.map
|
|
@@ -77,7 +77,11 @@ var TOOL_OUTPUT_SCHEMAS = {
|
|
|
77
77
|
memoryIds: T_ARRAY,
|
|
78
78
|
results: T_ARRAY,
|
|
79
79
|
fallbackUsed: T_BOOLEAN,
|
|
80
|
-
sourcesUsed: T_ARRAY
|
|
80
|
+
sourcesUsed: T_ARRAY,
|
|
81
|
+
retrievalFailure: objectSchema({
|
|
82
|
+
reason: T_STRING,
|
|
83
|
+
detail: T_STRING
|
|
84
|
+
})
|
|
81
85
|
}),
|
|
82
86
|
recall_explain: objectSchema({
|
|
83
87
|
found: T_BOOLEAN,
|
|
@@ -626,4 +630,4 @@ function applyToolOutputSchemas(tools, canonicalPrefix, legacyPrefix) {
|
|
|
626
630
|
export {
|
|
627
631
|
applyToolOutputSchemas
|
|
628
632
|
};
|
|
629
|
-
//# sourceMappingURL=chunk-
|
|
633
|
+
//# sourceMappingURL=chunk-MY2PLXSM.js.map
|