@remnic/core 10.0.9 → 10.0.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/access-admin-ops-surface.js +14 -14
- package/dist/access-authorization-probe.js +15 -15
- package/dist/access-boundary.js +14 -14
- package/dist/access-cli.js +52 -52
- package/dist/access-extraction-force-flush.js +14 -14
- package/dist/access-http-briefing.js +15 -15
- package/dist/access-http-query.js +16 -16
- package/dist/access-http.js +30 -30
- package/dist/access-identity-continuity-surface.js +14 -14
- package/dist/access-lcm-surface.js +14 -14
- package/dist/access-mcp.js +23 -23
- package/dist/access-namespace-preflight.js +14 -14
- package/dist/access-observe-write-surface.js +14 -14
- package/dist/access-operations-batch.js +15 -15
- package/dist/access-operations.js +22 -22
- package/dist/access-recall-concurrency.js +14 -14
- package/dist/access-recall-response.js +14 -14
- package/dist/access-recall-surface.js +14 -14
- package/dist/access-service.js +14 -14
- package/dist/access-surface-catalog.js +16 -16
- package/dist/active-recall.js +1 -1
- package/dist/briefing.js +2 -2
- package/dist/causal-consolidation.js +3 -3
- package/dist/{chunk-ZQYAE2C5.js → chunk-2U4BM3TW.js} +2 -2
- package/dist/{chunk-QFIPSKPC.js → chunk-3ZCRHW7U.js} +2 -2
- package/dist/{chunk-76KHEHT2.js → chunk-4N2MFNTG.js} +2 -2
- package/dist/{chunk-FBVLTTVV.js → chunk-4TP3MJ3D.js} +5 -5
- package/dist/{chunk-JSIQSZXI.js → chunk-56GJLXBA.js} +3 -3
- package/dist/{chunk-MVRIW6MI.js → chunk-6OAXWYE3.js} +2 -2
- package/dist/{chunk-KDYQYMJZ.js → chunk-7SUWY37K.js} +2 -2
- package/dist/{chunk-KRIEQCKE.js → chunk-A2L3P2IY.js} +2 -2
- package/dist/{chunk-AMFCRZYB.js → chunk-AV2OQF2O.js} +2 -2
- package/dist/{chunk-WJLGUY27.js → chunk-BD5QEP3T.js} +2 -1
- package/dist/{chunk-C3WJNRGR.js → chunk-BH44JOLA.js} +2 -2
- package/dist/{chunk-NYVKLB2I.js → chunk-BX4WDBTE.js} +11 -11
- package/dist/{chunk-V4WSQYO6.js → chunk-CAUNCRLQ.js} +21 -21
- package/dist/{chunk-RH6QEGCT.js → chunk-D5UPBXZM.js} +2 -2
- package/dist/{chunk-77HNHT6S.js → chunk-E57LYSHI.js} +114 -4
- package/dist/chunk-E57LYSHI.js.map +1 -0
- package/dist/{chunk-IOM5QSNR.js → chunk-EKKAHJ4B.js} +2 -2
- package/dist/{chunk-JK3DYMOC.js → chunk-GKOML66M.js} +2 -2
- package/dist/{chunk-QW7G7PWN.js → chunk-I2M4ZVDD.js} +2 -2
- package/dist/{chunk-JTUKDLAD.js → chunk-J6FFBORM.js} +2 -2
- package/dist/{chunk-MAJ2OKE4.js → chunk-J7MDPTX7.js} +6 -6
- package/dist/{chunk-5FNVK7MW.js → chunk-JVNEXW6X.js} +2 -2
- package/dist/{chunk-IJWEXCWF.js → chunk-JXWTPOMJ.js} +2 -2
- package/dist/{chunk-3R6SLDTH.js → chunk-KJOGIRMF.js} +2 -2
- package/dist/{chunk-GDI64ITR.js → chunk-KWVI52ER.js} +2 -2
- package/dist/{chunk-AV46CT77.js → chunk-KX36OCGK.js} +2 -2
- package/dist/{chunk-2K7D6EFT.js → chunk-L3G5CGL5.js} +674 -126
- package/dist/chunk-L3G5CGL5.js.map +1 -0
- package/dist/{chunk-CSUAHUOH.js → chunk-MK552I5J.js} +2 -2
- package/dist/{chunk-BPY4RRTF.js → chunk-MO25AN7J.js} +10 -10
- package/dist/{chunk-NAHUBSUF.js → chunk-N75Q5ZSP.js} +2 -2
- package/dist/{chunk-HZVYDWUP.js → chunk-NQMG2W5L.js} +2 -2
- package/dist/{chunk-L3Z4NXDO.js → chunk-O52WWLKU.js} +3 -3
- package/dist/{chunk-OC6JYPZX.js → chunk-O5MW6CQL.js} +2 -2
- package/dist/{chunk-6PHB45IU.js → chunk-O6YDGTH4.js} +2 -2
- package/dist/{chunk-E5274WUC.js → chunk-OAIWPB2I.js} +19 -2
- package/dist/chunk-OAIWPB2I.js.map +1 -0
- package/dist/{chunk-5NOPZYNI.js → chunk-OFDIGTC2.js} +7 -7
- package/dist/{chunk-5EOV7ANU.js → chunk-OGWEWJRH.js} +2 -2
- package/dist/{chunk-3ENX2RB4.js → chunk-OM3RWZQK.js} +2 -2
- package/dist/{chunk-GSAZBZMA.js → chunk-PDVWGGX4.js} +2 -2
- package/dist/{chunk-N44GZ73R.js → chunk-SOJ3IQD3.js} +3 -3
- package/dist/{chunk-4OKPH6FG.js → chunk-SQA2MM2F.js} +2 -2
- package/dist/{chunk-7O252IE6.js → chunk-SSAXGPXY.js} +2 -2
- package/dist/{chunk-R2AWYR4Q.js → chunk-SVDU4OHO.js} +2 -2
- package/dist/{chunk-WPFSZZ35.js → chunk-UOA2VQ7C.js} +2 -2
- package/dist/{chunk-S4GUMZRB.js → chunk-VA2HNBGQ.js} +17 -17
- package/dist/{chunk-YAF3NRNC.js → chunk-VBJD4RSJ.js} +2 -2
- package/dist/{chunk-A6G7K273.js → chunk-VDXTXVFZ.js} +3 -3
- package/dist/{chunk-5Q4NQNW7.js → chunk-VJGDQA3D.js} +2 -2
- package/dist/{chunk-QN77HA6P.js → chunk-WCTL3PVM.js} +2 -2
- package/dist/{chunk-NXLQQ6WI.js → chunk-WH4QXVKU.js} +2 -2
- package/dist/{chunk-3VTNNO2B.js → chunk-WXFKXCOQ.js} +3 -3
- package/dist/{chunk-K3DZ3G5I.js → chunk-XQIHFXYP.js} +2 -2
- package/dist/{chunk-VSHRMIJH.js → chunk-YYNHJF3N.js} +2 -2
- package/dist/cli.js +40 -40
- package/dist/coding/export-okf-codegraph.js +1 -1
- package/dist/compounding/engine.d.ts +1 -5
- package/dist/compounding/engine.d.ts.map +1 -1
- package/dist/compounding/engine.js +5 -3
- package/dist/compounding/iso-week.d.ts +18 -0
- package/dist/compounding/iso-week.d.ts.map +1 -0
- package/dist/compounding/weekly-evidence.d.ts +123 -0
- package/dist/compounding/weekly-evidence.d.ts.map +1 -0
- package/dist/config.js +1 -1
- package/dist/connectors/codex-materialize-runner.js +2 -2
- package/dist/connectors/index.js +2 -2
- package/dist/convergence-refresh.js +4 -4
- package/dist/corpus-watermark.js +4 -4
- package/dist/entity-retrieval.js +2 -2
- package/dist/external-wiki-access.js +15 -15
- package/dist/extraction.js +2 -2
- package/dist/harmonic-retrieval.js +2 -2
- package/dist/index.js +52 -52
- package/dist/location/index.js +4 -4
- package/dist/maintenance/memory-governance.js +2 -2
- package/dist/maintenance/rebuild-memory-lifecycle-ledger.js +2 -2
- package/dist/maintenance/rebuild-memory-projection-runner.js +4 -4
- package/dist/maintenance/rebuild-memory-projection.js +3 -3
- package/dist/memory-browse-operations.js +15 -15
- package/dist/memory-browse.js +2 -2
- package/dist/namespaces/migrate.js +3 -3
- package/dist/namespaces/storage.js +2 -2
- package/dist/operator-doctor-corpus.js +5 -5
- package/dist/operator-toolkit.js +10 -10
- package/dist/orchestration/generic-recall-paths.d.ts.map +1 -1
- package/dist/orchestration/maintenance.js +11 -11
- package/dist/orchestrator.js +52 -52
- package/dist/recall-navigation-operations.js +15 -15
- package/dist/recall-navigation.js +14 -14
- package/dist/recall-state-view-admission.js +2 -2
- package/dist/recall-why-service.js +2 -2
- package/dist/resume-bundles.js +1 -1
- package/dist/semantic-consolidation.js +3 -3
- package/dist/semantic-rule-promotion.js +2 -2
- package/dist/semantic-rule-verifier.js +2 -2
- package/dist/shared-context/manager.d.ts +18 -0
- package/dist/shared-context/manager.d.ts.map +1 -1
- package/dist/shared-context/manager.js +7 -1
- package/dist/source-agent-qualifier.js +2 -2
- package/dist/standup/build.js +2 -2
- package/dist/storage.js +1 -1
- package/dist/support-passport/index.js +17 -17
- package/dist/transfer/export-okf.js +2 -2
- package/dist/verified-recall.js +2 -2
- package/dist/who-knows-cli.js +3 -3
- package/dist/who-knows.js +2 -2
- package/package.json +2 -2
- package/src/compounding/engine.ts +135 -130
- package/src/compounding/iso-week.ts +60 -0
- package/src/compounding/weekly-evidence.ts +698 -0
- package/src/orchestration/generic-recall-paths.ts +27 -1
- package/src/shared-context/manager.ts +132 -3
- package/dist/chunk-2K7D6EFT.js.map +0 -1
- package/dist/chunk-77HNHT6S.js.map +0 -1
- package/dist/chunk-E5274WUC.js.map +0 -1
- /package/dist/{chunk-ZQYAE2C5.js.map → chunk-2U4BM3TW.js.map} +0 -0
- /package/dist/{chunk-QFIPSKPC.js.map → chunk-3ZCRHW7U.js.map} +0 -0
- /package/dist/{chunk-76KHEHT2.js.map → chunk-4N2MFNTG.js.map} +0 -0
- /package/dist/{chunk-FBVLTTVV.js.map → chunk-4TP3MJ3D.js.map} +0 -0
- /package/dist/{chunk-JSIQSZXI.js.map → chunk-56GJLXBA.js.map} +0 -0
- /package/dist/{chunk-MVRIW6MI.js.map → chunk-6OAXWYE3.js.map} +0 -0
- /package/dist/{chunk-KDYQYMJZ.js.map → chunk-7SUWY37K.js.map} +0 -0
- /package/dist/{chunk-KRIEQCKE.js.map → chunk-A2L3P2IY.js.map} +0 -0
- /package/dist/{chunk-AMFCRZYB.js.map → chunk-AV2OQF2O.js.map} +0 -0
- /package/dist/{chunk-WJLGUY27.js.map → chunk-BD5QEP3T.js.map} +0 -0
- /package/dist/{chunk-C3WJNRGR.js.map → chunk-BH44JOLA.js.map} +0 -0
- /package/dist/{chunk-NYVKLB2I.js.map → chunk-BX4WDBTE.js.map} +0 -0
- /package/dist/{chunk-V4WSQYO6.js.map → chunk-CAUNCRLQ.js.map} +0 -0
- /package/dist/{chunk-RH6QEGCT.js.map → chunk-D5UPBXZM.js.map} +0 -0
- /package/dist/{chunk-IOM5QSNR.js.map → chunk-EKKAHJ4B.js.map} +0 -0
- /package/dist/{chunk-JK3DYMOC.js.map → chunk-GKOML66M.js.map} +0 -0
- /package/dist/{chunk-QW7G7PWN.js.map → chunk-I2M4ZVDD.js.map} +0 -0
- /package/dist/{chunk-JTUKDLAD.js.map → chunk-J6FFBORM.js.map} +0 -0
- /package/dist/{chunk-MAJ2OKE4.js.map → chunk-J7MDPTX7.js.map} +0 -0
- /package/dist/{chunk-5FNVK7MW.js.map → chunk-JVNEXW6X.js.map} +0 -0
- /package/dist/{chunk-IJWEXCWF.js.map → chunk-JXWTPOMJ.js.map} +0 -0
- /package/dist/{chunk-3R6SLDTH.js.map → chunk-KJOGIRMF.js.map} +0 -0
- /package/dist/{chunk-GDI64ITR.js.map → chunk-KWVI52ER.js.map} +0 -0
- /package/dist/{chunk-AV46CT77.js.map → chunk-KX36OCGK.js.map} +0 -0
- /package/dist/{chunk-CSUAHUOH.js.map → chunk-MK552I5J.js.map} +0 -0
- /package/dist/{chunk-BPY4RRTF.js.map → chunk-MO25AN7J.js.map} +0 -0
- /package/dist/{chunk-NAHUBSUF.js.map → chunk-N75Q5ZSP.js.map} +0 -0
- /package/dist/{chunk-HZVYDWUP.js.map → chunk-NQMG2W5L.js.map} +0 -0
- /package/dist/{chunk-L3Z4NXDO.js.map → chunk-O52WWLKU.js.map} +0 -0
- /package/dist/{chunk-OC6JYPZX.js.map → chunk-O5MW6CQL.js.map} +0 -0
- /package/dist/{chunk-6PHB45IU.js.map → chunk-O6YDGTH4.js.map} +0 -0
- /package/dist/{chunk-5NOPZYNI.js.map → chunk-OFDIGTC2.js.map} +0 -0
- /package/dist/{chunk-5EOV7ANU.js.map → chunk-OGWEWJRH.js.map} +0 -0
- /package/dist/{chunk-3ENX2RB4.js.map → chunk-OM3RWZQK.js.map} +0 -0
- /package/dist/{chunk-GSAZBZMA.js.map → chunk-PDVWGGX4.js.map} +0 -0
- /package/dist/{chunk-N44GZ73R.js.map → chunk-SOJ3IQD3.js.map} +0 -0
- /package/dist/{chunk-4OKPH6FG.js.map → chunk-SQA2MM2F.js.map} +0 -0
- /package/dist/{chunk-7O252IE6.js.map → chunk-SSAXGPXY.js.map} +0 -0
- /package/dist/{chunk-R2AWYR4Q.js.map → chunk-SVDU4OHO.js.map} +0 -0
- /package/dist/{chunk-WPFSZZ35.js.map → chunk-UOA2VQ7C.js.map} +0 -0
- /package/dist/{chunk-S4GUMZRB.js.map → chunk-VA2HNBGQ.js.map} +0 -0
- /package/dist/{chunk-YAF3NRNC.js.map → chunk-VBJD4RSJ.js.map} +0 -0
- /package/dist/{chunk-A6G7K273.js.map → chunk-VDXTXVFZ.js.map} +0 -0
- /package/dist/{chunk-5Q4NQNW7.js.map → chunk-VJGDQA3D.js.map} +0 -0
- /package/dist/{chunk-QN77HA6P.js.map → chunk-WCTL3PVM.js.map} +0 -0
- /package/dist/{chunk-NXLQQ6WI.js.map → chunk-WH4QXVKU.js.map} +0 -0
- /package/dist/{chunk-3VTNNO2B.js.map → chunk-WXFKXCOQ.js.map} +0 -0
- /package/dist/{chunk-K3DZ3G5I.js.map → chunk-XQIHFXYP.js.map} +0 -0
- /package/dist/{chunk-VSHRMIJH.js.map → chunk-YYNHJF3N.js.map} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/activity/journal.ts","../src/orchestration/generic-recall-paths.ts"],"sourcesContent":["/**\n * User-owned daily journal (issue #1984 PR1).\n *\n * Files live at `<memoryDir>/journal/<YYYY-MM-DD>.md` — inside the memory\n * directory but outside scan roots, same placement as activity digests.\n * Once written, Remnic never rewrites the file except `seed` with force.\n * All writes go through writeJournalFile, which stats first.\n */\nimport { mkdirSync, statSync, writeFileSync } from \"node:fs\";\nimport path from \"node:path\";\n\nimport { isValidActivityDate } from \"./digest.js\";\n\nexport const JOURNAL_DIR_NAME = \"journal\";\n\n/** Minimal card shape the seed renderer needs. TimelineCard is assignable. */\nexport interface JournalSeedCard {\n title: string;\n startUtc: string;\n endUtc: string;\n}\n\nexport interface SeedJournalInput {\n memoryDir: string;\n date: string;\n cards?: readonly JournalSeedCard[];\n force?: boolean;\n}\n\nexport interface SeedJournalResult {\n path: string;\n wrote: boolean;\n}\n\nconst JOURNAL_DAY_TOPLEVEL = /^journal[\\\\/]\\d{4}-\\d{2}-\\d{2}\\.md$/i;\nconst JOURNAL_DAY_ANYWHERE = /(?:^|[\\\\/])journal[\\\\/]\\d{4}-\\d{2}-\\d{2}\\.md$/i;\n\nexport function journalPath(memoryDir: string, date: string): string {\n if (!isValidActivityDate(date)) {\n throw new RangeError(`Invalid journal date \"${date}\"; expected YYYY-MM-DD.`);\n }\n return path.join(memoryDir, JOURNAL_DIR_NAME, `${date}.md`);\n}\n\n/**\n * Root-aware journal day-file check. With a memory root, only the top-level\n * `journal/<date>.md` matches so a nested `facts/journal/<date>.md` stays\n * recallable. Without a root, fall back to the day-file shape anywhere.\n */\nexport function isJournalDayPath(filePath: string, memoryRoot?: string): boolean {\n if (memoryRoot !== undefined && memoryRoot.length > 0) {\n const relative = path.relative(memoryRoot, path.resolve(memoryRoot, filePath));\n return JOURNAL_DAY_TOPLEVEL.test(relative);\n }\n return JOURNAL_DAY_ANYWHERE.test(filePath);\n}\n\nexport function todayJournalDate(now: Date = new Date()): string {\n const year = now.getFullYear();\n const month = String(now.getMonth() + 1).padStart(2, \"0\");\n const day = String(now.getDate()).padStart(2, \"0\");\n return `${year}-${month}-${day}`;\n}\n\nfunction formatCardDuration(card: JournalSeedCard): string {\n const start = Date.parse(card.startUtc);\n const end = Date.parse(card.endUtc);\n const minutes =\n Number.isFinite(start) && Number.isFinite(end) && end > start\n ? Math.round((end - start) / 60_000)\n : 0;\n return `${minutes}m`;\n}\n\nfunction renderJournalSeed(date: string, cards: readonly JournalSeedCard[]): string {\n const ordered = [...cards].sort((left, right) => {\n const byStart = left.startUtc.localeCompare(right.startUtc);\n return byStart !== 0 ? byStart : left.title.localeCompare(right.title);\n });\n const glance =\n ordered.length === 0\n ? [\"_No cards._\"]\n : ordered.map((card) => `- ${formatCardDuration(card)} ${card.title}`);\n return [`# Journal — ${date}`, \"\", \"## Day at a glance\", \"\", ...glance, \"\", \"## Notes\", \"\", \"\"].join(\n \"\\n\",\n );\n}\n\n/** The only journal write. Stats first; existing files are a no-op unless force. */\nexport function writeJournalFile(filePath: string, content: string, force: boolean): boolean {\n let exists = false;\n try {\n statSync(filePath);\n exists = true;\n } catch (err) {\n const code = (err as NodeJS.ErrnoException).code;\n if (code !== \"ENOENT\") throw err;\n }\n if (exists && !force) return false;\n mkdirSync(path.dirname(filePath), { recursive: true });\n writeFileSync(filePath, content);\n return true;\n}\n\nexport function seedJournal(input: SeedJournalInput): SeedJournalResult {\n const filePath = journalPath(input.memoryDir, input.date);\n const wrote = writeJournalFile(\n filePath,\n renderJournalSeed(input.date, input.cards ?? []),\n input.force === true,\n );\n return { path: filePath, wrote };\n}\n","import path from \"node:path\";\nimport type { QmdSearchResult } from \"../types.js\";\nimport { isExternalWikiCollectionName } from \"../external-wiki-guard.js\";\nexport { isExternalWikiCollectionName } from \"../external-wiki-guard.js\";\nimport { ALL_CATEGORY_DIRS } from \"../utils/category-dir.js\";\nimport {\n isActivityDigestPath,\n isArtifactMemoryPath,\n isLocationDayPath,\n isMeetingRecordPath,\n} from \"./orchestrator-helpers.js\";\nimport { isJournalDayPath } from \"../activity/journal.js\";\nimport { DIRECTORY_SIDECAR_BASENAME } from \"../directory-sidecars.js\";\nimport { OKF_RESERVED_BASENAMES } from \"../okf/type-mapping.js\";\n\n\nexport interface GenericRecallPathPolicy {\n readonly memoryDir?: string;\n readonly qmdCollection?: string;\n readonly qmdColdCollection?: string;\n /**\n * The collection THIS request named, when it named one. A caller may select\n * a custom collection whose name is also a memory category, which the\n * configured names alone cannot disambiguate.\n */\n readonly requestedCollection?: string;\n}\n\ntype GenericRecallPathSource = \"filesystem\" | \"qmd\";\n\nconst CATEGORY_MEMORY_ROOTS: Record<string, true> = Object.fromEntries(\n ALL_CATEGORY_DIRS.map((directory) => [directory, true]),\n);\nconst RESERVED_ARCHIVE_ROOTS: Record<string, true> = { archive: true, namespaces: true };\n\nfunction isQmdCollectionPrefix(\n prefix: string,\n collection: string | undefined,\n source: GenericRecallPathSource,\n): boolean {\n if (typeof collection !== \"string\" || collection.length === 0) return false;\n if (prefix.startsWith(`${collection}--`)) return true;\n if (prefix !== collection) return false;\n if (source === \"qmd\") return true;\n return (\n !Object.hasOwn(CATEGORY_MEMORY_ROOTS, prefix) &&\n !Object.hasOwn(RESERVED_ARCHIVE_ROOTS, prefix)\n );\n}\n\nfunction normalizeQmdUriPath(relativePath: string, source: GenericRecallPathSource): string {\n if (source !== \"qmd\" || !relativePath.startsWith(\"qmd://\")) return relativePath;\n try {\n const parsed = new URL(relativePath);\n if (parsed.protocol !== \"qmd:\" || !parsed.hostname) return relativePath;\n const collection = decodeURIComponent(parsed.hostname);\n const pathname = decodeURIComponent(parsed.pathname.replace(/^\\/+/, \"\"));\n return pathname ? `${collection}/${pathname}` : collection;\n } catch {\n return relativePath;\n }\n}\n\nfunction stripQmdCollectionPrefix(\n relativePath: string,\n policy: GenericRecallPathPolicy,\n source: GenericRecallPathSource,\n): string {\n const normalized = path.posix.normalize(normalizeQmdUriPath(relativePath, source).replace(/\\\\/g, \"/\"));\n const slashIndex = normalized.indexOf(\"/\");\n if (slashIndex <= 0 || slashIndex >= normalized.length - 1) return normalized;\n\n const prefix = normalized.slice(0, slashIndex);\n const matchesHotCollection = isQmdCollectionPrefix(prefix, policy.qmdCollection, source);\n const matchesColdCollection = isQmdCollectionPrefix(prefix, policy.qmdColdCollection, source);\n return matchesHotCollection || matchesColdCollection\n ? normalized.slice(slashIndex + 1)\n : normalized;\n}\n\nexport function isTopLevelArchivePath(\n filePath: string,\n policy: GenericRecallPathPolicy = {},\n source: GenericRecallPathSource = \"filesystem\",\n): boolean {\n const isAbsolutePath = path.isAbsolute(filePath);\n const relative =\n policy.memoryDir && isAbsolutePath\n ? path.relative(policy.memoryDir, path.resolve(filePath))\n : filePath;\n const normalized = !isAbsolutePath\n ? stripQmdCollectionPrefix(relative, policy, source)\n : relative;\n return /^(?:archive|namespaces[\\\\/][^\\\\/]+[\\\\/]archive)(?:[\\\\/]|$)/i.test(normalized);\n}\n\nfunction isExternalWikiQmdPath(\n filePath: string,\n source: GenericRecallPathSource,\n): boolean {\n if (source !== \"qmd\") return false;\n const normalized = normalizeQmdUriPath(filePath, source).replace(/\\\\/g, \"/\");\n const slashIndex = normalized.indexOf(\"/\");\n const collection = slashIndex === -1 ? normalized : normalized.slice(0, slashIndex);\n return isExternalWikiCollectionName(collection);\n}\n\n/**\n * Paths an EXPLICIT ranked search must not return.\n *\n * Narrower than {@link isGenericRecallExcludedPath} on purpose. Recall\n * injection also drops archived memories because they are cold by definition,\n * but archive is explicitly reserved for \"explicit read or search surfaces\"\n * (docs/architecture/memory-lifecycle.md) — hiding it from `memory_search`\n * would remove the only way to find it. Everything else stays excluded: those\n * paths flow through their own dedicated surfaces, never a generic search.\n */\nexport function isSearchExcludedPath(\n filePath: string,\n policy: GenericRecallPathPolicy = {},\n source: GenericRecallPathSource = \"filesystem\",\n): boolean {\n if (isExternalWikiQmdPath(filePath, source)) return true;\n // A QMD transport hands back collection-qualified paths\n // (`qmd://<collection>/activity/<date>.md`, or `<collection>/activity/…`),\n // and the collection is not always one this policy knows: a caller may name\n // a custom one, and global search spans every collection. The activity\n // predicate is ROOT-AWARE — it matches only the top-level\n // `activity/<date>.md` so a nested ordinary memory stays recallable — so an\n // un-stripped prefix reads as a nested path and the digest would be served.\n //\n // Both spellings are therefore tested. Widening is safe in this direction\n // and only here: a leading segment is dropped ONLY to re-test the dedicated\n // surface shapes, never to decide anything else, and a segment that names a\n // memory CATEGORY (`facts/proj/activity/…`) is never treated as a\n // collection, so ordinary nested memories stay searchable.\n for (const candidate of collectionSpellings(filePath, policy, source)) {\n if (\n isArtifactMemoryPath(candidate) ||\n isNamespacedActivityDigestPath(candidate, policy.memoryDir) ||\n isNamespacedLocationDayPath(candidate, policy.memoryDir) ||\n isNamespacedJournalDayPath(candidate, policy.memoryDir) ||\n isMeetingRecordPath(candidate) ||\n isCompoundingReportPath(candidate, policy.memoryDir)\n ) {\n return true;\n }\n }\n return false;\n}\n\n/**\n * Derived compounding reports sit at `<root>/compounding/` and\n * `namespaces/<namespace>/compounding/`. Generic recall must not return them:\n * a root report can quote another namespace, and injection already has a\n * filtered compounding section. A namespace literally named `compounding`,\n * and an ordinary memory nested under a category, stay searchable.\n */\nfunction isCompoundingReportPath(candidate: string, memoryDir?: string): boolean {\n let relative = candidate.replace(/\\\\/g, \"/\");\n if (memoryDir && memoryDir.length > 0) {\n const absolute = path.resolve(memoryDir, candidate).replace(/\\\\/g, \"/\");\n const root = path.resolve(memoryDir).replace(/\\\\/g, \"/\");\n if (absolute !== root && !absolute.startsWith(`${root}/`)) return false;\n relative = absolute.slice(root.length);\n if (relative.startsWith(\"/\")) relative = relative.slice(1);\n }\n if (relative.startsWith(\"../\")) return false;\n if (relative.startsWith(\"namespaces/\")) {\n const slash = relative.indexOf(\"/\", \"namespaces/\".length);\n if (slash < 0) return false;\n relative = relative.slice(slash + 1);\n }\n return relative === \"compounding\" || relative.startsWith(\"compounding/\");\n}\n\n/**\n * The activity check, applied against the NAMESPACE root a hit came from.\n *\n * `isActivityDigestPath` is root-aware — the digest must sit directly under\n * the root it is given — but a namespaced search rewrites hits to absolute\n * paths beneath `…/namespaces/<ns>/`, and only the global `memoryDir` is\n * available here. Measured against that root, a real digest at\n * `<memoryDir>/namespaces/team/activity/<date>.md` reads as nested and is\n * served. Re-measuring against the namespace's own root closes that.\n */\nfunction isNamespacedActivityDigestPath(candidate: string, memoryDir?: string): boolean {\n if (isActivityDigestPath(candidate, memoryDir)) return true;\n if (memoryDir === undefined || memoryDir.length === 0) return false;\n const relative = path.relative(memoryDir, path.resolve(memoryDir, candidate));\n const namespaced = /^namespaces[\\\\/]([^\\\\/]+)[\\\\/](.*)$/.exec(relative);\n if (namespaced === null) return false;\n return isActivityDigestPath(namespaced[2] ?? \"\", memoryDir);\n}\n\n/**\n * The location day-file check, applied against the NAMESPACE root a hit came\n * from — same rationale as `isNamespacedActivityDigestPath`: a namespaced\n * search rewrites hits to absolute paths beneath `…/namespaces/<ns>/`, so the\n * root-aware predicate is re-measured against the namespace's own root.\n */\nfunction isNamespacedLocationDayPath(candidate: string, memoryDir?: string): boolean {\n if (isLocationDayPath(candidate, memoryDir)) return true;\n if (memoryDir === undefined || memoryDir.length === 0) return false;\n const relative = path.relative(memoryDir, path.resolve(memoryDir, candidate));\n const namespaced = /^namespaces[\\\\/]([^\\\\/]+)[\\\\/](.*)$/.exec(relative);\n if (namespaced === null) return false;\n return isLocationDayPath(namespaced[2] ?? \"\", memoryDir);\n}\n\nfunction isNamespacedJournalDayPath(candidate: string, memoryDir?: string): boolean {\n if (isJournalDayPath(candidate, memoryDir)) return true;\n if (memoryDir === undefined || memoryDir.length === 0) return false;\n const relative = path.relative(memoryDir, path.resolve(memoryDir, candidate));\n const namespaced = /^namespaces[\\\\/]([^\\\\/]+)[\\\\/](.*)$/.exec(relative);\n if (namespaced === null) return false;\n return isJournalDayPath(namespaced[2] ?? \"\", memoryDir);\n}\n\n/** A path as given, plus its form with a leading COLLECTION segment removed. */\nfunction collectionSpellings(\n filePath: string,\n policy: GenericRecallPathPolicy,\n source: GenericRecallPathSource,\n): string[] {\n if (path.isAbsolute(filePath)) return [filePath];\n // A `qmd://<collection>/<path>` URI states its collection UNAMBIGUOUSLY in\n // the authority, so the leading segment of its normalized form is never a\n // memory category — strip it outright rather than guessing.\n if (source === \"qmd\" && filePath.startsWith(\"qmd://\")) {\n const normalized = path.posix.normalize(normalizeQmdUriPath(filePath, source).replace(/\\\\/g, \"/\"));\n const slashIndex = normalized.indexOf(\"/\");\n return slashIndex <= 0 || slashIndex >= normalized.length - 1\n ? [normalized]\n : [normalized, normalized.slice(slashIndex + 1)];\n }\n const normalized = path.posix.normalize(\n normalizeQmdUriPath(filePath, source).replace(/\\\\/g, \"/\"),\n );\n const stripped = stripQmdCollectionPrefix(filePath, policy, source);\n const spellings = [stripped];\n // If the AUTHORITATIVE strip already fired — the prefix matched a configured\n // collection — stop. Removing a second segment would take a real directory\n // with it: `memories/projects/activity/<date>.md` would become\n // `activity/<date>.md` and an ordinary nested memory would read as a\n // top-level digest, vanishing from search AND recall.\n if (stripped !== normalized) return spellings;\n const slashIndex = stripped.indexOf(\"/\");\n if (slashIndex <= 0 || slashIndex >= stripped.length - 1) return spellings;\n const prefix = stripped.slice(0, slashIndex);\n // The CALLER's own collection is authoritative: a request for\n // `collection: \"facts\"` means that segment is the collection, whatever it is\n // also the name of. Otherwise a category-shaped prefix stays part of the\n // path, so an ordinary `facts/proj/activity/<date>.md` memory is searchable.\n const requested = policy.requestedCollection;\n if (\n prefix !== requested &&\n (Object.hasOwn(CATEGORY_MEMORY_ROOTS, prefix) || Object.hasOwn(RESERVED_ARCHIVE_ROOTS, prefix))\n ) {\n return spellings;\n }\n spellings.push(stripped.slice(slashIndex + 1));\n return spellings;\n}\n\nexport function isGenericRecallExcludedPath(\n filePath: string,\n policy: GenericRecallPathPolicy = {},\n source: GenericRecallPathSource = \"filesystem\",\n): boolean {\n return (\n isSearchExcludedPath(filePath, policy, source) ||\n isTopLevelArchivePath(filePath, policy, source) ||\n OKF_RESERVED_BASENAMES[path.basename(filePath)] === true ||\n // Derived per-directory sidecars (#2977): recall-excluded like OKF index\n // files, still searchable. Basename-only, the same accepted tradeoff.\n path.basename(filePath) === DIRECTORY_SIDECAR_BASENAME\n );\n}\n\nexport function filterRecallCandidates(\n candidates: QmdSearchResult[],\n options: {\n namespacesEnabled: boolean;\n recallNamespaces: string[];\n resolveNamespace: (path: string) => string;\n limit: number;\n pathPolicy?: GenericRecallPathPolicy;\n memoryRoot?: string;\n },\n): QmdSearchResult[] {\n const pathPolicy =\n options.pathPolicy ??\n (options.memoryRoot === undefined ? undefined : { memoryDir: options.memoryRoot });\n const scopedByNamespace = options.namespacesEnabled\n ? candidates.filter((r) =>\n options.recallNamespaces.includes(r.namespace ?? options.resolveNamespace(r.path)),\n )\n : candidates;\n return scopedByNamespace\n .filter((r) => !isGenericRecallExcludedPath(r.path, pathPolicy, \"qmd\"))\n .slice(0, Math.max(0, options.limit));\n}\n"],"mappings":"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","names":["path","path","normalized","slashIndex"]}
|
|
@@ -3,7 +3,7 @@ import {
|
|
|
3
3
|
readNamespaceMaintenanceLastRanStatuses,
|
|
4
4
|
readNamespaceMaintenanceStatuses,
|
|
5
5
|
runNamespaceMaintenancePlan
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-O52WWLKU.js";
|
|
7
7
|
import {
|
|
8
8
|
analyzeSessionIntegrity,
|
|
9
9
|
applySessionRepair,
|
|
@@ -14,7 +14,7 @@ import {
|
|
|
14
14
|
} from "./chunk-CMTINOFS.js";
|
|
15
15
|
import {
|
|
16
16
|
summarizeCorpusAndReplica
|
|
17
|
-
} from "./chunk-
|
|
17
|
+
} from "./chunk-J6FFBORM.js";
|
|
18
18
|
import {
|
|
19
19
|
readJudgeVerdictStats
|
|
20
20
|
} from "./chunk-OZKOPQCM.js";
|
|
@@ -41,14 +41,14 @@ import {
|
|
|
41
41
|
} from "./chunk-VUQDJ3JB.js";
|
|
42
42
|
import {
|
|
43
43
|
readAggregateExtractionWatermark
|
|
44
|
-
} from "./chunk-
|
|
44
|
+
} from "./chunk-VJGDQA3D.js";
|
|
45
45
|
import {
|
|
46
46
|
listMemoryGovernanceRuns,
|
|
47
47
|
readMemoryGovernanceRunArtifact
|
|
48
|
-
} from "./chunk-
|
|
48
|
+
} from "./chunk-KX36OCGK.js";
|
|
49
49
|
import {
|
|
50
50
|
listNamespaces
|
|
51
|
-
} from "./chunk-
|
|
51
|
+
} from "./chunk-KWVI52ER.js";
|
|
52
52
|
import {
|
|
53
53
|
analyzeGraphHealth
|
|
54
54
|
} from "./chunk-BTJ6CAIA.js";
|
|
@@ -57,7 +57,7 @@ import {
|
|
|
57
57
|
} from "./chunk-AWD36R4D.js";
|
|
58
58
|
import {
|
|
59
59
|
StorageManager
|
|
60
|
-
} from "./chunk-
|
|
60
|
+
} from "./chunk-BD5QEP3T.js";
|
|
61
61
|
import {
|
|
62
62
|
lintWorkspaceFiles
|
|
63
63
|
} from "./chunk-DM2T26WE.js";
|
|
@@ -1683,4 +1683,4 @@ export {
|
|
|
1683
1683
|
runBenchmarkRecall,
|
|
1684
1684
|
runOperatorRepair
|
|
1685
1685
|
};
|
|
1686
|
-
//# sourceMappingURL=chunk-
|
|
1686
|
+
//# sourceMappingURL=chunk-OFDIGTC2.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
StorageManager
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-BD5QEP3T.js";
|
|
4
4
|
import {
|
|
5
5
|
getCachedRuleMemories,
|
|
6
6
|
setCachedRuleMemories
|
|
@@ -119,4 +119,4 @@ export {
|
|
|
119
119
|
compareVerifiedSemanticRuleResults,
|
|
120
120
|
searchVerifiedSemanticRules
|
|
121
121
|
};
|
|
122
|
-
//# sourceMappingURL=chunk-
|
|
122
|
+
//# sourceMappingURL=chunk-OGWEWJRH.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
parseEntityFile
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-BD5QEP3T.js";
|
|
4
4
|
import {
|
|
5
5
|
inferMemoryStatus
|
|
6
6
|
} from "./chunk-7RJUVTVF.js";
|
|
@@ -253,4 +253,4 @@ export {
|
|
|
253
253
|
WHO_KNOWS_MCP_TOOLS,
|
|
254
254
|
handleWhoKnowsHttpQuery
|
|
255
255
|
};
|
|
256
|
-
//# sourceMappingURL=chunk-
|
|
256
|
+
//# sourceMappingURL=chunk-OM3RWZQK.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
defineOperation
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-BX4WDBTE.js";
|
|
4
4
|
import {
|
|
5
5
|
EngramAccessInputError
|
|
6
6
|
} from "./chunk-3MUKQQ7A.js";
|
|
@@ -92,4 +92,4 @@ defineOperation({
|
|
|
92
92
|
};
|
|
93
93
|
}
|
|
94
94
|
});
|
|
95
|
-
//# sourceMappingURL=chunk-
|
|
95
|
+
//# sourceMappingURL=chunk-PDVWGGX4.js.map
|
|
@@ -49,10 +49,10 @@ import {
|
|
|
49
49
|
} from "./chunk-KIUVEMBI.js";
|
|
50
50
|
import {
|
|
51
51
|
getOperation
|
|
52
|
-
} from "./chunk-
|
|
52
|
+
} from "./chunk-BX4WDBTE.js";
|
|
53
53
|
import {
|
|
54
54
|
WHO_KNOWS_MCP_TOOLS
|
|
55
|
-
} from "./chunk-
|
|
55
|
+
} from "./chunk-OM3RWZQK.js";
|
|
56
56
|
import {
|
|
57
57
|
PROMOTION_CANDIDATES_MCP_TOOLS
|
|
58
58
|
} from "./chunk-VFTK5WKI.js";
|
|
@@ -3986,4 +3986,4 @@ export {
|
|
|
3986
3986
|
MCP_MIGRATED_OPERATIONS,
|
|
3987
3987
|
EngramMcpServer
|
|
3988
3988
|
};
|
|
3989
|
-
//# sourceMappingURL=chunk-
|
|
3989
|
+
//# sourceMappingURL=chunk-SOJ3IQD3.js.map
|
|
@@ -2,7 +2,7 @@ import {
|
|
|
2
2
|
SupportPassportError,
|
|
3
3
|
SupportPassportOwnerCreateGrantRequestSchema,
|
|
4
4
|
getOperation
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-BX4WDBTE.js";
|
|
6
6
|
|
|
7
7
|
// src/support-passport/access-http.ts
|
|
8
8
|
var OWNER_ROOT = "/engram/v1/support-passport";
|
|
@@ -137,4 +137,4 @@ export {
|
|
|
137
137
|
SUPPORT_PASSPORT_OWNER_HTTP_ROUTES,
|
|
138
138
|
handleSupportPassportOwnerHttp
|
|
139
139
|
};
|
|
140
|
-
//# sourceMappingURL=chunk-
|
|
140
|
+
//# sourceMappingURL=chunk-SQA2MM2F.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
runLocationSync
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-VDXTXVFZ.js";
|
|
4
4
|
import {
|
|
5
5
|
log
|
|
6
6
|
} from "./chunk-3WCASNQZ.js";
|
|
@@ -58,4 +58,4 @@ export {
|
|
|
58
58
|
LOCATION_SYNC_DEFAULT_INTERVAL_MS,
|
|
59
59
|
startLocationAutoSync
|
|
60
60
|
};
|
|
61
|
-
//# sourceMappingURL=chunk-
|
|
61
|
+
//# sourceMappingURL=chunk-SSAXGPXY.js.map
|
|
@@ -3,7 +3,7 @@ import {
|
|
|
3
3
|
} from "./chunk-DBB5JPSL.js";
|
|
4
4
|
import {
|
|
5
5
|
isGenericRecallExcludedPath
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-OAIWPB2I.js";
|
|
7
7
|
import {
|
|
8
8
|
isChangeOrientedQuery
|
|
9
9
|
} from "./chunk-EH3HNCAM.js";
|
|
@@ -69,4 +69,4 @@ export {
|
|
|
69
69
|
filterRecentScanMemoriesForStateView,
|
|
70
70
|
indexStateViewAnnotatedResults
|
|
71
71
|
};
|
|
72
|
-
//# sourceMappingURL=chunk-
|
|
72
|
+
//# sourceMappingURL=chunk-SVDU4OHO.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
SupportPassportError,
|
|
3
3
|
getOperation
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-BX4WDBTE.js";
|
|
5
5
|
import {
|
|
6
6
|
abortError,
|
|
7
7
|
isAbortError
|
|
@@ -499,4 +499,4 @@ export {
|
|
|
499
499
|
buildSupportPassportPublicRequestHandler,
|
|
500
500
|
composeSupportPassportExternalRequestHandlers
|
|
501
501
|
};
|
|
502
|
-
//# sourceMappingURL=chunk-
|
|
502
|
+
//# sourceMappingURL=chunk-UOA2VQ7C.js.map
|
|
@@ -16,7 +16,7 @@ import {
|
|
|
16
16
|
import {
|
|
17
17
|
exportOkfBundle,
|
|
18
18
|
parseIncludeStatus
|
|
19
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-YYNHJF3N.js";
|
|
20
20
|
import {
|
|
21
21
|
exportSqlite
|
|
22
22
|
} from "./chunk-BV2TIZ4F.js";
|
|
@@ -55,7 +55,7 @@ import {
|
|
|
55
55
|
} from "./chunk-PYIFUBRK.js";
|
|
56
56
|
import {
|
|
57
57
|
rebuildMemoryLifecycleLedger
|
|
58
|
-
} from "./chunk-
|
|
58
|
+
} from "./chunk-EKKAHJ4B.js";
|
|
59
59
|
import {
|
|
60
60
|
rebuildObservations
|
|
61
61
|
} from "./chunk-WHCD4Z3D.js";
|
|
@@ -87,16 +87,16 @@ import {
|
|
|
87
87
|
} from "./chunk-EBA5DA77.js";
|
|
88
88
|
import {
|
|
89
89
|
searchVerifiedEpisodes
|
|
90
|
-
} from "./chunk-
|
|
90
|
+
} from "./chunk-JXWTPOMJ.js";
|
|
91
91
|
import {
|
|
92
92
|
ThreadingManager
|
|
93
93
|
} from "./chunk-R7WYAXPO.js";
|
|
94
94
|
import {
|
|
95
95
|
promoteSemanticRuleFromMemory
|
|
96
|
-
} from "./chunk-
|
|
96
|
+
} from "./chunk-WH4QXVKU.js";
|
|
97
97
|
import {
|
|
98
98
|
searchVerifiedSemanticRules
|
|
99
|
-
} from "./chunk-
|
|
99
|
+
} from "./chunk-OGWEWJRH.js";
|
|
100
100
|
import {
|
|
101
101
|
buildResumeBundleFromState,
|
|
102
102
|
getResumeBundleStatus,
|
|
@@ -125,7 +125,7 @@ import {
|
|
|
125
125
|
runOperatorInventory,
|
|
126
126
|
runOperatorRepair,
|
|
127
127
|
runOperatorSetup
|
|
128
|
-
} from "./chunk-
|
|
128
|
+
} from "./chunk-OFDIGTC2.js";
|
|
129
129
|
import {
|
|
130
130
|
analyzeSessionIntegrity,
|
|
131
131
|
applySessionRepair,
|
|
@@ -176,7 +176,7 @@ import {
|
|
|
176
176
|
rebuildMemoryProjection,
|
|
177
177
|
repairMemoryProjection,
|
|
178
178
|
verifyMemoryProjection
|
|
179
|
-
} from "./chunk-
|
|
179
|
+
} from "./chunk-56GJLXBA.js";
|
|
180
180
|
import {
|
|
181
181
|
buildConnectorRowsFromDefinitions,
|
|
182
182
|
parseConnectorsListOptions,
|
|
@@ -210,7 +210,7 @@ import {
|
|
|
210
210
|
import {
|
|
211
211
|
EngramAccessHttpServer,
|
|
212
212
|
MeetingsInputError
|
|
213
|
-
} from "./chunk-
|
|
213
|
+
} from "./chunk-MO25AN7J.js";
|
|
214
214
|
import {
|
|
215
215
|
WearablesInputError
|
|
216
216
|
} from "./chunk-V7IZKJI3.js";
|
|
@@ -220,10 +220,10 @@ import {
|
|
|
220
220
|
loadChatSession,
|
|
221
221
|
processChatMessage,
|
|
222
222
|
sessionBelongsToPrincipal
|
|
223
|
-
} from "./chunk-
|
|
223
|
+
} from "./chunk-SOJ3IQD3.js";
|
|
224
224
|
import {
|
|
225
225
|
EngramAccessService
|
|
226
|
-
} from "./chunk-
|
|
226
|
+
} from "./chunk-BX4WDBTE.js";
|
|
227
227
|
import {
|
|
228
228
|
WorkStorage
|
|
229
229
|
} from "./chunk-MPC7TYTZ.js";
|
|
@@ -243,16 +243,16 @@ import {
|
|
|
243
243
|
} from "./chunk-OFEHITAZ.js";
|
|
244
244
|
import {
|
|
245
245
|
readAggregateExtractionWatermark
|
|
246
|
-
} from "./chunk-
|
|
246
|
+
} from "./chunk-VJGDQA3D.js";
|
|
247
247
|
import {
|
|
248
248
|
getObjectiveStateStoreStatus
|
|
249
249
|
} from "./chunk-HM7RHKS4.js";
|
|
250
250
|
import {
|
|
251
251
|
journalPath
|
|
252
|
-
} from "./chunk-
|
|
252
|
+
} from "./chunk-OAIWPB2I.js";
|
|
253
253
|
import {
|
|
254
254
|
searchHarmonicRetrieval
|
|
255
|
-
} from "./chunk-
|
|
255
|
+
} from "./chunk-O5MW6CQL.js";
|
|
256
256
|
import {
|
|
257
257
|
getCueAnchorStoreStatus
|
|
258
258
|
} from "./chunk-BMWN7B3Y.js";
|
|
@@ -261,12 +261,12 @@ import {
|
|
|
261
261
|
readMemoryGovernanceRunArtifact,
|
|
262
262
|
restoreMemoryGovernanceRun,
|
|
263
263
|
runMemoryGovernance
|
|
264
|
-
} from "./chunk-
|
|
264
|
+
} from "./chunk-KX36OCGK.js";
|
|
265
265
|
import {
|
|
266
266
|
listNamespaces,
|
|
267
267
|
runNamespaceMigration,
|
|
268
268
|
verifyNamespaces
|
|
269
|
-
} from "./chunk-
|
|
269
|
+
} from "./chunk-KWVI52ER.js";
|
|
270
270
|
import {
|
|
271
271
|
resolveNamespaceChildRoot
|
|
272
272
|
} from "./chunk-3UXOZBHV.js";
|
|
@@ -303,7 +303,7 @@ import {
|
|
|
303
303
|
} from "./chunk-BOOFTFFE.js";
|
|
304
304
|
import {
|
|
305
305
|
meetingIdDate
|
|
306
|
-
} from "./chunk-
|
|
306
|
+
} from "./chunk-BD5QEP3T.js";
|
|
307
307
|
import {
|
|
308
308
|
isValidTranscriptDate
|
|
309
309
|
} from "./chunk-UHVXE24Y.js";
|
|
@@ -10136,4 +10136,4 @@ export {
|
|
|
10136
10136
|
listMemoryMarkdownFilePaths,
|
|
10137
10137
|
registerCli
|
|
10138
10138
|
};
|
|
10139
|
-
//# sourceMappingURL=chunk-
|
|
10139
|
+
//# sourceMappingURL=chunk-VA2HNBGQ.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
getOperation
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-BX4WDBTE.js";
|
|
4
4
|
import {
|
|
5
5
|
EngramAccessInputError
|
|
6
6
|
} from "./chunk-3MUKQQ7A.js";
|
|
@@ -21,4 +21,4 @@ async function respondBriefingHttp(options) {
|
|
|
21
21
|
export {
|
|
22
22
|
respondBriefingHttp
|
|
23
23
|
};
|
|
24
|
-
//# sourceMappingURL=chunk-
|
|
24
|
+
//# sourceMappingURL=chunk-VBJD4RSJ.js.map
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import {
|
|
2
2
|
resolveDefaultNamespaceRoot
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-D5UPBXZM.js";
|
|
4
4
|
import {
|
|
5
5
|
StorageManager
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-BD5QEP3T.js";
|
|
7
7
|
import {
|
|
8
8
|
composeLocationDayBody,
|
|
9
9
|
composeLocationDayMeta,
|
|
@@ -728,4 +728,4 @@ export {
|
|
|
728
728
|
runLocationBackfill,
|
|
729
729
|
runLocationCliCommand
|
|
730
730
|
};
|
|
731
|
-
//# sourceMappingURL=chunk-
|
|
731
|
+
//# sourceMappingURL=chunk-VDXTXVFZ.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
resolveCorpusNamespaceRoots
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-JVNEXW6X.js";
|
|
4
4
|
import {
|
|
5
5
|
capabilityAllowsNamespace
|
|
6
6
|
} from "./chunk-IG747LRN.js";
|
|
@@ -200,4 +200,4 @@ async function readAggregateExtractionWatermark(options) {
|
|
|
200
200
|
export {
|
|
201
201
|
readAggregateExtractionWatermark
|
|
202
202
|
};
|
|
203
|
-
//# sourceMappingURL=chunk-
|
|
203
|
+
//# sourceMappingURL=chunk-VJGDQA3D.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
defineOperation
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-BX4WDBTE.js";
|
|
4
4
|
import {
|
|
5
5
|
EngramAccessInputError
|
|
6
6
|
} from "./chunk-3MUKQQ7A.js";
|
|
@@ -71,4 +71,4 @@ defineOperation({
|
|
|
71
71
|
})
|
|
72
72
|
})
|
|
73
73
|
});
|
|
74
|
-
//# sourceMappingURL=chunk-
|
|
74
|
+
//# sourceMappingURL=chunk-WCTL3PVM.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
StorageManager
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-BD5QEP3T.js";
|
|
4
4
|
import {
|
|
5
5
|
composeMemoryEnvelope
|
|
6
6
|
} from "./chunk-OFCHT2TN.js";
|
|
@@ -546,4 +546,4 @@ export {
|
|
|
546
546
|
setSemanticRulePromotionTestHooks,
|
|
547
547
|
promoteSemanticRuleFromMemory
|
|
548
548
|
};
|
|
549
|
-
//# sourceMappingURL=chunk-
|
|
549
|
+
//# sourceMappingURL=chunk-WH4QXVKU.js.map
|
|
@@ -21,13 +21,13 @@ import {
|
|
|
21
21
|
defineOperation,
|
|
22
22
|
parseNamespacePreflightWriteOp,
|
|
23
23
|
resolveAuthorizedNamespaceWritablePreflight
|
|
24
|
-
} from "./chunk-
|
|
24
|
+
} from "./chunk-BX4WDBTE.js";
|
|
25
25
|
import {
|
|
26
26
|
parseSharedWriteOutputControls
|
|
27
27
|
} from "./chunk-IFBSZGW3.js";
|
|
28
28
|
import {
|
|
29
29
|
validateBriefingFormat
|
|
30
|
-
} from "./chunk-
|
|
30
|
+
} from "./chunk-BH44JOLA.js";
|
|
31
31
|
import {
|
|
32
32
|
parseDeepRecallMaxSteps
|
|
33
33
|
} from "./chunk-A7AISUJI.js";
|
|
@@ -603,4 +603,4 @@ defineOperation({ name: "graph_events", description: "SSE graph events.", schema
|
|
|
603
603
|
defineOperation({ name: "chat_message", description: "Chat message.", schema: strictSchema({ message: S.str, chatSessionId: S.str }), handler: async (_i, _ctx) => ({ result: { ok: true } }) });
|
|
604
604
|
defineOperation({ name: "chat_events", description: "SSE chat events.", schema: strictSchema({}), handler: async (_i, _ctx) => ({ result: { stream: "sse" } }) });
|
|
605
605
|
defineOperation({ name: "adapters_status", description: "Adapter registry metadata (issue #1850 round 5). Marker op: the HTTP transport builds the response from its own adapterRegistry, but the op still must be registered so it appears in listRegisteredOperations and enforceTokenOp can gate it for scoped tokens.", schema: strictSchema({}), handler: async (_i, _ctx) => ({ result: { ok: true } }) });
|
|
606
|
-
//# sourceMappingURL=chunk-
|
|
606
|
+
//# sourceMappingURL=chunk-WXFKXCOQ.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
SupportPassportCreateGrantRequestSchema,
|
|
3
3
|
defineOperation
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-BX4WDBTE.js";
|
|
5
5
|
import {
|
|
6
6
|
SupportPassportCardCategorySchema,
|
|
7
7
|
SupportPassportMemoryIdSchema,
|
|
@@ -220,4 +220,4 @@ var supportPassportGrantAskOperation = defineOperation({
|
|
|
220
220
|
result: await ctx.service.supportPassportAskGrant(grantId, secret, question, ctx.abortSignal)
|
|
221
221
|
})
|
|
222
222
|
});
|
|
223
|
-
//# sourceMappingURL=chunk-
|
|
223
|
+
//# sourceMappingURL=chunk-XQIHFXYP.js.map
|
|
@@ -14,7 +14,7 @@ import {
|
|
|
14
14
|
} from "./chunk-3UXOZBHV.js";
|
|
15
15
|
import {
|
|
16
16
|
StorageManager
|
|
17
|
-
} from "./chunk-
|
|
17
|
+
} from "./chunk-BD5QEP3T.js";
|
|
18
18
|
import {
|
|
19
19
|
OKF_PROFILE_TYPE,
|
|
20
20
|
okfTypeForMemory
|
|
@@ -272,4 +272,4 @@ export {
|
|
|
272
272
|
exportOkfBundle,
|
|
273
273
|
firstHeading
|
|
274
274
|
};
|
|
275
|
-
//# sourceMappingURL=chunk-
|
|
275
|
+
//# sourceMappingURL=chunk-YYNHJF3N.js.map
|