@remnic/core 9.69.52 → 9.69.53
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 +1 -1
- package/dist/access-admin-ops-surface.js +4 -4
- package/dist/access-authorization-probe.d.ts +1 -1
- package/dist/access-authorization-probe.js +5 -5
- package/dist/access-boundary.d.ts +1 -1
- package/dist/access-boundary.js +4 -4
- package/dist/access-cli.js +20 -20
- package/dist/access-extraction-force-flush.d.ts +1 -1
- package/dist/access-extraction-force-flush.js +4 -4
- package/dist/access-http-briefing.d.ts +1 -1
- package/dist/access-http-briefing.js +5 -5
- package/dist/access-http-lcm-compaction.d.ts +1 -1
- package/dist/access-http-lifecycle-flush.d.ts +1 -1
- package/dist/access-http-offline-stream.d.ts +1 -1
- package/dist/access-http-query.js +4 -4
- package/dist/access-http.d.ts +2 -2
- package/dist/access-http.js +16 -16
- package/dist/access-identity-continuity-surface.js +4 -4
- package/dist/access-lcm-surface.d.ts +1 -1
- package/dist/access-lcm-surface.js +4 -4
- package/dist/access-mcp-shared-context-tools.d.ts +1 -1
- package/dist/access-mcp.d.ts +1 -1
- package/dist/access-mcp.js +11 -11
- package/dist/access-namespace-preflight.js +4 -4
- package/dist/access-observe-write-surface.d.ts +1 -1
- package/dist/access-observe-write-surface.js +4 -4
- package/dist/access-operations-batch.js +5 -5
- package/dist/access-operations.d.ts +1 -1
- package/dist/access-operations.js +10 -10
- package/dist/access-recall-concurrency.d.ts +1 -1
- package/dist/access-recall-concurrency.js +4 -4
- package/dist/access-recall-response.d.ts +1 -1
- package/dist/access-recall-response.js +4 -4
- package/dist/access-recall-surface.d.ts +1 -1
- package/dist/access-recall-surface.js +4 -4
- package/dist/access-schema.d.ts +113 -113
- package/dist/{access-service-CUNM5RfA.d.ts → access-service-H-qEdnSs.d.ts} +64 -64
- package/dist/access-service-helpers.d.ts +1 -1
- package/dist/access-service.d.ts +1 -1
- package/dist/access-service.js +4 -4
- package/dist/access-surface-catalog.d.ts +1 -1
- package/dist/access-surface-catalog.js +6 -6
- package/dist/{chunk-TEQQQTQS.js → chunk-2HJKAVAS.js} +2 -2
- package/dist/{chunk-HWT6KRGS.js → chunk-6UEM5EOB.js} +2 -2
- package/dist/{chunk-UCY4EHAG.js → chunk-A4TQFNRX.js} +3 -3
- package/dist/{chunk-72N2P44O.js → chunk-ARRKSBQU.js} +2 -2
- package/dist/{chunk-WBW34YCJ.js → chunk-BCXZ4BDS.js} +2 -2
- package/dist/{chunk-V5BU5PVE.js → chunk-CO7KBRPF.js} +2 -2
- package/dist/{chunk-HG42J2EX.js → chunk-EQNZC3BH.js} +2 -2
- package/dist/{chunk-35EH6KW4.js → chunk-EYK3UHAP.js} +2 -2
- package/dist/{chunk-DCRK7I5E.js → chunk-HUQMVI3A.js} +93 -4
- package/dist/chunk-HUQMVI3A.js.map +1 -0
- package/dist/{chunk-MSTKJI5T.js → chunk-K7FXR75S.js} +442 -318
- package/dist/chunk-K7FXR75S.js.map +1 -0
- package/dist/{chunk-U6CMLAP4.js → chunk-M7HFDWOS.js} +2 -2
- package/dist/{chunk-2UDAABV6.js → chunk-MTJUIIM4.js} +2 -2
- package/dist/{chunk-GRX6YH4E.js → chunk-MXTCV3B5.js} +2 -2
- package/dist/{chunk-6KCQNFDQ.js → chunk-SOOWBRMH.js} +8 -8
- package/dist/{chunk-SOFATSHJ.js → chunk-TS66MUUJ.js} +5 -5
- package/dist/{chunk-72AV2H3R.js → chunk-U3NBO4IX.js} +39 -3
- package/dist/chunk-U3NBO4IX.js.map +1 -0
- package/dist/{chunk-EW3Y73MN.js → chunk-UJBIWY5M.js} +2 -2
- package/dist/{chunk-SVUUOLKM.js → chunk-VMKAA5SU.js} +2 -2
- package/dist/{chunk-UQTXER7M.js → chunk-ZADYEZY4.js} +2 -2
- package/dist/{chunk-2INZSV27.js → chunk-ZANEMAEV.js} +2 -2
- package/dist/{cli-CCc34xV7.d.ts → cli-VGDSn2zY.d.ts} +1 -1
- package/dist/cli.d.ts +2 -2
- package/dist/cli.js +17 -17
- package/dist/deep-recall-http-glue.d.ts +1 -1
- package/dist/deep-recall-mcp-tools.d.ts +1 -1
- package/dist/directory-sidecars.d.ts +30 -7
- package/dist/directory-sidecars.js +5 -1
- package/dist/external-wiki-access.d.ts +1 -1
- package/dist/external-wiki-access.js +5 -5
- package/dist/external-wiki-mcp-tools.d.ts +1 -1
- package/dist/index.d.ts +680 -680
- package/dist/index.js +20 -20
- package/dist/mcp-memory-inspector-app.d.ts +1 -1
- package/dist/memory-browse-http-glue.d.ts +1 -1
- package/dist/memory-browse-mcp-tools.d.ts +1 -1
- package/dist/memory-browse-operations.js +5 -5
- package/dist/memory-browse.js +3 -3
- package/dist/memory-subject-cli.d.ts +1 -1
- package/dist/memory-subject.d.ts +1 -1
- package/dist/orchestrator.js +20 -20
- package/dist/{public-http-UWVcqMcb.d.ts → public-http-P0cnHzYB.d.ts} +1 -1
- package/dist/recall-navigation-http-glue.d.ts +1 -1
- package/dist/recall-navigation-mcp-tools.d.ts +1 -1
- package/dist/recall-navigation-operations.js +5 -5
- package/dist/recall-navigation.js +4 -4
- package/dist/recall-state-view-admission.js +3 -3
- package/dist/schemas.d.ts +160 -160
- package/dist/shared-context/manager.d.ts +8 -8
- package/dist/support-passport/index.d.ts +4 -4
- package/dist/support-passport/index.js +7 -7
- package/dist/transfer/types.d.ts +78 -78
- package/dist/who-knows-cli.d.ts +1 -1
- package/dist/who-knows.d.ts +1 -1
- package/package.json +2 -2
- package/src/directory-sidecars.test.ts +113 -0
- package/src/directory-sidecars.ts +70 -8
- package/src/experience/session-experience-mining.test.ts +186 -0
- package/src/experience/session-experience-mining.ts +90 -0
- package/src/orchestration/persistence-index.ts +50 -0
- package/src/orchestration/recall-recognition-index.test.ts +249 -0
- package/src/orchestration/recall-recognition-index.ts +169 -0
- package/src/procedural/procedure-miner.ts +8 -6
- package/src/testing/subjects/recall-recognition-index.test.ts +97 -0
- package/dist/chunk-72AV2H3R.js.map +0 -1
- package/dist/chunk-DCRK7I5E.js.map +0 -1
- package/dist/chunk-MSTKJI5T.js.map +0 -1
- /package/dist/{chunk-TEQQQTQS.js.map → chunk-2HJKAVAS.js.map} +0 -0
- /package/dist/{chunk-HWT6KRGS.js.map → chunk-6UEM5EOB.js.map} +0 -0
- /package/dist/{chunk-UCY4EHAG.js.map → chunk-A4TQFNRX.js.map} +0 -0
- /package/dist/{chunk-72N2P44O.js.map → chunk-ARRKSBQU.js.map} +0 -0
- /package/dist/{chunk-WBW34YCJ.js.map → chunk-BCXZ4BDS.js.map} +0 -0
- /package/dist/{chunk-V5BU5PVE.js.map → chunk-CO7KBRPF.js.map} +0 -0
- /package/dist/{chunk-HG42J2EX.js.map → chunk-EQNZC3BH.js.map} +0 -0
- /package/dist/{chunk-35EH6KW4.js.map → chunk-EYK3UHAP.js.map} +0 -0
- /package/dist/{chunk-U6CMLAP4.js.map → chunk-M7HFDWOS.js.map} +0 -0
- /package/dist/{chunk-2UDAABV6.js.map → chunk-MTJUIIM4.js.map} +0 -0
- /package/dist/{chunk-GRX6YH4E.js.map → chunk-MXTCV3B5.js.map} +0 -0
- /package/dist/{chunk-6KCQNFDQ.js.map → chunk-SOOWBRMH.js.map} +0 -0
- /package/dist/{chunk-SOFATSHJ.js.map → chunk-TS66MUUJ.js.map} +0 -0
- /package/dist/{chunk-EW3Y73MN.js.map → chunk-UJBIWY5M.js.map} +0 -0
- /package/dist/{chunk-SVUUOLKM.js.map → chunk-VMKAA5SU.js.map} +0 -0
- /package/dist/{chunk-UQTXER7M.js.map → chunk-ZADYEZY4.js.map} +0 -0
- /package/dist/{chunk-2INZSV27.js.map → chunk-ZANEMAEV.js.map} +0 -0
|
@@ -29,7 +29,7 @@ import {
|
|
|
29
29
|
defineOperation,
|
|
30
30
|
parseNamespacePreflightWriteOp,
|
|
31
31
|
resolveAuthorizedNamespaceWritablePreflight
|
|
32
|
-
} from "./chunk-
|
|
32
|
+
} from "./chunk-HUQMVI3A.js";
|
|
33
33
|
import {
|
|
34
34
|
parseSharedWriteOutputControls
|
|
35
35
|
} from "./chunk-IFBSZGW3.js";
|
|
@@ -594,4 +594,4 @@ defineOperation({ name: "graph_events", description: "SSE graph events.", schema
|
|
|
594
594
|
defineOperation({ name: "chat_message", description: "Chat message.", schema: strictSchema({ message: S.str, chatSessionId: S.str }), handler: async (_i, _ctx) => ({ result: { ok: true } }) });
|
|
595
595
|
defineOperation({ name: "chat_events", description: "SSE chat events.", schema: strictSchema({}), handler: async (_i, _ctx) => ({ result: { stream: "sse" } }) });
|
|
596
596
|
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 } }) });
|
|
597
|
-
//# sourceMappingURL=chunk-
|
|
597
|
+
//# sourceMappingURL=chunk-CO7KBRPF.js.map
|
|
@@ -3,7 +3,7 @@ import {
|
|
|
3
3
|
getOperation,
|
|
4
4
|
operationRequiresAuthorizedNamespace,
|
|
5
5
|
operationUsesPrincipalNamespace
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-HUQMVI3A.js";
|
|
7
7
|
import {
|
|
8
8
|
assertOperationAuthorizationAllowed
|
|
9
9
|
} from "./chunk-MZWSOLMT.js";
|
|
@@ -60,4 +60,4 @@ export {
|
|
|
60
60
|
authorizationProbeNamespaces,
|
|
61
61
|
authorizationProbeRequiresPrincipalNamespace
|
|
62
62
|
};
|
|
63
|
-
//# sourceMappingURL=chunk-
|
|
63
|
+
//# sourceMappingURL=chunk-EQNZC3BH.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
SUPPORT_PASSPORT_DRAFT_MAX_CONTENT_CHARACTERS,
|
|
3
3
|
SUPPORT_PASSPORT_DRAFT_MAX_MEMORIES
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-HUQMVI3A.js";
|
|
5
5
|
import {
|
|
6
6
|
SUPPORT_PASSPORT_SOURCE_MEMORY_ID_MAX_LENGTH
|
|
7
7
|
} from "./chunk-PWPIERBM.js";
|
|
@@ -343,4 +343,4 @@ export {
|
|
|
343
343
|
parseSupportPassportModelJob,
|
|
344
344
|
SupportPassportModelBridge
|
|
345
345
|
};
|
|
346
|
-
//# sourceMappingURL=chunk-
|
|
346
|
+
//# sourceMappingURL=chunk-EYK3UHAP.js.map
|
|
@@ -112,10 +112,10 @@ import {
|
|
|
112
112
|
} from "./chunk-UD7UNYRD.js";
|
|
113
113
|
import {
|
|
114
114
|
runMemoryBrowse
|
|
115
|
-
} from "./chunk-
|
|
115
|
+
} from "./chunk-UJBIWY5M.js";
|
|
116
116
|
import {
|
|
117
117
|
isSearchExcludedPath
|
|
118
|
-
} from "./chunk-
|
|
118
|
+
} from "./chunk-2HJKAVAS.js";
|
|
119
119
|
import {
|
|
120
120
|
coerceIncludedMemories
|
|
121
121
|
} from "./chunk-2YA5N2BY.js";
|
|
@@ -3310,6 +3310,88 @@ import { createHash as createHash2 } from "crypto";
|
|
|
3310
3310
|
import { mkdir as mkdir2, rm, stat } from "fs/promises";
|
|
3311
3311
|
import path4 from "path";
|
|
3312
3312
|
|
|
3313
|
+
// src/experience/session-experience-recall.ts
|
|
3314
|
+
function tokenOverlapScore(prompt, memoryText) {
|
|
3315
|
+
const norm = (s) => s.toLowerCase().split(/[^a-z0-9]+/).filter((t) => t.length > 2);
|
|
3316
|
+
const promptTokens = new Set(norm(prompt));
|
|
3317
|
+
const memTokens = new Set(norm(memoryText));
|
|
3318
|
+
if (promptTokens.size === 0 || memTokens.size === 0) return 0;
|
|
3319
|
+
let inter = 0;
|
|
3320
|
+
for (const t of promptTokens) {
|
|
3321
|
+
if (memTokens.has(t)) inter++;
|
|
3322
|
+
}
|
|
3323
|
+
const union = /* @__PURE__ */ new Set([...promptTokens, ...memTokens]);
|
|
3324
|
+
return inter / Math.max(1, union.size);
|
|
3325
|
+
}
|
|
3326
|
+
function isSessionExperienceMemory(memory) {
|
|
3327
|
+
const hash = memory.frontmatter.structuredAttributes?.experience_session_hash;
|
|
3328
|
+
return typeof hash === "string" && hash.length > 0;
|
|
3329
|
+
}
|
|
3330
|
+
function scoreSessionExperienceForPrompt(memory, prompt) {
|
|
3331
|
+
if (!isSessionExperienceMemory(memory)) return null;
|
|
3332
|
+
const situation = memory.frontmatter.structuredAttributes?.experience_situation ?? "";
|
|
3333
|
+
const situationScore = tokenOverlapScore(prompt, situation);
|
|
3334
|
+
const bodyScore = tokenOverlapScore(prompt, memory.content);
|
|
3335
|
+
return Math.min(1, situationScore * 0.75 + bodyScore * 0.25);
|
|
3336
|
+
}
|
|
3337
|
+
function renderSessionExperiencePreview(memory) {
|
|
3338
|
+
if (!isSessionExperienceMemory(memory)) return null;
|
|
3339
|
+
const attrs = memory.frontmatter.structuredAttributes ?? {};
|
|
3340
|
+
const situation = (attrs.experience_situation ?? "").trim();
|
|
3341
|
+
const approach = (attrs.experience_approach ?? "").trim();
|
|
3342
|
+
const reflection = (attrs.experience_reflection ?? "").trim();
|
|
3343
|
+
if (situation.length === 0 && approach.length === 0 && reflection.length === 0) {
|
|
3344
|
+
return `Experience. ${memory.content.replace(/\s+/g, " ").trim()}`;
|
|
3345
|
+
}
|
|
3346
|
+
return `Experience. Situation: ${situation} Approach: ${approach} Reflection: ${reflection}`.replace(/\s+/g, " ").trim();
|
|
3347
|
+
}
|
|
3348
|
+
|
|
3349
|
+
// src/experience/session-experience-mining.ts
|
|
3350
|
+
function mapExperienceOutcome(raw) {
|
|
3351
|
+
if (raw === "success" || raw === "failure" || raw === "partial") return raw;
|
|
3352
|
+
return "unknown";
|
|
3353
|
+
}
|
|
3354
|
+
function experienceMemoryToMiningRecord(memory) {
|
|
3355
|
+
if (!isSessionExperienceMemory(memory)) return null;
|
|
3356
|
+
if (!isActiveMemoryStatus(memory.frontmatter.status)) return null;
|
|
3357
|
+
const attrs = memory.frontmatter.structuredAttributes ?? {};
|
|
3358
|
+
const situation = (attrs.experience_situation ?? "").trim();
|
|
3359
|
+
const hash = attrs.experience_session_hash;
|
|
3360
|
+
if (situation.length === 0 || typeof hash !== "string" || hash.length === 0) return null;
|
|
3361
|
+
const recordedAt = memory.frontmatter.created;
|
|
3362
|
+
if (!recordedAt || !Number.isFinite(Date.parse(recordedAt))) return null;
|
|
3363
|
+
const approach = (attrs.experience_approach ?? "").trim();
|
|
3364
|
+
const reflection = (attrs.experience_reflection ?? "").trim();
|
|
3365
|
+
const record = {
|
|
3366
|
+
schemaVersion: 1,
|
|
3367
|
+
trajectoryId: `experience:${hash}`,
|
|
3368
|
+
recordedAt,
|
|
3369
|
+
sessionKey: hash,
|
|
3370
|
+
goal: situation,
|
|
3371
|
+
actionSummary: approach,
|
|
3372
|
+
observationSummary: reflection,
|
|
3373
|
+
outcomeKind: mapExperienceOutcome(attrs.experience_outcome),
|
|
3374
|
+
outcomeSummary: reflection
|
|
3375
|
+
};
|
|
3376
|
+
if (typeof memory.frontmatter.entityRef === "string" && memory.frontmatter.entityRef.trim().length > 0) {
|
|
3377
|
+
record.entityRefs = [memory.frontmatter.entityRef.trim()];
|
|
3378
|
+
}
|
|
3379
|
+
return record;
|
|
3380
|
+
}
|
|
3381
|
+
async function collectExperienceMiningRecords(storage) {
|
|
3382
|
+
const memories = await storage.readAllMemories();
|
|
3383
|
+
const out = [];
|
|
3384
|
+
for (const memory of memories) {
|
|
3385
|
+
const record = experienceMemoryToMiningRecord(memory);
|
|
3386
|
+
if (record) out.push(record);
|
|
3387
|
+
}
|
|
3388
|
+
return out;
|
|
3389
|
+
}
|
|
3390
|
+
async function collectProcedureMiningRecords(options) {
|
|
3391
|
+
const source = options.experienceEnabled === true ? options.trajectories.concat(await collectExperienceMiningRecords(options.storage)) : options.trajectories;
|
|
3392
|
+
return filterTrajectoriesByLookbackDays(source, options.lookbackDays, options.nowMs);
|
|
3393
|
+
}
|
|
3394
|
+
|
|
3313
3395
|
// src/procedural/reinforcement-core.ts
|
|
3314
3396
|
function clusterByKey(items, keyFn) {
|
|
3315
3397
|
const clusters = /* @__PURE__ */ new Map();
|
|
@@ -3470,7 +3552,12 @@ async function runProcedureMining(options) {
|
|
|
3470
3552
|
memoryDir: options.memoryDir,
|
|
3471
3553
|
causalTrajectoryStoreDir: trajectoryDir
|
|
3472
3554
|
});
|
|
3473
|
-
const recent =
|
|
3555
|
+
const recent = await collectProcedureMiningRecords({
|
|
3556
|
+
trajectories,
|
|
3557
|
+
lookbackDays: cfg.lookbackDays,
|
|
3558
|
+
storage: options.storage,
|
|
3559
|
+
experienceEnabled: options.config.sessionExperience?.enabled === true
|
|
3560
|
+
});
|
|
3474
3561
|
const clusters = clusterByKey(recent, clusterKey);
|
|
3475
3562
|
let clustersProcessed = 0;
|
|
3476
3563
|
let proceduresWritten = 0;
|
|
@@ -18323,6 +18410,8 @@ export {
|
|
|
18323
18410
|
DELTA_SUBCOMMANDS,
|
|
18324
18411
|
detectPassiveCorrections,
|
|
18325
18412
|
capturePassiveCorrections,
|
|
18413
|
+
scoreSessionExperienceForPrompt,
|
|
18414
|
+
renderSessionExperiencePreview,
|
|
18326
18415
|
clusterByKey,
|
|
18327
18416
|
OPERATION_NAMES,
|
|
18328
18417
|
coerceBooleanLike,
|
|
@@ -18412,4 +18501,4 @@ export {
|
|
|
18412
18501
|
EngramAccessService,
|
|
18413
18502
|
AccessAdminOpsSurface
|
|
18414
18503
|
};
|
|
18415
|
-
//# sourceMappingURL=chunk-
|
|
18504
|
+
//# sourceMappingURL=chunk-HUQMVI3A.js.map
|