@remnic/core 9.65.6 → 9.65.8
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 +15 -13
- package/dist/access-admin-ops-surface.js +54 -54
- package/dist/access-audit.js +2 -2
- package/dist/access-authorization-probe.d.ts +15 -13
- package/dist/access-authorization-probe.js +55 -55
- package/dist/access-boundary.d.ts +15 -13
- package/dist/access-boundary.js +54 -54
- package/dist/access-cli.js +156 -148
- package/dist/access-cli.js.map +1 -1
- package/dist/access-coding-context-resolution.d.ts +2 -1
- package/dist/access-extraction-force-flush.d.ts +15 -13
- package/dist/access-extraction-force-flush.js +54 -54
- package/dist/access-health-types.d.ts +2 -1
- package/dist/access-http-lcm-compaction.d.ts +15 -13
- package/dist/access-http-lifecycle-flush.d.ts +15 -13
- package/dist/access-http-offline-stream.d.ts +15 -13
- package/dist/access-http-query.d.ts +3 -2
- package/dist/access-http-query.js +56 -56
- package/dist/access-http.d.ts +17 -20
- package/dist/access-http.js +75 -73
- package/dist/access-identity-continuity-surface.d.ts +13 -11
- package/dist/access-identity-continuity-surface.js +54 -54
- package/dist/access-lcm-surface.d.ts +15 -13
- package/dist/access-lcm-surface.js +54 -54
- package/dist/access-mcp-output-schemas.js +1 -1
- package/dist/access-mcp.d.ts +15 -13
- package/dist/access-mcp.js +66 -64
- package/dist/access-memory-search-fanout.d.ts +3 -2
- package/dist/{access-namespace-preflight-D_6mo8ms.d.ts → access-namespace-preflight-CpAOrS-9.d.ts} +1 -1
- package/dist/access-namespace-preflight.d.ts +4 -3
- package/dist/access-namespace-preflight.js +54 -54
- package/dist/access-observe-write-surface.d.ts +15 -13
- package/dist/access-observe-write-surface.js +54 -54
- package/dist/access-offline-manifest.d.ts +13 -11
- package/dist/access-offline-manifest.js +6 -6
- package/dist/access-operations-batch.js +58 -58
- package/dist/access-operations.d.ts +21 -19
- package/dist/access-operations.js +63 -61
- package/dist/access-recall-concurrency.d.ts +15 -13
- package/dist/access-recall-concurrency.js +54 -54
- package/dist/access-recall-response.d.ts +15 -13
- package/dist/access-recall-response.js +54 -54
- package/dist/access-recall-surface.d.ts +15 -13
- package/dist/access-recall-surface.js +54 -54
- package/dist/access-schema.d.ts +83 -83
- package/dist/access-schema.js +3 -3
- package/dist/{access-service-sbiNS5UB.d.ts → access-service-Diu61Cfv.d.ts} +72 -72
- package/dist/access-service-helpers.d.ts +15 -13
- package/dist/access-service.d.ts +15 -13
- package/dist/access-service.js +54 -54
- package/dist/access-surface-catalog.d.ts +15 -13
- package/dist/access-surface-catalog.js +66 -56
- package/dist/access-surface-catalog.js.map +1 -1
- package/dist/access-wearables-meetings-surface.d.ts +6 -3
- package/dist/action-confidence.d.ts +2 -1
- package/dist/active-context-config.d.ts +27 -0
- package/dist/active-context-config.js +14 -0
- package/dist/active-context-transform.d.ts +267 -0
- package/dist/active-context-transform.js +31 -0
- package/dist/active-memory-bridge.d.ts +2 -1
- package/dist/active-recall.d.ts +2 -1
- package/dist/active-recall.js +13 -12
- package/dist/active-recall.js.map +1 -1
- package/dist/adapters/index.js +4 -4
- package/dist/adapters/registry.js +2 -2
- package/dist/ambient-provenance.d.ts +2 -1
- package/dist/artifact-search.d.ts +2 -1
- package/dist/{auto-sync-XVMLL2RH.js → auto-sync-2YPITIWN.js} +6 -6
- package/dist/behavior-learner.d.ts +2 -1
- package/dist/behavior-signals.d.ts +2 -1
- package/dist/bootstrap.d.ts +13 -11
- package/dist/briefing-window.d.ts +5 -2
- package/dist/briefing.d.ts +5 -2
- package/dist/briefing.js +25 -25
- package/dist/buffer-surprise-report.d.ts +2 -1
- package/dist/buffer-turn-helpers.d.ts +2 -1
- package/dist/buffer.d.ts +5 -2
- package/dist/buffer.js +6 -6
- package/dist/bulk-import/index.d.ts +4 -3
- package/dist/calibration.d.ts +2 -1
- package/dist/capabilities.d.ts +2 -1
- package/dist/{capsule-crypto-GWVG7LGC.js → capsule-crypto-7FJQINUR.js} +2 -2
- package/dist/{catalog-DO_7zfkv.d.ts → catalog-9f-vEQLS.d.ts} +1 -1
- package/dist/causal-behavior.d.ts +4 -3
- package/dist/causal-behavior.js +2 -2
- package/dist/causal-chain.js +2 -2
- package/dist/causal-consolidation.d.ts +2 -1
- package/dist/causal-consolidation.js +28 -28
- package/dist/causal-retrieval.js +2 -2
- package/dist/causal-trajectory-graph.d.ts +2 -1
- package/dist/causal-trajectory-graph.js +2 -2
- package/dist/causal-trajectory.js +1 -1
- package/dist/{chunk-OWHERGF2.js → chunk-2NLLXCJG.js} +2 -2
- package/dist/{chunk-NZPFCP5A.js → chunk-2PSX5BJU.js} +2 -2
- package/dist/{chunk-RKNJBZ55.js → chunk-2QSZNTDO.js} +4 -4
- package/dist/{chunk-X2DWBWOX.js → chunk-3A2NJP2U.js} +2 -2
- package/dist/chunk-3BCULS4U.js +1093 -0
- package/dist/chunk-3BCULS4U.js.map +1 -0
- package/dist/{chunk-JGG5HVI2.js → chunk-3PKAS6VL.js} +2 -2
- package/dist/{chunk-LSYD7GHZ.js → chunk-3SZD4CYO.js} +3 -3
- package/dist/chunk-43HUVDTD.js +114 -0
- package/dist/chunk-43HUVDTD.js.map +1 -0
- package/dist/{chunk-5TG4MU2U.js → chunk-4F4AQFWL.js} +8 -8
- package/dist/{chunk-D35XLYQ7.js → chunk-4QEYREAV.js} +12 -12
- package/dist/{chunk-46WM6JX2.js → chunk-4ZWCQJNM.js} +5 -5
- package/dist/{chunk-DVYRD4HY.js → chunk-5ACCD4L7.js} +30 -1
- package/dist/chunk-5ACCD4L7.js.map +1 -0
- package/dist/{chunk-W6J4POB6.js → chunk-5DHKCO52.js} +2 -2
- package/dist/{chunk-IRXMJLTW.js → chunk-5HK3CJAR.js} +2 -2
- package/dist/{chunk-NLUCDKLT.js → chunk-5RWZH6PH.js} +2 -2
- package/dist/{chunk-H7BZBSP6.js → chunk-645WOU5I.js} +4 -4
- package/dist/{chunk-AYAZWXJI.js → chunk-76DIF5KT.js} +2 -2
- package/dist/{chunk-OPPBTPUU.js → chunk-7KQB4EBS.js} +4 -4
- package/dist/{chunk-I2HTKOOP.js → chunk-7VZFRUQU.js} +3 -3
- package/dist/{chunk-DPNXADEI.js → chunk-7WOWGRAU.js} +11 -7
- package/dist/chunk-7WOWGRAU.js.map +1 -0
- package/dist/{chunk-JCWY73FK.js → chunk-AHPIFKNG.js} +2 -2
- package/dist/{chunk-FC7TIRFS.js → chunk-AX7UXCHJ.js} +6 -1
- package/dist/chunk-AX7UXCHJ.js.map +1 -0
- package/dist/{chunk-3I22VWB3.js → chunk-AZMLH5UT.js} +2 -2
- package/dist/chunk-B32WYRXX.js +77 -0
- package/dist/chunk-B32WYRXX.js.map +1 -0
- package/dist/{chunk-JOEJG4SD.js → chunk-BEC4YBNA.js} +4 -4
- package/dist/chunk-BWGCOLEL.js +61 -0
- package/dist/chunk-BWGCOLEL.js.map +1 -0
- package/dist/{chunk-BXXOPKT5.js → chunk-CAMNRAJF.js} +2 -2
- package/dist/{chunk-C24UZSFW.js → chunk-CEH2AFXG.js} +6 -6
- package/dist/{chunk-YOXVZJFM.js → chunk-CFVTRUR3.js} +2 -2
- package/dist/{chunk-SVSRPG6M.js → chunk-CPA5NBHN.js} +2 -2
- package/dist/{chunk-7BEPVIH3.js → chunk-CRML27CO.js} +3 -3
- package/dist/{chunk-AXGFOFNY.js → chunk-DA7ITC5Z.js} +2 -2
- package/dist/{chunk-5W7MKXMU.js → chunk-DEACDKE3.js} +144 -78
- package/dist/chunk-DEACDKE3.js.map +1 -0
- package/dist/{chunk-FEO2CDXR.js → chunk-DPCXDG7G.js} +2 -2
- package/dist/{chunk-HZNYJN77.js → chunk-F3NVYTTA.js} +2 -2
- package/dist/{chunk-7SSRXEZJ.js → chunk-F7XUD3PL.js} +2 -2
- package/dist/{chunk-LDBFXD4F.js → chunk-FP7YTTVO.js} +3 -1
- package/dist/chunk-FP7YTTVO.js.map +1 -0
- package/dist/{chunk-XZBXINXZ.js → chunk-GIC6BASP.js} +4 -4
- package/dist/{chunk-PP7R754B.js → chunk-GPFZFCRN.js} +1 -1
- package/dist/{chunk-53MZQEBD.js → chunk-GTO56JY5.js} +2 -2
- package/dist/{chunk-RAIUTAZZ.js → chunk-H2YSH3DG.js} +2 -2
- package/dist/{chunk-HWVNYNIV.js → chunk-HMZKGHMD.js} +2 -2
- package/dist/{chunk-ZXUZ54Z5.js → chunk-HRHO3ZNG.js} +2 -2
- package/dist/{chunk-SDEPLF7V.js → chunk-IBJ6U753.js} +2 -2
- package/dist/chunk-JCCWJHOP.js +240 -0
- package/dist/chunk-JCCWJHOP.js.map +1 -0
- package/dist/{chunk-T3JQTCCO.js → chunk-JI7U6AS3.js} +4 -4
- package/dist/{chunk-TR7DGXGI.js → chunk-JOZUBF4A.js} +5 -5
- package/dist/{chunk-YWBOOBDP.js → chunk-JYSN42VN.js} +71 -71
- package/dist/{chunk-ZPUIRTIZ.js → chunk-KOLJJN5G.js} +12 -75
- package/dist/chunk-KOLJJN5G.js.map +1 -0
- package/dist/{chunk-5W7CTZ2E.js → chunk-KQAFEZQX.js} +4 -4
- package/dist/{chunk-D2YNNDML.js → chunk-KWIGDKM2.js} +2 -2
- package/dist/{chunk-YUTTMSC7.js → chunk-KZIF6XHX.js} +93 -30
- package/dist/chunk-KZIF6XHX.js.map +1 -0
- package/dist/chunk-LB7WCZHY.js +553 -0
- package/dist/chunk-LB7WCZHY.js.map +1 -0
- package/dist/{chunk-RIAM7DND.js → chunk-LDKPDODJ.js} +2 -2
- package/dist/{chunk-227UFSEQ.js → chunk-LEPOP46W.js} +4 -4
- package/dist/{chunk-2JHRCWHT.js → chunk-LKYIOCWL.js} +107 -107
- package/dist/{chunk-XAWIL7TC.js → chunk-LOXHYCVS.js} +2 -2
- package/dist/{chunk-OMZLBT4B.js → chunk-LPNCR4QK.js} +48 -27
- package/dist/chunk-LPNCR4QK.js.map +1 -0
- package/dist/{chunk-OLBZ2WGG.js → chunk-LTBKKSCX.js} +2 -2
- package/dist/{chunk-O4BAGJDN.js → chunk-MDD2RINF.js} +2 -2
- package/dist/{chunk-H63EDPFJ.js → chunk-MI2OTWV5.js} +15 -2
- package/dist/{chunk-H63EDPFJ.js.map → chunk-MI2OTWV5.js.map} +1 -1
- package/dist/{chunk-LBFFNDFM.js → chunk-MINHJ55X.js} +1 -1
- package/dist/chunk-MINHJ55X.js.map +1 -0
- package/dist/{chunk-ROEAEANL.js → chunk-MY2BC6UE.js} +15 -15
- package/dist/{chunk-RACZB5HT.js → chunk-N37X5RU7.js} +4 -4
- package/dist/{chunk-AG46P24C.js → chunk-NNBZS3DY.js} +4 -4
- package/dist/{chunk-PGW64IFQ.js → chunk-NPFUNWNX.js} +2 -2
- package/dist/{chunk-MFOSZUIT.js → chunk-NPIBN2VL.js} +2 -2
- package/dist/{chunk-IF4EY26E.js → chunk-OA2O2GJ4.js} +3 -3
- package/dist/{chunk-6FUMA6AA.js → chunk-ODU2CNNX.js} +2 -2
- package/dist/{chunk-PNAGNVGK.js → chunk-OXRRJXPR.js} +42 -37
- package/dist/chunk-OXRRJXPR.js.map +1 -0
- package/dist/{chunk-TWBQQ3FT.js → chunk-P36Z4JRA.js} +2 -2
- package/dist/{chunk-OUKBMQ2O.js → chunk-PD66CVSD.js} +2 -2
- package/dist/{chunk-MVIYRRVJ.js → chunk-PMVPCZJZ.js} +5 -5
- package/dist/{chunk-US4IRASK.js → chunk-PU56CXZA.js} +6 -6
- package/dist/{chunk-IDQ6DKXC.js → chunk-S5XOSTYM.js} +3 -3
- package/dist/{chunk-DYO24BNB.js → chunk-SEEJOGQX.js} +5 -5
- package/dist/{chunk-7OZSHBWK.js → chunk-SNOIKAHM.js} +2 -2
- package/dist/{chunk-SR7JIRAR.js → chunk-T6ILXUAH.js} +2 -2
- package/dist/{chunk-2RXUZVPU.js → chunk-T7XP6IZE.js} +2 -2
- package/dist/{chunk-KBOG7FJV.js → chunk-TFR3HG4K.js} +3 -3
- package/dist/{chunk-XUZ5CIEE.js → chunk-TUHBYJXL.js} +1 -1
- package/dist/{chunk-7K5Q6COX.js → chunk-TVVEYCNW.js} +4 -4
- package/dist/{chunk-ZK4BFABK.js → chunk-U7EW2W4W.js} +13 -13
- package/dist/{chunk-4K7IW3F7.js → chunk-UD7UNYRD.js} +34 -3
- package/dist/chunk-UD7UNYRD.js.map +1 -0
- package/dist/{chunk-VFYRYFLL.js → chunk-UEBDCMOO.js} +2 -2
- package/dist/{chunk-JFWZRUKP.js → chunk-UENKPWCS.js} +4 -4
- package/dist/{chunk-AAXJNINV.js → chunk-UL4MKZHI.js} +2 -2
- package/dist/chunk-ULM7JCDH.js +154 -0
- package/dist/chunk-ULM7JCDH.js.map +1 -0
- package/dist/{chunk-R2MZCYA6.js → chunk-UNUMFURP.js} +3 -3
- package/dist/{chunk-5GIZM4RX.js → chunk-UPFNQJC7.js} +2 -2
- package/dist/{chunk-W4BMEGQA.js → chunk-UTQUEHC7.js} +2 -2
- package/dist/{chunk-I32NKXE2.js → chunk-V4IDF3EZ.js} +2 -2
- package/dist/{chunk-6LS5OX3U.js → chunk-W2BAGGEW.js} +50 -18
- package/dist/chunk-W2BAGGEW.js.map +1 -0
- package/dist/chunk-W2UOAATB.js +521 -0
- package/dist/chunk-W2UOAATB.js.map +1 -0
- package/dist/{chunk-QMZY3GG6.js → chunk-WNXYT4MK.js} +3 -3
- package/dist/{chunk-UVYI6VIX.js → chunk-X7Y7WX73.js} +1 -1
- package/dist/{chunk-T42L3S6A.js → chunk-XBGHAAKR.js} +2 -2
- package/dist/{chunk-RQ2EQRRR.js → chunk-XNWXSGHS.js} +80 -7
- package/dist/chunk-XNWXSGHS.js.map +1 -0
- package/dist/{chunk-THG4GYIE.js → chunk-YEUXERJ6.js} +5 -5
- package/dist/{chunk-BIJAWZYW.js → chunk-YMOPYG3K.js} +6 -6
- package/dist/{chunk-M4AHBM72.js → chunk-Z3YEGSR4.js} +2 -2
- package/dist/{cli-Bfgo0n1L.d.ts → cli-O3F-ht3i.d.ts} +5 -5
- package/dist/cli.d.ts +17 -15
- package/dist/cli.js +106 -104
- package/dist/coding/pre-action-gate.d.ts +2 -1
- package/dist/coding/pre-action-gate.js +2 -2
- package/dist/compounding/engine.d.ts +5 -2
- package/dist/compounding/engine.js +26 -26
- package/dist/compounding/preference-consolidator.d.ts +4 -3
- package/dist/compression-optimizer.d.ts +2 -1
- package/dist/config-security.js +2 -2
- package/dist/config.d.ts +2 -1
- package/dist/config.js +13 -12
- package/dist/connectors/codex-materialize-runner.d.ts +2 -1
- package/dist/connectors/codex-materialize-runner.js +25 -25
- package/dist/connectors/codex-materialize.d.ts +2 -1
- package/dist/connectors/index.d.ts +2 -1
- package/dist/connectors/index.js +25 -25
- package/dist/consolidation-provenance-check.d.ts +5 -2
- package/dist/consolidation-provenance-check.js +2 -2
- package/dist/consolidation-undo.d.ts +5 -2
- package/dist/context-summary.d.ts +43 -0
- package/dist/context-summary.js +14 -0
- package/dist/context-summary.js.map +1 -0
- package/dist/contradiction/index.d.ts +6 -3
- package/dist/contradiction/index.js +5 -5
- package/dist/converge-config.d.ts +2 -1
- package/dist/convergence-refresh.d.ts +5 -2
- package/dist/convergence-refresh.js +28 -28
- package/dist/conversation-index/backend.d.ts +2 -1
- package/dist/conversation-index/backend.js +2 -2
- package/dist/conversation-index/chunker.d.ts +2 -1
- package/dist/conversation-index/faiss-adapter.d.ts +2 -1
- package/dist/conversation-index/indexer.d.ts +2 -1
- package/dist/conversation-index/search.d.ts +2 -1
- package/dist/corpus-watermark.d.ts +2 -1
- package/dist/corpus-watermark.js +27 -27
- package/dist/cross-lingual-recall.d.ts +2 -1
- package/dist/day-summary.d.ts +2 -1
- package/dist/delinearize.d.ts +2 -1
- package/dist/dependency-propagation-config.d.ts +2 -1
- package/dist/{dependency-propagation-delivery-D23_x-s5.d.ts → dependency-propagation-delivery-CL6RWXTA.d.ts} +1 -1
- package/dist/direct-answer-wiring.d.ts +2 -1
- package/dist/direct-answer.d.ts +2 -1
- package/dist/embedding-fallback.d.ts +2 -1
- package/dist/enrichment/index.d.ts +2 -1
- package/dist/entity-origin-fields.d.ts +2 -1
- package/dist/entity-retrieval.d.ts +5 -2
- package/dist/entity-retrieval.js +26 -26
- package/dist/entity-schema.d.ts +2 -1
- package/dist/episodic-context.d.ts +2 -1
- package/dist/eval-trajectory-contracts.d.ts +257 -0
- package/dist/eval-trajectory-contracts.js +56 -0
- package/dist/eval-trajectory-contracts.js.map +1 -0
- package/dist/eval-trajectory-store.d.ts +40 -0
- package/dist/eval-trajectory-store.js +19 -0
- package/dist/eval-trajectory-store.js.map +1 -0
- package/dist/eval-trajectory.d.ts +68 -0
- package/dist/eval-trajectory.js +46 -0
- package/dist/eval-trajectory.js.map +1 -0
- package/dist/event-order-recall.js +2 -2
- package/dist/explicit-capture.d.ts +13 -11
- package/dist/explicit-capture.js +6 -6
- package/dist/external-wiki-access.d.ts +15 -13
- package/dist/external-wiki-access.js +55 -55
- package/dist/external-wiki-collection-registration.d.ts +2 -1
- package/dist/external-wiki-collection.d.ts +2 -1
- package/dist/external-wiki-mcp-tools.d.ts +15 -13
- package/dist/extraction-error-classification.d.ts +2 -1
- package/dist/extraction-faithfulness.d.ts +2 -1
- package/dist/extraction-judge-telemetry.d.ts +2 -1
- package/dist/extraction-judge-training.d.ts +2 -1
- package/dist/extraction-judge.d.ts +2 -1
- package/dist/extraction-liveness.d.ts +2 -1
- package/dist/extraction-normalization.d.ts +2 -1
- package/dist/extraction-prompt.d.ts +2 -1
- package/dist/extraction-source-grounding-rules.d.ts +2 -1
- package/dist/extraction-source-grounding.d.ts +2 -1
- package/dist/extraction.d.ts +2 -1
- package/dist/extraction.js +33 -33
- package/dist/fallback-llm.d.ts +2 -1
- package/dist/{forget-SZ2BXDGF.js → forget-2AE4MDK3.js} +3 -3
- package/dist/graph-dashboard-diff.d.ts +2 -1
- package/dist/graph-dashboard-key.d.ts +2 -1
- package/dist/graph-dashboard-parser.d.ts +2 -1
- package/dist/{graph-edge-decay-FXGELBFA.js → graph-edge-decay-A4SDFMMS.js} +4 -4
- package/dist/graph-edge-decay-A4SDFMMS.js.map +1 -0
- package/dist/graph-edge-reinforcement.d.ts +2 -1
- package/dist/graph-path-reconstruction.d.ts +2 -1
- package/dist/graph-path-scoring.d.ts +2 -1
- package/dist/graph-snapshot.d.ts +2 -1
- package/dist/graph-snapshot.js +3 -3
- package/dist/graph.d.ts +2 -1
- package/dist/graph.js +3 -3
- package/dist/harmonic-retrieval.js +1 -1
- package/dist/importance.d.ts +2 -1
- package/dist/importers/index.d.ts +2 -1
- package/dist/in-flight-reads.d.ts +2 -1
- package/dist/{index--QhGIXF2.d.ts → index-C7Xep6S9.d.ts} +2 -2
- package/dist/index.d.ts +706 -701
- package/dist/index.js +271 -200
- package/dist/intent.d.ts +2 -1
- package/dist/lcm/engine.d.ts +3 -2
- package/dist/lcm/engine.js +3 -2
- package/dist/lcm/index.d.ts +4 -2
- package/dist/lcm/index.js +6 -5
- package/dist/lcm/summarizer.d.ts +4 -6
- package/dist/lcm/summarizer.js +2 -1
- package/dist/lcm/tools.d.ts +4 -3
- package/dist/lifecycle.d.ts +2 -1
- package/dist/live-connectors-runner.d.ts +2 -1
- package/dist/local-llm.d.ts +2 -1
- package/dist/local-model-endpoint.d.ts +2 -1
- package/dist/location/index.d.ts +128 -1
- package/dist/location/index.js +60 -750
- package/dist/location/index.js.map +1 -1
- package/dist/maintenance/memory-governance.d.ts +2 -1
- package/dist/maintenance/memory-governance.js +26 -26
- package/dist/maintenance/rebuild-memory-lifecycle-ledger.d.ts +5 -2
- package/dist/maintenance/rebuild-memory-lifecycle-ledger.js +25 -25
- package/dist/maintenance/rebuild-memory-projection.d.ts +5 -2
- package/dist/maintenance/rebuild-memory-projection.js +27 -27
- package/dist/{maintenance-PFvY1Pw_.d.ts → maintenance-CJ-xqFp0.d.ts} +4 -3
- package/dist/mcp-memory-inspector-app.d.ts +15 -13
- package/dist/mcp-read-only-tools.js +1 -1
- package/dist/memory-action-policy.d.ts +18 -2
- package/dist/memory-action-policy.js +3 -1
- package/dist/memory-cache.d.ts +2 -1
- package/dist/memory-controller.d.ts +2 -1
- package/dist/memory-controller.js +2 -2
- package/dist/memory-lifecycle-ledger-utils.d.ts +2 -1
- package/dist/memory-projection-store.d.ts +2 -1
- package/dist/memory-provenance.d.ts +2 -1
- package/dist/memory-snapshot.d.ts +2 -1
- package/dist/memory-subject-cli.d.ts +15 -13
- package/dist/memory-subject.d.ts +15 -13
- package/dist/memory-subject.js +3 -3
- package/dist/memory-worth-outcomes.d.ts +50 -3
- package/dist/memory-worth-outcomes.js +5 -3
- package/dist/models-json.d.ts +2 -1
- package/dist/namespaces/migrate.d.ts +6 -3
- package/dist/namespaces/migrate.js +26 -26
- package/dist/namespaces/principal.d.ts +2 -1
- package/dist/namespaces/search.d.ts +2 -1
- package/dist/namespaces/search.js +11 -11
- package/dist/namespaces/storage.d.ts +6 -3
- package/dist/namespaces/storage.js +25 -25
- package/dist/native-knowledge.d.ts +2 -1
- package/dist/offline-sync-impression-drain.d.ts +2 -1
- package/dist/offline-sync-impression-drain.js +2 -2
- package/dist/operator-doctor-corpus.d.ts +2 -1
- package/dist/operator-doctor-corpus.js +28 -28
- package/dist/operator-doctor-replica.d.ts +2 -1
- package/dist/operator-toolkit.d.ts +6 -3
- package/dist/operator-toolkit.js +45 -44
- package/dist/orchestration/compression-guideline-coordinator.d.ts +5 -2
- package/dist/orchestration/maintenance.d.ts +7 -4
- package/dist/orchestration/maintenance.js +34 -32
- package/dist/{orchestrator-4wzJrPVm.d.ts → orchestrator-BsntWxLy.d.ts} +8 -8
- package/dist/orchestrator.d.ts +13 -11
- package/dist/orchestrator.js +156 -148
- package/dist/patterns-cli.d.ts +2 -1
- package/dist/{pipeline-CgXgdIrF.d.ts → pipeline-CVoysPm2.d.ts} +1 -1
- package/dist/policy-runtime.d.ts +2 -1
- package/dist/proactive-contention.d.ts +2 -1
- package/dist/provenance.d.ts +2 -1
- package/dist/{public-http-BP3VQDl5.d.ts → public-http-CuOxlTC2.d.ts} +1 -1
- package/dist/{qmd-BppGGxsi.d.ts → qmd-DWMAGA5l.d.ts} +1 -1
- package/dist/qmd-preflight.d.ts +3 -2
- package/dist/qmd-recall-cache.d.ts +2 -1
- package/dist/qmd.d.ts +3 -2
- package/dist/qmd.js +4 -4
- package/dist/recall-concurrency-config.d.ts +2 -1
- package/dist/recall-disclosure-escalation.d.ts +2 -1
- package/dist/recall-explain-renderer.d.ts +2 -1
- package/dist/recall-explain-renderer.js +3 -3
- package/dist/recall-memory-map.d.ts +2 -1
- package/dist/recall-planner-llm.d.ts +2 -1
- package/dist/recall-state.d.ts +2 -1
- package/dist/recall-tag-filter.d.ts +2 -1
- package/dist/recall-timings.d.ts +2 -1
- package/dist/recall-xray-cli.d.ts +2 -1
- package/dist/recall-xray-cli.js +4 -4
- package/dist/recall-xray-renderer.d.ts +2 -1
- package/dist/recall-xray-renderer.js +3 -3
- package/dist/recall-xray.d.ts +2 -1
- package/dist/recall-xray.js +2 -2
- package/dist/reconcile/cursor.d.ts +2 -1
- package/dist/reconcile/manifest.d.ts +2 -1
- package/dist/reconcile/manifest.js +3 -3
- package/dist/reconcile/plan.d.ts +2 -1
- package/dist/replay/normalizers/chatgpt.d.ts +2 -1
- package/dist/replay/normalizers/claude.d.ts +2 -1
- package/dist/replay/normalizers/openclaw.d.ts +2 -1
- package/dist/replay/normalizers/shared.d.ts +2 -1
- package/dist/replay/runner.d.ts +2 -1
- package/dist/replay/types.d.ts +2 -1
- package/dist/replica-divergence.d.ts +2 -1
- package/dist/replica-peers-config.d.ts +2 -1
- package/dist/{resolution-4552BNRV.js → resolution-XWBPKYFB.js} +6 -6
- package/dist/resolution-XWBPKYFB.js.map +1 -0
- package/dist/resolve-auth-token.d.ts +2 -1
- package/dist/resume-bundles.js +14 -13
- package/dist/retrieval-agents.d.ts +3 -2
- package/dist/retrieval-tiers.d.ts +2 -1
- package/dist/routing/engine.d.ts +2 -1
- package/dist/routing/store.d.ts +2 -1
- package/dist/salvage-envelope.d.ts +2 -1
- package/dist/salvage-envelope.js +5 -5
- package/dist/schemas.d.ts +124 -124
- package/dist/{scope-profiles-ChZUtxDU.d.ts → scope-profiles-CPWkW_dI.d.ts} +1 -1
- package/dist/search/embed-helper.d.ts +2 -1
- package/dist/search/factory.d.ts +2 -1
- package/dist/search/factory.js +10 -10
- package/dist/search/index.d.ts +2 -1
- package/dist/search/index.js +15 -15
- package/dist/search/lancedb-backend.d.ts +2 -1
- package/dist/search/lancedb-backend.js +2 -2
- package/dist/search/meilisearch-backend.d.ts +2 -1
- package/dist/search/meilisearch-backend.js +2 -2
- package/dist/search/noop-backend.d.ts +2 -1
- package/dist/search/orama-backend.d.ts +2 -1
- package/dist/search/orama-backend.js +2 -2
- package/dist/search/port.d.ts +2 -1
- package/dist/search/remote-backend.d.ts +2 -1
- package/dist/{semantic-consolidation-mSPwQSmF.d.ts → semantic-consolidation-CNFVBXFc.d.ts} +1 -1
- package/dist/semantic-consolidation.d.ts +3 -2
- package/dist/semantic-consolidation.js +31 -31
- package/dist/semantic-rule-promotion.js +25 -25
- package/dist/semantic-rule-verifier.d.ts +2 -1
- package/dist/semantic-rule-verifier.js +25 -25
- package/dist/{service-BICWLwSP.d.ts → service-Bb-JIdQ0.d.ts} +2 -2
- package/dist/session-observer-bands.d.ts +2 -1
- package/dist/session-observer-state.d.ts +2 -1
- package/dist/shared-context/manager.d.ts +8 -7
- package/dist/signal.d.ts +2 -1
- package/dist/source-agent-qualifier.d.ts +2 -1
- package/dist/source-agent-qualifier.js +29 -29
- package/dist/{storage-B7urx1K3.d.ts → storage-CukrlNKk.d.ts} +4 -1
- package/dist/storage.d.ts +5 -2
- package/dist/storage.js +24 -24
- package/dist/subject-config.d.ts +2 -1
- package/dist/subject-config.js +4 -4
- package/dist/summarizer.d.ts +2 -1
- package/dist/summary-snapshot.d.ts +2 -1
- package/dist/support-passport/index.d.ts +18 -16
- package/dist/support-passport/index.js +57 -57
- package/dist/temporal-supersession.d.ts +3 -2
- package/dist/temporal-timeline-recall.d.ts +2 -1
- package/dist/temporal-validity.d.ts +2 -1
- package/dist/threading.d.ts +2 -1
- package/dist/tier-migration.d.ts +5 -2
- package/dist/tier-routing.d.ts +2 -1
- package/dist/topics.d.ts +2 -1
- package/dist/transcript.d.ts +2 -1
- package/dist/transfer/backup.js +2 -2
- package/dist/transfer/capsule-export.js +2 -2
- package/dist/transfer/capsule-import.js +2 -2
- package/dist/transfer/types.d.ts +78 -78
- package/dist/trust-score-stage.d.ts +2 -1
- package/dist/trust-score.d.ts +2 -1
- package/dist/{types-ETU5N6nB.d.ts → types-djxQlxJ7.d.ts} +3 -2
- package/dist/types.d.ts +2 -1
- package/dist/types.js +1 -1
- package/dist/utility-runtime.d.ts +2 -1
- package/dist/verified-recall.js +25 -25
- package/dist/who-knows-cli.d.ts +15 -13
- package/dist/who-knows-cli.js +26 -26
- package/dist/who-knows.d.ts +15 -13
- package/dist/who-knows.js +25 -25
- package/dist/write-envelope.d.ts +2 -1
- package/dist/write-envelope.js +4 -4
- package/package.json +22 -2
- package/src/access-boundary.ts +5 -0
- package/src/access-http.ts +15 -16
- package/src/access-mcp-output-schemas.ts +5 -0
- package/src/access-mcp.ts +6 -6
- package/src/access-operations.ts +2 -0
- package/src/access-surface-catalog.ts +10 -0
- package/src/active-context-config.ts +98 -0
- package/src/active-context-transform.test.ts +533 -0
- package/src/active-context-transform.ts +981 -0
- package/src/config.ts +3 -5
- package/src/context-summary.ts +182 -0
- package/src/eval-trajectory-contracts.ts +411 -0
- package/src/eval-trajectory-store.ts +306 -0
- package/src/eval-trajectory.test.ts +534 -0
- package/src/eval-trajectory.ts +773 -0
- package/src/index.ts +6 -11
- package/src/lcm/summarizer.ts +14 -93
- package/src/location/access-operations.ts +84 -0
- package/src/location/http-glue.test.ts +100 -0
- package/src/location/http-glue.ts +85 -0
- package/src/location/index.ts +3 -0
- package/src/location/mcp-tools.ts +82 -0
- package/src/location/provider-setup.test.ts +106 -0
- package/src/location/provider-setup.ts +103 -0
- package/src/location/scheduler.test.ts +113 -0
- package/src/location/scheduler.ts +98 -0
- package/src/location/surfaces.test.ts +241 -0
- package/src/location/surfaces.ts +329 -0
- package/src/maintenance/day-summary-cron.ts +45 -0
- package/src/mcp-read-only-tools.ts +2 -0
- package/src/memory-action-policy.ts +28 -0
- package/src/memory-worth-outcomes.test.ts +53 -18
- package/src/memory-worth-outcomes.ts +91 -9
- package/src/orchestration/maintenance.ts +22 -30
- package/src/storage/context-transform-ledger.ts +39 -0
- package/src/storage/secure-line-reader.ts +50 -1
- package/src/storage.ts +4 -1
- package/src/types.ts +2 -3
- package/src/wearables/http-glue.ts +28 -0
- package/dist/chunk-4K7IW3F7.js.map +0 -1
- package/dist/chunk-5W7MKXMU.js.map +0 -1
- package/dist/chunk-6LS5OX3U.js.map +0 -1
- package/dist/chunk-DPNXADEI.js.map +0 -1
- package/dist/chunk-DVYRD4HY.js.map +0 -1
- package/dist/chunk-FC7TIRFS.js.map +0 -1
- package/dist/chunk-LBFFNDFM.js.map +0 -1
- package/dist/chunk-LDBFXD4F.js.map +0 -1
- package/dist/chunk-OMZLBT4B.js.map +0 -1
- package/dist/chunk-PNAGNVGK.js.map +0 -1
- package/dist/chunk-RQ2EQRRR.js.map +0 -1
- package/dist/chunk-YUTTMSC7.js.map +0 -1
- package/dist/chunk-ZPUIRTIZ.js.map +0 -1
- /package/dist/{capsule-crypto-GWVG7LGC.js.map → active-context-config.js.map} +0 -0
- /package/dist/{graph-edge-decay-FXGELBFA.js.map → active-context-transform.js.map} +0 -0
- /package/dist/{auto-sync-XVMLL2RH.js.map → auto-sync-2YPITIWN.js.map} +0 -0
- /package/dist/{resolution-4552BNRV.js.map → capsule-crypto-7FJQINUR.js.map} +0 -0
- /package/dist/{chunk-OWHERGF2.js.map → chunk-2NLLXCJG.js.map} +0 -0
- /package/dist/{chunk-NZPFCP5A.js.map → chunk-2PSX5BJU.js.map} +0 -0
- /package/dist/{chunk-RKNJBZ55.js.map → chunk-2QSZNTDO.js.map} +0 -0
- /package/dist/{chunk-X2DWBWOX.js.map → chunk-3A2NJP2U.js.map} +0 -0
- /package/dist/{chunk-JGG5HVI2.js.map → chunk-3PKAS6VL.js.map} +0 -0
- /package/dist/{chunk-LSYD7GHZ.js.map → chunk-3SZD4CYO.js.map} +0 -0
- /package/dist/{chunk-5TG4MU2U.js.map → chunk-4F4AQFWL.js.map} +0 -0
- /package/dist/{chunk-D35XLYQ7.js.map → chunk-4QEYREAV.js.map} +0 -0
- /package/dist/{chunk-46WM6JX2.js.map → chunk-4ZWCQJNM.js.map} +0 -0
- /package/dist/{chunk-W6J4POB6.js.map → chunk-5DHKCO52.js.map} +0 -0
- /package/dist/{chunk-IRXMJLTW.js.map → chunk-5HK3CJAR.js.map} +0 -0
- /package/dist/{chunk-NLUCDKLT.js.map → chunk-5RWZH6PH.js.map} +0 -0
- /package/dist/{chunk-H7BZBSP6.js.map → chunk-645WOU5I.js.map} +0 -0
- /package/dist/{chunk-AYAZWXJI.js.map → chunk-76DIF5KT.js.map} +0 -0
- /package/dist/{chunk-OPPBTPUU.js.map → chunk-7KQB4EBS.js.map} +0 -0
- /package/dist/{chunk-I2HTKOOP.js.map → chunk-7VZFRUQU.js.map} +0 -0
- /package/dist/{chunk-JCWY73FK.js.map → chunk-AHPIFKNG.js.map} +0 -0
- /package/dist/{chunk-3I22VWB3.js.map → chunk-AZMLH5UT.js.map} +0 -0
- /package/dist/{chunk-JOEJG4SD.js.map → chunk-BEC4YBNA.js.map} +0 -0
- /package/dist/{chunk-BXXOPKT5.js.map → chunk-CAMNRAJF.js.map} +0 -0
- /package/dist/{chunk-C24UZSFW.js.map → chunk-CEH2AFXG.js.map} +0 -0
- /package/dist/{chunk-YOXVZJFM.js.map → chunk-CFVTRUR3.js.map} +0 -0
- /package/dist/{chunk-SVSRPG6M.js.map → chunk-CPA5NBHN.js.map} +0 -0
- /package/dist/{chunk-7BEPVIH3.js.map → chunk-CRML27CO.js.map} +0 -0
- /package/dist/{chunk-AXGFOFNY.js.map → chunk-DA7ITC5Z.js.map} +0 -0
- /package/dist/{chunk-FEO2CDXR.js.map → chunk-DPCXDG7G.js.map} +0 -0
- /package/dist/{chunk-HZNYJN77.js.map → chunk-F3NVYTTA.js.map} +0 -0
- /package/dist/{chunk-7SSRXEZJ.js.map → chunk-F7XUD3PL.js.map} +0 -0
- /package/dist/{chunk-XZBXINXZ.js.map → chunk-GIC6BASP.js.map} +0 -0
- /package/dist/{chunk-PP7R754B.js.map → chunk-GPFZFCRN.js.map} +0 -0
- /package/dist/{chunk-53MZQEBD.js.map → chunk-GTO56JY5.js.map} +0 -0
- /package/dist/{chunk-RAIUTAZZ.js.map → chunk-H2YSH3DG.js.map} +0 -0
- /package/dist/{chunk-HWVNYNIV.js.map → chunk-HMZKGHMD.js.map} +0 -0
- /package/dist/{chunk-ZXUZ54Z5.js.map → chunk-HRHO3ZNG.js.map} +0 -0
- /package/dist/{chunk-SDEPLF7V.js.map → chunk-IBJ6U753.js.map} +0 -0
- /package/dist/{chunk-T3JQTCCO.js.map → chunk-JI7U6AS3.js.map} +0 -0
- /package/dist/{chunk-TR7DGXGI.js.map → chunk-JOZUBF4A.js.map} +0 -0
- /package/dist/{chunk-YWBOOBDP.js.map → chunk-JYSN42VN.js.map} +0 -0
- /package/dist/{chunk-5W7CTZ2E.js.map → chunk-KQAFEZQX.js.map} +0 -0
- /package/dist/{chunk-D2YNNDML.js.map → chunk-KWIGDKM2.js.map} +0 -0
- /package/dist/{chunk-RIAM7DND.js.map → chunk-LDKPDODJ.js.map} +0 -0
- /package/dist/{chunk-227UFSEQ.js.map → chunk-LEPOP46W.js.map} +0 -0
- /package/dist/{chunk-2JHRCWHT.js.map → chunk-LKYIOCWL.js.map} +0 -0
- /package/dist/{chunk-XAWIL7TC.js.map → chunk-LOXHYCVS.js.map} +0 -0
- /package/dist/{chunk-OLBZ2WGG.js.map → chunk-LTBKKSCX.js.map} +0 -0
- /package/dist/{chunk-O4BAGJDN.js.map → chunk-MDD2RINF.js.map} +0 -0
- /package/dist/{chunk-ROEAEANL.js.map → chunk-MY2BC6UE.js.map} +0 -0
- /package/dist/{chunk-RACZB5HT.js.map → chunk-N37X5RU7.js.map} +0 -0
- /package/dist/{chunk-AG46P24C.js.map → chunk-NNBZS3DY.js.map} +0 -0
- /package/dist/{chunk-PGW64IFQ.js.map → chunk-NPFUNWNX.js.map} +0 -0
- /package/dist/{chunk-MFOSZUIT.js.map → chunk-NPIBN2VL.js.map} +0 -0
- /package/dist/{chunk-IF4EY26E.js.map → chunk-OA2O2GJ4.js.map} +0 -0
- /package/dist/{chunk-6FUMA6AA.js.map → chunk-ODU2CNNX.js.map} +0 -0
- /package/dist/{chunk-TWBQQ3FT.js.map → chunk-P36Z4JRA.js.map} +0 -0
- /package/dist/{chunk-OUKBMQ2O.js.map → chunk-PD66CVSD.js.map} +0 -0
- /package/dist/{chunk-MVIYRRVJ.js.map → chunk-PMVPCZJZ.js.map} +0 -0
- /package/dist/{chunk-US4IRASK.js.map → chunk-PU56CXZA.js.map} +0 -0
- /package/dist/{chunk-IDQ6DKXC.js.map → chunk-S5XOSTYM.js.map} +0 -0
- /package/dist/{chunk-DYO24BNB.js.map → chunk-SEEJOGQX.js.map} +0 -0
- /package/dist/{chunk-7OZSHBWK.js.map → chunk-SNOIKAHM.js.map} +0 -0
- /package/dist/{chunk-SR7JIRAR.js.map → chunk-T6ILXUAH.js.map} +0 -0
- /package/dist/{chunk-2RXUZVPU.js.map → chunk-T7XP6IZE.js.map} +0 -0
- /package/dist/{chunk-KBOG7FJV.js.map → chunk-TFR3HG4K.js.map} +0 -0
- /package/dist/{chunk-XUZ5CIEE.js.map → chunk-TUHBYJXL.js.map} +0 -0
- /package/dist/{chunk-7K5Q6COX.js.map → chunk-TVVEYCNW.js.map} +0 -0
- /package/dist/{chunk-ZK4BFABK.js.map → chunk-U7EW2W4W.js.map} +0 -0
- /package/dist/{chunk-VFYRYFLL.js.map → chunk-UEBDCMOO.js.map} +0 -0
- /package/dist/{chunk-JFWZRUKP.js.map → chunk-UENKPWCS.js.map} +0 -0
- /package/dist/{chunk-AAXJNINV.js.map → chunk-UL4MKZHI.js.map} +0 -0
- /package/dist/{chunk-R2MZCYA6.js.map → chunk-UNUMFURP.js.map} +0 -0
- /package/dist/{chunk-5GIZM4RX.js.map → chunk-UPFNQJC7.js.map} +0 -0
- /package/dist/{chunk-W4BMEGQA.js.map → chunk-UTQUEHC7.js.map} +0 -0
- /package/dist/{chunk-I32NKXE2.js.map → chunk-V4IDF3EZ.js.map} +0 -0
- /package/dist/{chunk-QMZY3GG6.js.map → chunk-WNXYT4MK.js.map} +0 -0
- /package/dist/{chunk-UVYI6VIX.js.map → chunk-X7Y7WX73.js.map} +0 -0
- /package/dist/{chunk-T42L3S6A.js.map → chunk-XBGHAAKR.js.map} +0 -0
- /package/dist/{chunk-THG4GYIE.js.map → chunk-YEUXERJ6.js.map} +0 -0
- /package/dist/{chunk-BIJAWZYW.js.map → chunk-YMOPYG3K.js.map} +0 -0
- /package/dist/{chunk-M4AHBM72.js.map → chunk-Z3YEGSR4.js.map} +0 -0
- /package/dist/{forget-SZ2BXDGF.js.map → forget-2AE4MDK3.js.map} +0 -0
|
@@ -0,0 +1,240 @@
|
|
|
1
|
+
import {
|
|
2
|
+
DEFAULT_EVAL_TRAJECTORY_REPORT_MAX_AGE_MS,
|
|
3
|
+
DESTRUCTIVE_ACTION_TYPES,
|
|
4
|
+
EVAL_TRAJECTORY_PROMOTION_THRESHOLDS,
|
|
5
|
+
EVAL_TRAJECTORY_REPORT_SCHEMA_VERSION,
|
|
6
|
+
canonicalJson,
|
|
7
|
+
compareRows,
|
|
8
|
+
isFiniteNumber,
|
|
9
|
+
isHexSha256,
|
|
10
|
+
isIsoTimestamp,
|
|
11
|
+
isMemoryActionType,
|
|
12
|
+
isRowStatus,
|
|
13
|
+
resolveEvalTrajectoryRunConfig,
|
|
14
|
+
serializeEvalTrajectoryReport,
|
|
15
|
+
sha256Hex
|
|
16
|
+
} from "./chunk-ULM7JCDH.js";
|
|
17
|
+
import {
|
|
18
|
+
resolveEvalStoreDir
|
|
19
|
+
} from "./chunk-MCA2X4WH.js";
|
|
20
|
+
|
|
21
|
+
// src/eval-trajectory-store.ts
|
|
22
|
+
import { mkdir, readFile, rename, rm, writeFile } from "fs/promises";
|
|
23
|
+
import path from "path";
|
|
24
|
+
function deriveUnifiedMemoryPromotionReport(report) {
|
|
25
|
+
const { aggregates } = report;
|
|
26
|
+
const trustViolations = report.rows.reduce(
|
|
27
|
+
(sum, row) => sum + (row.status === "joined" && row.trustViolation === 1 ? 1 : 0),
|
|
28
|
+
0
|
|
29
|
+
);
|
|
30
|
+
const staleHarms = report.rows.reduce(
|
|
31
|
+
(sum, row) => sum + (row.status === "joined" && row.staleMemoryHarm > 0 ? 1 : 0),
|
|
32
|
+
0
|
|
33
|
+
);
|
|
34
|
+
const destructiveJoinedRows = aggregates.byAction.filter((group) => DESTRUCTIVE_ACTION_TYPES[group.action] === true).reduce((sum, group) => sum + group.rowCount, 0);
|
|
35
|
+
const reasons = [];
|
|
36
|
+
let state;
|
|
37
|
+
if (trustViolations > 0 || staleHarms > 0) {
|
|
38
|
+
state = "demote_to_shadow";
|
|
39
|
+
reasons.push("safety_fault_present");
|
|
40
|
+
} else if (aggregates.coverage.joined < EVAL_TRAJECTORY_PROMOTION_THRESHOLDS.minJoinedRows) {
|
|
41
|
+
state = "insufficient_evidence";
|
|
42
|
+
reasons.push("insufficient_joined_rows");
|
|
43
|
+
} else if (aggregates.coverage.reach !== null && aggregates.coverage.reach < EVAL_TRAJECTORY_PROMOTION_THRESHOLDS.minReach) {
|
|
44
|
+
state = "shadow_eligible";
|
|
45
|
+
reasons.push("reach_below_floor");
|
|
46
|
+
} else if (destructiveJoinedRows > 0) {
|
|
47
|
+
state = "active_destructive_review_only";
|
|
48
|
+
reasons.push("destructive_actions_present");
|
|
49
|
+
} else if (aggregates.metricMeans.actionConditionedUtility === null) {
|
|
50
|
+
state = "shadow_eligible";
|
|
51
|
+
reasons.push("utility_mean_unavailable");
|
|
52
|
+
} else {
|
|
53
|
+
state = "active_reversible_eligible";
|
|
54
|
+
}
|
|
55
|
+
const draft = {
|
|
56
|
+
schemaVersion: 1,
|
|
57
|
+
sourceReportId: report.reportId,
|
|
58
|
+
namespaceDigest: report.namespaceDigest,
|
|
59
|
+
asOf: report.asOf,
|
|
60
|
+
inputFingerprint: report.inputFingerprint,
|
|
61
|
+
state,
|
|
62
|
+
reasons,
|
|
63
|
+
evidence: {
|
|
64
|
+
joinedRows: aggregates.coverage.joined,
|
|
65
|
+
reach: aggregates.coverage.reach,
|
|
66
|
+
meanUtility: aggregates.metricMeans.actionConditionedUtility,
|
|
67
|
+
trustViolations,
|
|
68
|
+
staleHarms,
|
|
69
|
+
destructiveJoinedRows
|
|
70
|
+
},
|
|
71
|
+
contentHash: ""
|
|
72
|
+
};
|
|
73
|
+
draft.contentHash = sha256Hex(canonicalJson({ ...draft, contentHash: void 0 }));
|
|
74
|
+
return draft;
|
|
75
|
+
}
|
|
76
|
+
var FORBIDDEN_EXPORT_KEYS = {
|
|
77
|
+
inputSummary: true,
|
|
78
|
+
goal: true,
|
|
79
|
+
actionSummary: true,
|
|
80
|
+
observationSummary: true,
|
|
81
|
+
outcomeSummary: true,
|
|
82
|
+
prompt: true,
|
|
83
|
+
promptText: true,
|
|
84
|
+
promptHash: true,
|
|
85
|
+
memoryText: true,
|
|
86
|
+
noteText: true,
|
|
87
|
+
sessionKey: true,
|
|
88
|
+
sourceSessionKey: true,
|
|
89
|
+
filePath: true,
|
|
90
|
+
path: true,
|
|
91
|
+
storeDir: true,
|
|
92
|
+
memoryDir: true,
|
|
93
|
+
actionId: true,
|
|
94
|
+
trajectoryId: true,
|
|
95
|
+
memoryId: true,
|
|
96
|
+
outcomeId: true,
|
|
97
|
+
namespace: true,
|
|
98
|
+
salt: true,
|
|
99
|
+
rationale: true,
|
|
100
|
+
summary: true,
|
|
101
|
+
content: true,
|
|
102
|
+
text: true
|
|
103
|
+
};
|
|
104
|
+
function assertEvalTrajectoryReportRedacted(value, label = "report") {
|
|
105
|
+
const scan = (node, trail) => {
|
|
106
|
+
if (Array.isArray(node)) {
|
|
107
|
+
node.forEach((item, index) => scan(item, `${trail}[${index}]`));
|
|
108
|
+
return;
|
|
109
|
+
}
|
|
110
|
+
if (typeof node === "object" && node !== null) {
|
|
111
|
+
for (const [key, child] of Object.entries(node)) {
|
|
112
|
+
if (FORBIDDEN_EXPORT_KEYS[key] === true) {
|
|
113
|
+
throw new Error(`${label} contains forbidden field '${key}' at ${trail} \u2014 redaction fails closed`);
|
|
114
|
+
}
|
|
115
|
+
scan(child, `${trail}.${key}`);
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
};
|
|
119
|
+
scan(value, "$");
|
|
120
|
+
}
|
|
121
|
+
function validateEvalTrajectoryReport(raw) {
|
|
122
|
+
if (typeof raw !== "object" || raw === null) throw new Error("eval trajectory report must be an object");
|
|
123
|
+
assertEvalTrajectoryReportRedacted(raw, "eval trajectory report");
|
|
124
|
+
const report = raw;
|
|
125
|
+
if (report.schemaVersion !== EVAL_TRAJECTORY_REPORT_SCHEMA_VERSION) {
|
|
126
|
+
throw new Error("eval trajectory report schemaVersion must be 1");
|
|
127
|
+
}
|
|
128
|
+
if (!isHexSha256(report.reportId) || !isHexSha256(report.namespaceDigest) || !isHexSha256(report.inputFingerprint)) {
|
|
129
|
+
throw new Error("eval trajectory report ids and digests must be sha256 hex");
|
|
130
|
+
}
|
|
131
|
+
if (!isIsoTimestamp(report.asOf)) throw new Error("eval trajectory report asOf must be an ISO timestamp");
|
|
132
|
+
if (!Array.isArray(report.rows)) throw new Error("eval trajectory report rows must be an array");
|
|
133
|
+
const contentHash = report.contentHash;
|
|
134
|
+
if (!isHexSha256(contentHash)) throw new Error("eval trajectory report contentHash must be sha256 hex");
|
|
135
|
+
const expectedHash = sha256Hex(canonicalJson({ ...report, contentHash: void 0 }));
|
|
136
|
+
if (contentHash !== expectedHash) {
|
|
137
|
+
throw new Error("eval trajectory report contentHash mismatch \u2014 tampered or corrupted report");
|
|
138
|
+
}
|
|
139
|
+
resolveEvalTrajectoryRunConfig(report.config);
|
|
140
|
+
for (const row of report.rows) {
|
|
141
|
+
if (typeof row !== "object" || row === null) throw new Error("report rows must be objects");
|
|
142
|
+
const candidate = row;
|
|
143
|
+
if (candidate.schemaVersion !== 1 || !isHexSha256(candidate.actionDigest)) {
|
|
144
|
+
throw new Error("report row has invalid schemaVersion or actionDigest");
|
|
145
|
+
}
|
|
146
|
+
if (!isRowStatus(candidate.status)) throw new Error("report row has invalid status");
|
|
147
|
+
if (candidate.outcomeDigest !== null && candidate.outcomeDigest !== void 0 && !isHexSha256(candidate.outcomeDigest)) {
|
|
148
|
+
throw new Error("report row outcomeDigest must be sha256 hex or null");
|
|
149
|
+
}
|
|
150
|
+
if (candidate.status === "joined" && (candidate.outcomeDigest == null || candidate.join == null) || candidate.status !== "joined" && candidate.actionConditionedUtility !== null) {
|
|
151
|
+
throw new Error("report row join/utility invariants violated");
|
|
152
|
+
}
|
|
153
|
+
for (const metric of ["taskOutcome", "contextTokenCost", "actionConditionedUtility"]) {
|
|
154
|
+
const value = candidate[metric];
|
|
155
|
+
if (value !== null && value !== void 0 && !isFiniteNumber(value)) {
|
|
156
|
+
throw new Error(`report row ${metric} must be numeric or null`);
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
if (candidate.trustViolation !== 0 && candidate.trustViolation !== 1) {
|
|
160
|
+
throw new Error("report row trustViolation must be 0 or 1");
|
|
161
|
+
}
|
|
162
|
+
if (candidate.staleMemoryHarm !== 0 && candidate.staleMemoryHarm !== 0.5 && candidate.staleMemoryHarm !== 1) {
|
|
163
|
+
throw new Error("report row staleMemoryHarm must be 0, 0.5, or 1");
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
for (let index = 1; index < report.rows.length; index += 1) {
|
|
167
|
+
if (compareRows(report.rows[index - 1], report.rows[index]) > 0) {
|
|
168
|
+
throw new Error("report rows must be sorted by (outcomeRecordedAt, actionDigest)");
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
const rows = report.rows;
|
|
172
|
+
const statusCounts = {
|
|
173
|
+
joined: 0,
|
|
174
|
+
ambiguous: 0,
|
|
175
|
+
late_outcome: 0,
|
|
176
|
+
future_outcome: 0,
|
|
177
|
+
missing_within_window: 0
|
|
178
|
+
};
|
|
179
|
+
for (const row of rows) statusCounts[row.status] += 1;
|
|
180
|
+
const joinedRows = rows.filter((row) => row.status === "joined");
|
|
181
|
+
const mean = (values) => values.length === 0 ? null : values.reduce((sum, value) => sum + value, 0) / values.length;
|
|
182
|
+
const aggregates = report.aggregates;
|
|
183
|
+
if (typeof aggregates !== "object" || aggregates === null || aggregates.rowCount !== rows.length || canonicalJson(aggregates.statusCounts) !== canonicalJson(statusCounts) || aggregates.coverage.joined !== statusCounts.joined || aggregates.coverage.missingWithinWindow !== statusCounts.missing_within_window || aggregates.coverage.lateOutcome !== statusCounts.late_outcome || aggregates.coverage.futureOutcome !== statusCounts.future_outcome || aggregates.coverage.ambiguous !== statusCounts.ambiguous || aggregates.coverage.excludedFromMeans !== rows.length - statusCounts.joined || aggregates.metricMeans.taskOutcome !== mean(joinedRows.map((row) => row.taskOutcome).filter(isFiniteNumber)) || aggregates.metricMeans.actionConditionedUtility !== mean(joinedRows.map((row) => row.actionConditionedUtility).filter(isFiniteNumber)) || !Array.isArray(aggregates.byAction) || !aggregates.byAction.every((group) => isMemoryActionType(group.action))) {
|
|
184
|
+
throw new Error("eval trajectory report aggregates do not match rows \u2014 tampered or corrupted report");
|
|
185
|
+
}
|
|
186
|
+
return raw;
|
|
187
|
+
}
|
|
188
|
+
function assertPathWithin(rootDir, targetPath, field) {
|
|
189
|
+
const relative = path.relative(path.resolve(rootDir), path.resolve(targetPath));
|
|
190
|
+
if (relative === "" || !relative.startsWith("..") && !path.isAbsolute(relative)) return;
|
|
191
|
+
throw new Error(`${field} must stay within ${rootDir}`);
|
|
192
|
+
}
|
|
193
|
+
async function writeEvalTrajectoryReport(options) {
|
|
194
|
+
const validated = validateEvalTrajectoryReport(options.report);
|
|
195
|
+
if (!options.memoryDir && !options.evalStoreDir) {
|
|
196
|
+
throw new Error("writeEvalTrajectoryReport requires memoryDir or evalStoreDir");
|
|
197
|
+
}
|
|
198
|
+
const rootDir = resolveEvalStoreDir(options.memoryDir ?? "", options.evalStoreDir);
|
|
199
|
+
const trajectoryDir = path.join(rootDir, "trajectory", validated.asOf.slice(0, 10));
|
|
200
|
+
const targetPath = path.join(trajectoryDir, `${validated.reportId}.json`);
|
|
201
|
+
assertPathWithin(rootDir, targetPath, "eval trajectory report path");
|
|
202
|
+
const payload = serializeEvalTrajectoryReport(validated);
|
|
203
|
+
const tmpPath = `${targetPath}.tmp-${process.pid}-${Math.random().toString(36).slice(2)}`;
|
|
204
|
+
await mkdir(trajectoryDir, { recursive: true });
|
|
205
|
+
try {
|
|
206
|
+
await writeFile(tmpPath, payload, "utf8");
|
|
207
|
+
await rename(tmpPath, targetPath);
|
|
208
|
+
} catch (error) {
|
|
209
|
+
await rm(tmpPath, { force: true }).catch(() => {
|
|
210
|
+
});
|
|
211
|
+
throw error;
|
|
212
|
+
}
|
|
213
|
+
return targetPath;
|
|
214
|
+
}
|
|
215
|
+
async function readEvalTrajectoryReport(options) {
|
|
216
|
+
const raw = await readFile(options.reportPath, "utf8");
|
|
217
|
+
let parsed;
|
|
218
|
+
try {
|
|
219
|
+
parsed = JSON.parse(raw);
|
|
220
|
+
} catch {
|
|
221
|
+
throw new Error("eval trajectory report file is not valid JSON");
|
|
222
|
+
}
|
|
223
|
+
const report = validateEvalTrajectoryReport(parsed);
|
|
224
|
+
const nowMs = options.now !== void 0 ? Date.parse(options.now) : Date.now();
|
|
225
|
+
if (!Number.isFinite(nowMs)) throw new Error("now must be a parseable timestamp");
|
|
226
|
+
const maxAgeMs = options.maxReportAgeMs ?? DEFAULT_EVAL_TRAJECTORY_REPORT_MAX_AGE_MS;
|
|
227
|
+
const asOfMs = Date.parse(report.asOf);
|
|
228
|
+
if (nowMs < asOfMs) throw new Error("eval trajectory report is dated after now \u2014 rejected");
|
|
229
|
+
if (nowMs - asOfMs > maxAgeMs) throw new Error("eval trajectory report is expired \u2014 rejected");
|
|
230
|
+
return report;
|
|
231
|
+
}
|
|
232
|
+
|
|
233
|
+
export {
|
|
234
|
+
deriveUnifiedMemoryPromotionReport,
|
|
235
|
+
assertEvalTrajectoryReportRedacted,
|
|
236
|
+
validateEvalTrajectoryReport,
|
|
237
|
+
writeEvalTrajectoryReport,
|
|
238
|
+
readEvalTrajectoryReport
|
|
239
|
+
};
|
|
240
|
+
//# sourceMappingURL=chunk-JCCWJHOP.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/eval-trajectory-store.ts"],"sourcesContent":["/**\n * Issue #2345 — validation, redaction, persistence, and the promotion gate for\n * trajectory-eval reports.\n *\n * Fail-closed by construction:\n * - every report is redaction-scanned before it can be validated or written,\n * - the content hash and row-derived aggregates are recomputed on read,\n * - the checked reader rejects tampered, future-dated, and expired reports,\n * - the promotion gate can only recommend; it never runs an action.\n */\n\nimport { mkdir, readFile, rename, rm, writeFile } from \"node:fs/promises\";\nimport path from \"node:path\";\nimport {\n DEFAULT_EVAL_TRAJECTORY_REPORT_MAX_AGE_MS,\n DESTRUCTIVE_ACTION_TYPES,\n EVAL_TRAJECTORY_PROMOTION_THRESHOLDS,\n EVAL_TRAJECTORY_REPORT_SCHEMA_VERSION,\n type EvalActionOutcomeRow,\n type EvalTrajectoryReport,\n type EvalTrajectoryRowStatus,\n type EvalTrajectoryRunConfig,\n type UnifiedMemoryPromotionReport,\n type UnifiedMemoryPromotionState,\n canonicalJson,\n compareRows,\n isFiniteNumber,\n isHexSha256,\n isIsoTimestamp,\n isMemoryActionType,\n isRowStatus,\n resolveEvalTrajectoryRunConfig,\n serializeEvalTrajectoryReport,\n sha256Hex,\n} from \"./eval-trajectory-contracts.js\";\nimport { resolveEvalStoreDir } from \"./evals.js\";\n\n// ---------------------------------------------------------------------------\n// Promotion gate derivation (#2348 consumes this; it never runs actions here)\n// ---------------------------------------------------------------------------\n\nexport function deriveUnifiedMemoryPromotionReport(report: EvalTrajectoryReport): UnifiedMemoryPromotionReport {\n const { aggregates } = report;\n const trustViolations = report.rows.reduce(\n (sum, row) => sum + (row.status === \"joined\" && row.trustViolation === 1 ? 1 : 0),\n 0\n );\n const staleHarms = report.rows.reduce(\n (sum, row) => sum + (row.status === \"joined\" && row.staleMemoryHarm > 0 ? 1 : 0),\n 0\n );\n const destructiveJoinedRows = aggregates.byAction\n .filter((group) => DESTRUCTIVE_ACTION_TYPES[group.action] === true)\n .reduce((sum, group) => sum + group.rowCount, 0);\n\n const reasons: string[] = [];\n let state: UnifiedMemoryPromotionState;\n if (trustViolations > 0 || staleHarms > 0) {\n state = \"demote_to_shadow\";\n reasons.push(\"safety_fault_present\");\n } else if (aggregates.coverage.joined < EVAL_TRAJECTORY_PROMOTION_THRESHOLDS.minJoinedRows) {\n state = \"insufficient_evidence\";\n reasons.push(\"insufficient_joined_rows\");\n } else if (\n aggregates.coverage.reach !== null &&\n aggregates.coverage.reach < EVAL_TRAJECTORY_PROMOTION_THRESHOLDS.minReach\n ) {\n state = \"shadow_eligible\";\n reasons.push(\"reach_below_floor\");\n } else if (destructiveJoinedRows > 0) {\n state = \"active_destructive_review_only\";\n reasons.push(\"destructive_actions_present\");\n } else if (aggregates.metricMeans.actionConditionedUtility === null) {\n state = \"shadow_eligible\";\n reasons.push(\"utility_mean_unavailable\");\n } else {\n state = \"active_reversible_eligible\";\n }\n\n const draft: UnifiedMemoryPromotionReport = {\n schemaVersion: 1,\n sourceReportId: report.reportId,\n namespaceDigest: report.namespaceDigest,\n asOf: report.asOf,\n inputFingerprint: report.inputFingerprint,\n state,\n reasons,\n evidence: {\n joinedRows: aggregates.coverage.joined,\n reach: aggregates.coverage.reach,\n meanUtility: aggregates.metricMeans.actionConditionedUtility,\n trustViolations,\n staleHarms,\n destructiveJoinedRows,\n },\n contentHash: \"\",\n };\n draft.contentHash = sha256Hex(canonicalJson({ ...draft, contentHash: undefined }));\n return draft;\n}\n\n// ---------------------------------------------------------------------------\n// Redaction (fail closed) + validation\n// ---------------------------------------------------------------------------\n\nconst FORBIDDEN_EXPORT_KEYS: Record<string, true> = {\n inputSummary: true,\n goal: true,\n actionSummary: true,\n observationSummary: true,\n outcomeSummary: true,\n prompt: true,\n promptText: true,\n promptHash: true,\n memoryText: true,\n noteText: true,\n sessionKey: true,\n sourceSessionKey: true,\n filePath: true,\n path: true,\n storeDir: true,\n memoryDir: true,\n actionId: true,\n trajectoryId: true,\n memoryId: true,\n outcomeId: true,\n namespace: true,\n salt: true,\n rationale: true,\n summary: true,\n content: true,\n text: true,\n};\n\nexport function assertEvalTrajectoryReportRedacted(value: unknown, label = \"report\"): void {\n const scan = (node: unknown, trail: string): void => {\n if (Array.isArray(node)) {\n node.forEach((item, index) => scan(item, `${trail}[${index}]`));\n return;\n }\n if (typeof node === \"object\" && node !== null) {\n for (const [key, child] of Object.entries(node as Record<string, unknown>)) {\n if (FORBIDDEN_EXPORT_KEYS[key] === true) {\n throw new Error(`${label} contains forbidden field '${key}' at ${trail} — redaction fails closed`);\n }\n scan(child, `${trail}.${key}`);\n }\n }\n };\n scan(value, \"$\");\n}\n\nexport function validateEvalTrajectoryReport(raw: unknown): EvalTrajectoryReport {\n if (typeof raw !== \"object\" || raw === null) throw new Error(\"eval trajectory report must be an object\");\n assertEvalTrajectoryReportRedacted(raw, \"eval trajectory report\");\n const report = raw as Partial<EvalTrajectoryReport> & Record<string, unknown>;\n if (report.schemaVersion !== EVAL_TRAJECTORY_REPORT_SCHEMA_VERSION) {\n throw new Error(\"eval trajectory report schemaVersion must be 1\");\n }\n if (!isHexSha256(report.reportId) || !isHexSha256(report.namespaceDigest) || !isHexSha256(report.inputFingerprint)) {\n throw new Error(\"eval trajectory report ids and digests must be sha256 hex\");\n }\n if (!isIsoTimestamp(report.asOf)) throw new Error(\"eval trajectory report asOf must be an ISO timestamp\");\n if (!Array.isArray(report.rows)) throw new Error(\"eval trajectory report rows must be an array\");\n const contentHash = report.contentHash;\n if (!isHexSha256(contentHash)) throw new Error(\"eval trajectory report contentHash must be sha256 hex\");\n const expectedHash = sha256Hex(canonicalJson({ ...report, contentHash: undefined }));\n if (contentHash !== expectedHash) {\n throw new Error(\"eval trajectory report contentHash mismatch — tampered or corrupted report\");\n }\n // Bounds-check the embedded config through the same parser builders use.\n resolveEvalTrajectoryRunConfig(report.config as Partial<EvalTrajectoryRunConfig>);\n\n for (const row of report.rows) {\n if (typeof row !== \"object\" || row === null) throw new Error(\"report rows must be objects\");\n const candidate = row as Partial<EvalActionOutcomeRow>;\n if (candidate.schemaVersion !== 1 || !isHexSha256(candidate.actionDigest)) {\n throw new Error(\"report row has invalid schemaVersion or actionDigest\");\n }\n if (!isRowStatus(candidate.status)) throw new Error(\"report row has invalid status\");\n if (\n candidate.outcomeDigest !== null &&\n candidate.outcomeDigest !== undefined &&\n !isHexSha256(candidate.outcomeDigest)\n ) {\n throw new Error(\"report row outcomeDigest must be sha256 hex or null\");\n }\n if (\n (candidate.status === \"joined\" && (candidate.outcomeDigest == null || candidate.join == null)) ||\n (candidate.status !== \"joined\" && candidate.actionConditionedUtility !== null)\n ) {\n throw new Error(\"report row join/utility invariants violated\");\n }\n for (const metric of [\"taskOutcome\", \"contextTokenCost\", \"actionConditionedUtility\"] as const) {\n const value = candidate[metric];\n if (value !== null && value !== undefined && !isFiniteNumber(value)) {\n throw new Error(`report row ${metric} must be numeric or null`);\n }\n }\n if (candidate.trustViolation !== 0 && candidate.trustViolation !== 1) {\n throw new Error(\"report row trustViolation must be 0 or 1\");\n }\n if (candidate.staleMemoryHarm !== 0 && candidate.staleMemoryHarm !== 0.5 && candidate.staleMemoryHarm !== 1) {\n throw new Error(\"report row staleMemoryHarm must be 0, 0.5, or 1\");\n }\n }\n for (let index = 1; index < report.rows.length; index += 1) {\n if (compareRows(report.rows[index - 1] as EvalActionOutcomeRow, report.rows[index] as EvalActionOutcomeRow) > 0) {\n throw new Error(\"report rows must be sorted by (outcomeRecordedAt, actionDigest)\");\n }\n }\n\n // Derivable-aggregate verification: recompute from rows so tampering fails closed.\n const rows = report.rows as EvalActionOutcomeRow[];\n const statusCounts: Record<EvalTrajectoryRowStatus, number> = {\n joined: 0,\n ambiguous: 0,\n late_outcome: 0,\n future_outcome: 0,\n missing_within_window: 0,\n };\n for (const row of rows) statusCounts[row.status] += 1;\n const joinedRows = rows.filter((row) => row.status === \"joined\");\n const mean = (values: number[]): number | null =>\n values.length === 0 ? null : values.reduce((sum, value) => sum + value, 0) / values.length;\n const aggregates = report.aggregates;\n if (\n typeof aggregates !== \"object\" ||\n aggregates === null ||\n aggregates.rowCount !== rows.length ||\n canonicalJson(aggregates.statusCounts) !== canonicalJson(statusCounts) ||\n aggregates.coverage.joined !== statusCounts.joined ||\n aggregates.coverage.missingWithinWindow !== statusCounts.missing_within_window ||\n aggregates.coverage.lateOutcome !== statusCounts.late_outcome ||\n aggregates.coverage.futureOutcome !== statusCounts.future_outcome ||\n aggregates.coverage.ambiguous !== statusCounts.ambiguous ||\n aggregates.coverage.excludedFromMeans !== rows.length - statusCounts.joined ||\n aggregates.metricMeans.taskOutcome !== mean(joinedRows.map((row) => row.taskOutcome).filter(isFiniteNumber)) ||\n aggregates.metricMeans.actionConditionedUtility !==\n mean(joinedRows.map((row) => row.actionConditionedUtility).filter(isFiniteNumber)) ||\n !Array.isArray(aggregates.byAction) ||\n !aggregates.byAction.every((group) => isMemoryActionType(group.action))\n ) {\n throw new Error(\"eval trajectory report aggregates do not match rows — tampered or corrupted report\");\n }\n\n return raw as EvalTrajectoryReport;\n}\n\n// ---------------------------------------------------------------------------\n// Persistence (atomic write beside the existing shadow artifacts)\n// ---------------------------------------------------------------------------\n\nfunction assertPathWithin(rootDir: string, targetPath: string, field: string): void {\n const relative = path.relative(path.resolve(rootDir), path.resolve(targetPath));\n if (relative === \"\" || (!relative.startsWith(\"..\") && !path.isAbsolute(relative))) return;\n throw new Error(`${field} must stay within ${rootDir}`);\n}\n\nexport async function writeEvalTrajectoryReport(options: {\n memoryDir?: string;\n evalStoreDir?: string;\n report: EvalTrajectoryReport;\n}): Promise<string> {\n const validated = validateEvalTrajectoryReport(options.report);\n if (!options.memoryDir && !options.evalStoreDir) {\n throw new Error(\"writeEvalTrajectoryReport requires memoryDir or evalStoreDir\");\n }\n const rootDir = resolveEvalStoreDir(options.memoryDir ?? \"\", options.evalStoreDir);\n const trajectoryDir = path.join(rootDir, \"trajectory\", validated.asOf.slice(0, 10));\n const targetPath = path.join(trajectoryDir, `${validated.reportId}.json`);\n assertPathWithin(rootDir, targetPath, \"eval trajectory report path\");\n const payload = serializeEvalTrajectoryReport(validated);\n const tmpPath = `${targetPath}.tmp-${process.pid}-${Math.random().toString(36).slice(2)}`;\n await mkdir(trajectoryDir, { recursive: true });\n try {\n await writeFile(tmpPath, payload, \"utf8\");\n await rename(tmpPath, targetPath);\n } catch (error) {\n await rm(tmpPath, { force: true }).catch(() => {});\n throw error;\n }\n return targetPath;\n}\n\nexport async function readEvalTrajectoryReport(options: {\n reportPath: string;\n now?: string;\n maxReportAgeMs?: number;\n}): Promise<EvalTrajectoryReport> {\n const raw = await readFile(options.reportPath, \"utf8\");\n let parsed: unknown;\n try {\n parsed = JSON.parse(raw);\n } catch {\n throw new Error(\"eval trajectory report file is not valid JSON\");\n }\n const report = validateEvalTrajectoryReport(parsed);\n const nowMs = options.now !== undefined ? Date.parse(options.now) : Date.now();\n if (!Number.isFinite(nowMs)) throw new Error(\"now must be a parseable timestamp\");\n const maxAgeMs = options.maxReportAgeMs ?? DEFAULT_EVAL_TRAJECTORY_REPORT_MAX_AGE_MS;\n const asOfMs = Date.parse(report.asOf);\n if (nowMs < asOfMs) throw new Error(\"eval trajectory report is dated after now — rejected\");\n if (nowMs - asOfMs > maxAgeMs) throw new Error(\"eval trajectory report is expired — rejected\");\n return report;\n}\n"],"mappings":"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","names":[]}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import {
|
|
2
|
-
coerceBool
|
|
3
|
-
} from "./chunk-PQVCH2AE.js";
|
|
4
1
|
import {
|
|
5
2
|
DEFAULT_UNTRUSTED_ORIGINS
|
|
6
3
|
} from "./chunk-6Q3ZTEF6.js";
|
|
4
|
+
import {
|
|
5
|
+
coerceBool
|
|
6
|
+
} from "./chunk-PQVCH2AE.js";
|
|
7
7
|
import {
|
|
8
8
|
readEnvVar
|
|
9
9
|
} from "./chunk-JUC24CTX.js";
|
|
@@ -91,4 +91,4 @@ function parseSecurityConfig(cfg, rawOperatorConfig) {
|
|
|
91
91
|
export {
|
|
92
92
|
parseSecurityConfig
|
|
93
93
|
};
|
|
94
|
-
//# sourceMappingURL=chunk-
|
|
94
|
+
//# sourceMappingURL=chunk-JI7U6AS3.js.map
|
|
@@ -1,6 +1,3 @@
|
|
|
1
|
-
import {
|
|
2
|
-
scanSignals
|
|
3
|
-
} from "./chunk-H3FZVNRN.js";
|
|
4
1
|
import {
|
|
5
2
|
bufferTurnArrayIsSuffixOfSnapshot,
|
|
6
3
|
bufferTurnArraysEqual,
|
|
@@ -11,9 +8,12 @@ import {
|
|
|
11
8
|
matchingQueuedExtractionPrefixLength,
|
|
12
9
|
probeWithTimeout
|
|
13
10
|
} from "./chunk-2AD5SXO4.js";
|
|
11
|
+
import {
|
|
12
|
+
scanSignals
|
|
13
|
+
} from "./chunk-H3FZVNRN.js";
|
|
14
14
|
import {
|
|
15
15
|
ExtractionDeadlineError
|
|
16
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-YEUXERJ6.js";
|
|
17
17
|
import {
|
|
18
18
|
resolvePrincipal
|
|
19
19
|
} from "./chunk-MRV7VSQK.js";
|
|
@@ -798,4 +798,4 @@ var SmartBuffer = class {
|
|
|
798
798
|
export {
|
|
799
799
|
SmartBuffer
|
|
800
800
|
};
|
|
801
|
-
//# sourceMappingURL=chunk-
|
|
801
|
+
//# sourceMappingURL=chunk-JOZUBF4A.js.map
|
|
@@ -7,30 +7,33 @@ import {
|
|
|
7
7
|
import {
|
|
8
8
|
openclawReplayNormalizer
|
|
9
9
|
} from "./chunk-H4CKS5B2.js";
|
|
10
|
-
import {
|
|
11
|
-
importMarkdownBundle
|
|
12
|
-
} from "./chunk-HDDRVXX4.js";
|
|
13
10
|
import {
|
|
14
11
|
importSqlite
|
|
15
12
|
} from "./chunk-PYHOAXTI.js";
|
|
16
|
-
import {
|
|
17
|
-
backupMemoryDir
|
|
18
|
-
} from "./chunk-OWHERGF2.js";
|
|
19
13
|
import {
|
|
20
14
|
exportJsonBundle
|
|
21
15
|
} from "./chunk-UP6MOYCB.js";
|
|
22
16
|
import {
|
|
23
17
|
exportSqlite
|
|
24
18
|
} from "./chunk-BV2TIZ4F.js";
|
|
19
|
+
import {
|
|
20
|
+
importMarkdownBundle
|
|
21
|
+
} from "./chunk-HDDRVXX4.js";
|
|
25
22
|
import {
|
|
26
23
|
detectImportFormat
|
|
27
24
|
} from "./chunk-OZKVVUJB.js";
|
|
28
25
|
import {
|
|
29
26
|
importJsonBundle
|
|
30
27
|
} from "./chunk-2DL3OFLD.js";
|
|
28
|
+
import {
|
|
29
|
+
backupMemoryDir
|
|
30
|
+
} from "./chunk-2NLLXCJG.js";
|
|
31
31
|
import {
|
|
32
32
|
exportMarkdownBundle
|
|
33
33
|
} from "./chunk-765K3SAT.js";
|
|
34
|
+
import {
|
|
35
|
+
RoutingRulesStore
|
|
36
|
+
} from "./chunk-TBUEE7XF.js";
|
|
34
37
|
import {
|
|
35
38
|
buildReplayNormalizerRegistry,
|
|
36
39
|
clampBatchSize,
|
|
@@ -40,15 +43,18 @@ import {
|
|
|
40
43
|
isReplaySource,
|
|
41
44
|
normalizeReplaySessionKey
|
|
42
45
|
} from "./chunk-AJVLDJU6.js";
|
|
43
|
-
import {
|
|
44
|
-
RoutingRulesStore
|
|
45
|
-
} from "./chunk-TBUEE7XF.js";
|
|
46
46
|
import {
|
|
47
47
|
TailscaleHelper
|
|
48
48
|
} from "./chunk-EEC4PCG5.js";
|
|
49
49
|
import {
|
|
50
50
|
WebDavServer
|
|
51
51
|
} from "./chunk-PYIFUBRK.js";
|
|
52
|
+
import {
|
|
53
|
+
migrateObservations
|
|
54
|
+
} from "./chunk-IIFFC3RL.js";
|
|
55
|
+
import {
|
|
56
|
+
rebuildMemoryLifecycleLedger
|
|
57
|
+
} from "./chunk-TFR3HG4K.js";
|
|
52
58
|
import {
|
|
53
59
|
rebuildObservations
|
|
54
60
|
} from "./chunk-DQTCGVFK.js";
|
|
@@ -56,23 +62,14 @@ import {
|
|
|
56
62
|
archiveObservations
|
|
57
63
|
} from "./chunk-YLBE6PLR.js";
|
|
58
64
|
import {
|
|
59
|
-
|
|
60
|
-
} from "./chunk-
|
|
61
|
-
import {
|
|
62
|
-
rebuildMemoryLifecycleLedger
|
|
63
|
-
} from "./chunk-KBOG7FJV.js";
|
|
65
|
+
runCompatChecks
|
|
66
|
+
} from "./chunk-CDKHKZL5.js";
|
|
64
67
|
import {
|
|
65
68
|
getBulkImportSource,
|
|
66
69
|
listBulkImportSources,
|
|
67
70
|
registerBulkImportSource,
|
|
68
71
|
runBulkImportPipeline
|
|
69
72
|
} from "./chunk-HSSERO3E.js";
|
|
70
|
-
import {
|
|
71
|
-
runCompatChecks
|
|
72
|
-
} from "./chunk-CDKHKZL5.js";
|
|
73
|
-
import {
|
|
74
|
-
searchVerifiedEpisodes
|
|
75
|
-
} from "./chunk-53MZQEBD.js";
|
|
76
73
|
import {
|
|
77
74
|
getUtilityLearningStatus,
|
|
78
75
|
learnUtilityPromotionWeights
|
|
@@ -81,20 +78,23 @@ import {
|
|
|
81
78
|
getUtilityTelemetryStatus,
|
|
82
79
|
recordUtilityTelemetryEvent
|
|
83
80
|
} from "./chunk-6FC3IZ26.js";
|
|
81
|
+
import {
|
|
82
|
+
searchVerifiedEpisodes
|
|
83
|
+
} from "./chunk-GTO56JY5.js";
|
|
84
84
|
import {
|
|
85
85
|
ThreadingManager
|
|
86
86
|
} from "./chunk-OJP3N7UK.js";
|
|
87
|
-
import {
|
|
88
|
-
searchVerifiedSemanticRules
|
|
89
|
-
} from "./chunk-TWBQQ3FT.js";
|
|
90
87
|
import {
|
|
91
88
|
promoteSemanticRuleFromMemory
|
|
92
|
-
} from "./chunk-
|
|
89
|
+
} from "./chunk-OA2O2GJ4.js";
|
|
90
|
+
import {
|
|
91
|
+
searchVerifiedSemanticRules
|
|
92
|
+
} from "./chunk-P36Z4JRA.js";
|
|
93
93
|
import {
|
|
94
94
|
buildResumeBundleFromState,
|
|
95
95
|
getResumeBundleStatus,
|
|
96
96
|
recordResumeBundle
|
|
97
|
-
} from "./chunk-
|
|
97
|
+
} from "./chunk-DA7ITC5Z.js";
|
|
98
98
|
import {
|
|
99
99
|
getWorkProductLedgerStatus,
|
|
100
100
|
recordWorkProductLedgerEntry,
|
|
@@ -105,16 +105,7 @@ import {
|
|
|
105
105
|
} from "./chunk-AM4T6CHX.js";
|
|
106
106
|
import {
|
|
107
107
|
parseXrayCliOptions
|
|
108
|
-
} from "./chunk-
|
|
109
|
-
import {
|
|
110
|
-
collectPatternMemories,
|
|
111
|
-
explainPatternMemory,
|
|
112
|
-
parsePatternsExplainOptions,
|
|
113
|
-
parsePatternsListOptions,
|
|
114
|
-
parseStrictCliDate,
|
|
115
|
-
renderPatternExplain,
|
|
116
|
-
renderPatternsList
|
|
117
|
-
} from "./chunk-3T74IZB3.js";
|
|
108
|
+
} from "./chunk-UNUMFURP.js";
|
|
118
109
|
import {
|
|
119
110
|
readRuntimePolicySnapshot,
|
|
120
111
|
sanitizeRuntimePolicyValues
|
|
@@ -127,12 +118,21 @@ import {
|
|
|
127
118
|
runOperatorInventory,
|
|
128
119
|
runOperatorRepair,
|
|
129
120
|
runOperatorSetup
|
|
130
|
-
} from "./chunk-
|
|
121
|
+
} from "./chunk-MY2BC6UE.js";
|
|
131
122
|
import {
|
|
132
123
|
analyzeSessionIntegrity,
|
|
133
124
|
applySessionRepair,
|
|
134
125
|
planSessionRepair
|
|
135
126
|
} from "./chunk-KFY3SGN7.js";
|
|
127
|
+
import {
|
|
128
|
+
collectPatternMemories,
|
|
129
|
+
explainPatternMemory,
|
|
130
|
+
parsePatternsExplainOptions,
|
|
131
|
+
parsePatternsListOptions,
|
|
132
|
+
parseStrictCliDate,
|
|
133
|
+
renderPatternExplain,
|
|
134
|
+
renderPatternsList
|
|
135
|
+
} from "./chunk-3T74IZB3.js";
|
|
136
136
|
import {
|
|
137
137
|
GITHUB_CONNECTOR_ID,
|
|
138
138
|
GMAIL_CONNECTOR_ID,
|
|
@@ -150,12 +150,12 @@ import {
|
|
|
150
150
|
import {
|
|
151
151
|
listConnectorStates
|
|
152
152
|
} from "./chunk-6GUG4YNM.js";
|
|
153
|
-
import {
|
|
154
|
-
searchHarmonicRetrieval
|
|
155
|
-
} from "./chunk-XUZ5CIEE.js";
|
|
156
153
|
import {
|
|
157
154
|
rescoreMemoryImportance
|
|
158
155
|
} from "./chunk-UOBPK2OS.js";
|
|
156
|
+
import {
|
|
157
|
+
searchHarmonicRetrieval
|
|
158
|
+
} from "./chunk-TUHBYJXL.js";
|
|
159
159
|
import {
|
|
160
160
|
createEvalBaselineSnapshot,
|
|
161
161
|
getEvalHarnessStatus,
|
|
@@ -175,7 +175,13 @@ import {
|
|
|
175
175
|
rebuildMemoryProjection,
|
|
176
176
|
repairMemoryProjection,
|
|
177
177
|
verifyMemoryProjection
|
|
178
|
-
} from "./chunk-
|
|
178
|
+
} from "./chunk-UENKPWCS.js";
|
|
179
|
+
import {
|
|
180
|
+
applyCommitmentLedgerLifecycle,
|
|
181
|
+
getCommitmentLedgerStatus,
|
|
182
|
+
recordCommitmentLedgerEntry,
|
|
183
|
+
transitionCommitmentLedgerEntryState
|
|
184
|
+
} from "./chunk-NOB2T2FC.js";
|
|
179
185
|
import {
|
|
180
186
|
buildConnectorRowsFromDefinitions,
|
|
181
187
|
parseConnectorsListOptions,
|
|
@@ -185,22 +191,16 @@ import {
|
|
|
185
191
|
renderConnectorsRunResult,
|
|
186
192
|
runConnectorPollOnce
|
|
187
193
|
} from "./chunk-OKTXM5H4.js";
|
|
188
|
-
import {
|
|
189
|
-
applyCommitmentLedgerLifecycle,
|
|
190
|
-
getCommitmentLedgerStatus,
|
|
191
|
-
recordCommitmentLedgerEntry,
|
|
192
|
-
transitionCommitmentLedgerEntryState
|
|
193
|
-
} from "./chunk-NOB2T2FC.js";
|
|
194
194
|
import {
|
|
195
195
|
chunkContent
|
|
196
196
|
} from "./chunk-6TBIWIAG.js";
|
|
197
197
|
import {
|
|
198
198
|
parseConfig
|
|
199
|
-
} from "./chunk-
|
|
199
|
+
} from "./chunk-7WOWGRAU.js";
|
|
200
200
|
import {
|
|
201
201
|
EngramAccessHttpServer,
|
|
202
202
|
MeetingsInputError
|
|
203
|
-
} from "./chunk-
|
|
203
|
+
} from "./chunk-KZIF6XHX.js";
|
|
204
204
|
import {
|
|
205
205
|
WearablesInputError
|
|
206
206
|
} from "./chunk-V7IZKJI3.js";
|
|
@@ -210,13 +210,13 @@ import {
|
|
|
210
210
|
loadChatSession,
|
|
211
211
|
processChatMessage,
|
|
212
212
|
sessionBelongsToPrincipal
|
|
213
|
-
} from "./chunk-
|
|
213
|
+
} from "./chunk-XNWXSGHS.js";
|
|
214
214
|
import {
|
|
215
215
|
getAbstractionNodeStoreStatus
|
|
216
216
|
} from "./chunk-DJUKBGAD.js";
|
|
217
217
|
import {
|
|
218
218
|
EngramAccessService
|
|
219
|
-
} from "./chunk-
|
|
219
|
+
} from "./chunk-OXRRJXPR.js";
|
|
220
220
|
import {
|
|
221
221
|
WorkStorage
|
|
222
222
|
} from "./chunk-GDB4J2H3.js";
|
|
@@ -233,45 +233,45 @@ import {
|
|
|
233
233
|
parseRecallExplainFormat,
|
|
234
234
|
renderRecallExplain,
|
|
235
235
|
renderXray
|
|
236
|
-
} from "./chunk-
|
|
236
|
+
} from "./chunk-CFVTRUR3.js";
|
|
237
237
|
import {
|
|
238
238
|
readAggregateExtractionWatermark
|
|
239
|
-
} from "./chunk-
|
|
239
|
+
} from "./chunk-LOXHYCVS.js";
|
|
240
240
|
import {
|
|
241
241
|
getObjectiveStateStoreStatus
|
|
242
242
|
} from "./chunk-HTP6XRUI.js";
|
|
243
|
+
import {
|
|
244
|
+
listNamespaces,
|
|
245
|
+
runNamespaceMigration,
|
|
246
|
+
verifyNamespaces
|
|
247
|
+
} from "./chunk-S5XOSTYM.js";
|
|
243
248
|
import {
|
|
244
249
|
listMemoryGovernanceRuns,
|
|
245
250
|
readMemoryGovernanceRunArtifact,
|
|
246
251
|
restoreMemoryGovernanceRun,
|
|
247
252
|
runMemoryGovernance
|
|
248
|
-
} from "./chunk-
|
|
253
|
+
} from "./chunk-SEEJOGQX.js";
|
|
249
254
|
import {
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
verifyNamespaces
|
|
253
|
-
} from "./chunk-IDQ6DKXC.js";
|
|
255
|
+
resolveNamespaceChildRoot
|
|
256
|
+
} from "./chunk-MDD2RINF.js";
|
|
254
257
|
import {
|
|
255
258
|
analyzeGraphHealth
|
|
256
|
-
} from "./chunk-
|
|
257
|
-
import {
|
|
258
|
-
resolveNamespaceChildRoot
|
|
259
|
-
} from "./chunk-O4BAGJDN.js";
|
|
259
|
+
} from "./chunk-YMOPYG3K.js";
|
|
260
260
|
import {
|
|
261
261
|
OKF_RESERVED_BASENAMES,
|
|
262
262
|
meetingIdDate,
|
|
263
263
|
okfTypeForCategory
|
|
264
|
-
} from "./chunk-
|
|
264
|
+
} from "./chunk-W2BAGGEW.js";
|
|
265
265
|
import {
|
|
266
266
|
isValidTranscriptDate
|
|
267
267
|
} from "./chunk-UHVXE24Y.js";
|
|
268
268
|
import {
|
|
269
269
|
RECALL_DISCLOSURE_LEVELS,
|
|
270
270
|
isRecallDisclosure
|
|
271
|
-
} from "./chunk-
|
|
271
|
+
} from "./chunk-MINHJ55X.js";
|
|
272
272
|
import {
|
|
273
273
|
composeMemoryEnvelope
|
|
274
|
-
} from "./chunk-
|
|
274
|
+
} from "./chunk-H2YSH3DG.js";
|
|
275
275
|
import {
|
|
276
276
|
bumpMemoryCorpusVersionForDir
|
|
277
277
|
} from "./chunk-XCB6QDL6.js";
|
|
@@ -302,7 +302,7 @@ import {
|
|
|
302
302
|
} from "./chunk-QDW3E4RD.js";
|
|
303
303
|
import {
|
|
304
304
|
getCausalTrajectoryStoreStatus
|
|
305
|
-
} from "./chunk-
|
|
305
|
+
} from "./chunk-GPFZFCRN.js";
|
|
306
306
|
import {
|
|
307
307
|
padEndDisplay,
|
|
308
308
|
truncateGraphemeSafe
|
|
@@ -314,7 +314,7 @@ import {
|
|
|
314
314
|
} from "./chunk-Z2YFLXHU.js";
|
|
315
315
|
import {
|
|
316
316
|
STATE_FILE_MAX_DECRYPT_BYTES
|
|
317
|
-
} from "./chunk-
|
|
317
|
+
} from "./chunk-5ACCD4L7.js";
|
|
318
318
|
import {
|
|
319
319
|
assertPathInsideRoot,
|
|
320
320
|
pathIsInside
|
|
@@ -4835,7 +4835,7 @@ function registerCli(api, orchestrator, registerOptions = {}) {
|
|
|
4835
4835
|
const idArg = typeof args[0] === "string" ? args[0] : "";
|
|
4836
4836
|
const options = args[1] ?? {};
|
|
4837
4837
|
const reason = typeof options.reason === "string" && options.reason.trim().length > 0 ? options.reason.trim() : void 0;
|
|
4838
|
-
const { forgetMemory } = await import("./forget-
|
|
4838
|
+
const { forgetMemory } = await import("./forget-2AE4MDK3.js");
|
|
4839
4839
|
try {
|
|
4840
4840
|
const result = await forgetMemory(orchestrator.storage, {
|
|
4841
4841
|
id: idArg,
|
|
@@ -5394,7 +5394,7 @@ function registerCli(api, orchestrator, registerOptions = {}) {
|
|
|
5394
5394
|
}
|
|
5395
5395
|
}
|
|
5396
5396
|
if (sourceArchive.endsWith(".enc")) {
|
|
5397
|
-
const { isEncryptedCapsuleFile } = await import("./capsule-crypto-
|
|
5397
|
+
const { isEncryptedCapsuleFile } = await import("./capsule-crypto-7FJQINUR.js");
|
|
5398
5398
|
const encDetected = await isEncryptedCapsuleFile(sourceArchive).catch(() => true);
|
|
5399
5399
|
if (encDetected) {
|
|
5400
5400
|
throw new Error(
|
|
@@ -5557,7 +5557,7 @@ function registerCli(api, orchestrator, registerOptions = {}) {
|
|
|
5557
5557
|
const { parseExportBundle } = await import("./transfer/types.js");
|
|
5558
5558
|
let decryptedBuf;
|
|
5559
5559
|
try {
|
|
5560
|
-
const { decryptCapsuleFileInMemory } = await import("./capsule-crypto-
|
|
5560
|
+
const { decryptCapsuleFileInMemory } = await import("./capsule-crypto-7FJQINUR.js");
|
|
5561
5561
|
decryptedBuf = await decryptCapsuleFileInMemory(archivePath, memoryDir);
|
|
5562
5562
|
} catch (decErr) {
|
|
5563
5563
|
const msg = decErr instanceof Error ? decErr.message : String(decErr);
|
|
@@ -8043,7 +8043,7 @@ Semantic consolidation complete. clusters=${result.clustersFound}, consolidated=
|
|
|
8043
8043
|
console.error("--verb is required. Must be one of: keep-a, keep-b, merge, both-valid, needs-more-context");
|
|
8044
8044
|
process.exit(1);
|
|
8045
8045
|
}
|
|
8046
|
-
const { isValidResolutionVerb, executeResolution } = await import("./resolution-
|
|
8046
|
+
const { isValidResolutionVerb, executeResolution } = await import("./resolution-XWBPKYFB.js");
|
|
8047
8047
|
if (!isValidResolutionVerb(verb)) {
|
|
8048
8048
|
console.error(`Invalid verb: ${verb}. Must be one of: keep-a, keep-b, merge, both-valid, needs-more-context`);
|
|
8049
8049
|
process.exit(1);
|
|
@@ -8811,4 +8811,4 @@ export {
|
|
|
8811
8811
|
listMemoryMarkdownFilePaths,
|
|
8812
8812
|
registerCli
|
|
8813
8813
|
};
|
|
8814
|
-
//# sourceMappingURL=chunk-
|
|
8814
|
+
//# sourceMappingURL=chunk-JYSN42VN.js.map
|