@remnic/core 9.22.0 → 9.22.1
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 -12
- package/dist/access-admin-ops-surface.js +25 -24
- package/dist/access-audit.js +2 -2
- package/dist/access-boundary.d.ts +13 -10
- package/dist/access-boundary.js +25 -24
- package/dist/access-cli.js +84 -82
- package/dist/access-cli.js.map +1 -1
- package/dist/access-http.d.ts +16 -9
- package/dist/access-http.js +33 -32
- package/dist/access-identity-continuity-surface.d.ts +9 -7
- package/dist/access-identity-continuity-surface.js +25 -24
- package/dist/access-lcm-surface.d.ts +12 -9
- package/dist/access-lcm-surface.js +25 -24
- package/dist/access-mcp-output-schemas.js +1 -1
- package/dist/access-mcp.d.ts +22 -10
- package/dist/access-mcp.js +31 -30
- package/dist/access-memory-search-fanout.d.ts +2 -2
- package/dist/{access-namespace-preflight-tmwQgCT6.d.ts → access-namespace-preflight-CmErR03h.d.ts} +1 -1
- package/dist/access-namespace-preflight.d.ts +3 -3
- package/dist/access-namespace-preflight.js +25 -24
- package/dist/access-observe-write-surface.d.ts +12 -9
- package/dist/access-observe-write-surface.js +25 -24
- package/dist/access-operations-batch.js +27 -26
- package/dist/access-operations.d.ts +13 -10
- package/dist/access-operations.js +28 -27
- package/dist/access-recall-concurrency.d.ts +12 -9
- package/dist/access-recall-concurrency.js +25 -24
- package/dist/access-recall-response.d.ts +12 -9
- package/dist/access-recall-response.js +25 -24
- package/dist/access-recall-surface.d.ts +14 -11
- package/dist/access-recall-surface.js +25 -24
- package/dist/{access-service-BtxW52vv.d.ts → access-service-CKEROeFP.d.ts} +22 -11
- package/dist/access-service.d.ts +13 -10
- package/dist/access-service.js +25 -24
- package/dist/access-surface-catalog.d.ts +12 -9
- package/dist/access-surface-catalog.js +6 -0
- package/dist/access-surface-catalog.js.map +1 -1
- package/dist/access-wearables-meetings-surface.d.ts +78 -0
- package/dist/access-wearables-meetings-surface.js +22 -0
- package/dist/access-wearables-meetings-surface.js.map +1 -0
- 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 +2 -2
- package/dist/{auto-sync-UPTUVE4X.js → auto-sync-5OE5QOZB.js} +3 -3
- package/dist/behavior-learner.d.ts +1 -1
- package/dist/behavior-signals.d.ts +1 -1
- package/dist/bootstrap.d.ts +9 -7
- package/dist/briefing.d.ts +2 -2
- package/dist/briefing.js +5 -5
- package/dist/buffer-surprise-report.d.ts +1 -1
- package/dist/buffer.d.ts +2 -2
- package/dist/bulk-import/index.d.ts +3 -3
- package/dist/calibration.d.ts +1 -1
- package/dist/capabilities.d.ts +1 -1
- package/dist/{catalog-iWvWz61I.d.ts → catalog-BFTVo2Ez.d.ts} +1 -1
- package/dist/causal-behavior.d.ts +1 -1
- package/dist/causal-behavior.js +2 -2
- package/dist/causal-chain.js +2 -2
- package/dist/causal-consolidation.d.ts +1 -1
- package/dist/causal-consolidation.js +9 -9
- package/dist/causal-retrieval.js +2 -2
- package/dist/causal-trajectory-graph.d.ts +1 -1
- package/dist/causal-trajectory.js +1 -1
- package/dist/{chunk-GF22HWS2.js → chunk-2PHX3I5C.js} +7 -7
- package/dist/{chunk-JFDEYXF7.js → chunk-3NAHZQU3.js} +2 -2
- package/dist/{chunk-XBRPEGXF.js → chunk-3UOSVTFR.js} +5 -5
- package/dist/{chunk-TTKWTT72.js → chunk-3ZW6ZQO6.js} +3 -3
- package/dist/{chunk-UV72DEZD.js → chunk-4B77XSG5.js} +5 -5
- package/dist/{chunk-IC2TCZJ2.js → chunk-57QKLRBV.js} +3 -1
- package/dist/chunk-57QKLRBV.js.map +1 -0
- package/dist/{chunk-LMHDFOVV.js → chunk-5CPI2QWG.js} +3 -3
- package/dist/{chunk-P72WZMWQ.js → chunk-5FZQ74K5.js} +2 -2
- package/dist/{chunk-BRT7KEXU.js → chunk-6TWXQ4E2.js} +5 -5
- package/dist/{chunk-CV6ZYXK3.js → chunk-7I7AYIUQ.js} +3 -3
- package/dist/{chunk-TVVEYCNW.js → chunk-7K5Q6COX.js} +4 -4
- package/dist/{chunk-MONWCSVL.js → chunk-7RAJ3GXO.js} +2 -1
- package/dist/chunk-7RAJ3GXO.js.map +1 -0
- package/dist/{chunk-SQEDDWAM.js → chunk-A2RFKL3V.js} +5 -34
- package/dist/chunk-A2RFKL3V.js.map +1 -0
- package/dist/{chunk-JN57HZCD.js → chunk-ATEAL5EI.js} +6 -6
- package/dist/{chunk-4PYLBXX6.js → chunk-AYAROCWD.js} +2 -2
- package/dist/chunk-BLDBT6HZ.js +39 -0
- package/dist/chunk-BLDBT6HZ.js.map +1 -0
- package/dist/{chunk-NB2P47N7.js → chunk-CUUY5CC4.js} +6 -6
- package/dist/{chunk-KL5Y6PEV.js → chunk-E3ZMFFQZ.js} +2 -2
- package/dist/{chunk-55FDQYPS.js → chunk-ES5IHQ6M.js} +2 -2
- package/dist/{chunk-N47ZWQBO.js → chunk-G2NSSQES.js} +2 -2
- package/dist/{chunk-GSWPU5CR.js → chunk-GD3QOBMB.js} +2 -2
- package/dist/{chunk-6ANPNUVL.js → chunk-IIXLB5E7.js} +58 -36
- package/dist/chunk-IIXLB5E7.js.map +1 -0
- package/dist/{chunk-SACPRJ7F.js → chunk-JNIJBXVK.js} +2 -2
- package/dist/{chunk-W3XT32W7.js → chunk-JVGUY2AU.js} +23 -13
- package/dist/chunk-JVGUY2AU.js.map +1 -0
- package/dist/{chunk-DGLON3AL.js → chunk-KNRG6ZGJ.js} +6 -6
- package/dist/{chunk-GEUDRENF.js → chunk-MMTG3SCJ.js} +2 -2
- package/dist/{chunk-WZFAPHIK.js → chunk-MU7ZHSZE.js} +2 -2
- package/dist/{chunk-W4FBGYGK.js → chunk-NRV4Y3PM.js} +1 -1
- package/dist/{chunk-QTO2FGBT.js → chunk-OUW4PAY4.js} +191 -117
- package/dist/chunk-OUW4PAY4.js.map +1 -0
- package/dist/{chunk-KQ2XCQYN.js → chunk-P2BLHUL2.js} +2 -2
- package/dist/{chunk-ACGGTPU4.js → chunk-QCKQEBIY.js} +17 -9
- package/dist/chunk-QCKQEBIY.js.map +1 -0
- package/dist/{chunk-6L775BUB.js → chunk-QE63OHLB.js} +2 -2
- package/dist/{chunk-ONHRRJZM.js → chunk-QJAQNXWI.js} +6 -6
- package/dist/{chunk-EQYBHXRR.js → chunk-ROUL7RZU.js} +385 -59
- package/dist/chunk-ROUL7RZU.js.map +1 -0
- package/dist/{chunk-N6M7MRVN.js → chunk-RT4TSR2C.js} +9034 -8726
- package/dist/chunk-RT4TSR2C.js.map +1 -0
- package/dist/{chunk-6NZ7U4R4.js → chunk-SCOT5DTA.js} +1 -1
- package/dist/chunk-SCOT5DTA.js.map +1 -0
- package/dist/{chunk-6RYWNBSA.js → chunk-SVZGA2MK.js} +2 -2
- package/dist/chunk-SYOIVK7K.js +63 -0
- package/dist/chunk-SYOIVK7K.js.map +1 -0
- package/dist/{chunk-DM5A4ZFL.js → chunk-TWCOYET2.js} +11 -1
- package/dist/chunk-TWCOYET2.js.map +1 -0
- package/dist/{chunk-7S5OMI76.js → chunk-WS32QRLO.js} +109 -44
- package/dist/chunk-WS32QRLO.js.map +1 -0
- package/dist/{chunk-OCMLGND7.js → chunk-WWZ35GWW.js} +5 -5
- package/dist/{chunk-QMGIQUBG.js → chunk-XWPFZX6S.js} +503 -139
- package/dist/chunk-XWPFZX6S.js.map +1 -0
- package/dist/{chunk-A5N6ISRK.js → chunk-ZN4UZWMT.js} +2 -2
- package/dist/{chunk-7M6APKJL.js → chunk-ZYU7ZFLT.js} +2 -2
- package/dist/{cli-D9vXgWwM.d.ts → cli-BrwT9YMD.d.ts} +5 -5
- package/dist/cli.d.ts +14 -11
- package/dist/cli.js +57 -56
- package/dist/compounding/engine.d.ts +2 -2
- 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 +2 -2
- 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 +2 -2
- package/dist/consolidation-undo.d.ts +2 -2
- package/dist/contradiction/index.d.ts +2 -2
- package/dist/conversation-index/backend.d.ts +1 -1
- 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 +2 -2
- package/dist/entity-retrieval.js +5 -5
- package/dist/entity-schema.d.ts +1 -1
- package/dist/explicit-capture.d.ts +9 -7
- package/dist/extraction-error-classification.d.ts +22 -0
- package/dist/extraction-error-classification.js +11 -0
- package/dist/extraction-error-classification.js.map +1 -0
- package/dist/extraction-faithfulness.d.ts +1 -1
- 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.d.ts +3 -17
- package/dist/extraction.js +5 -3
- package/dist/fallback-llm.d.ts +1 -1
- package/dist/{first-start-migration-LEXL3XYL.js → first-start-migration-BKNGOFED.js} +4 -4
- package/dist/graph-dashboard-diff.d.ts +1 -1
- package/dist/graph-dashboard-key.d.ts +1 -1
- package/dist/graph-dashboard-parser.d.ts +1 -1
- package/dist/graph-edge-reinforcement.d.ts +1 -1
- package/dist/graph-snapshot.d.ts +1 -1
- package/dist/graph.d.ts +1 -1
- package/dist/importance.d.ts +1 -1
- package/dist/importers/index.d.ts +1 -1
- package/dist/in-flight-reads.d.ts +1 -1
- package/dist/index.d.ts +309 -519
- package/dist/index.js +176 -140
- package/dist/intent.d.ts +1 -1
- package/dist/lcm/engine.d.ts +1 -1
- package/dist/lcm/engine.js +3 -3
- package/dist/lcm/index.d.ts +1 -1
- package/dist/lcm/index.js +11 -11
- 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/local-model-endpoint.d.ts +1 -1
- package/dist/maintenance/memory-governance.d.ts +1 -1
- package/dist/maintenance/memory-governance.js +6 -6
- package/dist/maintenance/rebuild-memory-lifecycle-ledger.d.ts +2 -2
- package/dist/maintenance/rebuild-memory-lifecycle-ledger.js +5 -5
- package/dist/maintenance/rebuild-memory-projection.d.ts +2 -2
- package/dist/maintenance/rebuild-memory-projection.js +7 -7
- package/dist/maintenance-C98njYb8.d.ts +366 -0
- package/dist/mcp-memory-inspector-app.d.ts +12 -9
- package/dist/mcp-read-only-tools.js +1 -1
- 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 +2 -2
- package/dist/models-json.d.ts +1 -1
- package/dist/namespaces/migrate.d.ts +3 -3
- package/dist/namespaces/migrate.js +12 -12
- package/dist/namespaces/principal.d.ts +1 -1
- package/dist/namespaces/search.d.ts +1 -1
- package/dist/namespaces/search.js +6 -6
- package/dist/namespaces/storage.d.ts +3 -3
- package/dist/namespaces/storage.js +5 -5
- package/dist/native-knowledge.d.ts +1 -1
- package/dist/offline-sync-impression-drain.d.ts +1 -1
- package/dist/operator-toolkit.d.ts +2 -2
- package/dist/operator-toolkit.js +18 -18
- package/dist/orchestration/compression-guideline-coordinator.d.ts +2 -2
- package/dist/orchestration/maintenance.d.ts +6 -223
- package/dist/orchestration/maintenance.js +12 -12
- package/dist/{orchestrator-DB93S48I.d.ts → orchestrator-C9ZVppNh.d.ts} +12 -481
- package/dist/orchestrator.d.ts +10 -8
- package/dist/orchestrator.js +84 -82
- package/dist/patterns-cli.d.ts +1 -1
- package/dist/{pipeline-DmGc-H66.d.ts → pipeline-id_-sqYm.d.ts} +1 -1
- package/dist/policy-runtime.d.ts +1 -1
- package/dist/proactive-contention.d.ts +1 -1
- package/dist/provenance.d.ts +1 -1
- package/dist/{qmd-cJT0crkF.d.ts → qmd-R6XaQOZK.d.ts} +1 -1
- package/dist/qmd-preflight.d.ts +2 -2
- package/dist/qmd-recall-cache.d.ts +1 -1
- package/dist/qmd.d.ts +2 -2
- package/dist/qmd.js +4 -4
- package/dist/recall-concurrency-config.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-memory-map.d.ts +1 -1
- package/dist/recall-planner-llm.d.ts +1 -1
- package/dist/recall-state.d.ts +1 -1
- package/dist/recall-tag-filter.d.ts +1 -1
- package/dist/recall-timings.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/replay/normalizers/chatgpt.d.ts +1 -1
- package/dist/replay/normalizers/claude.d.ts +1 -1
- package/dist/replay/normalizers/openclaw.d.ts +1 -1
- package/dist/replay/normalizers/shared.d.ts +1 -1
- package/dist/replay/runner.d.ts +1 -1
- package/dist/replay/types.d.ts +1 -1
- package/dist/resolve-auth-token.d.ts +1 -1
- package/dist/resume-bundles.js +4 -4
- package/dist/retrieval-agents.d.ts +2 -2
- 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/salvage-envelope.d.ts +1 -1
- package/dist/{scope-profiles-KG2nODX7.d.ts → scope-profiles-EhyuAKkd.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 +5 -5
- package/dist/search/index.d.ts +1 -1
- package/dist/search/index.js +9 -9
- package/dist/search/lancedb-backend.d.ts +1 -1
- package/dist/search/meilisearch-backend.d.ts +1 -1
- package/dist/search/noop-backend.d.ts +1 -1
- package/dist/search/orama-backend.d.ts +1 -1
- package/dist/search/port.d.ts +1 -1
- package/dist/search/remote-backend.d.ts +1 -1
- package/dist/{semantic-consolidation-BaZlg0D8.d.ts → semantic-consolidation-B2xo26UQ.d.ts} +1 -1
- package/dist/semantic-consolidation.d.ts +2 -2
- package/dist/semantic-consolidation.js +7 -7
- package/dist/semantic-rule-promotion.js +5 -5
- package/dist/semantic-rule-verifier.d.ts +1 -1
- package/dist/semantic-rule-verifier.js +6 -6
- package/dist/service-DgFWlZ-r.d.ts +835 -0
- 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-BKhHHnRo.d.ts → storage-XGawwqXE.d.ts} +131 -2
- package/dist/storage.d.ts +2 -2
- package/dist/storage.js +4 -4
- package/dist/summarizer.d.ts +1 -1
- package/dist/summary-snapshot.d.ts +1 -1
- package/dist/temporal-supersession.d.ts +2 -2
- package/dist/temporal-timeline-recall.d.ts +1 -1
- package/dist/temporal-validity.d.ts +1 -1
- package/dist/threading.d.ts +1 -1
- package/dist/tier-migration.d.ts +2 -2
- package/dist/tier-routing.d.ts +1 -1
- package/dist/topics.d.ts +1 -1
- package/dist/transcript.d.ts +1 -1
- package/dist/trust-score-stage.d.ts +1 -1
- package/dist/trust-score.d.ts +1 -1
- package/dist/{types-GBQZuT7l.d.ts → types-Bbs0qz6b.d.ts} +2 -3
- 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 +6 -6
- package/dist/write-envelope.d.ts +1 -1
- package/package.json +2 -2
- package/src/access-boundary.ts +3 -0
- package/src/access-http.test.ts +63 -0
- package/src/access-http.ts +26 -37
- package/src/access-mcp-output-schemas.ts +10 -0
- package/src/access-mcp.ts +4 -121
- package/src/access-operations-batch.ts +10 -5
- package/src/access-service.ts +43 -46
- package/src/access-surface-catalog.ts +6 -0
- package/src/access-wearables-meetings-surface.ts +139 -0
- package/src/activity/digest.ts +1 -1
- package/src/activity/runner.test.ts +37 -0
- package/src/activity/runner.ts +12 -0
- package/src/activity/scheduler.test.ts +1 -0
- package/src/activity/sync-registration.ts +13 -0
- package/src/cli/meetings-commands.ts +70 -0
- package/src/cli.ts +7 -6
- package/src/extraction-error-classification.ts +52 -0
- package/src/extraction.ts +2 -50
- package/src/mcp-read-only-tools.ts +2 -0
- package/src/meetings/build-memory.test.ts +364 -0
- package/src/meetings/build-scheduler.test.ts +55 -0
- package/src/meetings/build-scheduler.ts +96 -0
- package/src/meetings/day-source.test.ts +275 -0
- package/src/meetings/day-source.ts +352 -0
- package/src/meetings/http-glue.ts +126 -0
- package/src/meetings/index.ts +5 -4
- package/src/meetings/manual-sync-flush.test.ts +72 -0
- package/src/meetings/mcp-tools.ts +65 -0
- package/src/meetings/memory-gen.test.ts +498 -0
- package/src/meetings/memory-gen.ts +549 -0
- package/src/meetings/memory-generator.ts +5 -0
- package/src/meetings/namespace-isolation.test.ts +159 -0
- package/src/meetings/service.test.ts +195 -0
- package/src/meetings/service.ts +157 -0
- package/src/meetings/summary-extractor.test.ts +287 -0
- package/src/meetings/summary-extractor.ts +264 -0
- package/src/orchestration/maintenance.ts +8 -0
- package/src/orchestration/orchestrator-init.ts +6 -1
- package/src/orchestration/workspace-ops.ts +172 -8
- package/src/orchestrator.ts +12 -13
- package/src/storage.ts +21 -0
- package/src/testing/subjects/meetings-namespace-harness.ts +159 -0
- package/src/testing/subjects/meetings-namespace.test.ts +93 -0
- package/src/types.ts +1 -2
- package/src/wearables/cli.ts +2 -1
- package/src/wearables/index.ts +1 -0
- package/src/wearables/mcp-tools.ts +143 -0
- package/src/wearables/registry.test.ts +11 -0
- package/src/wearables/registry.ts +13 -0
- package/src/wearables/service.test.ts +62 -1
- package/src/wearables/service.ts +30 -2
- package/src/wearables/transcript-search-namespace-isolation.test.ts +98 -0
- package/dist/chunk-6ANPNUVL.js.map +0 -1
- package/dist/chunk-6NZ7U4R4.js.map +0 -1
- package/dist/chunk-7S5OMI76.js.map +0 -1
- package/dist/chunk-ACGGTPU4.js.map +0 -1
- package/dist/chunk-DM5A4ZFL.js.map +0 -1
- package/dist/chunk-EQYBHXRR.js.map +0 -1
- package/dist/chunk-IC2TCZJ2.js.map +0 -1
- package/dist/chunk-MONWCSVL.js.map +0 -1
- package/dist/chunk-N6M7MRVN.js.map +0 -1
- package/dist/chunk-QMGIQUBG.js.map +0 -1
- package/dist/chunk-QTO2FGBT.js.map +0 -1
- package/dist/chunk-SQEDDWAM.js.map +0 -1
- package/dist/chunk-W3XT32W7.js.map +0 -1
- /package/dist/{auto-sync-UPTUVE4X.js.map → auto-sync-5OE5QOZB.js.map} +0 -0
- /package/dist/{chunk-GF22HWS2.js.map → chunk-2PHX3I5C.js.map} +0 -0
- /package/dist/{chunk-JFDEYXF7.js.map → chunk-3NAHZQU3.js.map} +0 -0
- /package/dist/{chunk-XBRPEGXF.js.map → chunk-3UOSVTFR.js.map} +0 -0
- /package/dist/{chunk-TTKWTT72.js.map → chunk-3ZW6ZQO6.js.map} +0 -0
- /package/dist/{chunk-UV72DEZD.js.map → chunk-4B77XSG5.js.map} +0 -0
- /package/dist/{chunk-LMHDFOVV.js.map → chunk-5CPI2QWG.js.map} +0 -0
- /package/dist/{chunk-P72WZMWQ.js.map → chunk-5FZQ74K5.js.map} +0 -0
- /package/dist/{chunk-BRT7KEXU.js.map → chunk-6TWXQ4E2.js.map} +0 -0
- /package/dist/{chunk-CV6ZYXK3.js.map → chunk-7I7AYIUQ.js.map} +0 -0
- /package/dist/{chunk-TVVEYCNW.js.map → chunk-7K5Q6COX.js.map} +0 -0
- /package/dist/{chunk-JN57HZCD.js.map → chunk-ATEAL5EI.js.map} +0 -0
- /package/dist/{chunk-4PYLBXX6.js.map → chunk-AYAROCWD.js.map} +0 -0
- /package/dist/{chunk-NB2P47N7.js.map → chunk-CUUY5CC4.js.map} +0 -0
- /package/dist/{chunk-KL5Y6PEV.js.map → chunk-E3ZMFFQZ.js.map} +0 -0
- /package/dist/{chunk-55FDQYPS.js.map → chunk-ES5IHQ6M.js.map} +0 -0
- /package/dist/{chunk-N47ZWQBO.js.map → chunk-G2NSSQES.js.map} +0 -0
- /package/dist/{chunk-GSWPU5CR.js.map → chunk-GD3QOBMB.js.map} +0 -0
- /package/dist/{chunk-SACPRJ7F.js.map → chunk-JNIJBXVK.js.map} +0 -0
- /package/dist/{chunk-DGLON3AL.js.map → chunk-KNRG6ZGJ.js.map} +0 -0
- /package/dist/{chunk-GEUDRENF.js.map → chunk-MMTG3SCJ.js.map} +0 -0
- /package/dist/{chunk-WZFAPHIK.js.map → chunk-MU7ZHSZE.js.map} +0 -0
- /package/dist/{chunk-W4FBGYGK.js.map → chunk-NRV4Y3PM.js.map} +0 -0
- /package/dist/{chunk-KQ2XCQYN.js.map → chunk-P2BLHUL2.js.map} +0 -0
- /package/dist/{chunk-6L775BUB.js.map → chunk-QE63OHLB.js.map} +0 -0
- /package/dist/{chunk-ONHRRJZM.js.map → chunk-QJAQNXWI.js.map} +0 -0
- /package/dist/{chunk-6RYWNBSA.js.map → chunk-SVZGA2MK.js.map} +0 -0
- /package/dist/{chunk-OCMLGND7.js.map → chunk-WWZ35GWW.js.map} +0 -0
- /package/dist/{chunk-A5N6ISRK.js.map → chunk-ZN4UZWMT.js.map} +0 -0
- /package/dist/{chunk-7M6APKJL.js.map → chunk-ZYU7ZFLT.js.map} +0 -0
- /package/dist/{first-start-migration-LEXL3XYL.js.map → first-start-migration-BKNGOFED.js.map} +0 -0
package/dist/index.d.ts
CHANGED
|
@@ -2,8 +2,7 @@ export { PluginEntryResolverOptions, resolvePluginEntry } from './plugin-entry-r
|
|
|
2
2
|
export { isOpenaiApiKeyDisabled, parseConfig, resolveEnvVars } from './config.js';
|
|
3
3
|
export { resolveRemnicConfigRecord } from './config-record.js';
|
|
4
4
|
export { MigrationOptions, MigrationResult, RollbackResult, migrateFromEngram, rollbackFromEngramMigration } from './migrate/from-engram.js';
|
|
5
|
-
|
|
6
|
-
export { D as DEFAULT_SELF_NAME, O as Orchestrator, R as ResolvedSpeaker, a as SpeakerOverride, b as WEARABLE_SOURCE_PREFIX, c as WearableDayTranscriptView, d as WearableMemoryGenDeps, e as WearableMemoryGenResult, f as WearableMemorySearchResult, g as WearableMemoryWriter, h as WearableSearchBackend, i as WearableStorageIo, j as WearableSyncDeps, k as WearableSyncOptions, l as WearableTranscriptSearchResult, m as WearablesServiceDeps, n as buildExtractionTurns, o as dateInTimezone, p as defaultTimezone, q as defaultWorkspaceDir, r as distinctSpeakerLabels, s as emptySpeakerRegistry, t as generateWearableMemories, u as importNativeMemories, v as loadSpeakerRegistry, w as locateTranscriptPath, x as memoryStatusForMode, y as resolveSpeaker, z as resolveSyncDates, A as sanitizeSessionKeyForFilename, B as saveSpeakerRegistry, E as speakerRegistryKey, F as speakersFilePath, H as syncWearableSource, J as wearableDayTag, K as wearableSourceLabel, L as writeDailyDigestMemory } from './orchestrator-DB93S48I.js';
|
|
5
|
+
export { O as Orchestrator, d as defaultWorkspaceDir, s as sanitizeSessionKeyForFilename } from './orchestrator-C9ZVppNh.js';
|
|
7
6
|
export { normalizeProjectionPreview, normalizeProjectionTags } from './memory-projection-format.js';
|
|
8
7
|
export { ModelCapabilities, ModelRegistry } from './model-registry.js';
|
|
9
8
|
export { ACTIVE_STATUSES, ContradictionFilter, ContradictionJudgeBatchResult, ContradictionJudgeInput, ContradictionJudgeResult, ContradictionListResult, ContradictionVerdict, ResolutionResult, ResolutionVerb, ScanDependencies, ScanResult, computePairId, executeResolution, isCoolingDown, isValidResolutionVerb, judgeContradictionPairs, listPairs, readPair, resolvePair, runContradictionScan, writePair, writePairs } from './contradiction/index.js';
|
|
@@ -13,8 +12,8 @@ export { TargetedFactRecallOptions, buildTargetedFactRecallSection, shouldRecall
|
|
|
13
12
|
export { FocusedListRecallOptions, buildFocusedListRecallSection, shouldRecallFocusedListEvidence } from './focused-list-recall.js';
|
|
14
13
|
export { ResponseGuidanceRecallOptions, buildResponseGuidanceRecallSection, shouldRecallResponseGuidance } from './response-guidance-recall.js';
|
|
15
14
|
export { EventOrderRecallOptions, buildEventOrderRecallSection, shouldRecallEventOrderEvidence } from './event-order-recall.js';
|
|
16
|
-
import { S as StorageManager,
|
|
17
|
-
export { C as ContentHashIndex,
|
|
15
|
+
import { S as StorageManager, a as MeetingRecordStore } from './storage-XGawwqXE.js';
|
|
16
|
+
export { C as ContentHashIndex, c as FUSION_KIND, d as MEETINGS_DIR_NAME, e as MEETING_FORMAT_VERSION, f as MEETING_KIND, g as MeetingRecordBase, h as MeetingRecordFileIo, b as MeetingRecordSummary, i as MeetingSaveResult, M as MemoryWriteResult, j as composeFusionDayMeta, k as composeMeetingRecord, l as hashFusionBody, m as meetingIdDate, p as parseEntityFile, n as parseFusionDay, o as parseMeetingRecordSummary, s as serializeEntityFile, q as serializeFusionDay, r as serializeMeetingRecord } from './storage-XGawwqXE.js';
|
|
18
17
|
import { SealedMemoryEnvelope } from './write-envelope.js';
|
|
19
18
|
export { AccessWriteFingerprintParts, ComposeEnvelopeOptions, FINGERPRINT_EXEMPT_FIELDS, FINGERPRINT_SCOPE_FIELDS, FingerprintScope, MemoryWriteInput, ObserveFingerprintParts, STRUCTURED_ATTRIBUTE_LIMITS, TAG_LIMITS, WRITE_FINGERPRINT_FIELDS, WriteContext, buildAccessWriteRequestFingerprint, buildObserveRequestFingerprint, buildWriteIdempotencyPayload, composeMemoryEnvelope, isSealedMemoryEnvelope, sealedWriteToLegacyArgs } from './write-envelope.js';
|
|
20
19
|
export { HostEmbeddingInputType, HostEmbeddingProvider, getHostEmbeddingProvider, normalizeHostEmbeddingVector, registerHostEmbeddingProvider } from './host-embedding-provider.js';
|
|
@@ -23,13 +22,13 @@ export { CodexCliFallbackConfig, CodexCliFallbackMessage, CodexCliFallbackOption
|
|
|
23
22
|
export { BufferSurpriseProbe, SmartBuffer, TriggerDecision } from './buffer.js';
|
|
24
23
|
export { ComputeSurpriseOptions, DEFAULT_SURPRISE_K, RecentMemoryLike, computeSurprise } from './buffer-surprise.js';
|
|
25
24
|
export { BufferSurpriseDistribution, BufferSurpriseReader, BufferSurpriseReportOptions, reportBufferSurpriseDistribution } from './buffer-surprise-report.js';
|
|
26
|
-
import {
|
|
27
|
-
export {
|
|
25
|
+
import { b1 as CodingContext, b7 as CodingModeConfig, a_ as FusionConversationInput, b8 as FusedSpeaker, b9 as FusedSegment, ba as FusedDisagreement, bb as FusionOptions, aN as WearableConversation, bc as FusionDayResult, P as PluginConfig, bd as CodingKnowledgeConfig, w as MemoryCategory, be as WearableCleanupSettings, bf as WearableFusionConfig, aO as WearableSourceSettings, aS as WearablesConfig, aR as WearableSourceConnector, aW as WearableCorrectionRule, bg as WearableDayTranscriptMeta, aV as WearableDayTranscript, au as ActivitySnapshot, bh as ActivityDayMeta, bi as ActivityDayDigest, ax as ActivitySourceClient, bj as ActivitySourceCheck, bk as ActivitySnapshotPage, av as ActivityConfig, J as ExtractionResult, x as MemoryStatus, ah as ImportanceScore, bl as MeetingsDetectionConfig, aZ as MeetingsDetectionInput, b0 as DetectedMeeting, aY as MeetingsConfig, aB as MeetingRecord, bm as MeetingAudioWindow, bn as MeetingAppSpan } from './types-Bbs0qz6b.js';
|
|
26
|
+
export { bo as ActivityExtractionMode, aw as ActivitySourceConfig, a6 as AgentAccessAuthToken, k as BriefingActiveThread, bp as BriefingConfig, i as BriefingFocus, h as BriefingFollowup, bq as BriefingOpenCommitment, m as BriefingRecentEntity, l as BriefingResult, B as BriefingSections, br as BriefingWindow, a0 as BufferSurpriseEvent, bs as BulkImportError, a2 as BulkImportOptions, a4 as BulkImportResult, a3 as BulkImportSource, bt as BulkImportSourceAdapter, j as CalendarEvent, C as CalendarSource, bu as CodexCompatConfig, b6 as ConsolidationObservation, bv as DEFAULT_RECALL_DISCLOSURE, bw as DisagreementKind, E as EntityFile, ag as EntityStructuredSection, bx as ExtractedFact, by as FusedContribution, bz as FusedConversationProvenance, aA as FusedDayFile, az as FusedDayMeta, aD as FusedMeeting, bA as FusedSegmentProvenance, ay as FusedWearableConversation, bB as FusionSegmentInput, G as GatewayConfig, bC as ImportSourceRole, a1 as ImportTurn, bD as ImportTurnValidationIssue, a$ as MeetingActivitySnapshot, aX as MeetingBuildInput, aC as MeetingDetectionSource, bE as MeetingScreenContextEvent, bF as MeetingSummaryMode, aj as MemoryActionEligibilityContext, bG as MemoryActionEligibilitySource, aa as MemoryActionType, M as MemoryFile, o as MemoryFrontmatter, bH as MemoryObservation, bI as MemoryScope, bJ as RECALL_DISCLOSURE_LEVELS, b as RecallDisclosure, a5 as SecretRef, bK as SegmentPickReason, bL as WearableAuthCheck, bM as WearableFetchOptions, bN as WearableFetchPage, aQ as WearableMemoryMode, aP as WearableNativeMemory, bO as WearableNativeMemoryPage, aU as WearableSourceStatus, aT as WearableSyncSummary, bP as WearableTranscriptSegment, bQ as isImportRole, bR as isRecallDisclosure, bS as parseIsoTimestamp, bT as validateImportTurn } from './types-Bbs0qz6b.js';
|
|
28
27
|
import { JudgeCandidate, JudgeVerdict } from './extraction-judge.js';
|
|
29
28
|
export { JudgeBatchResult, JudgeVerdictKind, clearVerdictCache, createVerdictCache, getVerdictKind, isDurableVerdict, isValidCachedVerdict, judgeFactDurability, normalizeCachedVerdict, verdictCacheSize } from './extraction-judge.js';
|
|
30
29
|
export { hasBroadGraphIntent, inferIntentFromText, intentCompatibilityScore, isTaskInitiationIntent, planRecallMode } from './intent.js';
|
|
31
|
-
import { F as EngramAccessService } from './access-service-
|
|
32
|
-
export { P as ProcedureStatsConfigSnapshot, G as ProcedureStatsRecent, H as ProcedureStatsReport, I as ProcedureStatusCounts, J as computeProcedureStats, K as formatProcedureStatsText } from './access-service-
|
|
30
|
+
import { F as EngramAccessService } from './access-service-CKEROeFP.js';
|
|
31
|
+
export { P as ProcedureStatsConfigSnapshot, G as ProcedureStatsRecent, H as ProcedureStatsReport, I as ProcedureStatusCounts, J as computeProcedureStats, K as formatProcedureStatsText } from './access-service-CKEROeFP.js';
|
|
33
32
|
export { FILTER_LABELS as DIRECT_ANSWER_FILTER_LABELS, DirectAnswerCandidate, DirectAnswerConfig, DirectAnswerInput, DirectAnswerReason, DirectAnswerResult, isDirectAnswerEligible } from './direct-answer.js';
|
|
34
33
|
export { MemoryTier, TierRoutingPolicy, TierTransitionDecision, computeTierValueScore, decideTierTransition } from './tier-routing.js';
|
|
35
34
|
export { ApplyReasoningTraceBoostOptions, BoostableResult, DEFAULT_REASONING_TRACE_BOOST, applyReasoningTraceBoost, isReasoningTracePath, looksLikeProblemSolvingQuery } from './reasoning-trace-recall.js';
|
|
@@ -37,13 +36,13 @@ export { LcmMessagePartInput, LcmMessagePartKind, LcmMessagePartRow, MessagePart
|
|
|
37
36
|
export { USER_BOUNDARY_SCOPES, USER_CONTEXT_SCOPES, USER_MODEL_CORE_QUESTION, USER_MODEL_DIMENSIONS, UserBoundaryScope, UserContextScope, UserModelCoverage, UserModelDimension, UserModelFacet, facetHasBoundary, isUserBoundaryScope, isUserContextScope, isUserModelDimension, normalizeUserContextScope, normalizeUserModelDimension, summarizeUserModelCoverage } from './user-model.js';
|
|
38
37
|
export { BuildRetrievedMemoryProvenanceOptions, RetrievedMemoryCorrectionState, RetrievedMemoryProvenance, RetrievedMemorySafety, buildRetrievedMemoryProvenance, normalizeRetrievedMemoryProvenance, summarizeRetrievedMemoryProvenance } from './memory-provenance.js';
|
|
39
38
|
export { CITATION_UNKNOWN, CitationContext, DEFAULT_CITATION_FORMAT, ParsedCitation, attachCitation, deriveSessionId, formatCitation, hasCitation, parseAllCitations, parseCitation, stripCitation } from './source-attribution.js';
|
|
40
|
-
export { Q as QmdClient } from './qmd-
|
|
39
|
+
export { Q as QmdClient } from './qmd-R6XaQOZK.js';
|
|
41
40
|
export { LanceDbBackend } from './search/lancedb-backend.js';
|
|
42
41
|
export { OramaBackend } from './search/orama-backend.js';
|
|
43
42
|
export { MeilisearchBackend } from './search/meilisearch-backend.js';
|
|
44
43
|
export { buildEntityRecallSection } from './entity-retrieval.js';
|
|
45
44
|
export { isNamespacePolicyCovered, resolvePrincipal } from './namespaces/principal.js';
|
|
46
|
-
export { N as NamespaceCatalog, c as NamespaceCatalogFilter, d as NamespaceCatalogRebuildResult, e as NamespaceCatalogSkippedRoot, f as NamespaceDiscoverySource, b as NamespaceKind, a as NamespaceRecord, g as NamespaceTouchMetadata } from './catalog-
|
|
45
|
+
export { N as NamespaceCatalog, c as NamespaceCatalogFilter, d as NamespaceCatalogRebuildResult, e as NamespaceCatalogSkippedRoot, f as NamespaceDiscoverySource, b as NamespaceKind, a as NamespaceRecord, g as NamespaceTouchMetadata } from './catalog-BFTVo2Ez.js';
|
|
47
46
|
export { SESSION_CHANNEL_TYPE, SessionIdentity, SessionStoragePaths, legacyParserReadbackDir, parseSessionIdentity, sessionStoragePaths } from './session-identity.js';
|
|
48
47
|
export { storagePathHash } from './storage-paths.js';
|
|
49
48
|
export { TrustZoneName, TrustZoneRecord, TrustZoneRecordKind, TrustZoneSourceClass, isTrustZoneName } from './trust-zones.js';
|
|
@@ -71,8 +70,8 @@ export { initLogger, log } from './logger.js';
|
|
|
71
70
|
export { b as SemanticDedupDecision, a as SemanticDedupHit, S as SemanticDedupLookup, c as SemanticDedupOptions, d as decideSemanticDedup } from './semantic-TddhF0y7.js';
|
|
72
71
|
export { drainPendingImpressionsForOfflineSync, drainPendingLifecycleForOfflineSync } from './offline-sync-impression-drain.js';
|
|
73
72
|
export { OFFLINE_SYNC_APPLY_MAX_BODY_BYTES, OFFLINE_SYNC_CHANGESET_FORMAT, OFFLINE_SYNC_FILE_CONTENT_MAX_CHUNK_BYTES, OFFLINE_SYNC_FILE_CONTENT_TRANSFER_CHUNK_BYTES, OFFLINE_SYNC_SNAPSHOT_BASE_MAX_BODY_BYTES, OFFLINE_SYNC_SNAPSHOT_FORMAT, OFFLINE_SYNC_STATE_VERSION, OfflineSyncApplyChangesetResult, OfflineSyncApplyFileContentChunkResult, OfflineSyncApplySnapshotResult, OfflineSyncChange, OfflineSyncChangeset, OfflineSyncConflict, OfflineSyncFileContentChunk, OfflineSyncFileDigest, OfflineSyncFileRecord, OfflineSyncFileState, OfflineSyncFileTarget, OfflineSyncFileWriteTarget, OfflineSyncSnapshot, OfflineSyncState, applyOfflineSyncChangeset, applyOfflineSyncFileContentChunk, applyOfflineSyncSnapshot, buildOfflineSyncChangeset, buildOfflineSyncChangesetFromSnapshot, buildOfflineSyncSnapshot, buildOfflineSyncSnapshotForPaths, buildOfflineSyncSnapshotFromBase, compileOfflineSyncExcludeGlobs, defaultOfflineSyncStatePath, fileStatesFromSnapshot, globToRegExp, iterateOfflineSyncSnapshotFileRecords, normalizeOfflineSyncChangeset, normalizeOfflineSyncSnapshot, offlineSyncStateFromSnapshot, readOfflineSyncFileContentChunk, readOfflineSyncState, shouldPreferIncomingOfflineRuntimeFile, summarizeOfflineSyncChangeset, summarizeOfflineSyncPendingChanges, summarizeOfflineSyncPendingFiles, writeOfflineSyncState } from './offline-sync.js';
|
|
74
|
-
import { D as DiscoveredExtension } from './semantic-consolidation-
|
|
75
|
-
export { E as ExtensionSchema, R as REMNIC_EXTENSIONS_TOTAL_TOKEN_LIMIT, b as buildExtensionsBlockForConsolidation, d as discoverMemoryExtensions, r as resolveExtensionsRoot } from './semantic-consolidation-
|
|
73
|
+
import { D as DiscoveredExtension } from './semantic-consolidation-B2xo26UQ.js';
|
|
74
|
+
export { E as ExtensionSchema, R as REMNIC_EXTENSIONS_TOTAL_TOKEN_LIMIT, b as buildExtensionsBlockForConsolidation, d as discoverMemoryExtensions, r as resolveExtensionsRoot } from './semantic-consolidation-B2xo26UQ.js';
|
|
76
75
|
export { ConnectorCapability, ConnectorInstance, ConnectorManifest, ConnectorRegistry, DoctorCheck, DoctorResult, InstallOptions, InstallResult, MARKETPLACE_MANIFEST_FILENAME, MARKETPLACE_SCHEMA_VERSION, MarketplaceConfig, MarketplaceEntry, MarketplaceInstallResult, MarketplaceInstallType, MarketplaceLogger, MarketplaceManifest, MarketplaceValidation, RemoveResult, checkMarketplaceManifest, coerceInstallExtension, doctorConnector, generateMarketplaceManifest, getConnectorToken, installConnector, installFromMarketplace, listConnectors, loadRegistry, removeConnector, saveRegistry, validateMarketplaceManifest, writeMarketplaceManifest } from './connectors/index.js';
|
|
77
76
|
import { L as LiveConnector, S as SyncIncrementalResult } from './framework-CNDn2164.js';
|
|
78
77
|
export { c as CONNECTOR_ID_PATTERN, C as ConnectorConfig, b as ConnectorCursor, a as ConnectorDocument, d as ConnectorDocumentSource, e as SyncIncrementalArgs, i as isValidConnectorId, p as persistableConnectorConfig, r as redactConnectorConfigSecrets } from './framework-CNDn2164.js';
|
|
@@ -87,9 +86,12 @@ import { T as Taxonomy, R as ResolverDecision } from './types-DJhqDJUV.js';
|
|
|
87
86
|
export { a as TaxonomyCategory } from './types-DJhqDJUV.js';
|
|
88
87
|
export { EnrichmentAuditEntry, EnrichmentCandidate, EnrichmentCostTier, EnrichmentPipelineConfig, EnrichmentProvider, EnrichmentProviderConfig, EnrichmentProviderRegistry, EnrichmentResult, EntityEnrichmentInput, WebSearchFn, WebSearchProvider, WebSearchProviderOptions, appendAuditEntry, defaultEnrichmentPipelineConfig, readAuditLog, runEnrichmentPipeline } from './enrichment/index.js';
|
|
89
88
|
export { clearBulkImportSources, getBulkImportSource, listBulkImportSources, registerBulkImportSource } from './bulk-import/index.js';
|
|
90
|
-
export { a as ProcessBatchContext, P as ProcessBatchFn, b as ProcessBatchResult, f as formatBatchTranscript, r as resolveBulkImportContext, c as runBulkImportPipeline, v as validateBatchSize } from './pipeline-
|
|
91
|
-
export { B as BulkImportCliCommandOptions, p as parseStrictCliDate, r as runBulkImportCliCommand } from './cli-
|
|
92
|
-
import {
|
|
89
|
+
export { a as ProcessBatchContext, P as ProcessBatchFn, b as ProcessBatchResult, f as formatBatchTranscript, r as resolveBulkImportContext, c as runBulkImportPipeline, v as validateBatchSize } from './pipeline-id_-sqYm.js';
|
|
90
|
+
export { B as BulkImportCliCommandOptions, p as parseStrictCliDate, r as runBulkImportCliCommand } from './cli-BrwT9YMD.js';
|
|
91
|
+
import { S as SpeakerRegistry, W as WearablesService, d as MeetingMemoryWriter, e as MeetingMemoryGenerator, f as MeetingEpisodeGenResult, g as MeetingsBuilder, h as MeetingsDaySource, i as MeetingDayData } from './service-DgFWlZ-r.js';
|
|
92
|
+
export { D as DEFAULT_SELF_NAME, j as MeetingBuildOutcome, k as MeetingFusionOptions, l as MeetingMemoryOutcome, m as MeetingsBuilderHooks, a as MeetingsDayBuildSummary, n as MeetingsDayFactGenResult, b as MeetingsGetResult, o as MeetingsListDay, c as MeetingsListResult, M as MeetingsService, p as MeetingsServiceDeps, R as ResolvedSpeaker, q as SpeakerOverride, r as WEARABLE_SOURCE_PREFIX, s as WearableDayTranscriptView, t as WearableMemoryGenDeps, u as WearableMemoryGenResult, v as WearableMemorySearchResult, w as WearableMemoryWriter, x as WearableSearchBackend, y as WearableStorageIo, z as WearableSyncDeps, A as WearableSyncOptions, B as WearableTranscriptSearchResult, C as WearablesServiceDeps, E as buildExtractionTurns, F as buildMeetingRecordsForDay, G as dateInTimezone, H as defaultTimezone, I as distinctSpeakerLabels, J as emptySpeakerRegistry, K as fuseMeeting, L as generateWearableMemories, N as importNativeMemories, O as loadSpeakerRegistry, P as locateTranscriptPath, Q as memoryStatusForMode, T as resolveSpeaker, U as resolveSyncDates, V as saveSpeakerRegistry, X as speakerRegistryKey, Y as speakersFilePath, Z as syncWearableSource, _ as wearableDayTag, $ as wearableSourceLabel, a0 as writeDailyDigestMemory } from './service-DgFWlZ-r.js';
|
|
93
|
+
import { A as ActivityStore, a as ActivitySyncRunSummary } from './maintenance-C98njYb8.js';
|
|
94
|
+
export { b as ActivitySourceRunItem, c as ActivitySyncRunOptions, d as activityDatabasePath, e as applyActivitySchema, f as ensureActivityStateDir, o as openActivityDatabase, r as resolveActivitySyncDates, g as runActivitySyncOnce } from './maintenance-C98njYb8.js';
|
|
93
95
|
import { SearchExecutionOptions } from './search/port.js';
|
|
94
96
|
export { DEFAULT_IMPORT_BATCH_SIZE, ImportProgress, ImportedMemory, ImporterAdapter, ImporterParseOptions, ImporterTransformOptions, ImporterWriteResult, ImporterWriteTarget, RunImportOptions, RunImporterResult, defaultWriteMemoriesToOrchestrator, importedMemoryToTurn, runImporter, validateImportBatchSize, validateImportRateLimit } from './importers/index.js';
|
|
95
97
|
export { FallbackLlmClient, FallbackLlmOptions, FallbackLlmResponse, FallbackLlmRuntimeContext } from './fallback-llm.js';
|
|
@@ -119,15 +121,14 @@ import './resolve-provider-secret.js';
|
|
|
119
121
|
import './transcript.js';
|
|
120
122
|
import './session-integrity.js';
|
|
121
123
|
import './summarizer.js';
|
|
122
|
-
import './
|
|
123
|
-
import './
|
|
124
|
+
import './compounding/engine.js';
|
|
125
|
+
import './shared-context/manager.js';
|
|
126
|
+
import './capabilities.js';
|
|
124
127
|
import './consolidation-operator.js';
|
|
125
128
|
import './memory-projection-store.js';
|
|
126
129
|
import './maintenance/memory-governance.js';
|
|
130
|
+
import './runtime/better-sqlite.js';
|
|
127
131
|
import 'better-sqlite3';
|
|
128
|
-
import './compounding/engine.js';
|
|
129
|
-
import './shared-context/manager.js';
|
|
130
|
-
import './capabilities.js';
|
|
131
132
|
import './utility-runtime.js';
|
|
132
133
|
import './lifecycle.js';
|
|
133
134
|
import './orchestration/compression-guideline-coordinator.js';
|
|
@@ -149,7 +150,7 @@ import './faiss-adapter-BHecI1fF.js';
|
|
|
149
150
|
import './runtime/child-process.js';
|
|
150
151
|
import './namespaces/storage.js';
|
|
151
152
|
import './threading.js';
|
|
152
|
-
import './scope-profiles-
|
|
153
|
+
import './scope-profiles-EhyuAKkd.js';
|
|
153
154
|
import './graph.js';
|
|
154
155
|
import './relevance.js';
|
|
155
156
|
import './negative.js';
|
|
@@ -161,13 +162,16 @@ import './lcm/summarizer.js';
|
|
|
161
162
|
import './lcm/dag.js';
|
|
162
163
|
import './lcm/recall.js';
|
|
163
164
|
import './lcm/queue.js';
|
|
165
|
+
import './namespaces/search.js';
|
|
164
166
|
import './policy-runtime.js';
|
|
165
167
|
import './profiling.js';
|
|
166
168
|
import './schemas.js';
|
|
167
|
-
import './
|
|
169
|
+
import './extraction-error-classification.js';
|
|
170
|
+
import './access-namespace-preflight-CmErR03h.js';
|
|
168
171
|
import './recall-explain-renderer.js';
|
|
169
172
|
import './access-citation.js';
|
|
170
173
|
import './explicit-capture.js';
|
|
174
|
+
import './access-wearables-meetings-surface.js';
|
|
171
175
|
import './graph-snapshot.js';
|
|
172
176
|
import './transfer/capsule-export.js';
|
|
173
177
|
import './capsule-cli.js';
|
|
@@ -6488,6 +6492,14 @@ declare function getWearableConnector(id: string): WearableConnectorRegistration
|
|
|
6488
6492
|
declare function listWearableConnectors(): string[];
|
|
6489
6493
|
/** Test-only: reset the registry between cases. */
|
|
6490
6494
|
declare function clearWearableConnectors(): void;
|
|
6495
|
+
/**
|
|
6496
|
+
* npm specifier of the optional package that provides a source's connector.
|
|
6497
|
+
* Built-in sources map to their real package (e.g. `desktop` ->
|
|
6498
|
+
* `@remnic/capture-audio`, not the nonexistent `@remnic/connector-desktop`);
|
|
6499
|
+
* unknown ids fall back to the `connector-<id>` convention. Used by
|
|
6500
|
+
* missing-connector install hints so they name the exact install command.
|
|
6501
|
+
*/
|
|
6502
|
+
declare function builtInConnectorPackageSpecifier(id: string): string;
|
|
6491
6503
|
declare function ensureBuiltInWearableConnectors(): Promise<void>;
|
|
6492
6504
|
|
|
6493
6505
|
/**
|
|
@@ -6821,50 +6833,6 @@ interface WearablesCliIo {
|
|
|
6821
6833
|
*/
|
|
6822
6834
|
declare function runWearablesCliCommand(service: WearablesService, args: string[], io: WearablesCliIo): Promise<number>;
|
|
6823
6835
|
|
|
6824
|
-
/**
|
|
6825
|
-
* Screen-activity SQLite store (issue #1899).
|
|
6826
|
-
*
|
|
6827
|
-
* Durable, capture-machine-agnostic store for on-screen text snapshots plus a
|
|
6828
|
-
* per-machine sync cursor. Mirrors the LCM store conventions
|
|
6829
|
-
* (packages/remnic-core/src/lcm/schema.ts): WAL, a `<name>_meta` schema-version
|
|
6830
|
-
* row, `CREATE TABLE IF NOT EXISTS`, and an FTS5 virtual table created
|
|
6831
|
-
* separately. better-sqlite3 is synchronous.
|
|
6832
|
-
*
|
|
6833
|
-
* Snapshots dedup on `(machine, content_hash)` so a re-sync is idempotent, and
|
|
6834
|
-
* day queries use half-open [start, end) UTC bounds (AGENTS.md §23).
|
|
6835
|
-
*/
|
|
6836
|
-
|
|
6837
|
-
declare function activityDatabasePath(memoryDir: string): string;
|
|
6838
|
-
declare function ensureActivityStateDir(memoryDir: string): Promise<void>;
|
|
6839
|
-
declare function openActivityDatabase(memoryDir: string): BetterSqlite3Database;
|
|
6840
|
-
/** Apply the activity schema on an already-open handle (test/in-memory use). */
|
|
6841
|
-
declare function applyActivitySchema(db: BetterSqlite3Database): void;
|
|
6842
|
-
declare class ActivityStore {
|
|
6843
|
-
private readonly db;
|
|
6844
|
-
constructor(db: BetterSqlite3Database);
|
|
6845
|
-
static open(memoryDir: string): ActivityStore;
|
|
6846
|
-
/**
|
|
6847
|
-
* Insert a snapshot, idempotent on (machine, captured_at_utc, content_hash):
|
|
6848
|
-
* the same screen content recurring at a *different* time is kept; only an
|
|
6849
|
-
* exact re-ingestion of the same capture dedups. Returns `inserted: false`
|
|
6850
|
-
* for a duplicate. The FTS row is written only on a real insert (atomically),
|
|
6851
|
-
* so it never drifts from the base table.
|
|
6852
|
-
*/
|
|
6853
|
-
insertSnapshot(snapshot: ActivitySnapshot): {
|
|
6854
|
-
inserted: boolean;
|
|
6855
|
-
id: number;
|
|
6856
|
-
};
|
|
6857
|
-
/** Snapshots whose capture instant is in the half-open [start, end) window. */
|
|
6858
|
-
listSnapshotsForDay(machine: string | null, startUtcInclusive: string, endUtcExclusive: string): ActivitySnapshot[];
|
|
6859
|
-
getCursor(machine: string): string | null;
|
|
6860
|
-
setCursor(machine: string, cursor: string | null, updatedAtUtc?: string): void;
|
|
6861
|
-
/** Full-text search over snapshot text/app/window/url; newest first. */
|
|
6862
|
-
searchSnapshots(query: string, limit: number): ActivitySnapshot[];
|
|
6863
|
-
/** Retention: drop snapshots captured strictly before `cutoffUtc`. */
|
|
6864
|
-
pruneOlderThan(cutoffUtc: string): number;
|
|
6865
|
-
close(): void;
|
|
6866
|
-
}
|
|
6867
|
-
|
|
6868
6836
|
/**
|
|
6869
6837
|
* Deterministic screen-activity day-digest renderer (issue #1899).
|
|
6870
6838
|
*
|
|
@@ -6881,6 +6849,7 @@ declare const ACTIVITY_DIGEST_FORMAT_VERSION = 1;
|
|
|
6881
6849
|
declare const ACTIVITY_DIR_NAME = "activity";
|
|
6882
6850
|
declare function isValidActivityDate(date: string): boolean;
|
|
6883
6851
|
declare function activityDigestPath(memoryDir: string, date: string): string;
|
|
6852
|
+
declare function timezoneOffsetIso(instant: Date, timezone: string): string;
|
|
6884
6853
|
declare function assertValidTimezone(timezone: string): void;
|
|
6885
6854
|
/** Half-open [start, end) UTC ISO bounds of a local day. */
|
|
6886
6855
|
declare function activityDayWindow(date: string, timezone: string): {
|
|
@@ -6958,92 +6927,6 @@ declare class ActivityHttpSourceClient implements ActivitySourceClient {
|
|
|
6958
6927
|
}): Promise<ActivitySnapshotPage>;
|
|
6959
6928
|
}
|
|
6960
6929
|
|
|
6961
|
-
/**
|
|
6962
|
-
* Host-agnostic activity sync runner (issue #1900).
|
|
6963
|
-
*
|
|
6964
|
-
* Bridges parsed `config.activity` to the durable sync pipeline: the parser
|
|
6965
|
-
* (config.ts) validates settings but never contacts a daemon, and
|
|
6966
|
-
* `syncActivitySource` (pipeline.ts) syncs one source for one day. This runner
|
|
6967
|
-
* is the missing middle — it instantiates one `ActivityHttpSourceClient` per
|
|
6968
|
-
* configured source from the parsed config and drives a sync across the
|
|
6969
|
-
* `syncDays` local-day window, but ONLY when the feature is enabled.
|
|
6970
|
-
*
|
|
6971
|
-
* The feature is master default-off: source config alone never starts a sync.
|
|
6972
|
-
* When `config.enabled` is false the runner opens no store, builds no client,
|
|
6973
|
-
* and makes no HTTP call or write — it returns a disabled summary. This mirrors
|
|
6974
|
-
* `runLiveConnectorsOnce`'s disabled-vs-result reporting so a host scheduler
|
|
6975
|
-
* (CLI, cron) can trigger it through the runtime with no OpenClaw imports.
|
|
6976
|
-
*
|
|
6977
|
-
* Cursor semantics are delegated wholesale to `syncActivitySource`: the
|
|
6978
|
-
* per-machine cursor advances only after every page and the digest are durable,
|
|
6979
|
-
* so a runtime failure (or an aborted stop) leaves the cursor unadvanced and a
|
|
6980
|
-
* restart resumes from the persisted position. A per-source failure is captured
|
|
6981
|
-
* as an error item and never aborts the other sources or the host flow.
|
|
6982
|
-
*/
|
|
6983
|
-
|
|
6984
|
-
type ActivityNow = Date | (() => Date);
|
|
6985
|
-
/** One configured source's aggregate result across the synced day window. */
|
|
6986
|
-
interface ActivitySourceRunItem {
|
|
6987
|
-
machineLabel: string;
|
|
6988
|
-
/** True when at least one day synced durably (no error). */
|
|
6989
|
-
ran: boolean;
|
|
6990
|
-
fetched: number;
|
|
6991
|
-
inserted: number;
|
|
6992
|
-
duplicates: number;
|
|
6993
|
-
digestsWritten: number;
|
|
6994
|
-
/** Persisted cursor after the run; unadvanced from prior on failure. */
|
|
6995
|
-
cursor: string | null;
|
|
6996
|
-
/** Set when the source failed; distinguishes a fault from an empty page. */
|
|
6997
|
-
error?: string;
|
|
6998
|
-
/**
|
|
6999
|
-
* Set when a durable day synced but its post-digest search reindex failed.
|
|
7000
|
-
* The rows/digest/cursor are committed; the index is stale until the next
|
|
7001
|
-
* refresh, so this is a signal (not a sync failure) for the scheduler.
|
|
7002
|
-
*/
|
|
7003
|
-
reindexError?: string;
|
|
7004
|
-
}
|
|
7005
|
-
interface ActivitySyncRunSummary {
|
|
7006
|
-
ranAt: string;
|
|
7007
|
-
/** False means the feature is off: no client built, no HTTP, no write. */
|
|
7008
|
-
enabled: boolean;
|
|
7009
|
-
ranCount: number;
|
|
7010
|
-
errorCount: number;
|
|
7011
|
-
/** Sources whose durable sync succeeded but whose search reindex failed. */
|
|
7012
|
-
reindexErrorCount: number;
|
|
7013
|
-
totalInserted: number;
|
|
7014
|
-
results: ActivitySourceRunItem[];
|
|
7015
|
-
}
|
|
7016
|
-
interface ActivitySyncRunOptions {
|
|
7017
|
-
config: ActivityConfig;
|
|
7018
|
-
memoryDir: string;
|
|
7019
|
-
/** Injectable store; opened from memoryDir when omitted (and closed here). */
|
|
7020
|
-
store?: ActivityStore;
|
|
7021
|
-
/** Clock injection for deterministic day-window resolution in tests. */
|
|
7022
|
-
now?: ActivityNow;
|
|
7023
|
-
/** Abort a run in flight (stop); an aborted source leaves its cursor intact. */
|
|
7024
|
-
signal?: AbortSignal;
|
|
7025
|
-
/** Injectable client factory; builds an ActivityHttpSourceClient by default. */
|
|
7026
|
-
createSourceClient?: (source: ActivitySourceConfig) => ActivitySourceClient;
|
|
7027
|
-
/**
|
|
7028
|
-
* Search-index refresh forwarded to each source sync as `afterWrites`, run
|
|
7029
|
-
* after a digest is (re)written so it becomes discoverable (rule 31).
|
|
7030
|
-
* Host wires the core index seam (SearchBackend.update); best-effort.
|
|
7031
|
-
*/
|
|
7032
|
-
reindexSearch?: (signal?: AbortSignal) => Promise<void>;
|
|
7033
|
-
}
|
|
7034
|
-
/**
|
|
7035
|
-
* The local-day window to sync, oldest first: today back `syncDays` calendar
|
|
7036
|
-
* days in the configured timezone. Walking by calendar days (not fixed 24h
|
|
7037
|
-
* intervals) keeps the window correct across DST transitions.
|
|
7038
|
-
*/
|
|
7039
|
-
declare function resolveActivitySyncDates(syncDays: number, timezone: string, now: Date): string[];
|
|
7040
|
-
/**
|
|
7041
|
-
* Run one activity sync pass across every configured source. Disabled config
|
|
7042
|
-
* short-circuits before any store/client/HTTP work; an enabled config syncs
|
|
7043
|
-
* each source across the `syncDays` window and isolates per-source faults.
|
|
7044
|
-
*/
|
|
7045
|
-
declare function runActivitySyncOnce(options: ActivitySyncRunOptions): Promise<ActivitySyncRunSummary>;
|
|
7046
|
-
|
|
7047
6930
|
/**
|
|
7048
6931
|
* In-process periodic driver for activity (screen-capture) sync (issue #1900).
|
|
7049
6932
|
*
|
|
@@ -7298,392 +7181,156 @@ declare class MeetingsInputError extends Error {
|
|
|
7298
7181
|
}
|
|
7299
7182
|
|
|
7300
7183
|
/**
|
|
7301
|
-
* Meeting
|
|
7302
|
-
*
|
|
7303
|
-
* For a detected meeting window `[startUtc, endUtc)` (half-open, AGENTS.md §23),
|
|
7304
|
-
* fuse the concurrent signals into a screen-aware `FusedMeeting`:
|
|
7184
|
+
* Meeting memory generation (issue #1900, Phase 4).
|
|
7305
7185
|
*
|
|
7306
|
-
*
|
|
7307
|
-
*
|
|
7308
|
-
*
|
|
7309
|
-
*
|
|
7310
|
-
*
|
|
7311
|
-
*
|
|
7312
|
-
* when it lasts `contextDwellSeconds`, plus deduped on-screen text excerpts
|
|
7313
|
-
* capped at `maxContextChars`.
|
|
7314
|
-
* 3. Attendees — distinct non-wearer speaker labels from the fused transcript
|
|
7315
|
-
* (already resolved through the wearables speaker registry upstream).
|
|
7186
|
+
* Layer 1 — the deterministic meeting EPISODE: one recall-anchor memory per
|
|
7187
|
+
* meeting ("what meetings did I have Tuesday?"), always written when
|
|
7188
|
+
* `meetings.enabled`, no LLM. Title, time span, attendees, and source list are
|
|
7189
|
+
* a pure function of the record, so an unchanged meeting is skipped by content
|
|
7190
|
+
* hash. Reuses the shared sealed-envelope composer + secure write path
|
|
7191
|
+
* (`composeMemoryEnvelope` / `writeSealedMemory`) — no bespoke memory format.
|
|
7316
7192
|
*
|
|
7317
|
-
*
|
|
7193
|
+
* The LLM summary/facts layer (decisions + commitments through the existing
|
|
7194
|
+
* trust pipeline) builds on this module in the trust-gated slice; it reuses the
|
|
7195
|
+
* same writer interface and the wearables judge/trust machinery rather than
|
|
7196
|
+
* forking it.
|
|
7318
7197
|
*/
|
|
7319
7198
|
|
|
7320
|
-
/**
|
|
7321
|
-
|
|
7322
|
-
|
|
7323
|
-
|
|
7324
|
-
|
|
7325
|
-
|
|
7326
|
-
|
|
7327
|
-
|
|
7328
|
-
|
|
7329
|
-
|
|
7330
|
-
|
|
7331
|
-
*
|
|
7332
|
-
|
|
7333
|
-
|
|
7334
|
-
|
|
7335
|
-
|
|
7336
|
-
|
|
7337
|
-
|
|
7338
|
-
|
|
7339
|
-
|
|
7340
|
-
|
|
7341
|
-
|
|
7342
|
-
|
|
7343
|
-
|
|
7344
|
-
* injected (like the fusion artifact store) so encrypted-at-rest + atomic-write
|
|
7345
|
-
* semantics are inherited without this module touching the secure-store key.
|
|
7346
|
-
*/
|
|
7347
|
-
|
|
7348
|
-
declare const MEETINGS_DIR_NAME = "meetings";
|
|
7349
|
-
declare const MEETING_KIND: "meeting";
|
|
7350
|
-
declare const MEETING_FORMAT_VERSION = 1;
|
|
7351
|
-
/** The detection-source label from a meeting id would be ambiguous, so validate
|
|
7352
|
-
* an id AND confirm its embedded date matches the directory it lives under. */
|
|
7353
|
-
declare function meetingIdDate(id: string): string | null;
|
|
7354
|
-
/** Base fields (identity + detection) a fused meeting is composed with. */
|
|
7355
|
-
interface MeetingRecordBase {
|
|
7356
|
-
id: string;
|
|
7357
|
-
date: string;
|
|
7358
|
-
startUtc: string;
|
|
7359
|
-
endUtc: string;
|
|
7360
|
-
app?: string;
|
|
7361
|
-
detectionSource: MeetingDetectionSource;
|
|
7362
|
-
title?: string;
|
|
7363
|
-
}
|
|
7364
|
-
/** Compose a full meeting record (with contentHash) from its base + fused view. */
|
|
7365
|
-
declare function composeMeetingRecord(base: MeetingRecordBase, fused: FusedMeeting): MeetingRecord;
|
|
7366
|
-
/** Serialize a meeting record into its persisted markdown form. */
|
|
7367
|
-
declare function serializeMeetingRecord(record: MeetingRecord): string;
|
|
7368
|
-
/** A meeting record's frontmatter, parsed for listing + idempotency checks. */
|
|
7369
|
-
interface MeetingRecordSummary {
|
|
7370
|
-
id: string;
|
|
7371
|
-
date: string;
|
|
7372
|
-
startUtc: string;
|
|
7373
|
-
endUtc: string;
|
|
7374
|
-
app?: string;
|
|
7375
|
-
detectionSource: string;
|
|
7376
|
-
title?: string;
|
|
7377
|
-
attendees: string[];
|
|
7378
|
-
sources: string[];
|
|
7379
|
-
corroboratedBy: string[];
|
|
7380
|
-
snapshotCount: number;
|
|
7381
|
-
contentHash: string;
|
|
7199
|
+
/** Frontmatter `source` prefix for meeting-derived memories. */
|
|
7200
|
+
declare const MEETING_SOURCE_PREFIX = "meeting";
|
|
7201
|
+
/** `source: meeting:<id>` — walks memory → record → day transcripts. */
|
|
7202
|
+
declare function meetingSourceLabel(id: string): string;
|
|
7203
|
+
/** `meeting-day:<date>` tag for day-scoped recall ("meetings on Tuesday"). */
|
|
7204
|
+
declare function meetingDayTag(date: string): string;
|
|
7205
|
+
/** Render the deterministic episode content for a meeting. Pure. */
|
|
7206
|
+
declare function composeMeetingEpisodeContent(record: MeetingRecord): string;
|
|
7207
|
+
/**
|
|
7208
|
+
* Write the deterministic episode memory for one meeting. Idempotent: skips
|
|
7209
|
+
* when an identical episode already exists. Returns true when a new episode was
|
|
7210
|
+
* written. The episode is `active` (a recall anchor, not a trust-gated claim).
|
|
7211
|
+
*/
|
|
7212
|
+
declare function writeMeetingEpisodeMemory(record: MeetingRecord, writer: MeetingMemoryWriter): Promise<boolean>;
|
|
7213
|
+
/** Write one deterministic episode per record, idempotently. */
|
|
7214
|
+
declare function generateMeetingEpisodes(records: readonly MeetingRecord[], writer: MeetingMemoryWriter): Promise<MeetingEpisodeGenResult>;
|
|
7215
|
+
/** One LLM-extracted meeting claim. */
|
|
7216
|
+
interface MeetingFactCandidate {
|
|
7217
|
+
/** Claim text (a decision, commitment, or open question). */
|
|
7218
|
+
content: string;
|
|
7219
|
+
/** Memory category — commitments carry the decay-aware `commitment` category. */
|
|
7220
|
+
category: Extract<MemoryCategory, "fact" | "decision" | "commitment">;
|
|
7221
|
+
/** Extractor confidence (0..1); defaults to 0.7 downstream when absent. */
|
|
7222
|
+
confidence?: number;
|
|
7382
7223
|
}
|
|
7383
|
-
/**
|
|
7384
|
-
*
|
|
7385
|
-
|
|
7386
|
-
|
|
7387
|
-
|
|
7388
|
-
|
|
7389
|
-
|
|
7390
|
-
|
|
7391
|
-
|
|
7392
|
-
|
|
7393
|
-
* boundary stays explicit).
|
|
7394
|
-
*/
|
|
7395
|
-
interface MeetingRecordFileIo {
|
|
7396
|
-
writeFile(filePath: string, content: string): Promise<void>;
|
|
7397
|
-
readFile(filePath: string): Promise<string>;
|
|
7398
|
-
readDir(dirPath: string): Promise<string[]>;
|
|
7399
|
-
deleteFile(filePath: string): Promise<void>;
|
|
7400
|
-
realpath(filePath: string): Promise<string>;
|
|
7401
|
-
lstat(filePath: string): Promise<{
|
|
7402
|
-
isSymbolicLink: boolean;
|
|
7224
|
+
/** LLM extractor over a meeting's fused transcript + screen context. Injected so
|
|
7225
|
+
* `off` mode provably never invokes it and tests stay deterministic. */
|
|
7226
|
+
interface MeetingSummaryExtractor {
|
|
7227
|
+
extract(input: {
|
|
7228
|
+
record: MeetingRecord;
|
|
7229
|
+
transcriptText: string;
|
|
7230
|
+
screenContextText: string;
|
|
7231
|
+
}): Promise<{
|
|
7232
|
+
summary: string;
|
|
7233
|
+
candidates: MeetingFactCandidate[];
|
|
7403
7234
|
}>;
|
|
7404
7235
|
}
|
|
7405
|
-
/**
|
|
7406
|
-
interface
|
|
7407
|
-
|
|
7408
|
-
/** False when the on-disk contentHash already matched (nothing rewritten). */
|
|
7409
|
-
written: boolean;
|
|
7410
|
-
contentHash: string;
|
|
7236
|
+
/** Optional durability judge; verdicts align with the shared trust pipeline. */
|
|
7237
|
+
interface MeetingSummaryJudge {
|
|
7238
|
+
judge(candidates: readonly MeetingFactCandidate[]): Promise<Array<"accept" | "reject" | "defer">>;
|
|
7411
7239
|
}
|
|
7412
|
-
|
|
7413
|
-
|
|
7414
|
-
|
|
7415
|
-
|
|
7416
|
-
* memory-dir root and mirrors the fusion artifact store (AGENTS.md pattern #3).
|
|
7417
|
-
*/
|
|
7418
|
-
declare class MeetingRecordStore {
|
|
7419
|
-
private readonly memoryDir;
|
|
7420
|
-
private readonly io;
|
|
7421
|
-
private readonly meetingsDir;
|
|
7422
|
-
constructor(memoryDir: string, io: MeetingRecordFileIo);
|
|
7423
|
-
recordPath(date: string, id: string): string;
|
|
7424
|
-
/** Idempotently persist a record: skip the write when contentHash is unchanged. */
|
|
7425
|
-
saveMeetingRecord(record: MeetingRecord): Promise<MeetingSaveResult>;
|
|
7426
|
-
/** Read a stored record's raw markdown; null when absent. */
|
|
7427
|
-
readMeetingRecord(date: string, id: string): Promise<string | null>;
|
|
7428
|
-
/**
|
|
7429
|
-
* Read + parse every stored record for a day exactly ONCE, sorted by start
|
|
7430
|
-
* time (ascending, id tiebreak). The single day-read path both `listMeetingIds`
|
|
7431
|
-
* and `listMeetingSummaries` derive from — no record is read twice.
|
|
7432
|
-
*/
|
|
7433
|
-
private readDaySummaries;
|
|
7434
|
-
/** List meeting ids stored for a day, sorted by start time (ascending). */
|
|
7435
|
-
listMeetingIds(date: string): Promise<string[]>;
|
|
7436
|
-
/** Read parsed summaries for a day, sorted by start time. */
|
|
7437
|
-
listMeetingSummaries(date: string): Promise<MeetingRecordSummary[]>;
|
|
7438
|
-
/** List dates that have at least one stored meeting record, newest first. */
|
|
7439
|
-
listMeetingDates(): Promise<string[]>;
|
|
7440
|
-
/** Remove a stored record. Idempotent: a no-op when already absent. */
|
|
7441
|
-
deleteMeetingRecord(date: string, id: string): Promise<void>;
|
|
7442
|
-
private readRaw;
|
|
7443
|
-
private assertPathContained;
|
|
7444
|
-
/** The `<meetings>/<date>` directory on the path to `targetPath`, or null when
|
|
7445
|
-
* `targetPath` is the meetings root itself. */
|
|
7446
|
-
private dayDirWithin;
|
|
7447
|
-
private assertNotSymlink;
|
|
7448
|
-
private assertNoEscape;
|
|
7240
|
+
interface MeetingSummaryDeps {
|
|
7241
|
+
extractor: MeetingSummaryExtractor;
|
|
7242
|
+
judge?: MeetingSummaryJudge;
|
|
7243
|
+
writer: MeetingMemoryWriter;
|
|
7449
7244
|
}
|
|
7450
|
-
|
|
7451
|
-
/**
|
|
7452
|
-
* Meeting memory-generation SEAM (issue #1900 — engine/memory decouple).
|
|
7453
|
-
*
|
|
7454
|
-
* Engine-layer boundary between the deterministic meeting builder and the
|
|
7455
|
-
* memory-generation layer. `MeetingsBuilder` (detect/fuse/store/build) depends
|
|
7456
|
-
* ONLY on `MeetingMemoryGenerator` declared here — never on `memory-gen.ts` — so
|
|
7457
|
-
* the deterministic engine carries zero dependency on episode/fact generation
|
|
7458
|
-
* and ships in its own scope-budgeted PR. The concrete generator lives in
|
|
7459
|
-
* `memory-gen.ts` behind `createMeetingMemoryGenerator`, which implements this
|
|
7460
|
-
* interface by driving the existing episode/fact/retract logic.
|
|
7461
|
-
*/
|
|
7462
|
-
|
|
7463
|
-
/**
|
|
7464
|
-
* Narrow writer interface satisfied by `StorageManager` — the same sealed
|
|
7465
|
-
* write entry point the wearables generator uses, so meeting memories inherit
|
|
7466
|
-
* encrypted-at-rest + atomic write + dedup without this module knowing the key.
|
|
7467
|
-
*/
|
|
7468
|
-
interface MeetingMemoryWriter {
|
|
7469
|
-
writeSealedMemory(envelope: SealedMemoryEnvelope, extras: {
|
|
7470
|
-
importance?: ImportanceScore;
|
|
7471
|
-
contentHashSource?: string;
|
|
7472
|
-
status?: MemoryStatus;
|
|
7473
|
-
memoryKind?: "episode" | "note" | "box" | "dream" | "procedural";
|
|
7474
|
-
}): Promise<MemoryWriteResult>;
|
|
7475
|
-
/**
|
|
7476
|
-
* True when an active/pending memory whose frontmatter `source` equals
|
|
7477
|
-
* `source` already carries this exact content. Meeting memories are episodes
|
|
7478
|
-
* (`moment`) and decisions/commitments (`decision`/`commitment`) — categories
|
|
7479
|
-
* the storage fact-hash index does NOT cover — so idempotency is a
|
|
7480
|
-
* source-scoped content scan, mirroring the wearables writer, NOT
|
|
7481
|
-
* `hasFactContentHash` (fact-only; always false here → duplicates on rebuild).
|
|
7482
|
-
*/
|
|
7483
|
-
hasMemoryFromSource(source: string, content: string): Promise<boolean>;
|
|
7484
|
-
/**
|
|
7485
|
-
* Retire (invalidate) every memory whose frontmatter `source` equals `source`.
|
|
7486
|
-
* Returns the count retired. Used to reconcile away a removed meeting's
|
|
7487
|
-
* episode/summary memories so recall never surfaces a meeting `show` can't load.
|
|
7488
|
-
*/
|
|
7489
|
-
retireMemoriesFromSource(source: string): Promise<number>;
|
|
7490
|
-
}
|
|
7491
|
-
/** Result of generating episode memories for a day's meetings. */
|
|
7492
|
-
interface MeetingEpisodeGenResult {
|
|
7493
|
-
/** Episodes newly written. */
|
|
7494
|
-
written: number;
|
|
7495
|
-
/** Episodes skipped because an identical one already existed. */
|
|
7496
|
-
skipped: number;
|
|
7497
|
-
}
|
|
7498
|
-
/** Day-level aggregate of the trust-gated summary/fact layer across records. */
|
|
7499
|
-
interface MeetingsDayFactGenResult {
|
|
7500
|
-
/** True when the LLM extractor ran for at least one record. */
|
|
7245
|
+
interface MeetingSummaryResult {
|
|
7246
|
+
/** False when summaryMode is `off` (the extractor is never called). */
|
|
7501
7247
|
llmInvoked: boolean;
|
|
7502
7248
|
/** Facts written active. */
|
|
7503
7249
|
active: number;
|
|
7504
|
-
/** Facts
|
|
7250
|
+
/** Facts written to the review queue (pending_review). */
|
|
7505
7251
|
review: number;
|
|
7506
|
-
/** Candidates
|
|
7252
|
+
/** Candidates dropped below the trust bar or judge-rejected. */
|
|
7507
7253
|
dropped: number;
|
|
7508
|
-
/** Candidates/
|
|
7254
|
+
/** Candidates/summary skipped because an identical memory already existed
|
|
7255
|
+
* for this meeting (idempotent rebuild). */
|
|
7509
7256
|
skipped: number;
|
|
7510
|
-
/**
|
|
7511
|
-
|
|
7512
|
-
|
|
7513
|
-
|
|
7514
|
-
|
|
7515
|
-
|
|
7516
|
-
|
|
7517
|
-
|
|
7518
|
-
*/
|
|
7519
|
-
interface MeetingMemoryOutcome {
|
|
7520
|
-
/** Episode-memory counts, present only when records were built. */
|
|
7521
|
-
episodes?: MeetingEpisodeGenResult;
|
|
7522
|
-
/** Trust-gated summary/fact counts, present only when summary deps ran. */
|
|
7523
|
-
facts?: MeetingsDayFactGenResult;
|
|
7524
|
-
/** True when newly written memories require an isolated reindex. */
|
|
7525
|
-
reindexNeeded: boolean;
|
|
7526
|
-
/** Non-fatal warnings raised while generating memories. */
|
|
7257
|
+
/** True when a non-empty summary memory was written. */
|
|
7258
|
+
summaryWritten: boolean;
|
|
7259
|
+
/** Facts the #1579 tombstone chokepoint downgraded to pending_review (no
|
|
7260
|
+
* active copy). Counted here, NOT in `active`/`review`, so callers never
|
|
7261
|
+
* report a blocked write as a successfully written fact (#1645). */
|
|
7262
|
+
tombstoneBlocked: number;
|
|
7263
|
+
/** Non-fatal degradation notes (e.g. the durability judge threw and the
|
|
7264
|
+
* pass continued on trust bands alone). */
|
|
7527
7265
|
warnings: readonly string[];
|
|
7528
7266
|
}
|
|
7529
7267
|
/**
|
|
7530
|
-
*
|
|
7531
|
-
*
|
|
7532
|
-
*
|
|
7533
|
-
* - `removedIds` — stale ids the rebuild reconciled away (retract memories).
|
|
7534
|
-
* - `unchangedIds`— built ids whose stored `contentHash` was IDENTICAL this
|
|
7535
|
-
* build (nothing rewritten). The generator SKIPS all
|
|
7536
|
-
* episode/summary/fact work for these: an idempotent rebuild
|
|
7537
|
-
* must not re-invoke the LLM or duplicate memories.
|
|
7538
|
-
* - `updatedIds` — built ids that existed before AND were rewritten this build
|
|
7539
|
-
* (same id, changed `contentHash`). The generator REFRESHES
|
|
7540
|
-
* them: retract the stale episode/summary memories for that
|
|
7541
|
-
* source, then regenerate from the new record.
|
|
7542
|
-
* Ids not in `unchangedIds` or `updatedIds` are newly built — generated fresh
|
|
7543
|
-
* with no retract. The three id sets are disjoint subsets of `built`. The
|
|
7544
|
-
* implementation reports the counts + reindex signal the builder folds into its
|
|
7545
|
-
* day summary.
|
|
7546
|
-
*/
|
|
7547
|
-
interface MeetingMemoryGenerator {
|
|
7548
|
-
onRecordsBuilt(input: {
|
|
7549
|
-
built: readonly MeetingRecord[];
|
|
7550
|
-
removedIds: readonly string[];
|
|
7551
|
-
unchangedIds: readonly string[];
|
|
7552
|
-
updatedIds: readonly string[];
|
|
7553
|
-
}): Promise<MeetingMemoryOutcome>;
|
|
7554
|
-
}
|
|
7555
|
-
|
|
7556
|
-
/**
|
|
7557
|
-
* Meeting building orchestration (issue #1900, Phase 4 slice 2).
|
|
7268
|
+
* Layer 2: extract a trust-gated summary + facts (decisions/commitments/open
|
|
7269
|
+
* questions) for one meeting and persist the survivors. Reuses the shared trust
|
|
7270
|
+
* pipeline (`computeTrustScore` + `decideSmart`), NOT a parallel scorer.
|
|
7558
7271
|
*
|
|
7559
|
-
*
|
|
7560
|
-
*
|
|
7561
|
-
*
|
|
7562
|
-
*
|
|
7563
|
-
*
|
|
7564
|
-
* Gated on `meetings.enabled`: a disabled subsystem builds nothing on every
|
|
7565
|
-
* surface (degradation-matrix row). Degrades within an enabled build too — a
|
|
7566
|
-
* window with no audio yields an empty transcript, and no activity yields a
|
|
7567
|
-
* record with no screen-context section — because `fuseMeeting` handles both.
|
|
7272
|
+
* - `off` → returns immediately; the extractor is NEVER invoked (episode-only).
|
|
7273
|
+
* - `review`→ every candidate lands in the review queue (pending_review).
|
|
7274
|
+
* - `smart` → judge verdict + trust bands route each candidate to active /
|
|
7275
|
+
* review / drop; corroboration (>= 2 transcript sources) boosts trust.
|
|
7568
7276
|
*/
|
|
7569
|
-
|
|
7570
|
-
/**
|
|
7571
|
-
|
|
7572
|
-
|
|
7573
|
-
|
|
7574
|
-
|
|
7575
|
-
|
|
7576
|
-
|
|
7577
|
-
|
|
7578
|
-
|
|
7579
|
-
|
|
7580
|
-
|
|
7581
|
-
|
|
7582
|
-
|
|
7583
|
-
}
|
|
7584
|
-
|
|
7585
|
-
|
|
7586
|
-
|
|
7587
|
-
|
|
7588
|
-
|
|
7589
|
-
|
|
7590
|
-
|
|
7591
|
-
|
|
7592
|
-
|
|
7593
|
-
|
|
7594
|
-
|
|
7595
|
-
|
|
7596
|
-
|
|
7597
|
-
|
|
7598
|
-
|
|
7599
|
-
|
|
7600
|
-
|
|
7601
|
-
|
|
7602
|
-
|
|
7603
|
-
|
|
7604
|
-
|
|
7605
|
-
|
|
7606
|
-
|
|
7607
|
-
|
|
7608
|
-
|
|
7609
|
-
|
|
7610
|
-
|
|
7611
|
-
|
|
7612
|
-
|
|
7613
|
-
|
|
7614
|
-
|
|
7615
|
-
|
|
7616
|
-
|
|
7617
|
-
|
|
7618
|
-
|
|
7619
|
-
|
|
7620
|
-
|
|
7621
|
-
|
|
7622
|
-
|
|
7623
|
-
|
|
7624
|
-
|
|
7625
|
-
|
|
7626
|
-
* maintenance) regenerates the missing memories. Carries no raw exception text —
|
|
7627
|
-
* only the generic rejection message or the generator's own warning strings.
|
|
7628
|
-
*/
|
|
7629
|
-
memoryWarning?: string;
|
|
7630
|
-
/**
|
|
7631
|
-
* Deterministic episode-memory counts, present only when a `memoryGenerator`
|
|
7632
|
-
* was injected. One recall-anchor episode is written per built record (idempotent).
|
|
7633
|
-
*/
|
|
7634
|
-
episodes?: MeetingEpisodeGenResult;
|
|
7635
|
-
/**
|
|
7636
|
-
* Trust-gated summary/fact counts (decisions, commitments, questions, and the
|
|
7637
|
-
* synthesized summary), present only when a `memoryGenerator` with summary deps
|
|
7638
|
-
* ran and `summaryMode !== "off"`. Aggregated across the day's records.
|
|
7639
|
-
*/
|
|
7640
|
-
facts?: MeetingsDayFactGenResult;
|
|
7641
|
-
}
|
|
7642
|
-
/** Optional side effects the builder fires after a day build. */
|
|
7643
|
-
interface MeetingsBuilderHooks {
|
|
7644
|
-
/**
|
|
7645
|
-
* Invoked once per build when records changed (`built > 0 || removed > 0`).
|
|
7646
|
-
* Meeting records live inside the QMD collection root for full-text search,
|
|
7647
|
-
* so a host that wants them discoverable immediately (rather than at the next
|
|
7648
|
-
* scheduled reindex) supplies a reindex here. No-op when omitted — records are
|
|
7649
|
-
* still picked up by the next index update.
|
|
7650
|
-
*/
|
|
7651
|
-
reindex?(summary: MeetingsDayBuildSummary): void | Promise<void>;
|
|
7652
|
-
}
|
|
7653
|
-
/** Orchestrates a store-backed build of a day's meetings. */
|
|
7654
|
-
declare class MeetingsBuilder {
|
|
7655
|
-
private readonly opts;
|
|
7656
|
-
constructor(opts: {
|
|
7657
|
-
source: MeetingsDaySource;
|
|
7658
|
-
store: MeetingRecordStore;
|
|
7659
|
-
config: MeetingsConfig;
|
|
7660
|
-
fusionOptions?: MeetingFusionOptions;
|
|
7661
|
-
hooks?: MeetingsBuilderHooks;
|
|
7662
|
-
/**
|
|
7663
|
-
* When present, the memory-generation layer runs after the record-store
|
|
7664
|
-
* writes: deterministic recall-anchor episodes per built record, the
|
|
7665
|
-
* trust-gated summary/facts layer, and retract-on-removal — all behind the
|
|
7666
|
-
* `MeetingMemoryGenerator` seam (issue #1900). Omitted → pure
|
|
7667
|
-
* detect+fuse+store with no memory writes. The engine depends only on this
|
|
7668
|
-
* interface, never on the memory-gen module.
|
|
7669
|
-
*/
|
|
7670
|
-
memoryGenerator?: MeetingMemoryGenerator;
|
|
7671
|
-
});
|
|
7672
|
-
buildDay(date: string): Promise<MeetingsDayBuildSummary>;
|
|
7673
|
-
/**
|
|
7674
|
-
* Pick the existing same-day record whose window best overlaps `meeting` and
|
|
7675
|
-
* reuse its id — but ONLY when adoption is safe: the windows substantially
|
|
7676
|
-
* coincide (overlap covers a majority of the shorter window), OR a corroborating
|
|
7677
|
-
* identity signal (same app, same title, or a shared transcript source) is
|
|
7678
|
-
* BACKED by a non-marginal overlap (>= a quarter of the shorter window). Coarse
|
|
7679
|
-
* identity signals alone never license adoption across a thin sliver of overlap,
|
|
7680
|
-
* or two genuinely different back-to-back same-app meetings would overwrite each
|
|
7681
|
-
* other's record and `show <old-id>` would point at the wrong meeting. Candidate
|
|
7682
|
-
* selection is deterministic (max overlap, then earliest start, then id).
|
|
7683
|
-
* Returns the detector's fresh id when nothing qualifies.
|
|
7684
|
-
*/
|
|
7685
|
-
private adoptExistingId;
|
|
7686
|
-
}
|
|
7277
|
+
declare function generateMeetingSummaryFacts(record: MeetingRecord, config: MeetingsConfig, deps: MeetingSummaryDeps): Promise<MeetingSummaryResult>;
|
|
7278
|
+
/**
|
|
7279
|
+
* Storage capabilities `createMeetingMemoryWriter` needs, satisfied structurally
|
|
7280
|
+
* by `StorageManager`. Kept narrow (the same rationale as the wearables writer)
|
|
7281
|
+
* so this module performs NO direct fs and never touches the secure-store key.
|
|
7282
|
+
*/
|
|
7283
|
+
interface MeetingMemoryStorageIo {
|
|
7284
|
+
writeSealedMemory: MeetingMemoryWriter["writeSealedMemory"];
|
|
7285
|
+
readAllMemories(): Promise<Array<{
|
|
7286
|
+
path: string;
|
|
7287
|
+
frontmatter: {
|
|
7288
|
+
id: string;
|
|
7289
|
+
source: string;
|
|
7290
|
+
status?: string;
|
|
7291
|
+
};
|
|
7292
|
+
content: string;
|
|
7293
|
+
}>>;
|
|
7294
|
+
invalidateMemory(id: string): Promise<boolean>;
|
|
7295
|
+
}
|
|
7296
|
+
/**
|
|
7297
|
+
* Build the meeting memory writer used by production builds. Mirrors
|
|
7298
|
+
* `createWearableMemoryWriter`: the storage fact-hash index only covers
|
|
7299
|
+
* category "fact", so meeting episodes (`moment`) and decisions/commitments
|
|
7300
|
+
* dedup by a bounded, source-scoped content scan over `meeting:<id>`-tagged
|
|
7301
|
+
* memories — without it, a forced/retried day re-writes identical episodes and
|
|
7302
|
+
* facts (issue #1900).
|
|
7303
|
+
*/
|
|
7304
|
+
declare function createMeetingMemoryWriter(storage: MeetingMemoryStorageIo): MeetingMemoryWriter;
|
|
7305
|
+
/**
|
|
7306
|
+
* Concrete `MeetingMemoryGenerator` for the builder's memory seam (issue #1900
|
|
7307
|
+
* decouple). Implements `onRecordsBuilt` by driving the EXISTING episode/fact/
|
|
7308
|
+
* retract logic behind the interface the deterministic engine depends on, and
|
|
7309
|
+
* routes each built id by the partition the engine computed from the store's
|
|
7310
|
+
* per-record write result (round 2):
|
|
7311
|
+
*
|
|
7312
|
+
* - `removedIds` — retire the deleted meetings' memories so recall never
|
|
7313
|
+
* surfaces a meeting `show <id>` can no longer load;
|
|
7314
|
+
* - `updatedIds` — the record changed under a kept id: retract the prior
|
|
7315
|
+
* episode/summary for `meeting:<id>` FIRST, then regenerate from the new
|
|
7316
|
+
* record, so recall is refreshed (not duplicated, not left stale);
|
|
7317
|
+
* - `unchangedIds` — the stored record was byte-identical this rebuild: SKIP
|
|
7318
|
+
* all generation for it (no episode probe, no extractor call, no rewrite) so
|
|
7319
|
+
* an idempotent rebuild fires zero LLM calls and writes nothing;
|
|
7320
|
+
* - new ids (built minus unchanged minus updated) — generate fresh.
|
|
7321
|
+
*
|
|
7322
|
+
* `reindexNeeded` fires when the regenerated records wrote new episodes/facts;
|
|
7323
|
+
* the builder additionally reindexes on removed/built counts, so a retract-only
|
|
7324
|
+
* rebuild still reindexes.
|
|
7325
|
+
*
|
|
7326
|
+
* `config` is captured here (not passed through `onRecordsBuilt`) because the
|
|
7327
|
+
* seam input carries record partitions, while the summary/facts layer needs
|
|
7328
|
+
* `summaryMode` and the trust bands.
|
|
7329
|
+
*/
|
|
7330
|
+
declare function createMeetingMemoryGenerator(writer: MeetingMemoryWriter, config: MeetingsConfig, summaryDeps?: {
|
|
7331
|
+
extractor: MeetingSummaryExtractor;
|
|
7332
|
+
judge?: MeetingSummaryJudge;
|
|
7333
|
+
}): MeetingMemoryGenerator;
|
|
7687
7334
|
|
|
7688
7335
|
/**
|
|
7689
7336
|
* Meetings CLI runner (issue #1900) — one implementation shared by every CLI
|
|
@@ -7720,6 +7367,149 @@ interface MeetingsCliDeps {
|
|
|
7720
7367
|
/** Run a meetings CLI command. Returns a process exit code; all output via `io`. */
|
|
7721
7368
|
declare function runMeetingsCliCommand(deps: MeetingsCliDeps, args: string[], io: MeetingsCliIo): Promise<number>;
|
|
7722
7369
|
|
|
7370
|
+
/**
|
|
7371
|
+
* Concrete meetings day source (issue #1900) — the wiring slice that feeds the
|
|
7372
|
+
* builder from the ESTABLISHED stores rather than fixtures:
|
|
7373
|
+
* - screen activity snapshots (the activity SQLite store), and
|
|
7374
|
+
* - wearable day transcripts (the wearable day-store), reconstructed into the
|
|
7375
|
+
* shared fusion conversation shape via `reconstructFusionInputs`.
|
|
7376
|
+
*
|
|
7377
|
+
* All timestamps stay UTC and every day read is a half-open [start, end)
|
|
7378
|
+
* window resolved by `activityDayWindow(date, timezone)`, so the local day the
|
|
7379
|
+
* caller asked for maps to one deterministic UTC window shared by both signals.
|
|
7380
|
+
*
|
|
7381
|
+
* Fidelity caveat (inherited, documented): a wearable day transcript is stored
|
|
7382
|
+
* RENDERED at minute precision, so `reconstructFusionInputs` rebuilds each clock
|
|
7383
|
+
* as `${date}THH:MM:00Z` — the same reconstruction the fusion subsystem uses.
|
|
7384
|
+
* App spans come from true-UTC activity instants; the two frames coincide when
|
|
7385
|
+
* the activity timezone is UTC (the default). Under a non-UTC timezone the
|
|
7386
|
+
* app+audio overlap carries that reconstruction offset, exactly as wearable
|
|
7387
|
+
* fusion does; audio-only detection is unaffected. Provider-meeting boundaries
|
|
7388
|
+
* (Granola/Fireflies explicit titles) are a connector concern not present in the
|
|
7389
|
+
* reconstructed day transcript, so audio windows never fabricate a provider flag.
|
|
7390
|
+
*/
|
|
7391
|
+
|
|
7392
|
+
/** Reads the day's screen-activity snapshots. Satisfied by `ActivityStore`. */
|
|
7393
|
+
interface MeetingsActivityReader {
|
|
7394
|
+
/** Snapshots whose capture instant is in the half-open [start, end) window. */
|
|
7395
|
+
listSnapshotsForDay(machine: string | null, startUtcInclusive: string, endUtcExclusive: string): ActivitySnapshot[] | Promise<ActivitySnapshot[]>;
|
|
7396
|
+
}
|
|
7397
|
+
/** One stored wearable day transcript body, ready for reconstruction. */
|
|
7398
|
+
interface WearableDayBody {
|
|
7399
|
+
source: string;
|
|
7400
|
+
body: string;
|
|
7401
|
+
escaped?: boolean;
|
|
7402
|
+
/**
|
|
7403
|
+
* IANA timezone the body's `HH:MM` clocks were rendered in (from the
|
|
7404
|
+
* transcript frontmatter). Empty when the transcript stored no timezone —
|
|
7405
|
+
* the clocks are then treated as UTC, matching the fusion identity guard.
|
|
7406
|
+
*/
|
|
7407
|
+
timezone?: string;
|
|
7408
|
+
}
|
|
7409
|
+
/** Reads the day's rendered wearable transcript bodies (one per source). */
|
|
7410
|
+
interface MeetingsWearableReader {
|
|
7411
|
+
readDayBodies(date: string): Promise<WearableDayBody[]>;
|
|
7412
|
+
}
|
|
7413
|
+
/** Narrow slice of `StorageManager` the wearable reader needs. */
|
|
7414
|
+
interface WearableDayTranscriptStore {
|
|
7415
|
+
listWearableTranscriptDays(sourceId?: string): Promise<Array<{
|
|
7416
|
+
source: string;
|
|
7417
|
+
date: string;
|
|
7418
|
+
}>>;
|
|
7419
|
+
readWearableDayTranscript(sourceId: string, date: string): Promise<string | null>;
|
|
7420
|
+
}
|
|
7421
|
+
/**
|
|
7422
|
+
* Build a wearable reader over a storage manager: discover which sources stored
|
|
7423
|
+
* a transcript for the day (store-driven, not config-driven, so a day is read
|
|
7424
|
+
* exactly from what exists on disk), then read + parse each body.
|
|
7425
|
+
*/
|
|
7426
|
+
declare function storageWearableDayReader(store: WearableDayTranscriptStore): MeetingsWearableReader;
|
|
7427
|
+
/**
|
|
7428
|
+
* Derive meeting-app foreground spans from the day's snapshots. A span is a
|
|
7429
|
+
* maximal run of consecutive (time-ordered) snapshots on ONE capture machine
|
|
7430
|
+
* whose app/title/url matches any configured pattern; the next non-matching
|
|
7431
|
+
* snapshot ends the run AND bounds its end (so a lone matching snapshot still
|
|
7432
|
+
* yields a non-zero span). A trailing run at the END of a machine's snapshots
|
|
7433
|
+
* has no following non-matching tick to bound it, so a lone trailing tick is
|
|
7434
|
+
* extended by the machine's sampling cadence rather than collapsing to a
|
|
7435
|
+
* zero-length point the detector's `isFinitePair` rejects. Brief app switches
|
|
7436
|
+
* during a call surface as adjacent spans and the detector's `mergeGapMinutes`
|
|
7437
|
+
* re-merges them.
|
|
7438
|
+
*/
|
|
7439
|
+
declare function deriveAppSpans(snapshots: readonly ActivitySnapshot[], appPatterns: readonly string[]): MeetingAppSpan[];
|
|
7440
|
+
/**
|
|
7441
|
+
* Derive audio windows from reconstructed conversations. Each conversation is
|
|
7442
|
+
* one window on its source; `distinctNonWearerSpeakers` counts distinct
|
|
7443
|
+
* non-self speaker labels (the audio-only detection rule), and the end is the
|
|
7444
|
+
* conversation end when known, else the latest segment instant, else the start.
|
|
7445
|
+
*/
|
|
7446
|
+
declare function buildAudioWindows(conversations: readonly FusionConversationInput[]): MeetingAudioWindow[];
|
|
7447
|
+
/**
|
|
7448
|
+
* Reads a day's real activity + wearable signals and assembles the
|
|
7449
|
+
* {@link MeetingDayData} the builder consumes. Injected readers keep this
|
|
7450
|
+
* testable against fixtures and free of direct filesystem access.
|
|
7451
|
+
*/
|
|
7452
|
+
declare class ActivityWearablesMeetingsDaySource implements MeetingsDaySource {
|
|
7453
|
+
private readonly deps;
|
|
7454
|
+
constructor(deps: {
|
|
7455
|
+
/**
|
|
7456
|
+
* Screen-activity reader. Optional (issue #2123): only the machine-owner
|
|
7457
|
+
* (default) namespace consumes machine-scoped activity; every other caller
|
|
7458
|
+
* namespace runs audio-only, so it is constructed with no activity reader
|
|
7459
|
+
* and the load degrades to zero screen snapshots.
|
|
7460
|
+
*/
|
|
7461
|
+
activity?: MeetingsActivityReader;
|
|
7462
|
+
wearables: MeetingsWearableReader;
|
|
7463
|
+
config: MeetingsConfig;
|
|
7464
|
+
/** IANA timezone resolving the local day → UTC window (activity's zone). */
|
|
7465
|
+
timezone: string;
|
|
7466
|
+
});
|
|
7467
|
+
loadDayData(date: string): Promise<MeetingDayData>;
|
|
7468
|
+
}
|
|
7469
|
+
|
|
7470
|
+
/**
|
|
7471
|
+
* Debounced meetings build scheduler (issue #1900) — the tail step after a
|
|
7472
|
+
* sync. A completed activity or wearable sync for a day calls
|
|
7473
|
+
* `requestBuild(date)`; this coalesces bursts (a wearable window sync touches
|
|
7474
|
+
* several days; an activity tick and a wearable tick can land together) onto a
|
|
7475
|
+
* per-day trailing-edge timer so the day is (re)built at most once per debounce
|
|
7476
|
+
* window instead of once per sync signal.
|
|
7477
|
+
*
|
|
7478
|
+
* Single-flight per day: a build in flight for a date defers a fresh request to
|
|
7479
|
+
* a follow-up build after it settles, so a late sync signal is never dropped.
|
|
7480
|
+
* `debounceMs: 0` builds on the next tick (no coalescing window). Errors are
|
|
7481
|
+
* isolated per day and routed to `onError` — a failed build must never reject
|
|
7482
|
+
* the sync path that requested it.
|
|
7483
|
+
*/
|
|
7484
|
+
interface MeetingsBuildSchedulerOptions {
|
|
7485
|
+
/** Trailing-edge coalescing window (ms). 0 = build on the next tick. */
|
|
7486
|
+
debounceMs: number;
|
|
7487
|
+
/** Build one day. Rejections are caught and routed to `onError`. */
|
|
7488
|
+
build(date: string): Promise<unknown>;
|
|
7489
|
+
/** Observe a build failure (logging). Never called for success. */
|
|
7490
|
+
onError?(date: string, err: unknown): void;
|
|
7491
|
+
}
|
|
7492
|
+
declare class MeetingsBuildScheduler {
|
|
7493
|
+
private readonly opts;
|
|
7494
|
+
private readonly timers;
|
|
7495
|
+
/** Days whose timer has fired and are running (single-flight promise). */
|
|
7496
|
+
private readonly running;
|
|
7497
|
+
/** Days requested again while their build was in flight (trailing rebuild). */
|
|
7498
|
+
private readonly rerun;
|
|
7499
|
+
private disposed;
|
|
7500
|
+
constructor(opts: MeetingsBuildSchedulerOptions);
|
|
7501
|
+
/** Request a (debounced) build for a day. Idempotent within the window. */
|
|
7502
|
+
requestBuild(date: string): void;
|
|
7503
|
+
/** Run every armed timer's build now and await completion (teardown/tests). */
|
|
7504
|
+
flush(): Promise<void>;
|
|
7505
|
+
/** Cancel all armed timers without running them. */
|
|
7506
|
+
dispose(): void;
|
|
7507
|
+
/** True while any day has an armed timer or an in-flight build. */
|
|
7508
|
+
get pending(): boolean;
|
|
7509
|
+
private fire;
|
|
7510
|
+
private runBuild;
|
|
7511
|
+
}
|
|
7512
|
+
|
|
7723
7513
|
type LocalSessionRole = "user" | "assistant" | "tool" | "system" | "other";
|
|
7724
7514
|
interface LocalSessionTurn {
|
|
7725
7515
|
role: LocalSessionRole;
|
|
@@ -8036,4 +7826,4 @@ declare function forkCapsule(opts: ForkCapsuleOptions): Promise<ForkCapsuleResul
|
|
|
8036
7826
|
*/
|
|
8037
7827
|
declare function readForkLineage(targetRoot: string, forkId: string): Promise<ForkLineage | null>;
|
|
8038
7828
|
|
|
8039
|
-
export { ACTIVITY_DIGEST_FORMAT_VERSION, ACTIVITY_DIR_NAME, ACTIVITY_SYNC_DEFAULT_INTERVAL_MS, ActivityConfig, ActivityDayDigest, ActivityDayMeta, ActivityHttpSourceClient, type ActivityHttpSourceClientOptions, type ActivityIndexRefresher, type ActivityMemoryGenerationDeps, type ActivityMemoryGenerationResult, type ActivityMemoryWriter, ActivitySnapshot, ActivitySnapshotPage, ActivitySourceCheck, ActivitySourceClient, ActivitySourceConfig, type ActivitySourceRunItem, ActivityStore, type ActivitySyncOptions, type ActivitySyncRegistration, type ActivitySyncResult, type ActivitySyncRunOptions, type ActivitySyncRunSummary, ActivitySyncScheduler, type ActivitySyncSchedulerOptions, type ArchitectureHintsResult, type AuditEntry, type BinaryAssetRecord, type BinaryAssetStatus, type BinaryLifecycleConfig, type BinaryLifecycleManifest, type BinaryStorageBackend, type BinaryStorageBackendConfig, ClaudeCodeMemoryExtensionPublisher, type CleanupResult, CodexMemoryExtensionPublisher, type CodingNamespaceOverlay, type CodingScopeDescription, type CollectLocalSessionSummariesOptions, type CompiledCorrectionRule, type CompiledRedactionRule, type ConflictEntry, type ContradictionOptions, type ContradictionPair, type ContradictionResult$1 as CurateContradictionResult, type DuplicateResult as CurateDuplicateResult, type CurateOptions, type CurateResult, type CuratedStatement, DEFAULT_GRACE_PERIOD_DAYS, DEFAULT_MAX_BINARY_SIZE_BYTES, DEFAULT_MEETINGS_CONFIG, DEFAULT_MEETINGS_DETECTION_CONFIG, DEFAULT_MEETING_APP_PATTERNS, DEFAULT_PROXIMITY_GAP_MS, DEFAULT_REDACTION_RULES, DEFAULT_SCAN_PATTERNS, DEFAULT_SOURCE_TRUST, DEFAULT_TAXONOMY, DEFAULT_WINDOW_TOLERANCE_MS, type DedupOptions, type DedupResult, DetectedMeeting, DiscoveredExtension, type DocFile, type DriveChange, type DriveChangesPage, type DriveFileMetadata, type DuplicatePair, EngramAccessService, type FileChange, FilesystemBackend, type ForkCapsuleOptions, type ForkCapsuleResult, type ForkLineage, type FuseClusterResult, FusedDisagreement, FusedMeeting, FusedSegment, FusedSpeaker, FusionConversationInput, FusionDayResult, FusionOptions, GOOGLE_DRIVE_CONNECTOR_ID, GOOGLE_DRIVE_CURSOR_KIND, DEFAULT_POLL_INTERVAL_MS as GOOGLE_DRIVE_DEFAULT_POLL_INTERVAL_MS, type GenerateOptions, type GenerateResult, type GitContext, type GitInvoker, type GoogleDriveClient, type GoogleDriveClientFactory, type GoogleDriveConnectorConfig, type GoogleDriveSyncResult, HermesMemoryExtensionPublisher, type IngestionPlan, JudgeCandidate, JudgeVerdict, KNOWN_WEARABLE_SOURCE_IDS, type LanguageInfo, LiveConnector, LiveConnectorRegistry, LiveConnectorRegistryError, type LocalSessionAdapterInput, type LocalSessionAdapterOptions, type LocalSessionParseWarning, type LocalSessionParsedFile, type LocalSessionRole, type LocalSessionSourceAdapter, type LocalSessionSummaryCliOptions, type LocalSessionSummaryReport, type LocalSessionTurn, MEETINGS_DIR_NAME, MEETING_FORMAT_VERSION, MEETING_KIND, MeetingActivitySnapshot, MeetingBuildInput, type MeetingBuildOutcome, type MeetingDayData, MeetingDetectionSource, type MeetingEpisodeGenResult, type MeetingFusionOptions, type MeetingMemoryGenerator, type MeetingMemoryOutcome, type MeetingMemoryWriter, MeetingRecord, type MeetingRecordBase, type MeetingRecordFileIo, MeetingRecordStore, type MeetingRecordSummary, type MeetingSaveResult, MeetingsBuilder, type MeetingsBuilderHooks, type MeetingsCliDeps, type MeetingsCliIo, MeetingsConfig, type MeetingsDayBuildSummary, type MeetingsDayFactGenResult, type MeetingsDaySource, MeetingsDetectionConfig, MeetingsDetectionInput, MeetingsInputError, MemoryCategory, type MemoryEntry, type MemoryExtensionPublisher, MemoryWriteResult, type MergeResult, NOTION_CONNECTOR_ID, NOTION_CURSOR_KIND, NOTION_DEFAULT_POLL_INTERVAL_MS, NoneBackend, type NotionConnectorConfig, type OnboardOptions, type OnboardResult, PUBLISHERS, type PackReviewContextStructuralInput, type PipelineResult, PluginConfig, type ProjectShape, type ProvenanceEntry, type PublishContext, type PublishResult, type PublisherCapabilities, REDACTION_PLACEHOLDER, RELAY_DEMO_MISSION_ID, RELAY_DEMO_NAMESPACE, RELAY_MISSION_DEFAULT_EVENT_LIMIT, RELAY_MISSION_MAX_EVENTS, RELAY_MISSION_MAX_EVENT_LIMIT, RELAY_MISSION_MAX_FILE_BYTES, RELAY_MISSION_MAX_LINE_BYTES, RELAY_MISSION_SCHEMA_VERSION, REMNIC_CITATION_FORMAT, REMNIC_MCP_TOOL_INVENTORY, REMNIC_RECALL_DECISION_RULES, REMNIC_SEMANTIC_OVERVIEW, type RedactionConfig, type RedactionReport, type RedactionRuleConfig, type RelayAgentOutputSnapshot, type RelayAgentSnapshot, type RelayConflictSnapshot, type RelayCorrectionSnapshot, type RelayDecisionSnapshot, type RelayEvidenceRef, RelayEvidenceRefSchema, type RelayMissionAppendAccessInput, type RelayMissionAppendAccessOutput, type RelayMissionAppendResult, type RelayMissionEvent, type RelayMissionEventInput, RelayMissionEventInputSchema, RelayMissionEventSchema, type RelayMissionPayload, RelayMissionPayloadSchema, type RelayMissionReadAccessInput, type RelayMissionReadAccessOutput, type RelayMissionReadOptions, RelayMissionReadOptionsSchema, type RelayMissionSnapshot, type RelayMissionStatus, RelayMissionStore, RelayMissionStoreError, type RelayMissionStoreErrorCode, type RelayMissionStoreOptions, type RelayPropagationSnapshot, type RelayRecallSnapshot, type RelayTestSnapshot, ResolverDecision, type ReviewAction, type ReviewCandidate, type ReviewContext, type ReviewItem, type ReviewListResult, type ReviewOptions, type ReviewResult, SealedMemoryEnvelope, type SessionSummaryDraft, type SessionSummaryExcerpt, type Space, type SpaceKind, type SpaceManifest, type SpacePromoteResult, type SpacePullResult, type SpacePushResult, type SpaceShareResult, type SpaceSwitchResult, SpeakerRegistry, type StatementProvenance, StorageManager, type StructuralContextDegradation, type StructuralContextErrorCode, type StructuralContextProvider, type StructuralProviderStatus, type StructuralSpawnFn, type StructuralSymbol, type SubprocessProviderOptions, type SymbolsForDiffErr, type SymbolsForDiffOk, type SymbolsForDiffResult, SyncIncrementalResult, type SyncOptions, type SyncResult, type SyncState, TRANSCRIPT_FORMAT_VERSION, Taxonomy, TokenEntry, type TrainingExportAdapter, type TrainingExportOptions, type TrainingExportRecord, type TranscriptSegmentMatch, type TreeNode, WEARABLES_DIR_NAME, WearableCleanupSettings, type WearableConnectorFactory, type WearableConnectorFactoryOptions, type WearableConnectorRegistration, WearableConversation, WearableCorrectionRule, WearableDayTranscript, WearableDayTranscriptMeta, WearableFusionConfig, WearableSourceConnector, WearableSourceSettings, type WearableSourceSyncState, type WearableSyncStateFile, type WearablesCliIo, WearablesConfig, WearablesInputError, WearablesService, activityCursorKey, activityDatabasePath, activityDayWindow, activityDigestPath, appendRelayMissionEvent, applyActivitySchema, applyCorrections, applyOffTheRecord, assertValidTimezone, bodyIsEscaped, branchNamespaceName, buildMeetingRecordsForDay, buildProcedureMarkdownBody, buildProcedureRecallSection, cleanConversation, clearStructuralContextProvidersForTest, clearTrainingExportAdapters, clearWearableConnectors, clusterConversations, collapseImmediateRepeats, collectLocalSessionSummaries, compareRelayEvents, compileCorrectionRule, compileCorrectionRules, compileRedactionPatterns, compileRedactionRules, composeActivityDigestBody, composeActivityDigestMeta, composeDayTranscriptBody, composeDayTranscriptMeta, composeMeetingRecord, convertMemoriesToRecords, correctionsFilePath, createBackend, createGoogleDriveConnector, createNotionConnector, createRelayMissionFixture, createSpace, createSubprocessStructuralProvider, curate, decodeTranscriptBody, defaultActivityConfig, defaultGoogleDriveClientFactory, defaultWearableCleanupSettings, defaultWearableFusionConfig, defaultWearableSourceSettings, defaultWearablesConfig, deleteSpace, describeCodingScope, describeErrorForOperator, describeStructuralProviderStatus, detectMeetings, emptyManifest, emptySyncState, ensureActivityStateDir, ensureBuiltInWearableConnectors, escapeSegmentText, findContradictions, findDuplicates, forkCapsule, fuseCluster, fuseDay, fuseMeeting, fusionInputsFromConversations, generateActivityMemories, generateContextTree, generateResolverDocument, getActiveSpace, getAuditLog, getLocalSessionSourceAdapter, getManifestPath, getSpacesDir, getStructuralContextProvider, getTaxonomyDir, getTaxonomyFilePath, getTrainingExportAdapter, getWearableConnector, hashActivityBody, hashTranscriptBody, hostIdForConnector, isEligibleActivityFact, isLowQualitySegment, isReviewPrompt, isValidActivityDate, isValidTranscriptDate, listLocalSessionSourceAdapters, listReviewItems, listSpaces, listTrainingExportAdapters, listWearableConnectors, loadCorrectionsFile, loadManifest, loadSyncState, loadTaxonomy, manifestDir, manifestPath, matchesPatterns, meetingId, meetingIdDate, mergeSpaces, normalizeOriginUrl, onboard, openActivityDatabase, packReviewContext, packReviewContextStructural, parseActivityConfig, parseActivityDigest, parseDayTranscript, parseFlexibleIsoTimestamp, parseIsoOffsetTimestamp, parseIsoUtcTimestamp, parseMeetingRecordSummary, parseMeetingsConfig, parseProcedureStepsFromBody, parseTouchedFiles, parseTranscriptSegmentLine, parseWearablesConfig, performReview, probeStructuralProviderForDoctor, projectNamespaceName, promoteSpace, publisherFor, publisherForConnector, pullFromSpace, pushToSpace, rankReviewCandidates, readForkLineage, readManifest, readRelayMission, reconstructFusionInputs, redactSessionSummaryText, redactText, reduceRelayMission, refreshActivityIndex, registerLocalSessionSourceAdapter, registerPublisher, registerStructuralContextProvider, registerTrainingExportAdapter, registerWearableConnector, relayMissionAppendOperation, relayMissionReadOperation, relayMissionReceiptDigest, renderExtensionsBlock, renderExtensionsFooter, renderStructuralProviderStatusLine, resolveActivitySyncDates, resolveCategory, resolveCodingNamespaceOverlay, resolveGitContext, runActivitySyncOnce, runBinaryLifecyclePipeline, runLocalSessionSummaryCliCommand, runMeetingsCliCommand, runWearablesCliCommand, saveCorrectionsFile, saveManifest, saveSyncState, saveTaxonomy, scanForBinaries, serializeActivityDigest, serializeDayTranscript, serializeMeetingRecord, shareSpace, stableHash, stripFillerTokens, structuralProviderActive, switchSpace, syncActivitySource, syncChanges, syncStateFilePath, toStructuralContextDegradation, unescapeSegmentText, unescapeSpeakerLabel, updateSourceSyncState, validateActivityBaseUrl, validateGoogleDriveConfig, validateNotionConfig, validateSlug, validateTaxonomy, watchForChanges, writeManifest };
|
|
7829
|
+
export { ACTIVITY_DIGEST_FORMAT_VERSION, ACTIVITY_DIR_NAME, ACTIVITY_SYNC_DEFAULT_INTERVAL_MS, ActivityConfig, ActivityDayDigest, ActivityDayMeta, ActivityHttpSourceClient, type ActivityHttpSourceClientOptions, type ActivityIndexRefresher, type ActivityMemoryGenerationDeps, type ActivityMemoryGenerationResult, type ActivityMemoryWriter, ActivitySnapshot, ActivitySnapshotPage, ActivitySourceCheck, ActivitySourceClient, ActivityStore, type ActivitySyncOptions, type ActivitySyncRegistration, type ActivitySyncResult, ActivitySyncRunSummary, ActivitySyncScheduler, type ActivitySyncSchedulerOptions, ActivityWearablesMeetingsDaySource, type ArchitectureHintsResult, type AuditEntry, type BinaryAssetRecord, type BinaryAssetStatus, type BinaryLifecycleConfig, type BinaryLifecycleManifest, type BinaryStorageBackend, type BinaryStorageBackendConfig, ClaudeCodeMemoryExtensionPublisher, type CleanupResult, CodexMemoryExtensionPublisher, type CodingNamespaceOverlay, type CodingScopeDescription, type CollectLocalSessionSummariesOptions, type CompiledCorrectionRule, type CompiledRedactionRule, type ConflictEntry, type ContradictionOptions, type ContradictionPair, type ContradictionResult$1 as CurateContradictionResult, type DuplicateResult as CurateDuplicateResult, type CurateOptions, type CurateResult, type CuratedStatement, DEFAULT_GRACE_PERIOD_DAYS, DEFAULT_MAX_BINARY_SIZE_BYTES, DEFAULT_MEETINGS_CONFIG, DEFAULT_MEETINGS_DETECTION_CONFIG, DEFAULT_MEETING_APP_PATTERNS, DEFAULT_PROXIMITY_GAP_MS, DEFAULT_REDACTION_RULES, DEFAULT_SCAN_PATTERNS, DEFAULT_SOURCE_TRUST, DEFAULT_TAXONOMY, DEFAULT_WINDOW_TOLERANCE_MS, type DedupOptions, type DedupResult, DetectedMeeting, DiscoveredExtension, type DocFile, type DriveChange, type DriveChangesPage, type DriveFileMetadata, type DuplicatePair, EngramAccessService, type FileChange, FilesystemBackend, type ForkCapsuleOptions, type ForkCapsuleResult, type ForkLineage, type FuseClusterResult, FusedDisagreement, FusedSegment, FusedSpeaker, FusionConversationInput, FusionDayResult, FusionOptions, GOOGLE_DRIVE_CONNECTOR_ID, GOOGLE_DRIVE_CURSOR_KIND, DEFAULT_POLL_INTERVAL_MS as GOOGLE_DRIVE_DEFAULT_POLL_INTERVAL_MS, type GenerateOptions, type GenerateResult, type GitContext, type GitInvoker, type GoogleDriveClient, type GoogleDriveClientFactory, type GoogleDriveConnectorConfig, type GoogleDriveSyncResult, HermesMemoryExtensionPublisher, type IngestionPlan, JudgeCandidate, JudgeVerdict, KNOWN_WEARABLE_SOURCE_IDS, type LanguageInfo, LiveConnector, LiveConnectorRegistry, LiveConnectorRegistryError, type LocalSessionAdapterInput, type LocalSessionAdapterOptions, type LocalSessionParseWarning, type LocalSessionParsedFile, type LocalSessionRole, type LocalSessionSourceAdapter, type LocalSessionSummaryCliOptions, type LocalSessionSummaryReport, type LocalSessionTurn, MEETING_SOURCE_PREFIX, MeetingAppSpan, MeetingAudioWindow, MeetingDayData, MeetingEpisodeGenResult, type MeetingFactCandidate, MeetingMemoryGenerator, type MeetingMemoryStorageIo, MeetingMemoryWriter, MeetingRecord, MeetingRecordStore, type MeetingSummaryDeps, type MeetingSummaryExtractor, type MeetingSummaryJudge, type MeetingSummaryResult, type MeetingsActivityReader, MeetingsBuildScheduler, type MeetingsBuildSchedulerOptions, MeetingsBuilder, type MeetingsCliDeps, type MeetingsCliIo, MeetingsConfig, MeetingsDaySource, MeetingsDetectionConfig, MeetingsDetectionInput, MeetingsInputError, type MeetingsWearableReader, MemoryCategory, type MemoryEntry, type MemoryExtensionPublisher, type MergeResult, NOTION_CONNECTOR_ID, NOTION_CURSOR_KIND, NOTION_DEFAULT_POLL_INTERVAL_MS, NoneBackend, type NotionConnectorConfig, type OnboardOptions, type OnboardResult, PUBLISHERS, type PackReviewContextStructuralInput, type PipelineResult, PluginConfig, type ProjectShape, type ProvenanceEntry, type PublishContext, type PublishResult, type PublisherCapabilities, REDACTION_PLACEHOLDER, RELAY_DEMO_MISSION_ID, RELAY_DEMO_NAMESPACE, RELAY_MISSION_DEFAULT_EVENT_LIMIT, RELAY_MISSION_MAX_EVENTS, RELAY_MISSION_MAX_EVENT_LIMIT, RELAY_MISSION_MAX_FILE_BYTES, RELAY_MISSION_MAX_LINE_BYTES, RELAY_MISSION_SCHEMA_VERSION, REMNIC_CITATION_FORMAT, REMNIC_MCP_TOOL_INVENTORY, REMNIC_RECALL_DECISION_RULES, REMNIC_SEMANTIC_OVERVIEW, type RedactionConfig, type RedactionReport, type RedactionRuleConfig, type RelayAgentOutputSnapshot, type RelayAgentSnapshot, type RelayConflictSnapshot, type RelayCorrectionSnapshot, type RelayDecisionSnapshot, type RelayEvidenceRef, RelayEvidenceRefSchema, type RelayMissionAppendAccessInput, type RelayMissionAppendAccessOutput, type RelayMissionAppendResult, type RelayMissionEvent, type RelayMissionEventInput, RelayMissionEventInputSchema, RelayMissionEventSchema, type RelayMissionPayload, RelayMissionPayloadSchema, type RelayMissionReadAccessInput, type RelayMissionReadAccessOutput, type RelayMissionReadOptions, RelayMissionReadOptionsSchema, type RelayMissionSnapshot, type RelayMissionStatus, RelayMissionStore, RelayMissionStoreError, type RelayMissionStoreErrorCode, type RelayMissionStoreOptions, type RelayPropagationSnapshot, type RelayRecallSnapshot, type RelayTestSnapshot, ResolverDecision, type ReviewAction, type ReviewCandidate, type ReviewContext, type ReviewItem, type ReviewListResult, type ReviewOptions, type ReviewResult, SealedMemoryEnvelope, type SessionSummaryDraft, type SessionSummaryExcerpt, type Space, type SpaceKind, type SpaceManifest, type SpacePromoteResult, type SpacePullResult, type SpacePushResult, type SpaceShareResult, type SpaceSwitchResult, SpeakerRegistry, type StatementProvenance, StorageManager, type StructuralContextDegradation, type StructuralContextErrorCode, type StructuralContextProvider, type StructuralProviderStatus, type StructuralSpawnFn, type StructuralSymbol, type SubprocessProviderOptions, type SymbolsForDiffErr, type SymbolsForDiffOk, type SymbolsForDiffResult, SyncIncrementalResult, type SyncOptions, type SyncResult, type SyncState, TRANSCRIPT_FORMAT_VERSION, Taxonomy, TokenEntry, type TrainingExportAdapter, type TrainingExportOptions, type TrainingExportRecord, type TranscriptSegmentMatch, type TreeNode, WEARABLES_DIR_NAME, WearableCleanupSettings, type WearableConnectorFactory, type WearableConnectorFactoryOptions, type WearableConnectorRegistration, WearableConversation, WearableCorrectionRule, type WearableDayBody, WearableDayTranscript, WearableDayTranscriptMeta, type WearableDayTranscriptStore, WearableFusionConfig, WearableSourceConnector, WearableSourceSettings, type WearableSourceSyncState, type WearableSyncStateFile, type WearablesCliIo, WearablesConfig, WearablesInputError, WearablesService, activityCursorKey, activityDayWindow, activityDigestPath, appendRelayMissionEvent, applyCorrections, applyOffTheRecord, assertValidTimezone, bodyIsEscaped, branchNamespaceName, buildAudioWindows, buildProcedureMarkdownBody, buildProcedureRecallSection, builtInConnectorPackageSpecifier, cleanConversation, clearStructuralContextProvidersForTest, clearTrainingExportAdapters, clearWearableConnectors, clusterConversations, collapseImmediateRepeats, collectLocalSessionSummaries, compareRelayEvents, compileCorrectionRule, compileCorrectionRules, compileRedactionPatterns, compileRedactionRules, composeActivityDigestBody, composeActivityDigestMeta, composeDayTranscriptBody, composeDayTranscriptMeta, composeMeetingEpisodeContent, convertMemoriesToRecords, correctionsFilePath, createBackend, createGoogleDriveConnector, createMeetingMemoryGenerator, createMeetingMemoryWriter, createNotionConnector, createRelayMissionFixture, createSpace, createSubprocessStructuralProvider, curate, decodeTranscriptBody, defaultActivityConfig, defaultGoogleDriveClientFactory, defaultWearableCleanupSettings, defaultWearableFusionConfig, defaultWearableSourceSettings, defaultWearablesConfig, deleteSpace, deriveAppSpans, describeCodingScope, describeErrorForOperator, describeStructuralProviderStatus, detectMeetings, emptyManifest, emptySyncState, ensureBuiltInWearableConnectors, escapeSegmentText, findContradictions, findDuplicates, forkCapsule, fuseCluster, fuseDay, fusionInputsFromConversations, generateActivityMemories, generateContextTree, generateMeetingEpisodes, generateMeetingSummaryFacts, generateResolverDocument, getActiveSpace, getAuditLog, getLocalSessionSourceAdapter, getManifestPath, getSpacesDir, getStructuralContextProvider, getTaxonomyDir, getTaxonomyFilePath, getTrainingExportAdapter, getWearableConnector, hashActivityBody, hashTranscriptBody, hostIdForConnector, isEligibleActivityFact, isLowQualitySegment, isReviewPrompt, isValidActivityDate, isValidTranscriptDate, listLocalSessionSourceAdapters, listReviewItems, listSpaces, listTrainingExportAdapters, listWearableConnectors, loadCorrectionsFile, loadManifest, loadSyncState, loadTaxonomy, manifestDir, manifestPath, matchesPatterns, meetingDayTag, meetingId, meetingSourceLabel, mergeSpaces, normalizeOriginUrl, onboard, packReviewContext, packReviewContextStructural, parseActivityConfig, parseActivityDigest, parseDayTranscript, parseFlexibleIsoTimestamp, parseIsoOffsetTimestamp, parseIsoUtcTimestamp, parseMeetingsConfig, parseProcedureStepsFromBody, parseTouchedFiles, parseTranscriptSegmentLine, parseWearablesConfig, performReview, probeStructuralProviderForDoctor, projectNamespaceName, promoteSpace, publisherFor, publisherForConnector, pullFromSpace, pushToSpace, rankReviewCandidates, readForkLineage, readManifest, readRelayMission, reconstructFusionInputs, redactSessionSummaryText, redactText, reduceRelayMission, refreshActivityIndex, registerLocalSessionSourceAdapter, registerPublisher, registerStructuralContextProvider, registerTrainingExportAdapter, registerWearableConnector, relayMissionAppendOperation, relayMissionReadOperation, relayMissionReceiptDigest, renderExtensionsBlock, renderExtensionsFooter, renderStructuralProviderStatusLine, resolveCategory, resolveCodingNamespaceOverlay, resolveGitContext, runBinaryLifecyclePipeline, runLocalSessionSummaryCliCommand, runMeetingsCliCommand, runWearablesCliCommand, saveCorrectionsFile, saveManifest, saveSyncState, saveTaxonomy, scanForBinaries, serializeActivityDigest, serializeDayTranscript, shareSpace, stableHash, storageWearableDayReader, stripFillerTokens, structuralProviderActive, switchSpace, syncActivitySource, syncChanges, syncStateFilePath, timezoneOffsetIso, toStructuralContextDegradation, unescapeSegmentText, unescapeSpeakerLabel, updateSourceSyncState, validateActivityBaseUrl, validateGoogleDriveConfig, validateNotionConfig, validateSlug, validateTaxonomy, watchForChanges, writeManifest, writeMeetingEpisodeMemory };
|