@remnic/core 9.3.690 → 9.3.692
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-boundary.d.ts +7 -6
- package/dist/access-boundary.js +21 -21
- package/dist/access-cli.js +49 -47
- package/dist/access-cli.js.map +1 -1
- package/dist/access-http.d.ts +7 -6
- package/dist/access-http.js +26 -26
- package/dist/access-mcp.d.ts +7 -6
- package/dist/access-mcp.js +23 -23
- package/dist/access-operations.d.ts +7 -6
- package/dist/access-operations.js +22 -22
- package/dist/{access-service-Dujr3MTm.d.ts → access-service-DvApf9LZ.d.ts} +2 -2
- package/dist/access-service.d.ts +7 -6
- package/dist/access-service.js +20 -20
- package/dist/access-surface-catalog.d.ts +7 -6
- package/dist/action-confidence.d.ts +1 -1
- package/dist/active-memory-bridge.d.ts +1 -1
- package/dist/active-recall.d.ts +1 -1
- package/dist/active-recall.js +1 -1
- package/dist/adapters/index.js +4 -4
- package/dist/adapters/registry.js +2 -2
- package/dist/{auto-sync-NUQWSFQD.js → auto-sync-RWXT6P5M.js} +5 -5
- package/dist/behavior-learner.d.ts +1 -1
- package/dist/behavior-signals.d.ts +1 -1
- package/dist/bootstrap.d.ts +6 -5
- package/dist/briefing.d.ts +1 -1
- package/dist/briefing.js +5 -5
- package/dist/buffer-surprise-report.d.ts +1 -1
- package/dist/buffer.d.ts +1 -1
- package/dist/calibration.d.ts +1 -1
- package/dist/calibration.js +2 -2
- package/dist/capabilities.d.ts +1 -1
- package/dist/{catalog-CKPtJ114.d.ts → catalog-BEWLjdOr.d.ts} +1 -1
- package/dist/causal-behavior.d.ts +1 -1
- package/dist/causal-consolidation.d.ts +1 -1
- package/dist/causal-consolidation.js +8 -8
- package/dist/{chunk-GTDH3IUH.js → chunk-2D27ODNX.js} +2 -2
- package/dist/{chunk-46URPRE6.js → chunk-2EN5WZQB.js} +2 -2
- package/dist/{chunk-3K37VPM3.js → chunk-3BRA3N5A.js} +2 -2
- package/dist/{chunk-RTFAZOIR.js → chunk-3VVH6ZQW.js} +2 -2
- package/dist/{chunk-ZU7N3S6V.js → chunk-4IQNAOP3.js} +6 -142
- package/dist/chunk-4IQNAOP3.js.map +1 -0
- package/dist/{chunk-FIVDN2SM.js → chunk-4RGWCRIJ.js} +4 -4
- package/dist/{chunk-AGJH5ISO.js → chunk-5KBNNUXS.js} +2 -2
- package/dist/{chunk-X7RLU5CR.js → chunk-66HROLW5.js} +2 -2
- package/dist/chunk-6C2BMUZA.js +444 -0
- package/dist/chunk-6C2BMUZA.js.map +1 -0
- package/dist/{chunk-TYF3D4MS.js → chunk-6ZNIUGXB.js} +11 -11
- package/dist/{chunk-UPIBE2DK.js → chunk-ADUAF5EV.js} +2 -2
- package/dist/{chunk-LLONI6PY.js → chunk-AFWEUTMS.js} +2 -2
- package/dist/{chunk-ZUDM75KG.js → chunk-DCWIQFNA.js} +4 -4
- package/dist/{chunk-OMKUJTVJ.js → chunk-DO7MDZMU.js} +4 -4
- package/dist/{chunk-NGFEWFNK.js → chunk-DQHZA7Y3.js} +1 -1
- package/dist/chunk-DQHZA7Y3.js.map +1 -0
- package/dist/{chunk-LXIEXSHU.js → chunk-E6BOD3UJ.js} +2 -2
- package/dist/{chunk-OBXTMFZQ.js → chunk-ECZPWSB5.js} +2 -2
- package/dist/{chunk-CWE74HRG.js → chunk-FM7KLRKN.js} +3 -3
- package/dist/{chunk-BFVPIKDY.js → chunk-GCOSQBQ2.js} +3 -3
- package/dist/chunk-HXNMDPHN.js +149 -0
- package/dist/chunk-HXNMDPHN.js.map +1 -0
- package/dist/{chunk-MDYG7VI7.js → chunk-IREVVFTM.js} +10 -1
- package/dist/{chunk-MDYG7VI7.js.map → chunk-IREVVFTM.js.map} +1 -1
- package/dist/{chunk-RKNJBZ55.js → chunk-JBPKEARU.js} +4 -4
- package/dist/{chunk-CP2NZQLT.js → chunk-KYH53EFD.js} +6 -6
- package/dist/{chunk-LQ6JI4VH.js → chunk-LD53WPMU.js} +4 -4
- package/dist/{chunk-SB6CQTKP.js → chunk-MCV2DD6F.js} +2 -2
- package/dist/{chunk-3FC6LW6T.js → chunk-MRFVMSTR.js} +2 -2
- package/dist/{chunk-WDXCNJSF.js → chunk-MXZWKOOR.js} +2 -2
- package/dist/{chunk-NSVXK7M5.js → chunk-NEILAC3H.js} +3 -3
- package/dist/{chunk-RGNEARXW.js → chunk-NUZ3N445.js} +7 -7
- package/dist/{chunk-WROKD3XC.js → chunk-O4ZIV62T.js} +35 -35
- package/dist/{chunk-PHZKALOE.js → chunk-QFG23CRE.js} +2 -2
- package/dist/{chunk-A4HH2EWA.js → chunk-QVG4LAQO.js} +2 -2
- package/dist/{chunk-54PVJDO5.js → chunk-SAC5V6JT.js} +2 -2
- package/dist/{chunk-XKUKJIOY.js → chunk-SEK4XIDN.js} +6 -6
- package/dist/{chunk-5CEJH5ZN.js → chunk-TAPSNIMA.js} +4 -4
- package/dist/{chunk-2N6UNJSX.js → chunk-U2OBZSGG.js} +2 -2
- package/dist/{chunk-BKAMHZYR.js → chunk-UOCLRM74.js} +2 -2
- package/dist/{chunk-A7UZR6RA.js → chunk-UTUYAPLY.js} +14 -1
- package/dist/chunk-UTUYAPLY.js.map +1 -0
- package/dist/{chunk-Z7KILAOU.js → chunk-V56S3A23.js} +19 -19
- package/dist/{chunk-CUNTLEJP.js → chunk-VFVG4NS2.js} +30 -9
- package/dist/chunk-VFVG4NS2.js.map +1 -0
- package/dist/{chunk-UD5OKH4J.js → chunk-W4ELOUNX.js} +2 -2
- package/dist/{chunk-CE6CBRCV.js → chunk-W4MICQIZ.js} +89 -407
- package/dist/chunk-W4MICQIZ.js.map +1 -0
- package/dist/{chunk-GR77Z2BM.js → chunk-WIKNVFBS.js} +2 -2
- package/dist/{chunk-WRFKZEO6.js → chunk-YQGHW5ML.js} +4 -4
- package/dist/{chunk-67MMWC74.js → chunk-ZLXGFAML.js} +2 -2
- package/dist/{cli-BkDp6WNi.d.ts → cli-BjsY9Le7.d.ts} +3 -3
- package/dist/cli.d.ts +8 -7
- package/dist/cli.js +45 -44
- package/dist/compounding/engine.d.ts +1 -1
- package/dist/compounding/engine.js +5 -5
- package/dist/compounding/preference-consolidator.d.ts +1 -1
- package/dist/compression-optimizer.d.ts +1 -1
- package/dist/config.d.ts +1 -1
- package/dist/config.js +1 -1
- package/dist/connectors/codex-materialize-runner.d.ts +1 -1
- package/dist/connectors/codex-materialize-runner.js +5 -5
- package/dist/connectors/codex-materialize.d.ts +1 -1
- package/dist/connectors/index.d.ts +1 -1
- package/dist/connectors/index.js +5 -5
- package/dist/consolidation-provenance-check.d.ts +1 -1
- package/dist/consolidation-undo.d.ts +1 -1
- package/dist/contradiction/index.d.ts +1 -1
- package/dist/conversation-index/backend.d.ts +1 -1
- package/dist/conversation-index/backend.js +2 -2
- package/dist/conversation-index/chunker.d.ts +1 -1
- package/dist/conversation-index/faiss-adapter.d.ts +1 -1
- package/dist/conversation-index/indexer.d.ts +1 -1
- package/dist/conversation-index/search.d.ts +1 -1
- package/dist/day-summary.d.ts +1 -1
- package/dist/delinearize.d.ts +1 -1
- package/dist/direct-answer-wiring.d.ts +1 -1
- package/dist/direct-answer.d.ts +1 -1
- package/dist/embedding-fallback.d.ts +1 -1
- package/dist/enrichment/index.d.ts +1 -1
- package/dist/entity-retrieval.d.ts +1 -1
- package/dist/entity-retrieval.js +5 -5
- package/dist/entity-schema.d.ts +1 -1
- package/dist/event-time.d.ts +35 -0
- package/dist/event-time.js +325 -0
- package/dist/event-time.js.map +1 -0
- package/dist/explicit-capture.d.ts +6 -5
- package/dist/extraction-judge-telemetry.d.ts +1 -1
- package/dist/extraction-judge-training.d.ts +1 -1
- package/dist/extraction-judge.d.ts +1 -1
- package/dist/extraction-judge.js +3 -3
- package/dist/extraction.d.ts +1 -1
- package/dist/extraction.js +3 -3
- package/dist/fallback-llm.d.ts +1 -1
- package/dist/fallback-llm.js +2 -2
- package/dist/identity-continuity.d.ts +1 -1
- package/dist/importance.d.ts +1 -1
- package/dist/index.d.ts +11 -10
- package/dist/index.js +77 -75
- package/dist/index.js.map +1 -1
- package/dist/intent.d.ts +1 -1
- package/dist/lcm/engine.d.ts +1 -1
- package/dist/lcm/index.d.ts +1 -1
- package/dist/lcm/tools.d.ts +1 -1
- package/dist/lifecycle.d.ts +1 -1
- package/dist/live-connectors-runner.d.ts +1 -1
- package/dist/local-llm.d.ts +1 -1
- package/dist/maintenance/memory-governance.d.ts +1 -1
- package/dist/maintenance/memory-governance.js +5 -5
- package/dist/maintenance/rebuild-memory-lifecycle-ledger.js +5 -5
- package/dist/maintenance/rebuild-memory-projection.js +6 -6
- package/dist/mcp-memory-inspector-app.d.ts +7 -6
- package/dist/memory-action-policy.d.ts +1 -1
- package/dist/memory-cache.d.ts +1 -1
- package/dist/memory-lifecycle-ledger-utils.d.ts +1 -1
- package/dist/memory-projection-store.d.ts +1 -1
- package/dist/memory-provenance.d.ts +1 -1
- package/dist/memory-worth-outcomes.d.ts +1 -1
- package/dist/models-json.d.ts +1 -1
- package/dist/namespaces/migrate.d.ts +2 -2
- package/dist/namespaces/migrate.js +15 -15
- package/dist/namespaces/principal.d.ts +1 -1
- package/dist/namespaces/search.d.ts +1 -1
- package/dist/namespaces/search.js +9 -9
- package/dist/namespaces/storage.d.ts +2 -2
- package/dist/namespaces/storage.js +5 -5
- package/dist/native-knowledge.d.ts +1 -1
- package/dist/operator-toolkit.d.ts +1 -1
- package/dist/operator-toolkit.js +20 -19
- package/dist/orchestration/maintenance.d.ts +112 -0
- package/dist/orchestration/maintenance.js +39 -0
- package/dist/orchestration/maintenance.js.map +1 -0
- package/dist/{orchestrator-B7ixmUkP.d.ts → orchestrator-CNJCYjZ1.d.ts} +12 -36
- package/dist/orchestrator.d.ts +5 -4
- package/dist/orchestrator.js +42 -40
- package/dist/patterns-cli.d.ts +1 -1
- package/dist/policy-runtime.d.ts +1 -1
- package/dist/provenance.d.ts +1 -1
- package/dist/qmd-recall-cache.d.ts +1 -1
- package/dist/qmd.d.ts +1 -1
- package/dist/recall-disclosure-escalation.d.ts +1 -1
- package/dist/recall-explain-renderer.d.ts +1 -1
- package/dist/recall-explain-renderer.js +3 -3
- package/dist/recall-planner-llm.d.ts +1 -1
- package/dist/recall-planner-llm.js +2 -2
- package/dist/recall-state.d.ts +1 -1
- package/dist/recall-tag-filter.d.ts +1 -1
- package/dist/recall-xray-cli.d.ts +1 -1
- package/dist/recall-xray-cli.js +4 -4
- package/dist/recall-xray-renderer.d.ts +1 -1
- package/dist/recall-xray-renderer.js +3 -3
- package/dist/recall-xray.d.ts +1 -1
- package/dist/recall-xray.js +2 -2
- package/dist/resolve-auth-token.d.ts +1 -1
- package/dist/resume-bundles.js +2 -2
- package/dist/retrieval-agents.d.ts +1 -1
- package/dist/retrieval-tiers.d.ts +1 -1
- package/dist/routing/engine.d.ts +1 -1
- package/dist/routing/store.d.ts +1 -1
- package/dist/search/embed-helper.d.ts +1 -1
- package/dist/search/factory.d.ts +1 -1
- package/dist/search/factory.js +8 -8
- package/dist/search/index.d.ts +1 -1
- package/dist/search/index.js +13 -13
- package/dist/search/lancedb-backend.d.ts +1 -1
- package/dist/search/lancedb-backend.js +2 -2
- package/dist/search/meilisearch-backend.d.ts +1 -1
- package/dist/search/meilisearch-backend.js +2 -2
- package/dist/search/noop-backend.d.ts +1 -1
- package/dist/search/orama-backend.d.ts +1 -1
- package/dist/search/orama-backend.js +2 -2
- package/dist/search/port.d.ts +1 -1
- package/dist/search/remote-backend.d.ts +1 -1
- package/dist/{semantic-consolidation-CWch5uM7.d.ts → semantic-consolidation-D5U0Mrdb.d.ts} +1 -1
- package/dist/semantic-consolidation.d.ts +2 -2
- package/dist/semantic-consolidation.js +6 -6
- package/dist/semantic-rule-promotion.js +5 -5
- package/dist/semantic-rule-verifier.d.ts +1 -1
- package/dist/semantic-rule-verifier.js +5 -5
- package/dist/session-observer-bands.d.ts +1 -1
- package/dist/session-observer-state.d.ts +1 -1
- package/dist/shared-context/manager.d.ts +1 -1
- package/dist/signal.d.ts +1 -1
- package/dist/storage.d.ts +3 -1
- package/dist/storage.js +4 -4
- package/dist/summarizer.d.ts +1 -1
- package/dist/summarizer.js +3 -3
- package/dist/summary-snapshot.d.ts +1 -1
- package/dist/temporal-supersession.d.ts +1 -1
- package/dist/temporal-supersession.js +2 -2
- package/dist/temporal-validity.d.ts +22 -2
- package/dist/temporal-validity.js +3 -1
- package/dist/threading.d.ts +1 -1
- package/dist/tier-migration.d.ts +1 -1
- package/dist/tier-routing.d.ts +1 -1
- package/dist/topics.d.ts +1 -1
- package/dist/transcript.d.ts +1 -1
- package/dist/{types-Dm5xxVrr.d.ts → types-2NoBoRBM.d.ts} +38 -0
- package/dist/types.d.ts +1 -1
- package/dist/types.js +1 -1
- package/dist/utility-runtime.d.ts +1 -1
- package/dist/verified-recall.js +5 -5
- package/package.json +12 -2
- package/src/bitemporal-frontmatter.test.ts +177 -0
- package/src/config.ts +13 -0
- package/src/event-time.test.ts +514 -0
- package/src/event-time.ts +548 -0
- package/src/orchestration/maintenance.test.ts +738 -0
- package/src/orchestration/maintenance.ts +557 -0
- package/src/orchestrator-flush.test.ts +0 -599
- package/src/orchestrator.ts +60 -420
- package/src/storage.ts +34 -0
- package/src/temporal-validity.ts +34 -0
- package/src/types.ts +38 -0
- package/dist/chunk-A7UZR6RA.js.map +0 -1
- package/dist/chunk-CE6CBRCV.js.map +0 -1
- package/dist/chunk-CUNTLEJP.js.map +0 -1
- package/dist/chunk-NGFEWFNK.js.map +0 -1
- package/dist/chunk-ZU7N3S6V.js.map +0 -1
- /package/dist/{auto-sync-NUQWSFQD.js.map → auto-sync-RWXT6P5M.js.map} +0 -0
- /package/dist/{chunk-GTDH3IUH.js.map → chunk-2D27ODNX.js.map} +0 -0
- /package/dist/{chunk-46URPRE6.js.map → chunk-2EN5WZQB.js.map} +0 -0
- /package/dist/{chunk-3K37VPM3.js.map → chunk-3BRA3N5A.js.map} +0 -0
- /package/dist/{chunk-RTFAZOIR.js.map → chunk-3VVH6ZQW.js.map} +0 -0
- /package/dist/{chunk-FIVDN2SM.js.map → chunk-4RGWCRIJ.js.map} +0 -0
- /package/dist/{chunk-AGJH5ISO.js.map → chunk-5KBNNUXS.js.map} +0 -0
- /package/dist/{chunk-X7RLU5CR.js.map → chunk-66HROLW5.js.map} +0 -0
- /package/dist/{chunk-TYF3D4MS.js.map → chunk-6ZNIUGXB.js.map} +0 -0
- /package/dist/{chunk-UPIBE2DK.js.map → chunk-ADUAF5EV.js.map} +0 -0
- /package/dist/{chunk-LLONI6PY.js.map → chunk-AFWEUTMS.js.map} +0 -0
- /package/dist/{chunk-ZUDM75KG.js.map → chunk-DCWIQFNA.js.map} +0 -0
- /package/dist/{chunk-OMKUJTVJ.js.map → chunk-DO7MDZMU.js.map} +0 -0
- /package/dist/{chunk-LXIEXSHU.js.map → chunk-E6BOD3UJ.js.map} +0 -0
- /package/dist/{chunk-OBXTMFZQ.js.map → chunk-ECZPWSB5.js.map} +0 -0
- /package/dist/{chunk-CWE74HRG.js.map → chunk-FM7KLRKN.js.map} +0 -0
- /package/dist/{chunk-BFVPIKDY.js.map → chunk-GCOSQBQ2.js.map} +0 -0
- /package/dist/{chunk-RKNJBZ55.js.map → chunk-JBPKEARU.js.map} +0 -0
- /package/dist/{chunk-CP2NZQLT.js.map → chunk-KYH53EFD.js.map} +0 -0
- /package/dist/{chunk-LQ6JI4VH.js.map → chunk-LD53WPMU.js.map} +0 -0
- /package/dist/{chunk-SB6CQTKP.js.map → chunk-MCV2DD6F.js.map} +0 -0
- /package/dist/{chunk-3FC6LW6T.js.map → chunk-MRFVMSTR.js.map} +0 -0
- /package/dist/{chunk-WDXCNJSF.js.map → chunk-MXZWKOOR.js.map} +0 -0
- /package/dist/{chunk-NSVXK7M5.js.map → chunk-NEILAC3H.js.map} +0 -0
- /package/dist/{chunk-RGNEARXW.js.map → chunk-NUZ3N445.js.map} +0 -0
- /package/dist/{chunk-WROKD3XC.js.map → chunk-O4ZIV62T.js.map} +0 -0
- /package/dist/{chunk-PHZKALOE.js.map → chunk-QFG23CRE.js.map} +0 -0
- /package/dist/{chunk-A4HH2EWA.js.map → chunk-QVG4LAQO.js.map} +0 -0
- /package/dist/{chunk-54PVJDO5.js.map → chunk-SAC5V6JT.js.map} +0 -0
- /package/dist/{chunk-XKUKJIOY.js.map → chunk-SEK4XIDN.js.map} +0 -0
- /package/dist/{chunk-5CEJH5ZN.js.map → chunk-TAPSNIMA.js.map} +0 -0
- /package/dist/{chunk-2N6UNJSX.js.map → chunk-U2OBZSGG.js.map} +0 -0
- /package/dist/{chunk-BKAMHZYR.js.map → chunk-UOCLRM74.js.map} +0 -0
- /package/dist/{chunk-Z7KILAOU.js.map → chunk-V56S3A23.js.map} +0 -0
- /package/dist/{chunk-UD5OKH4J.js.map → chunk-W4ELOUNX.js.map} +0 -0
- /package/dist/{chunk-GR77Z2BM.js.map → chunk-WIKNVFBS.js.map} +0 -0
- /package/dist/{chunk-WRFKZEO6.js.map → chunk-YQGHW5ML.js.map} +0 -0
- /package/dist/{chunk-67MMWC74.js.map → chunk-ZLXGFAML.js.map} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/temporal-validity.ts"],"sourcesContent":["/**\n * Temporal validity helpers (issue #680).\n *\n * `valid_at` / `invalid_at` are explicit ISO 8601 timestamps that mark when a\n * fact begins and ends being authoritative. These helpers centralize the\n * read-time defaulting rules so every call site (recall filter, supersession\n * write, tests) agrees on the canonical semantics:\n *\n * - `effectiveValidAt(fm)` — the moment this fact starts being true.\n * Falls back to `created` when `valid_at` is absent so legacy memories\n * written before #680 still participate in `as_of` filtering without\n * a backfill migration.\n * - `effectiveInvalidAt(fm)` — the moment this fact stops being true.\n * Returns `undefined` when no `invalid_at` is set; supersession logic\n * populates it on the older fact when a newer one replaces it.\n * - `isValidAsOf(fm, asOfMs)` — true when the fact was authoritative at\n * `asOfMs` (a numeric timestamp in ms). Half-open interval semantics:\n * `valid_at <= asOf < invalid_at`. Strings are parsed via\n * `Date.parse()` so timezone-suffixed ISO strings compare correctly\n * (CLAUDE.md gotcha — never compare ISO strings lexicographically).\n *\n * Boundary case: when `invalid_at === asOf`, the fact is treated as NOT\n * valid (the upper bound is exclusive), which matches the supersession\n * model — at the instant a successor's `valid_at` fires, the predecessor\n * is no longer authoritative.\n */\nimport type { MemoryFrontmatter } from \"./types.js\";\n\nexport function effectiveValidAt(fm: Pick<MemoryFrontmatter, \"valid_at\" | \"created\">): string {\n // `created` is required on every memory (see types.ts), so the fallback\n // chain always terminates. Trimming guards against whitespace-only\n // overrides written by legacy tooling.\n const explicit = fm.valid_at?.trim();\n if (explicit && explicit.length > 0) return explicit;\n return fm.created;\n}\n\nexport function effectiveInvalidAt(\n fm: Pick<MemoryFrontmatter, \"invalid_at\" | \"supersededAt\" | \"status\">,\n): string | undefined {\n const explicit = fm.invalid_at?.trim();\n if (explicit && explicit.length > 0) return explicit;\n // Cursor Medium rounds 1+2 on PR #713: legacy data written before\n // #680 has `status: superseded` and `supersededAt` populated, but\n // no `invalid_at`. With the new `as_of` filter bypassing the\n // supersession status check, those legacy predecessors would\n // otherwise be treated as \"always valid\" and surface alongside\n // their successors at every historical pin. Fall back to\n // `supersededAt` so the half-open `[valid_at, invalid_at)`\n // interval still terminates for legacy supersedes without\n // requiring a backfill migration.\n //\n // BOUNDARY APPROXIMATION: `supersededAt` is when the supersession\n // write fired, which may post-date the successor's true\n // `valid_at` (consolidation runs on its own cadence). So the\n // legacy predecessor stays visible from `valid_at` through\n // `supersededAt` rather than the tighter `valid_at` through\n // successor-`valid_at` window. We accept this intentionally: the\n // alternative — successor-aware coordination — would require\n // threading the successor through every call site, and \"show the\n // legacy fact a bit too long\" is a clear win over \"drop legacy\n // facts entirely from `as_of`\". New data (post-#680) writes\n // `invalid_at` directly and is unaffected.\n if (fm.status === \"superseded\") {\n const legacy = fm.supersededAt?.trim();\n if (legacy && legacy.length > 0) return legacy;\n }\n return undefined;\n}\n\n/**\n * Returns true when the fact was authoritative at `asOfMs` (parsed\n * milliseconds since epoch). Half-open semantics: a fact is valid in\n * `[valid_at, invalid_at)`.\n *\n * If `valid_at` cannot be parsed, the fact is conservatively treated as\n * NOT valid at the requested point — we never silently default a corrupt\n * timestamp to \"always true\" because that would let bad data leak past\n * the historical filter (CLAUDE.md gotcha #34: distinguish empty from\n * malformed).\n */\nexport function isValidAsOf(\n fm: Pick<\n MemoryFrontmatter,\n \"valid_at\" | \"invalid_at\" | \"created\" | \"supersededAt\" | \"status\"\n >,\n asOfMs: number,\n): boolean {\n if (!Number.isFinite(asOfMs)) return true;\n const validAtMs = Date.parse(effectiveValidAt(fm));\n if (!Number.isFinite(validAtMs)) return false;\n if (validAtMs > asOfMs) return false;\n const invalidAt = effectiveInvalidAt(fm);\n if (invalidAt === undefined) return true;\n const invalidAtMs = Date.parse(invalidAt);\n // Unparseable invalid_at — conservatively keep the fact (we can read\n // valid_at, so we know the fact was at some point true; corrupt\n // invalid_at is not a reason to hide it).\n if (!Number.isFinite(invalidAtMs)) return true;\n // Half-open: at exactly invalid_at, the fact is no longer valid.\n return invalidAtMs > asOfMs;\n}\n\n/**\n * Parse and validate an `as_of` value supplied at an input boundary\n * (CLI flag, HTTP query param, MCP field). Returns parsed milliseconds\n * on success; throws a `RangeError` with a helpful message on malformed\n * input. CLAUDE.md rule 51 — never silently default invalid input.\n */\nexport function parseAsOfTimestamp(raw: unknown): number {\n if (typeof raw !== \"string\" || raw.trim().length === 0) {\n throw new RangeError(\n `as_of must be a non-empty ISO 8601 timestamp string (got: ${typeof raw === \"string\" ? `\"${raw}\"` : typeof raw})`,\n );\n }\n const ms = Date.parse(raw);\n if (!Number.isFinite(ms)) {\n throw new RangeError(\n `as_of must be a parseable ISO 8601 timestamp (got: \"${raw}\")`,\n );\n }\n return ms;\n}\n"],"mappings":";AA4BO,SAAS,iBAAiB,IAA6D;AAI5F,QAAM,WAAW,GAAG,UAAU,KAAK;AACnC,MAAI,YAAY,SAAS,SAAS,EAAG,QAAO;AAC5C,SAAO,GAAG;AACZ;AAEO,SAAS,mBACd,IACoB;AACpB,QAAM,WAAW,GAAG,YAAY,KAAK;AACrC,MAAI,YAAY,SAAS,SAAS,EAAG,QAAO;AAsB5C,MAAI,GAAG,WAAW,cAAc;AAC9B,UAAM,SAAS,GAAG,cAAc,KAAK;AACrC,QAAI,UAAU,OAAO,SAAS,EAAG,QAAO;AAAA,EAC1C;AACA,SAAO;AACT;AAaO,SAAS,YACd,IAIA,QACS;AACT,MAAI,CAAC,OAAO,SAAS,MAAM,EAAG,QAAO;AACrC,QAAM,YAAY,KAAK,MAAM,iBAAiB,EAAE,CAAC;AACjD,MAAI,CAAC,OAAO,SAAS,SAAS,EAAG,QAAO;AACxC,MAAI,YAAY,OAAQ,QAAO;AAC/B,QAAM,YAAY,mBAAmB,EAAE;AACvC,MAAI,cAAc,OAAW,QAAO;AACpC,QAAM,cAAc,KAAK,MAAM,SAAS;AAIxC,MAAI,CAAC,OAAO,SAAS,WAAW,EAAG,QAAO;AAE1C,SAAO,cAAc;AACvB;AAQO,SAAS,mBAAmB,KAAsB;AACvD,MAAI,OAAO,QAAQ,YAAY,IAAI,KAAK,EAAE,WAAW,GAAG;AACtD,UAAM,IAAI;AAAA,MACR,6DAA6D,OAAO,QAAQ,WAAW,IAAI,GAAG,MAAM,OAAO,GAAG;AAAA,IAChH;AAAA,EACF;AACA,QAAM,KAAK,KAAK,MAAM,GAAG;AACzB,MAAI,CAAC,OAAO,SAAS,EAAE,GAAG;AACxB,UAAM,IAAI;AAAA,MACR,uDAAuD,GAAG;AAAA,IAC5D;AAAA,EACF;AACA,SAAO;AACT;","names":[]}
|
|
1
|
+
{"version":3,"sources":["../src/temporal-validity.ts"],"sourcesContent":["/**\n * Temporal validity helpers (issue #680).\n *\n * `valid_at` / `invalid_at` are explicit ISO 8601 timestamps that mark when a\n * fact begins and ends being authoritative. These helpers centralize the\n * read-time defaulting rules so every call site (recall filter, supersession\n * write, tests) agrees on the canonical semantics:\n *\n * - `effectiveValidAt(fm)` — the moment this fact starts being true.\n * Falls back to `created` when `valid_at` is absent so legacy memories\n * written before #680 still participate in `as_of` filtering without\n * a backfill migration.\n * - `effectiveInvalidAt(fm)` — the moment this fact stops being true.\n * Returns `undefined` when no `invalid_at` is set; supersession logic\n * populates it on the older fact when a newer one replaces it.\n * - `isValidAsOf(fm, asOfMs)` — true when the fact was authoritative at\n * `asOfMs` (a numeric timestamp in ms). Half-open interval semantics:\n * `valid_at <= asOf < invalid_at`. Strings are parsed via\n * `Date.parse()` so timezone-suffixed ISO strings compare correctly\n * (CLAUDE.md gotcha — never compare ISO strings lexicographically).\n *\n * Boundary case: when `invalid_at === asOf`, the fact is treated as NOT\n * valid (the upper bound is exclusive), which matches the supersession\n * model — at the instant a successor's `valid_at` fires, the predecessor\n * is no longer authoritative.\n */\nimport type { MemoryFrontmatter } from \"./types.js\";\n\nexport function effectiveValidAt(fm: Pick<MemoryFrontmatter, \"valid_at\" | \"created\">): string {\n // `created` is required on every memory (see types.ts), so the fallback\n // chain always terminates. Trimming guards against whitespace-only\n // overrides written by legacy tooling.\n const explicit = fm.valid_at?.trim();\n if (explicit && explicit.length > 0) return explicit;\n return fm.created;\n}\n\nexport function effectiveInvalidAt(\n fm: Pick<MemoryFrontmatter, \"invalid_at\" | \"supersededAt\" | \"status\">,\n): string | undefined {\n const explicit = fm.invalid_at?.trim();\n if (explicit && explicit.length > 0) return explicit;\n // Cursor Medium rounds 1+2 on PR #713: legacy data written before\n // #680 has `status: superseded` and `supersededAt` populated, but\n // no `invalid_at`. With the new `as_of` filter bypassing the\n // supersession status check, those legacy predecessors would\n // otherwise be treated as \"always valid\" and surface alongside\n // their successors at every historical pin. Fall back to\n // `supersededAt` so the half-open `[valid_at, invalid_at)`\n // interval still terminates for legacy supersedes without\n // requiring a backfill migration.\n //\n // BOUNDARY APPROXIMATION: `supersededAt` is when the supersession\n // write fired, which may post-date the successor's true\n // `valid_at` (consolidation runs on its own cadence). So the\n // legacy predecessor stays visible from `valid_at` through\n // `supersededAt` rather than the tighter `valid_at` through\n // successor-`valid_at` window. We accept this intentionally: the\n // alternative — successor-aware coordination — would require\n // threading the successor through every call site, and \"show the\n // legacy fact a bit too long\" is a clear win over \"drop legacy\n // facts entirely from `as_of`\". New data (post-#680) writes\n // `invalid_at` directly and is unaffected.\n if (fm.status === \"superseded\") {\n const legacy = fm.supersededAt?.trim();\n if (legacy && legacy.length > 0) return legacy;\n }\n return undefined;\n}\n\n/**\n * Returns true when the fact was authoritative at `asOfMs` (parsed\n * milliseconds since epoch). Half-open semantics: a fact is valid in\n * `[valid_at, invalid_at)`.\n *\n * If `valid_at` cannot be parsed, the fact is conservatively treated as\n * NOT valid at the requested point — we never silently default a corrupt\n * timestamp to \"always true\" because that would let bad data leak past\n * the historical filter (CLAUDE.md gotcha #34: distinguish empty from\n * malformed).\n */\nexport function isValidAsOf(\n fm: Pick<\n MemoryFrontmatter,\n \"valid_at\" | \"invalid_at\" | \"created\" | \"supersededAt\" | \"status\"\n >,\n asOfMs: number,\n): boolean {\n if (!Number.isFinite(asOfMs)) return true;\n const validAtMs = Date.parse(effectiveValidAt(fm));\n if (!Number.isFinite(validAtMs)) return false;\n if (validAtMs > asOfMs) return false;\n const invalidAt = effectiveInvalidAt(fm);\n if (invalidAt === undefined) return true;\n const invalidAtMs = Date.parse(invalidAt);\n // Unparseable invalid_at — conservatively keep the fact (we can read\n // valid_at, so we know the fact was at some point true; corrupt\n // invalid_at is not a reason to hide it).\n if (!Number.isFinite(invalidAtMs)) return true;\n // Half-open: at exactly invalid_at, the fact is no longer valid.\n return invalidAtMs > asOfMs;\n}\n\n/**\n * Bi-temporal injection filter (issue #1578).\n *\n * Returns `true` when the fact's event-time interval has already ended before\n * `nowMs` — i.e. it is no longer *true in the world* and should leave the\n * default injection candidate set (it remains findable by explicit search\n * and `as_of` queries, mirroring the lifecycle-filter escape-hatch principle\n * in AGENTS.md §16). Gated by `temporalBiTemporal`; the escape hatch\n * `temporalExpiredInInjection` re-admits expired facts when a deployment\n * prefers the older always-inject behavior.\n *\n * Semantics: a fact is expired-now when `invalid_at` is present and\n * `invalid_at <= nowMs` (the exclusive upper bound has passed). Absent\n * `invalid_at` means \"still valid\" — never expired. This is the\n * status-orthogonal complement of `isValidAsOf` for the wall-clock instant:\n * an `active` memory can be validity-expired, and a `superseded` one can\n * still be validity-valid within its historical window (issue pitfall: the\n * filter is status-orthogonal).\n */\nexport function isValidityExpiredNow(\n fm: Pick<MemoryFrontmatter, \"invalid_at\">,\n nowMs: number,\n): boolean {\n if (!Number.isFinite(nowMs)) return false;\n const invalidAt = fm.invalid_at?.trim();\n if (!invalidAt || invalidAt.length === 0) return false;\n const invalidAtMs = Date.parse(invalidAt);\n // Unparseable invalid_at — conservatively keep the fact (do not filter on\n // corrupt data; the as_of path already handles malformed bounds).\n if (!Number.isFinite(invalidAtMs)) return false;\n // Half-open interval end has passed: [valid_at, invalid_at) ended.\n return invalidAtMs <= nowMs;\n}\n\n/**\n * Parse and validate an `as_of` value supplied at an input boundary\n * (CLI flag, HTTP query param, MCP field). Returns parsed milliseconds\n * on success; throws a `RangeError` with a helpful message on malformed\n * input. CLAUDE.md rule 51 — never silently default invalid input.\n */\nexport function parseAsOfTimestamp(raw: unknown): number {\n if (typeof raw !== \"string\" || raw.trim().length === 0) {\n throw new RangeError(\n `as_of must be a non-empty ISO 8601 timestamp string (got: ${typeof raw === \"string\" ? `\"${raw}\"` : typeof raw})`,\n );\n }\n const ms = Date.parse(raw);\n if (!Number.isFinite(ms)) {\n throw new RangeError(\n `as_of must be a parseable ISO 8601 timestamp (got: \"${raw}\")`,\n );\n }\n return ms;\n}\n"],"mappings":";AA4BO,SAAS,iBAAiB,IAA6D;AAI5F,QAAM,WAAW,GAAG,UAAU,KAAK;AACnC,MAAI,YAAY,SAAS,SAAS,EAAG,QAAO;AAC5C,SAAO,GAAG;AACZ;AAEO,SAAS,mBACd,IACoB;AACpB,QAAM,WAAW,GAAG,YAAY,KAAK;AACrC,MAAI,YAAY,SAAS,SAAS,EAAG,QAAO;AAsB5C,MAAI,GAAG,WAAW,cAAc;AAC9B,UAAM,SAAS,GAAG,cAAc,KAAK;AACrC,QAAI,UAAU,OAAO,SAAS,EAAG,QAAO;AAAA,EAC1C;AACA,SAAO;AACT;AAaO,SAAS,YACd,IAIA,QACS;AACT,MAAI,CAAC,OAAO,SAAS,MAAM,EAAG,QAAO;AACrC,QAAM,YAAY,KAAK,MAAM,iBAAiB,EAAE,CAAC;AACjD,MAAI,CAAC,OAAO,SAAS,SAAS,EAAG,QAAO;AACxC,MAAI,YAAY,OAAQ,QAAO;AAC/B,QAAM,YAAY,mBAAmB,EAAE;AACvC,MAAI,cAAc,OAAW,QAAO;AACpC,QAAM,cAAc,KAAK,MAAM,SAAS;AAIxC,MAAI,CAAC,OAAO,SAAS,WAAW,EAAG,QAAO;AAE1C,SAAO,cAAc;AACvB;AAqBO,SAAS,qBACd,IACA,OACS;AACT,MAAI,CAAC,OAAO,SAAS,KAAK,EAAG,QAAO;AACpC,QAAM,YAAY,GAAG,YAAY,KAAK;AACtC,MAAI,CAAC,aAAa,UAAU,WAAW,EAAG,QAAO;AACjD,QAAM,cAAc,KAAK,MAAM,SAAS;AAGxC,MAAI,CAAC,OAAO,SAAS,WAAW,EAAG,QAAO;AAE1C,SAAO,eAAe;AACxB;AAQO,SAAS,mBAAmB,KAAsB;AACvD,MAAI,OAAO,QAAQ,YAAY,IAAI,KAAK,EAAE,WAAW,GAAG;AACtD,UAAM,IAAI;AAAA,MACR,6DAA6D,OAAO,QAAQ,WAAW,IAAI,GAAG,MAAM,OAAO,GAAG;AAAA,IAChH;AAAA,EACF;AACA,QAAM,KAAK,KAAK,MAAM,GAAG;AACzB,MAAI,CAAC,OAAO,SAAS,EAAE,GAAG;AACxB,UAAM,IAAI;AAAA,MACR,uDAAuD,GAAG;AAAA,IAC5D;AAAA,EACF;AACA,SAAO;AACT;","names":[]}
|
|
@@ -1,3 +1,6 @@
|
|
|
1
|
+
import {
|
|
2
|
+
ReplitAdapter
|
|
3
|
+
} from "./chunk-TMSXWOBZ.js";
|
|
1
4
|
import {
|
|
2
5
|
ClaudeCodeAdapter
|
|
3
6
|
} from "./chunk-J64TK33U.js";
|
|
@@ -7,9 +10,6 @@ import {
|
|
|
7
10
|
import {
|
|
8
11
|
HermesAdapter
|
|
9
12
|
} from "./chunk-42NQ7AVG.js";
|
|
10
|
-
import {
|
|
11
|
-
ReplitAdapter
|
|
12
|
-
} from "./chunk-TMSXWOBZ.js";
|
|
13
13
|
|
|
14
14
|
// src/adapters/registry.ts
|
|
15
15
|
var AdapterRegistry = class {
|
|
@@ -53,4 +53,4 @@ var AdapterRegistry = class {
|
|
|
53
53
|
export {
|
|
54
54
|
AdapterRegistry
|
|
55
55
|
};
|
|
56
|
-
//# sourceMappingURL=chunk-
|
|
56
|
+
//# sourceMappingURL=chunk-JBPKEARU.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
listNamespaces
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-FM7KLRKN.js";
|
|
4
4
|
import {
|
|
5
5
|
runConsolidationProvenanceCheck
|
|
6
6
|
} from "./chunk-7XH7VJN4.js";
|
|
@@ -9,7 +9,7 @@ import {
|
|
|
9
9
|
} from "./chunk-YBPYIAA5.js";
|
|
10
10
|
import {
|
|
11
11
|
summarizeNamespaceMaintenanceHealth
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-HXNMDPHN.js";
|
|
13
13
|
import {
|
|
14
14
|
analyzeSessionIntegrity,
|
|
15
15
|
applySessionRepair,
|
|
@@ -35,17 +35,17 @@ import {
|
|
|
35
35
|
} from "./chunk-3PY7VHV7.js";
|
|
36
36
|
import {
|
|
37
37
|
parseConfig
|
|
38
|
-
} from "./chunk-
|
|
38
|
+
} from "./chunk-UTUYAPLY.js";
|
|
39
39
|
import {
|
|
40
40
|
listMemoryGovernanceRuns,
|
|
41
41
|
readMemoryGovernanceRunArtifact
|
|
42
|
-
} from "./chunk-
|
|
42
|
+
} from "./chunk-SAC5V6JT.js";
|
|
43
43
|
import {
|
|
44
44
|
analyzeGraphHealth
|
|
45
45
|
} from "./chunk-KF74X62T.js";
|
|
46
46
|
import {
|
|
47
47
|
StorageManager
|
|
48
|
-
} from "./chunk-
|
|
48
|
+
} from "./chunk-VFVG4NS2.js";
|
|
49
49
|
import {
|
|
50
50
|
lintWorkspaceFiles
|
|
51
51
|
} from "./chunk-DM2T26WE.js";
|
|
@@ -1347,4 +1347,4 @@ export {
|
|
|
1347
1347
|
runBenchmarkRecall,
|
|
1348
1348
|
runOperatorRepair
|
|
1349
1349
|
};
|
|
1350
|
-
//# sourceMappingURL=chunk-
|
|
1350
|
+
//# sourceMappingURL=chunk-KYH53EFD.js.map
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import {
|
|
2
|
-
scanMemoryDir
|
|
3
|
-
} from "./chunk-AER6MT24.js";
|
|
4
1
|
import {
|
|
5
2
|
isSearchAborted,
|
|
6
3
|
throwIfSearchAborted
|
|
7
4
|
} from "./chunk-CINZGPSJ.js";
|
|
5
|
+
import {
|
|
6
|
+
scanMemoryDir
|
|
7
|
+
} from "./chunk-AER6MT24.js";
|
|
8
8
|
import {
|
|
9
9
|
resolveEnsureCollectionArgs
|
|
10
10
|
} from "./chunk-YNQ6DFSV.js";
|
|
@@ -605,4 +605,4 @@ export {
|
|
|
605
605
|
resolveOramaCollectionDbFilePath,
|
|
606
606
|
OramaBackend
|
|
607
607
|
};
|
|
608
|
-
//# sourceMappingURL=chunk-
|
|
608
|
+
//# sourceMappingURL=chunk-LD53WPMU.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
StorageManager
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-VFVG4NS2.js";
|
|
4
4
|
|
|
5
5
|
// src/semantic-rule-promotion.ts
|
|
6
6
|
import { createHash, randomUUID } from "crypto";
|
|
@@ -529,4 +529,4 @@ export {
|
|
|
529
529
|
setSemanticRulePromotionTestHooks,
|
|
530
530
|
promoteSemanticRuleFromMemory
|
|
531
531
|
};
|
|
532
|
-
//# sourceMappingURL=chunk-
|
|
532
|
+
//# sourceMappingURL=chunk-MCV2DD6F.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
effectiveValidAt
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-IREVVFTM.js";
|
|
4
4
|
import {
|
|
5
5
|
log
|
|
6
6
|
} from "./chunk-NU3CSQ4H.js";
|
|
@@ -238,4 +238,4 @@ export {
|
|
|
238
238
|
applyTemporalSupersession,
|
|
239
239
|
shouldFilterSupersededFromRecall
|
|
240
240
|
};
|
|
241
|
-
//# sourceMappingURL=chunk-
|
|
241
|
+
//# sourceMappingURL=chunk-MRFVMSTR.js.map
|
|
@@ -31,7 +31,7 @@ import {
|
|
|
31
31
|
FallbackLlmClient,
|
|
32
32
|
fallbackLlmRuntimeContextFromConfig,
|
|
33
33
|
gatewayTaskChainOptions
|
|
34
|
-
} from "./chunk-
|
|
34
|
+
} from "./chunk-4RGWCRIJ.js";
|
|
35
35
|
import {
|
|
36
36
|
buildChatCompletionTokenLimit,
|
|
37
37
|
shouldAssumeOpenAiChatCompletions
|
|
@@ -2328,4 +2328,4 @@ ${memoryList}` }
|
|
|
2328
2328
|
export {
|
|
2329
2329
|
ExtractionEngine
|
|
2330
2330
|
};
|
|
2331
|
-
//# sourceMappingURL=chunk-
|
|
2331
|
+
//# sourceMappingURL=chunk-MXZWKOOR.js.map
|
|
@@ -3,10 +3,10 @@ import {
|
|
|
3
3
|
} from "./chunk-UDJLF3BO.js";
|
|
4
4
|
import {
|
|
5
5
|
defineOperation
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-2EN5WZQB.js";
|
|
7
7
|
import {
|
|
8
8
|
DECISION_SUBCOMMANDS
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-V56S3A23.js";
|
|
10
10
|
|
|
11
11
|
// src/access-operations.ts
|
|
12
12
|
import { z } from "zod";
|
|
@@ -150,4 +150,4 @@ export {
|
|
|
150
150
|
codingArchitectureOperation,
|
|
151
151
|
REGISTERED_OPERATIONS
|
|
152
152
|
};
|
|
153
|
-
//# sourceMappingURL=chunk-
|
|
153
|
+
//# sourceMappingURL=chunk-NEILAC3H.js.map
|
|
@@ -10,10 +10,14 @@ import {
|
|
|
10
10
|
import {
|
|
11
11
|
listMemoryGovernanceRuns,
|
|
12
12
|
readMemoryGovernanceRunArtifact
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-SAC5V6JT.js";
|
|
14
14
|
import {
|
|
15
15
|
StorageManager
|
|
16
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-VFVG4NS2.js";
|
|
17
|
+
import {
|
|
18
|
+
normalizeProjectionPreview,
|
|
19
|
+
normalizeProjectionTags
|
|
20
|
+
} from "./chunk-SCU65EZI.js";
|
|
17
21
|
import {
|
|
18
22
|
MEMORY_PROJECTION_SCHEMA_VERSION,
|
|
19
23
|
getMemoryProjectionPath,
|
|
@@ -35,10 +39,6 @@ import {
|
|
|
35
39
|
sortMemoryLifecycleEvents,
|
|
36
40
|
toMemoryPathRel
|
|
37
41
|
} from "./chunk-RULE4VG5.js";
|
|
38
|
-
import {
|
|
39
|
-
normalizeProjectionPreview,
|
|
40
|
-
normalizeProjectionTags
|
|
41
|
-
} from "./chunk-SCU65EZI.js";
|
|
42
42
|
|
|
43
43
|
// src/maintenance/rebuild-memory-projection.ts
|
|
44
44
|
import path from "path";
|
|
@@ -929,4 +929,4 @@ export {
|
|
|
929
929
|
verifyMemoryProjection,
|
|
930
930
|
repairMemoryProjection
|
|
931
931
|
};
|
|
932
|
-
//# sourceMappingURL=chunk-
|
|
932
|
+
//# sourceMappingURL=chunk-NUZ3N445.js.map
|
|
@@ -1,12 +1,15 @@
|
|
|
1
|
-
import {
|
|
2
|
-
openclawReplayNormalizer
|
|
3
|
-
} from "./chunk-7F7Z6MOS.js";
|
|
4
1
|
import {
|
|
5
2
|
chatgptReplayNormalizer
|
|
6
3
|
} from "./chunk-MC4FJXPA.js";
|
|
7
4
|
import {
|
|
8
5
|
claudeReplayNormalizer
|
|
9
6
|
} from "./chunk-LQHDIS7L.js";
|
|
7
|
+
import {
|
|
8
|
+
openclawReplayNormalizer
|
|
9
|
+
} from "./chunk-7F7Z6MOS.js";
|
|
10
|
+
import {
|
|
11
|
+
importSqlite
|
|
12
|
+
} from "./chunk-AGNBY3VG.js";
|
|
10
13
|
import {
|
|
11
14
|
exportJsonBundle
|
|
12
15
|
} from "./chunk-UP6MOYCB.js";
|
|
@@ -16,9 +19,6 @@ import {
|
|
|
16
19
|
import {
|
|
17
20
|
importMarkdownBundle
|
|
18
21
|
} from "./chunk-HDDRVXX4.js";
|
|
19
|
-
import {
|
|
20
|
-
importSqlite
|
|
21
|
-
} from "./chunk-AGNBY3VG.js";
|
|
22
22
|
import {
|
|
23
23
|
detectImportFormat
|
|
24
24
|
} from "./chunk-OZKVVUJB.js";
|
|
@@ -31,28 +31,28 @@ import {
|
|
|
31
31
|
import {
|
|
32
32
|
exportMarkdownBundle
|
|
33
33
|
} from "./chunk-765K3SAT.js";
|
|
34
|
+
import {
|
|
35
|
+
buildReplayNormalizerRegistry,
|
|
36
|
+
clampBatchSize,
|
|
37
|
+
runReplay
|
|
38
|
+
} from "./chunk-HOJZMQ4J.js";
|
|
34
39
|
import {
|
|
35
40
|
TailscaleHelper
|
|
36
41
|
} from "./chunk-EEC4PCG5.js";
|
|
37
42
|
import {
|
|
38
43
|
WebDavServer
|
|
39
44
|
} from "./chunk-PYIFUBRK.js";
|
|
40
|
-
import {
|
|
41
|
-
buildReplayNormalizerRegistry,
|
|
42
|
-
clampBatchSize,
|
|
43
|
-
runReplay
|
|
44
|
-
} from "./chunk-HOJZMQ4J.js";
|
|
45
45
|
import {
|
|
46
46
|
migrateObservations
|
|
47
47
|
} from "./chunk-D6RIFG4O.js";
|
|
48
48
|
import {
|
|
49
49
|
rebuildMemoryLifecycleLedger
|
|
50
|
-
} from "./chunk-
|
|
50
|
+
} from "./chunk-WIKNVFBS.js";
|
|
51
51
|
import {
|
|
52
52
|
rebuildMemoryProjection,
|
|
53
53
|
repairMemoryProjection,
|
|
54
54
|
verifyMemoryProjection
|
|
55
|
-
} from "./chunk-
|
|
55
|
+
} from "./chunk-NUZ3N445.js";
|
|
56
56
|
import {
|
|
57
57
|
rebuildObservations
|
|
58
58
|
} from "./chunk-LZZNTPLR.js";
|
|
@@ -74,18 +74,18 @@ import {
|
|
|
74
74
|
} from "./chunk-IQ7WCZRW.js";
|
|
75
75
|
import {
|
|
76
76
|
promoteSemanticRuleFromMemory
|
|
77
|
-
} from "./chunk-
|
|
77
|
+
} from "./chunk-MCV2DD6F.js";
|
|
78
|
+
import {
|
|
79
|
+
resolveAgentAccessAuthToken
|
|
80
|
+
} from "./chunk-TGQ2NTWH.js";
|
|
78
81
|
import {
|
|
79
82
|
buildResumeBundleFromState,
|
|
80
83
|
getResumeBundleStatus,
|
|
81
84
|
recordResumeBundle
|
|
82
|
-
} from "./chunk-
|
|
85
|
+
} from "./chunk-3BRA3N5A.js";
|
|
83
86
|
import {
|
|
84
87
|
parseXrayCliOptions
|
|
85
|
-
} from "./chunk-
|
|
86
|
-
import {
|
|
87
|
-
resolveAgentAccessAuthToken
|
|
88
|
-
} from "./chunk-TGQ2NTWH.js";
|
|
88
|
+
} from "./chunk-GCOSQBQ2.js";
|
|
89
89
|
import {
|
|
90
90
|
collectPatternMemories,
|
|
91
91
|
explainPatternMemory,
|
|
@@ -102,22 +102,22 @@ import {
|
|
|
102
102
|
runOperatorInventory,
|
|
103
103
|
runOperatorRepair,
|
|
104
104
|
runOperatorSetup
|
|
105
|
-
} from "./chunk-
|
|
105
|
+
} from "./chunk-KYH53EFD.js";
|
|
106
106
|
import {
|
|
107
107
|
listNamespaces,
|
|
108
108
|
runNamespaceMigration,
|
|
109
109
|
verifyNamespaces
|
|
110
|
-
} from "./chunk-
|
|
110
|
+
} from "./chunk-FM7KLRKN.js";
|
|
111
111
|
import {
|
|
112
112
|
GraphDashboardServer
|
|
113
113
|
} from "./chunk-YNDLCWXS.js";
|
|
114
|
-
import {
|
|
115
|
-
RoutingRulesStore
|
|
116
|
-
} from "./chunk-WIWPSQYU.js";
|
|
117
114
|
import {
|
|
118
115
|
isReplaySource,
|
|
119
116
|
normalizeReplaySessionKey
|
|
120
117
|
} from "./chunk-2PRQG7PV.js";
|
|
118
|
+
import {
|
|
119
|
+
RoutingRulesStore
|
|
120
|
+
} from "./chunk-WIWPSQYU.js";
|
|
121
121
|
import {
|
|
122
122
|
getUtilityLearningStatus,
|
|
123
123
|
learnUtilityPromotionWeights
|
|
@@ -128,13 +128,13 @@ import {
|
|
|
128
128
|
} from "./chunk-TERNBNJB.js";
|
|
129
129
|
import {
|
|
130
130
|
searchVerifiedEpisodes
|
|
131
|
-
} from "./chunk-
|
|
131
|
+
} from "./chunk-3VVH6ZQW.js";
|
|
132
132
|
import {
|
|
133
133
|
ThreadingManager
|
|
134
134
|
} from "./chunk-QRDOSYOR.js";
|
|
135
135
|
import {
|
|
136
136
|
searchVerifiedSemanticRules
|
|
137
|
-
} from "./chunk-
|
|
137
|
+
} from "./chunk-ZLXGFAML.js";
|
|
138
138
|
import {
|
|
139
139
|
getWorkProductLedgerStatus,
|
|
140
140
|
recordWorkProductLedgerEntry,
|
|
@@ -149,7 +149,7 @@ import {
|
|
|
149
149
|
} from "./chunk-33JBK2XP.js";
|
|
150
150
|
import {
|
|
151
151
|
formatNamespaceMaintenanceHealthText
|
|
152
|
-
} from "./chunk-
|
|
152
|
+
} from "./chunk-HXNMDPHN.js";
|
|
153
153
|
import {
|
|
154
154
|
analyzeSessionIntegrity,
|
|
155
155
|
applySessionRepair,
|
|
@@ -213,22 +213,22 @@ import {
|
|
|
213
213
|
} from "./chunk-UQ7RN5HK.js";
|
|
214
214
|
import {
|
|
215
215
|
parseConfig
|
|
216
|
-
} from "./chunk-
|
|
216
|
+
} from "./chunk-UTUYAPLY.js";
|
|
217
217
|
import {
|
|
218
218
|
getAbstractionNodeStoreStatus
|
|
219
219
|
} from "./chunk-OADWQ5CR.js";
|
|
220
220
|
import {
|
|
221
221
|
EngramAccessHttpServer
|
|
222
|
-
} from "./chunk-
|
|
222
|
+
} from "./chunk-SEK4XIDN.js";
|
|
223
223
|
import {
|
|
224
224
|
WearablesInputError
|
|
225
225
|
} from "./chunk-7WV3F5DQ.js";
|
|
226
226
|
import {
|
|
227
227
|
EngramMcpServer
|
|
228
|
-
} from "./chunk-
|
|
228
|
+
} from "./chunk-DO7MDZMU.js";
|
|
229
229
|
import {
|
|
230
230
|
EngramAccessService
|
|
231
|
-
} from "./chunk-
|
|
231
|
+
} from "./chunk-V56S3A23.js";
|
|
232
232
|
import {
|
|
233
233
|
WorkStorage
|
|
234
234
|
} from "./chunk-GDB4J2H3.js";
|
|
@@ -236,7 +236,7 @@ import {
|
|
|
236
236
|
parseRecallExplainFormat,
|
|
237
237
|
renderRecallExplain,
|
|
238
238
|
renderXray
|
|
239
|
-
} from "./chunk-
|
|
239
|
+
} from "./chunk-2D27ODNX.js";
|
|
240
240
|
import {
|
|
241
241
|
getTrustZoneStoreStatus,
|
|
242
242
|
promoteTrustZoneRecord,
|
|
@@ -250,7 +250,7 @@ import {
|
|
|
250
250
|
readMemoryGovernanceRunArtifact,
|
|
251
251
|
restoreMemoryGovernanceRun,
|
|
252
252
|
runMemoryGovernance
|
|
253
|
-
} from "./chunk-
|
|
253
|
+
} from "./chunk-SAC5V6JT.js";
|
|
254
254
|
import {
|
|
255
255
|
analyzeGraphHealth
|
|
256
256
|
} from "./chunk-KF74X62T.js";
|
|
@@ -263,7 +263,7 @@ import {
|
|
|
263
263
|
import {
|
|
264
264
|
RECALL_DISCLOSURE_LEVELS,
|
|
265
265
|
isRecallDisclosure
|
|
266
|
-
} from "./chunk-
|
|
266
|
+
} from "./chunk-DQHZA7Y3.js";
|
|
267
267
|
import {
|
|
268
268
|
RECALL_FALLBACK_DIRS
|
|
269
269
|
} from "./chunk-VS2IYZRU.js";
|
|
@@ -7326,4 +7326,4 @@ export {
|
|
|
7326
7326
|
listMemoryMarkdownFilePaths,
|
|
7327
7327
|
registerCli
|
|
7328
7328
|
};
|
|
7329
|
-
//# sourceMappingURL=chunk-
|
|
7329
|
+
//# sourceMappingURL=chunk-O4ZIV62T.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
runPostConsolidationMaterialize
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-ADUAF5EV.js";
|
|
4
4
|
import {
|
|
5
5
|
discoverMemoryExtensions,
|
|
6
6
|
renderExtensionsBlock,
|
|
@@ -217,4 +217,4 @@ export {
|
|
|
217
217
|
buildExtensionsBlockForConsolidation,
|
|
218
218
|
materializeAfterSemanticConsolidation
|
|
219
219
|
};
|
|
220
|
-
//# sourceMappingURL=chunk-
|
|
220
|
+
//# sourceMappingURL=chunk-QFG23CRE.js.map
|
|
@@ -16,7 +16,7 @@ import {
|
|
|
16
16
|
FallbackLlmClient,
|
|
17
17
|
fallbackLlmRuntimeContextFromConfig,
|
|
18
18
|
gatewayTaskChainOptions
|
|
19
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-4RGWCRIJ.js";
|
|
20
20
|
import {
|
|
21
21
|
encodeStoragePathSegment,
|
|
22
22
|
resolveSafeStoragePath
|
|
@@ -686,4 +686,4 @@ ${truncatedConversation}`;
|
|
|
686
686
|
export {
|
|
687
687
|
HourlySummarizer
|
|
688
688
|
};
|
|
689
|
-
//# sourceMappingURL=chunk-
|
|
689
|
+
//# sourceMappingURL=chunk-QVG4LAQO.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
StorageManager
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-VFVG4NS2.js";
|
|
4
4
|
import {
|
|
5
5
|
assertPathInsideRoot
|
|
6
6
|
} from "./chunk-5GPPACXK.js";
|
|
@@ -751,4 +751,4 @@ export {
|
|
|
751
751
|
listMemoryGovernanceRuns,
|
|
752
752
|
readMemoryGovernanceRunArtifact
|
|
753
753
|
};
|
|
754
|
-
//# sourceMappingURL=chunk-
|
|
754
|
+
//# sourceMappingURL=chunk-SAC5V6JT.js.map
|
|
@@ -1,21 +1,21 @@
|
|
|
1
1
|
import {
|
|
2
2
|
AdapterRegistry
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-JBPKEARU.js";
|
|
4
4
|
import {
|
|
5
5
|
WearablesInputError
|
|
6
6
|
} from "./chunk-7WV3F5DQ.js";
|
|
7
7
|
import {
|
|
8
8
|
EngramMcpServer
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-DO7MDZMU.js";
|
|
10
10
|
import {
|
|
11
11
|
validateRequest
|
|
12
12
|
} from "./chunk-UDJLF3BO.js";
|
|
13
13
|
import {
|
|
14
14
|
getOperation
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-2EN5WZQB.js";
|
|
16
16
|
import {
|
|
17
17
|
EngramAccessInputError
|
|
18
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-V56S3A23.js";
|
|
19
19
|
import {
|
|
20
20
|
projectTagProjectId
|
|
21
21
|
} from "./chunk-7MOTEVAA.js";
|
|
@@ -27,7 +27,7 @@ import {
|
|
|
27
27
|
} from "./chunk-DEUNUKTD.js";
|
|
28
28
|
import {
|
|
29
29
|
isRecallDisclosure
|
|
30
|
-
} from "./chunk-
|
|
30
|
+
} from "./chunk-DQHZA7Y3.js";
|
|
31
31
|
import {
|
|
32
32
|
OFFLINE_SYNC_APPLY_MAX_BODY_BYTES,
|
|
33
33
|
OFFLINE_SYNC_FILE_CONTENT_MAX_CHUNK_BYTES,
|
|
@@ -2079,4 +2079,4 @@ function positiveIntQueryParam(value, label) {
|
|
|
2079
2079
|
export {
|
|
2080
2080
|
EngramAccessHttpServer
|
|
2081
2081
|
};
|
|
2082
|
-
//# sourceMappingURL=chunk-
|
|
2082
|
+
//# sourceMappingURL=chunk-SEK4XIDN.js.map
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import {
|
|
2
|
-
scanMemoryDir
|
|
3
|
-
} from "./chunk-AER6MT24.js";
|
|
4
1
|
import {
|
|
5
2
|
isSearchAborted,
|
|
6
3
|
throwIfSearchAborted
|
|
7
4
|
} from "./chunk-CINZGPSJ.js";
|
|
5
|
+
import {
|
|
6
|
+
scanMemoryDir
|
|
7
|
+
} from "./chunk-AER6MT24.js";
|
|
8
8
|
import {
|
|
9
9
|
resolveEnsureCollectionArgs
|
|
10
10
|
} from "./chunk-YNQ6DFSV.js";
|
|
@@ -491,4 +491,4 @@ function isMissingVectorProviderColumnError(err) {
|
|
|
491
491
|
export {
|
|
492
492
|
LanceDbBackend
|
|
493
493
|
};
|
|
494
|
-
//# sourceMappingURL=chunk-
|
|
494
|
+
//# sourceMappingURL=chunk-TAPSNIMA.js.map
|
|
@@ -4,7 +4,7 @@ import {
|
|
|
4
4
|
import {
|
|
5
5
|
compareEntityTimestamps,
|
|
6
6
|
normalizeEntityName
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-VFVG4NS2.js";
|
|
8
8
|
import {
|
|
9
9
|
sanitizeMemoryContent
|
|
10
10
|
} from "./chunk-FVQJYWH7.js";
|
|
@@ -679,4 +679,4 @@ export {
|
|
|
679
679
|
entityIndexVersion,
|
|
680
680
|
entityRecentTranscriptLookbackHours
|
|
681
681
|
};
|
|
682
|
-
//# sourceMappingURL=chunk-
|
|
682
|
+
//# sourceMappingURL=chunk-U2OBZSGG.js.map
|
|
@@ -4,7 +4,7 @@ import {
|
|
|
4
4
|
} from "./chunk-UFS7OXGL.js";
|
|
5
5
|
import {
|
|
6
6
|
StorageManager
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-VFVG4NS2.js";
|
|
8
8
|
import {
|
|
9
9
|
parseContinuityImprovementLoops
|
|
10
10
|
} from "./chunk-LDXUBPMO.js";
|
|
@@ -1261,4 +1261,4 @@ export {
|
|
|
1261
1261
|
defaultTierMigrationCycleBudget,
|
|
1262
1262
|
CompoundingEngine
|
|
1263
1263
|
};
|
|
1264
|
-
//# sourceMappingURL=chunk-
|
|
1264
|
+
//# sourceMappingURL=chunk-UOCLRM74.js.map
|
|
@@ -1685,6 +1685,19 @@ function parseConfig(raw, rawOperatorConfig, runtimeSet) {
|
|
|
1685
1685
|
// On by default
|
|
1686
1686
|
temporalSupersessionIncludeInRecall: cfg.temporalSupersessionIncludeInRecall === true,
|
|
1687
1687
|
// Off by default
|
|
1688
|
+
// Bi-temporal validity (issue #1578). Default `false` so recall behaves
|
|
1689
|
+
// byte-identically to pre-#1578 until an operator opts in. Uses coerceBool
|
|
1690
|
+
// (same as recallDirectAnswerEnabled below) so CLI string "true" works.
|
|
1691
|
+
//
|
|
1692
|
+
// CURRENT scope (this PR): the recall injection filter (expired-validity
|
|
1693
|
+
// facts leave default injection but stay findable by explicit search and
|
|
1694
|
+
// as_of queries) + the observedAt/eventTimeSource storage fields. The
|
|
1695
|
+
// extraction prompt → resolveEventTime write-time wiring lands in a
|
|
1696
|
+
// follow-on PR; until then, enabling the gate exercises the filter and
|
|
1697
|
+
// storage round-trip but new extractions are not yet event-time-resolved
|
|
1698
|
+
// (docs kept honest — review: wire resolver before exposing the gate).
|
|
1699
|
+
temporalBiTemporal: coerceBool(cfg.temporalBiTemporal) ?? false,
|
|
1700
|
+
temporalExpiredInInjection: coerceBool(cfg.temporalExpiredInInjection) ?? false,
|
|
1688
1701
|
// Direct-answer retrieval tier (issue #518). Default off so the
|
|
1689
1702
|
// recall path keeps least-privileged behavior unless operators
|
|
1690
1703
|
// explicitly opt in.
|
|
@@ -3214,4 +3227,4 @@ export {
|
|
|
3214
3227
|
VALID_MEMORY_CATEGORIES,
|
|
3215
3228
|
parseConfig
|
|
3216
3229
|
};
|
|
3217
|
-
//# sourceMappingURL=chunk-
|
|
3230
|
+
//# sourceMappingURL=chunk-UTUYAPLY.js.map
|