@x12i/memorix-service 3.0.6 → 3.2.0
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/README.md +8 -1
- package/dist/ai-services/associate-prep.d.ts +37 -0
- package/dist/ai-services/associate-prep.d.ts.map +1 -0
- package/dist/ai-services/associate-prep.js +208 -0
- package/dist/ai-services/associate-prep.js.map +1 -0
- package/dist/ai-services/chunk-markdown.d.ts +22 -0
- package/dist/ai-services/chunk-markdown.d.ts.map +1 -0
- package/dist/ai-services/chunk-markdown.js +159 -0
- package/dist/ai-services/chunk-markdown.js.map +1 -0
- package/dist/ai-services/client.d.ts +31 -0
- package/dist/ai-services/client.d.ts.map +1 -0
- package/dist/ai-services/client.js +104 -0
- package/dist/ai-services/client.js.map +1 -0
- package/dist/ai-services/config.d.ts +17 -0
- package/dist/ai-services/config.d.ts.map +1 -0
- package/dist/ai-services/config.js +44 -0
- package/dist/ai-services/config.js.map +1 -0
- package/dist/ai-services/normalize-output.d.ts +29 -0
- package/dist/ai-services/normalize-output.d.ts.map +1 -0
- package/dist/ai-services/normalize-output.js +428 -0
- package/dist/ai-services/normalize-output.js.map +1 -0
- package/dist/ai-services/skill-execution.d.ts +24 -0
- package/dist/ai-services/skill-execution.d.ts.map +1 -0
- package/dist/ai-services/skill-execution.js +74 -0
- package/dist/ai-services/skill-execution.js.map +1 -0
- package/dist/ai-services/types.d.ts +62 -0
- package/dist/ai-services/types.d.ts.map +1 -0
- package/dist/ai-services/types.js +3 -0
- package/dist/ai-services/types.js.map +1 -0
- package/dist/app.d.ts.map +1 -1
- package/dist/app.js +41 -6
- package/dist/app.js.map +1 -1
- package/dist/assist/ask.d.ts +35 -0
- package/dist/assist/ask.d.ts.map +1 -0
- package/dist/assist/ask.js +346 -0
- package/dist/assist/ask.js.map +1 -0
- package/dist/assist/facts.d.ts +5 -0
- package/dist/assist/facts.d.ts.map +1 -0
- package/dist/assist/facts.js +237 -0
- package/dist/assist/facts.js.map +1 -0
- package/dist/assist/merge-ask-proposal.d.ts +9 -0
- package/dist/assist/merge-ask-proposal.d.ts.map +1 -0
- package/dist/assist/merge-ask-proposal.js +57 -0
- package/dist/assist/merge-ask-proposal.js.map +1 -0
- package/dist/assist/types.d.ts +60 -0
- package/dist/assist/types.d.ts.map +1 -0
- package/dist/assist/types.js +57 -0
- package/dist/assist/types.js.map +1 -0
- package/dist/assist/validate.d.ts +4 -0
- package/dist/assist/validate.d.ts.map +1 -0
- package/dist/assist/validate.js +319 -0
- package/dist/assist/validate.js.map +1 -0
- package/dist/cli.js +29 -6
- package/dist/cli.js.map +1 -1
- package/dist/connector-catalog.d.ts +68 -0
- package/dist/connector-catalog.d.ts.map +1 -0
- package/dist/connector-catalog.js +258 -0
- package/dist/connector-catalog.js.map +1 -0
- package/dist/connector-role.d.ts +22 -0
- package/dist/connector-role.d.ts.map +1 -0
- package/dist/connector-role.js +71 -0
- package/dist/connector-role.js.map +1 -0
- package/dist/destination-runtime.d.ts +8 -0
- package/dist/destination-runtime.d.ts.map +1 -0
- package/dist/destination-runtime.js +11 -0
- package/dist/destination-runtime.js.map +1 -0
- package/dist/execution-target.d.ts +141 -0
- package/dist/execution-target.d.ts.map +1 -0
- package/dist/execution-target.js +853 -0
- package/dist/execution-target.js.map +1 -0
- package/dist/generic-connectors.d.ts +41 -0
- package/dist/generic-connectors.d.ts.map +1 -0
- package/dist/generic-connectors.js +158 -0
- package/dist/generic-connectors.js.map +1 -0
- package/dist/isolation.d.ts +1 -1
- package/dist/isolation.d.ts.map +1 -1
- package/dist/jobs-scope.d.ts +21 -0
- package/dist/jobs-scope.d.ts.map +1 -0
- package/dist/jobs-scope.js +83 -0
- package/dist/jobs-scope.js.map +1 -0
- package/dist/journey/collect.js +2 -2
- package/dist/journey/collect.js.map +1 -1
- package/dist/journey/coverage.js +3 -3
- package/dist/journey/coverage.js.map +1 -1
- package/dist/known-packs.d.ts +1 -1
- package/dist/known-packs.d.ts.map +1 -1
- package/dist/known-packs.js +1 -1
- package/dist/known-packs.js.map +1 -1
- package/dist/live.d.ts +13 -1
- package/dist/live.d.ts.map +1 -1
- package/dist/live.js +866 -2
- package/dist/live.js.map +1 -1
- package/dist/magit/magit-pack-service.d.ts +112 -0
- package/dist/magit/magit-pack-service.d.ts.map +1 -1
- package/dist/magit/magit-pack-service.js +494 -12
- package/dist/magit/magit-pack-service.js.map +1 -1
- package/dist/magit/pack-to-patchset.d.ts +20 -1
- package/dist/magit/pack-to-patchset.d.ts.map +1 -1
- package/dist/magit/pack-to-patchset.js +82 -9
- package/dist/magit/pack-to-patchset.js.map +1 -1
- package/dist/magit/package-catalog-bridge.d.ts +58 -0
- package/dist/magit/package-catalog-bridge.d.ts.map +1 -0
- package/dist/magit/package-catalog-bridge.js +220 -0
- package/dist/magit/package-catalog-bridge.js.map +1 -0
- package/dist/magit/proposal-to-pack.d.ts +22 -0
- package/dist/magit/proposal-to-pack.d.ts.map +1 -0
- package/dist/magit/proposal-to-pack.js +68 -0
- package/dist/magit/proposal-to-pack.js.map +1 -0
- package/dist/mongo-metadata-store.d.ts.map +1 -1
- package/dist/mongo-metadata-store.js +9 -3
- package/dist/mongo-metadata-store.js.map +1 -1
- package/dist/openapi/openapi.json +6262 -3139
- package/dist/org-sources.d.ts +14 -0
- package/dist/org-sources.d.ts.map +1 -0
- package/dist/org-sources.js +31 -0
- package/dist/org-sources.js.map +1 -0
- package/dist/pipeline-compile.d.ts +67 -1
- package/dist/pipeline-compile.d.ts.map +1 -1
- package/dist/pipeline-compile.js +455 -29
- package/dist/pipeline-compile.js.map +1 -1
- package/dist/pipeline-invoke.d.ts +63 -0
- package/dist/pipeline-invoke.d.ts.map +1 -0
- package/dist/pipeline-invoke.js +114 -0
- package/dist/pipeline-invoke.js.map +1 -0
- package/dist/pipeline-ports.d.ts +13 -0
- package/dist/pipeline-ports.d.ts.map +1 -0
- package/dist/pipeline-ports.js +104 -0
- package/dist/pipeline-ports.js.map +1 -0
- package/dist/platform.d.ts +47 -3
- package/dist/platform.d.ts.map +1 -1
- package/dist/platform.js +309 -26
- package/dist/platform.js.map +1 -1
- package/dist/routes/ai-services.d.ts +4 -0
- package/dist/routes/ai-services.d.ts.map +1 -0
- package/dist/routes/ai-services.js +239 -0
- package/dist/routes/ai-services.js.map +1 -0
- package/dist/routes/assist.d.ts +4 -0
- package/dist/routes/assist.d.ts.map +1 -0
- package/dist/routes/assist.js +75 -0
- package/dist/routes/assist.js.map +1 -0
- package/dist/routes/connector-invocations.d.ts.map +1 -1
- package/dist/routes/connector-invocations.js +18 -21
- package/dist/routes/connector-invocations.js.map +1 -1
- package/dist/routes/data-journey.js +11 -11
- package/dist/routes/data-journey.js.map +1 -1
- package/dist/routes/intelligence.d.ts.map +1 -1
- package/dist/routes/intelligence.js +19 -1
- package/dist/routes/intelligence.js.map +1 -1
- package/dist/routes/jobs.d.ts +4 -0
- package/dist/routes/jobs.d.ts.map +1 -0
- package/dist/routes/jobs.js +888 -0
- package/dist/routes/jobs.js.map +1 -0
- package/dist/routes/memory.d.ts.map +1 -1
- package/dist/routes/memory.js +278 -80
- package/dist/routes/memory.js.map +1 -1
- package/dist/routes/metadata.d.ts.map +1 -1
- package/dist/routes/metadata.js +770 -21
- package/dist/routes/metadata.js.map +1 -1
- package/dist/routes/pipelines.d.ts.map +1 -1
- package/dist/routes/pipelines.js +98 -22
- package/dist/routes/pipelines.js.map +1 -1
- package/dist/routes/relationships.d.ts.map +1 -1
- package/dist/routes/relationships.js +109 -2
- package/dist/routes/relationships.js.map +1 -1
- package/dist/routes/simulation.d.ts +7 -0
- package/dist/routes/simulation.d.ts.map +1 -0
- package/dist/routes/simulation.js +22 -0
- package/dist/routes/simulation.js.map +1 -0
- package/dist/runx/client.d.ts +18 -0
- package/dist/runx/client.d.ts.map +1 -0
- package/dist/runx/client.js +59 -0
- package/dist/runx/client.js.map +1 -0
- package/dist/simulation.d.ts +26 -0
- package/dist/simulation.d.ts.map +1 -0
- package/dist/simulation.js +46 -0
- package/dist/simulation.js.map +1 -0
- package/openapi/openapi.json +6262 -3139
- package/package.json +18 -8
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"jobs.js","sourceRoot":"","sources":["../../src/routes/jobs.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"memory.d.ts","sourceRoot":"","sources":["../../src/routes/memory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"memory.d.ts","sourceRoot":"","sources":["../../src/routes/memory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAwB/C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAuKtD,wBAAsB,oBAAoB,CACxC,GAAG,EAAE,eAAe,EACpB,QAAQ,EAAE,eAAe,GACxB,OAAO,CAAC,IAAI,CAAC,CA6xCf"}
|
package/dist/routes/memory.js
CHANGED
|
@@ -3,6 +3,8 @@ import { credentialHandleFromDelegation, createCredentialHandle, } from "@x12i/m
|
|
|
3
3
|
import { resolveScope } from "../request-scope.js";
|
|
4
4
|
import { ServiceError } from "../errors.js";
|
|
5
5
|
import { forbidCallbackGrant, requireCallbackAccess } from "../access-gate.js";
|
|
6
|
+
import { asSourceDefinition } from "../org-sources.js";
|
|
7
|
+
import { listUnifiedConnectors, toApiConnectorRow, } from "../connector-catalog.js";
|
|
6
8
|
const CONNECTION_PROBE_MS = 2000;
|
|
7
9
|
/** Module-level replay ledger — lives for the process lifetime. */
|
|
8
10
|
const pushEnvelopeStore = createInMemoryPushEnvelopeStore({ maxSize: 50_000 });
|
|
@@ -107,20 +109,29 @@ function redactProbeHeaders(headers) {
|
|
|
107
109
|
return out;
|
|
108
110
|
}
|
|
109
111
|
function connectorFrameworkFlag(entry) {
|
|
110
|
-
return entry.protocol === "memorix-connector/1"
|
|
112
|
+
return entry.protocol === "memorix-connector/1";
|
|
111
113
|
}
|
|
112
|
-
function resolveSourceDefinition(platform,
|
|
113
|
-
const
|
|
114
|
-
if (
|
|
115
|
-
|
|
114
|
+
async function resolveSourceDefinition(platform, scope, sourceId) {
|
|
115
|
+
const packDef = platform.metadata.getDefinition(scope.agentIds, "sources", sourceId);
|
|
116
|
+
if (packDef?.definition) {
|
|
117
|
+
return packDef.definition;
|
|
116
118
|
}
|
|
117
|
-
|
|
119
|
+
const orgDoc = await platform
|
|
120
|
+
.orgRuntimeSourcesFor(scope.orgId)
|
|
121
|
+
.get(sourceId);
|
|
122
|
+
if (orgDoc &&
|
|
123
|
+
(!orgDoc.agentIds.length ||
|
|
124
|
+
!scope.agentIds.length ||
|
|
125
|
+
scope.agentIds.some((a) => orgDoc.agentIds.includes(a)))) {
|
|
126
|
+
return orgDoc.definition;
|
|
127
|
+
}
|
|
128
|
+
throw new ServiceError("NOT_FOUND", `source not found: ${sourceId}`, 404);
|
|
118
129
|
}
|
|
119
130
|
export async function registerMemoryRoutes(app, platform) {
|
|
120
131
|
app.get("/api/memory/sources", async (req) => {
|
|
121
132
|
const scope = resolveScope(req);
|
|
122
133
|
const effective = platform.metadata.resolveEffective(scope.agentIds);
|
|
123
|
-
const
|
|
134
|
+
const packSources = (effective.effective ?? [])
|
|
124
135
|
.filter((e) => e.kind === "sources")
|
|
125
136
|
.map((e) => {
|
|
126
137
|
const d = e.definition;
|
|
@@ -128,6 +139,7 @@ export async function registerMemoryRoutes(app, platform) {
|
|
|
128
139
|
return {
|
|
129
140
|
id: e.id,
|
|
130
141
|
...safe,
|
|
142
|
+
registry: "pack",
|
|
131
143
|
provenance: {
|
|
132
144
|
definedByAgentId: e.provenance.definedByAgentId,
|
|
133
145
|
inheritancePath: e.provenance.inheritancePath,
|
|
@@ -135,19 +147,108 @@ export async function registerMemoryRoutes(app, platform) {
|
|
|
135
147
|
},
|
|
136
148
|
};
|
|
137
149
|
});
|
|
138
|
-
|
|
150
|
+
const packIds = new Set(packSources.map((s) => s.id));
|
|
151
|
+
const orgRows = await platform
|
|
152
|
+
.orgRuntimeSourcesFor(scope.orgId)
|
|
153
|
+
.list({ agentIds: scope.agentIds });
|
|
154
|
+
const orgSources = orgRows
|
|
155
|
+
.filter((r) => !packIds.has(r.sourceId))
|
|
156
|
+
.map((r) => {
|
|
157
|
+
const d = r.definition;
|
|
158
|
+
const { credential: _c, credentials: _cs, secret: _s, ...safe } = d;
|
|
159
|
+
return {
|
|
160
|
+
id: r.sourceId,
|
|
161
|
+
...safe,
|
|
162
|
+
registry: "org",
|
|
163
|
+
origin: r.origin,
|
|
164
|
+
provenance: {
|
|
165
|
+
definedByAgentId: r.agentIds[0] ?? null,
|
|
166
|
+
inheritancePath: r.agentIds,
|
|
167
|
+
selectedAgentId: r.agentIds[0] ?? null,
|
|
168
|
+
},
|
|
169
|
+
};
|
|
170
|
+
});
|
|
171
|
+
return {
|
|
172
|
+
scope,
|
|
173
|
+
sources: [...packSources, ...orgSources],
|
|
174
|
+
note: "credentialRef only; registry=pack|org",
|
|
175
|
+
};
|
|
176
|
+
});
|
|
177
|
+
app.get("/api/memory/org-sources", async (req) => {
|
|
178
|
+
const scope = resolveScope(req);
|
|
179
|
+
const q = req.query;
|
|
180
|
+
const sources = await platform.orgRuntimeSourcesFor(scope.orgId).list({
|
|
181
|
+
origin: q.origin?.trim() || undefined,
|
|
182
|
+
agentIds: scope.agentIds,
|
|
183
|
+
});
|
|
184
|
+
return { scope, sources };
|
|
185
|
+
});
|
|
186
|
+
app.put("/api/memory/org-sources/:sourceId", async (req) => {
|
|
187
|
+
const scope = resolveScope(req);
|
|
188
|
+
const sourceId = String(req.params.sourceId ?? "").trim();
|
|
189
|
+
if (!sourceId) {
|
|
190
|
+
throw new ServiceError("VALIDATION", "sourceId required", 400);
|
|
191
|
+
}
|
|
192
|
+
const body = (req.body ?? {});
|
|
193
|
+
if (!body.definition || typeof body.definition !== "object") {
|
|
194
|
+
throw new ServiceError("VALIDATION", "definition object required", 400);
|
|
195
|
+
}
|
|
196
|
+
const definition = asSourceDefinition(body.definition, sourceId);
|
|
197
|
+
const saved = await platform.orgRuntimeSourcesFor(scope.orgId).upsert({
|
|
198
|
+
sourceId,
|
|
199
|
+
definition,
|
|
200
|
+
agentIds: body.agentIds?.length ? body.agentIds : scope.agentIds,
|
|
201
|
+
origin: body.origin?.trim() || "knowx-folder",
|
|
202
|
+
});
|
|
203
|
+
return { scope, source: saved };
|
|
204
|
+
});
|
|
205
|
+
app.delete("/api/memory/org-sources/:sourceId", async (req) => {
|
|
206
|
+
const scope = resolveScope(req);
|
|
207
|
+
const sourceId = String(req.params.sourceId ?? "").trim();
|
|
208
|
+
if (!sourceId) {
|
|
209
|
+
throw new ServiceError("VALIDATION", "sourceId required", 400);
|
|
210
|
+
}
|
|
211
|
+
const deleted = await platform
|
|
212
|
+
.orgRuntimeSourcesFor(scope.orgId)
|
|
213
|
+
.delete(sourceId);
|
|
214
|
+
if (!deleted) {
|
|
215
|
+
throw new ServiceError("NOT_FOUND", `org source not found: ${sourceId}`, 404);
|
|
216
|
+
}
|
|
217
|
+
return { scope, deleted: true, sourceId };
|
|
218
|
+
});
|
|
219
|
+
app.post("/api/memory/org-sources/replace", async (req) => {
|
|
220
|
+
const scope = resolveScope(req);
|
|
221
|
+
const body = (req.body ?? {});
|
|
222
|
+
const origin = body.origin?.trim() || "knowx-folder";
|
|
223
|
+
if (!Array.isArray(body.sources)) {
|
|
224
|
+
throw new ServiceError("VALIDATION", "sources array required", 400);
|
|
225
|
+
}
|
|
226
|
+
const defs = body.sources.map((s, i) => {
|
|
227
|
+
const sourceId = String(s.sourceId ?? s.definition?.id ?? "").trim();
|
|
228
|
+
if (!sourceId) {
|
|
229
|
+
throw new ServiceError("VALIDATION", `sources[${i}].sourceId required`, 400);
|
|
230
|
+
}
|
|
231
|
+
if (!s.definition || typeof s.definition !== "object") {
|
|
232
|
+
throw new ServiceError("VALIDATION", `sources[${i}].definition required`, 400);
|
|
233
|
+
}
|
|
234
|
+
return {
|
|
235
|
+
sourceId,
|
|
236
|
+
definition: asSourceDefinition(s.definition, sourceId),
|
|
237
|
+
agentIds: s.agentIds?.length ? s.agentIds : scope.agentIds,
|
|
238
|
+
};
|
|
239
|
+
});
|
|
240
|
+
const result = await platform
|
|
241
|
+
.orgRuntimeSourcesFor(scope.orgId)
|
|
242
|
+
.replaceAllForOrigin(origin, defs);
|
|
243
|
+
return { scope, origin, ...result };
|
|
139
244
|
});
|
|
140
245
|
app.get("/api/memory/sources/:sourceId/connection", async (req) => {
|
|
141
246
|
const scope = resolveScope(req);
|
|
142
247
|
const sourceId = String(req.params.sourceId ?? "").trim();
|
|
143
248
|
if (!sourceId)
|
|
144
249
|
throw new ServiceError("VALIDATION", "sourceId required", 400);
|
|
145
|
-
const
|
|
146
|
-
const
|
|
147
|
-
if (!entry) {
|
|
148
|
-
throw new ServiceError("NOT_FOUND", `source not found: ${sourceId}`, 404);
|
|
149
|
-
}
|
|
150
|
-
const definition = entry.definition;
|
|
250
|
+
const source = await resolveSourceDefinition(platform, scope, sourceId);
|
|
251
|
+
const definition = source;
|
|
151
252
|
const baseUrl = resolveSourceBaseUrl(definition);
|
|
152
253
|
const checkedAt = new Date().toISOString();
|
|
153
254
|
if (!baseUrl) {
|
|
@@ -175,12 +276,8 @@ export async function registerMemoryRoutes(app, platform) {
|
|
|
175
276
|
const sourceId = String(req.params.sourceId ?? "").trim();
|
|
176
277
|
if (!sourceId)
|
|
177
278
|
throw new ServiceError("VALIDATION", "sourceId required", 400);
|
|
178
|
-
const
|
|
179
|
-
const
|
|
180
|
-
if (!entry) {
|
|
181
|
-
throw new ServiceError("NOT_FOUND", `source not found: ${sourceId}`, 404);
|
|
182
|
-
}
|
|
183
|
-
const definition = entry.definition;
|
|
279
|
+
const source = await resolveSourceDefinition(platform, scope, sourceId);
|
|
280
|
+
const definition = source;
|
|
184
281
|
const body = (req.body ?? {});
|
|
185
282
|
const endpoint = String(body.endpoint ?? "").trim();
|
|
186
283
|
if (!endpoint) {
|
|
@@ -265,16 +362,18 @@ export async function registerMemoryRoutes(app, platform) {
|
|
|
265
362
|
const sourceId = String(req.params.sourceId ?? "").trim();
|
|
266
363
|
if (!sourceId)
|
|
267
364
|
throw new ServiceError("VALIDATION", "sourceId required", 400);
|
|
268
|
-
const source = resolveSourceDefinition(platform, scope
|
|
365
|
+
const source = await resolveSourceDefinition(platform, scope, sourceId);
|
|
269
366
|
const ports = platform.portsFor(scope);
|
|
270
367
|
const cursors = await ports.memoryRunStore.listCursors({ sourceId });
|
|
271
368
|
const mode = req.query.mode === "context" || req.query.mode === "knowledge"
|
|
272
369
|
? req.query.mode
|
|
273
370
|
: undefined;
|
|
274
371
|
const includeTechnical = req.query.technical === "1" || req.query.technical === "true";
|
|
372
|
+
const workRef = req.query.workRef?.trim() || undefined;
|
|
275
373
|
const checkpoints = listCheckpointSummariesForSource({
|
|
276
374
|
source,
|
|
277
375
|
mode,
|
|
376
|
+
workRef,
|
|
278
377
|
cursors,
|
|
279
378
|
includeTechnical,
|
|
280
379
|
});
|
|
@@ -293,7 +392,7 @@ export async function registerMemoryRoutes(app, platform) {
|
|
|
293
392
|
if (!sourceId || !checkpointKey) {
|
|
294
393
|
throw new ServiceError("VALIDATION", "sourceId and checkpointKey required", 400);
|
|
295
394
|
}
|
|
296
|
-
resolveSourceDefinition(platform, scope
|
|
395
|
+
await resolveSourceDefinition(platform, scope, sourceId);
|
|
297
396
|
const ports = platform.portsFor(scope);
|
|
298
397
|
const doc = await ports.memoryRunStore.getCursor(checkpointKey);
|
|
299
398
|
if (!doc || doc.sourceId !== sourceId) {
|
|
@@ -311,7 +410,7 @@ export async function registerMemoryRoutes(app, platform) {
|
|
|
311
410
|
const sourceId = String(req.params.sourceId ?? "").trim();
|
|
312
411
|
if (!sourceId)
|
|
313
412
|
throw new ServiceError("VALIDATION", "sourceId required", 400);
|
|
314
|
-
const source = resolveSourceDefinition(platform, scope
|
|
413
|
+
const source = await resolveSourceDefinition(platform, scope, sourceId);
|
|
315
414
|
const body = (req.body ?? {});
|
|
316
415
|
const ports = platform.portsFor(scope);
|
|
317
416
|
const mode = body.mode ?? "knowledge";
|
|
@@ -354,7 +453,7 @@ export async function registerMemoryRoutes(app, platform) {
|
|
|
354
453
|
const sourceId = String(req.params.sourceId ?? "").trim();
|
|
355
454
|
if (!sourceId)
|
|
356
455
|
throw new ServiceError("VALIDATION", "sourceId required", 400);
|
|
357
|
-
const source = resolveSourceDefinition(platform, scope
|
|
456
|
+
const source = await resolveSourceDefinition(platform, scope, sourceId);
|
|
358
457
|
const body = (req.body ?? {});
|
|
359
458
|
if (!body.objectType) {
|
|
360
459
|
throw new ServiceError("VALIDATION", "objectType required", 400);
|
|
@@ -463,7 +562,7 @@ export async function registerMemoryRoutes(app, platform) {
|
|
|
463
562
|
const sourceId = String(req.params.sourceId ?? "").trim();
|
|
464
563
|
if (!sourceId)
|
|
465
564
|
throw new ServiceError("VALIDATION", "sourceId required", 400);
|
|
466
|
-
resolveSourceDefinition(platform, scope
|
|
565
|
+
await resolveSourceDefinition(platform, scope, sourceId);
|
|
467
566
|
const mode = req.query.mode === "context" ? "context" : "knowledge";
|
|
468
567
|
const ports = platform.portsFor(scope);
|
|
469
568
|
const schedule = await ports.memoryScheduleStore.getSchedule(sourceId, mode);
|
|
@@ -474,7 +573,7 @@ export async function registerMemoryRoutes(app, platform) {
|
|
|
474
573
|
const sourceId = String(req.params.sourceId ?? "").trim();
|
|
475
574
|
if (!sourceId)
|
|
476
575
|
throw new ServiceError("VALIDATION", "sourceId required", 400);
|
|
477
|
-
resolveSourceDefinition(platform, scope
|
|
576
|
+
await resolveSourceDefinition(platform, scope, sourceId);
|
|
478
577
|
const body = (req.body ?? {});
|
|
479
578
|
if (!body.interval) {
|
|
480
579
|
throw new ServiceError("VALIDATION", "interval required", 400);
|
|
@@ -501,7 +600,7 @@ export async function registerMemoryRoutes(app, platform) {
|
|
|
501
600
|
const sourceId = String(req.params.sourceId ?? "").trim();
|
|
502
601
|
if (!sourceId)
|
|
503
602
|
throw new ServiceError("VALIDATION", "sourceId required", 400);
|
|
504
|
-
resolveSourceDefinition(platform, scope
|
|
603
|
+
await resolveSourceDefinition(platform, scope, sourceId);
|
|
505
604
|
const mode = req.query.mode === "context" ? "context" : "knowledge";
|
|
506
605
|
const ports = platform.portsFor(scope);
|
|
507
606
|
const existing = await ports.memoryScheduleStore.getSchedule(sourceId, mode);
|
|
@@ -522,7 +621,7 @@ export async function registerMemoryRoutes(app, platform) {
|
|
|
522
621
|
const sourceId = String(req.params.sourceId ?? "").trim();
|
|
523
622
|
if (!sourceId)
|
|
524
623
|
throw new ServiceError("VALIDATION", "sourceId required", 400);
|
|
525
|
-
resolveSourceDefinition(platform, scope
|
|
624
|
+
await resolveSourceDefinition(platform, scope, sourceId);
|
|
526
625
|
const mode = req.query.mode === "context" ? "context" : "knowledge";
|
|
527
626
|
const ports = platform.portsFor(scope);
|
|
528
627
|
const existing = await ports.memoryScheduleStore.getSchedule(sourceId, mode);
|
|
@@ -549,7 +648,7 @@ export async function registerMemoryRoutes(app, platform) {
|
|
|
549
648
|
const sourceId = String(req.params.sourceId ?? "").trim();
|
|
550
649
|
if (!sourceId)
|
|
551
650
|
throw new ServiceError("VALIDATION", "sourceId required", 400);
|
|
552
|
-
resolveSourceDefinition(platform, scope
|
|
651
|
+
await resolveSourceDefinition(platform, scope, sourceId);
|
|
553
652
|
const mode = req.query.mode === "context" ? "context" : "knowledge";
|
|
554
653
|
const ports = platform.portsFor(scope);
|
|
555
654
|
const existing = await ports.memoryScheduleStore.getSchedule(sourceId, mode);
|
|
@@ -607,7 +706,7 @@ export async function registerMemoryRoutes(app, platform) {
|
|
|
607
706
|
const sourceId = String(req.params.sourceId ?? "").trim();
|
|
608
707
|
if (!sourceId)
|
|
609
708
|
throw new ServiceError("VALIDATION", "sourceId required", 400);
|
|
610
|
-
resolveSourceDefinition(platform, scope
|
|
709
|
+
await resolveSourceDefinition(platform, scope, sourceId);
|
|
611
710
|
const mode = req.query.mode === "context" ? "context" : "knowledge";
|
|
612
711
|
const ports = platform.portsFor(scope);
|
|
613
712
|
const removed = await ports.memoryScheduleStore.deleteSchedule(sourceId, mode);
|
|
@@ -669,7 +768,7 @@ export async function registerMemoryRoutes(app, platform) {
|
|
|
669
768
|
const sourceId = String(req.params.sourceId ?? "").trim();
|
|
670
769
|
if (!sourceId)
|
|
671
770
|
throw new ServiceError("VALIDATION", "sourceId required", 400);
|
|
672
|
-
const source = resolveSourceDefinition(platform, scope
|
|
771
|
+
const source = await resolveSourceDefinition(platform, scope, sourceId);
|
|
673
772
|
const body = (req.body ?? {});
|
|
674
773
|
if (!body.objectType) {
|
|
675
774
|
throw new ServiceError("VALIDATION", "objectType required", 400);
|
|
@@ -727,7 +826,7 @@ export async function registerMemoryRoutes(app, platform) {
|
|
|
727
826
|
const sourceId = String(req.params.sourceId ?? "").trim();
|
|
728
827
|
if (!sourceId)
|
|
729
828
|
throw new ServiceError("VALIDATION", "sourceId required", 400);
|
|
730
|
-
resolveSourceDefinition(platform, scope
|
|
829
|
+
await resolveSourceDefinition(platform, scope, sourceId);
|
|
731
830
|
const body = (req.body ?? {});
|
|
732
831
|
// Delivery replay guard — short-circuit duplicate provider deliveries.
|
|
733
832
|
const deliveryId = body.deliveryId?.trim() || null;
|
|
@@ -782,7 +881,7 @@ export async function registerMemoryRoutes(app, platform) {
|
|
|
782
881
|
const sourceId = String(req.params.sourceId ?? "").trim();
|
|
783
882
|
if (!sourceId)
|
|
784
883
|
throw new ServiceError("VALIDATION", "sourceId required", 400);
|
|
785
|
-
const source = resolveSourceDefinition(platform, scope
|
|
884
|
+
const source = await resolveSourceDefinition(platform, scope, sourceId);
|
|
786
885
|
const connectorRef = source.connectorRef
|
|
787
886
|
?? source.kind;
|
|
788
887
|
const connector = connectorRef
|
|
@@ -831,7 +930,7 @@ export async function registerMemoryRoutes(app, platform) {
|
|
|
831
930
|
const sourceId = String(req.params.sourceId ?? "").trim();
|
|
832
931
|
if (!sourceId)
|
|
833
932
|
throw new ServiceError("VALIDATION", "sourceId required", 400);
|
|
834
|
-
const source = resolveSourceDefinition(platform, scope
|
|
933
|
+
const source = await resolveSourceDefinition(platform, scope, sourceId);
|
|
835
934
|
const connectorRef = source.connectorRef
|
|
836
935
|
?? source.kind;
|
|
837
936
|
const connector = connectorRef
|
|
@@ -868,54 +967,153 @@ export async function registerMemoryRoutes(app, platform) {
|
|
|
868
967
|
});
|
|
869
968
|
app.get("/api/connectors", async (req) => {
|
|
870
969
|
const scope = resolveScope(req);
|
|
871
|
-
const
|
|
872
|
-
|
|
873
|
-
|
|
874
|
-
|
|
875
|
-
|
|
876
|
-
|
|
877
|
-
|
|
878
|
-
|
|
879
|
-
const legacyConnectors = [
|
|
880
|
-
{
|
|
881
|
-
id: "rest-fixture",
|
|
882
|
-
version: "0.0.0-legacy",
|
|
883
|
-
protocol: "memorix-connector/1",
|
|
884
|
-
enabled: true,
|
|
885
|
-
framework: false,
|
|
886
|
-
},
|
|
887
|
-
{
|
|
888
|
-
id: "opx-fixture",
|
|
889
|
-
version: "0.0.0-legacy",
|
|
890
|
-
protocol: "memorix-connector/1",
|
|
891
|
-
enabled: true,
|
|
892
|
-
framework: false,
|
|
893
|
-
},
|
|
894
|
-
];
|
|
895
|
-
const builtinFramework = [
|
|
970
|
+
const mgc = platform.genericConnectors;
|
|
971
|
+
const unified = await listUnifiedConnectors({
|
|
972
|
+
connectorRegistry: platform.connectorRegistry,
|
|
973
|
+
genericConnectors: mgc,
|
|
974
|
+
});
|
|
975
|
+
// Enrich registry rows with workflowHash when present.
|
|
976
|
+
const workflowById = new Map(platform.connectorRegistry.list().map((doc) => [
|
|
977
|
+
doc.connectorId,
|
|
896
978
|
{
|
|
897
|
-
|
|
898
|
-
|
|
899
|
-
protocol: "memorix-connector/1",
|
|
900
|
-
enabled: true,
|
|
901
|
-
framework: true,
|
|
979
|
+
workflowHash: doc.workflowHash,
|
|
980
|
+
framework: connectorFrameworkFlag(doc),
|
|
902
981
|
},
|
|
903
|
-
|
|
904
|
-
|
|
905
|
-
|
|
906
|
-
|
|
907
|
-
|
|
908
|
-
|
|
982
|
+
]));
|
|
983
|
+
const all = unified.map((row) => {
|
|
984
|
+
const base = toApiConnectorRow(row);
|
|
985
|
+
const extra = workflowById.get(row.id);
|
|
986
|
+
return {
|
|
987
|
+
...base,
|
|
988
|
+
...(extra?.workflowHash ? { workflowHash: extra.workflowHash } : {}),
|
|
989
|
+
framework: extra?.framework ?? base.framework,
|
|
990
|
+
};
|
|
991
|
+
});
|
|
992
|
+
const sourceConnectors = all.filter((c) => c.isSource);
|
|
993
|
+
const targetConnectors = all.filter((c) => c.isTarget);
|
|
994
|
+
/** Compat: source connectors only. */
|
|
995
|
+
const connectors = sourceConnectors;
|
|
996
|
+
return {
|
|
997
|
+
scope,
|
|
998
|
+
sourceConnectors,
|
|
999
|
+
targetConnectors,
|
|
1000
|
+
connectors,
|
|
1001
|
+
genericConnectors: {
|
|
1002
|
+
sourceServiceUrl: mgc.sourceServiceUrl,
|
|
1003
|
+
targetServiceUrl: mgc.targetServiceUrl,
|
|
909
1004
|
},
|
|
910
|
-
|
|
911
|
-
|
|
912
|
-
|
|
913
|
-
|
|
914
|
-
|
|
915
|
-
|
|
916
|
-
|
|
917
|
-
|
|
918
|
-
|
|
1005
|
+
};
|
|
1006
|
+
});
|
|
1007
|
+
// --- Destinations (target connector control plane; no Mongo required) ---
|
|
1008
|
+
app.get("/api/memory/destinations", async (req) => {
|
|
1009
|
+
forbidCallbackGrant(req);
|
|
1010
|
+
const scope = resolveScope(req);
|
|
1011
|
+
const destinations = await platform.destinationStore.list(scope.orgId);
|
|
1012
|
+
return {
|
|
1013
|
+
scope,
|
|
1014
|
+
destinations: destinations.map((d) => d.definition),
|
|
1015
|
+
};
|
|
1016
|
+
});
|
|
1017
|
+
app.get("/api/memory/destinations/:destinationId", async (req) => {
|
|
1018
|
+
forbidCallbackGrant(req);
|
|
1019
|
+
const scope = resolveScope(req);
|
|
1020
|
+
const destinationId = String(req.params.destinationId ?? "").trim();
|
|
1021
|
+
if (!destinationId) {
|
|
1022
|
+
throw new ServiceError("VALIDATION", "destinationId required", 400);
|
|
1023
|
+
}
|
|
1024
|
+
const doc = await platform.destinationStore.get(scope.orgId, destinationId);
|
|
1025
|
+
if (!doc)
|
|
1026
|
+
throw new ServiceError("NOT_FOUND", "destination not found", 404);
|
|
1027
|
+
return { scope, destination: doc.definition };
|
|
1028
|
+
});
|
|
1029
|
+
app.put("/api/memory/destinations/:destinationId", async (req) => {
|
|
1030
|
+
forbidCallbackGrant(req);
|
|
1031
|
+
const scope = resolveScope(req);
|
|
1032
|
+
const destinationId = String(req.params.destinationId ?? "").trim();
|
|
1033
|
+
if (!destinationId) {
|
|
1034
|
+
throw new ServiceError("VALIDATION", "destinationId required", 400);
|
|
1035
|
+
}
|
|
1036
|
+
const body = (req.body ?? {});
|
|
1037
|
+
const connectorRef = String(body.connectorRef ?? "").trim();
|
|
1038
|
+
if (!connectorRef) {
|
|
1039
|
+
throw new ServiceError("VALIDATION", "connectorRef required", 400);
|
|
1040
|
+
}
|
|
1041
|
+
const now = new Date().toISOString();
|
|
1042
|
+
const existing = await platform.destinationStore.get(scope.orgId, destinationId);
|
|
1043
|
+
const definition = {
|
|
1044
|
+
id: destinationId,
|
|
1045
|
+
name: String(body.name ?? existing?.definition.name ?? destinationId),
|
|
1046
|
+
kind: String(body.kind ?? existing?.definition.kind ?? connectorRef),
|
|
1047
|
+
connectorRef,
|
|
1048
|
+
...(body.connectorVersion
|
|
1049
|
+
? { connectorVersion: String(body.connectorVersion) }
|
|
1050
|
+
: existing?.definition.connectorVersion
|
|
1051
|
+
? { connectorVersion: existing.definition.connectorVersion }
|
|
1052
|
+
: {}),
|
|
1053
|
+
...(body.credentialRef
|
|
1054
|
+
? { credentialRef: String(body.credentialRef) }
|
|
1055
|
+
: existing?.definition.credentialRef
|
|
1056
|
+
? { credentialRef: existing.definition.credentialRef }
|
|
1057
|
+
: {}),
|
|
1058
|
+
...(body.hostBaseUrl
|
|
1059
|
+
? { hostBaseUrl: String(body.hostBaseUrl) }
|
|
1060
|
+
: existing?.definition.hostBaseUrl
|
|
1061
|
+
? { hostBaseUrl: existing.definition.hostBaseUrl }
|
|
1062
|
+
: platform.genericConnectors.targetServiceUrl
|
|
1063
|
+
? { hostBaseUrl: platform.genericConnectors.targetServiceUrl }
|
|
1064
|
+
: {}),
|
|
1065
|
+
...(body.connectorHostKey
|
|
1066
|
+
? { connectorHostKey: String(body.connectorHostKey) }
|
|
1067
|
+
: { connectorHostKey: "mgc-target" }),
|
|
1068
|
+
...(body.config && typeof body.config === "object"
|
|
1069
|
+
? { config: body.config }
|
|
1070
|
+
: existing?.definition.config
|
|
1071
|
+
? { config: existing.definition.config }
|
|
1072
|
+
: {}),
|
|
1073
|
+
};
|
|
1074
|
+
await platform.destinationStore.put({
|
|
1075
|
+
orgId: scope.orgId,
|
|
1076
|
+
definition,
|
|
1077
|
+
createdAt: existing?.createdAt ?? now,
|
|
1078
|
+
updatedAt: now,
|
|
1079
|
+
});
|
|
1080
|
+
return { scope, destination: definition };
|
|
1081
|
+
});
|
|
1082
|
+
app.delete("/api/memory/destinations/:destinationId", async (req) => {
|
|
1083
|
+
forbidCallbackGrant(req);
|
|
1084
|
+
const scope = resolveScope(req);
|
|
1085
|
+
const destinationId = String(req.params.destinationId ?? "").trim();
|
|
1086
|
+
const ok = await platform.destinationStore.delete(scope.orgId, destinationId);
|
|
1087
|
+
if (!ok)
|
|
1088
|
+
throw new ServiceError("NOT_FOUND", "destination not found", 404);
|
|
1089
|
+
return { scope, deleted: true, destinationId };
|
|
1090
|
+
});
|
|
1091
|
+
app.post("/api/memory/deliver", async (req) => {
|
|
1092
|
+
forbidCallbackGrant(req);
|
|
1093
|
+
const scope = resolveScope(req);
|
|
1094
|
+
const body = (req.body ?? {});
|
|
1095
|
+
const destinationId = String(body.destinationId ?? "").trim();
|
|
1096
|
+
if (!destinationId) {
|
|
1097
|
+
throw new ServiceError("VALIDATION", "destinationId required", 400);
|
|
1098
|
+
}
|
|
1099
|
+
if (!Array.isArray(body.items) || body.items.length === 0) {
|
|
1100
|
+
throw new ServiceError("VALIDATION", "items required", 400);
|
|
1101
|
+
}
|
|
1102
|
+
const receipt = await platform.deliverer.deliver({
|
|
1103
|
+
orgId: scope.orgId,
|
|
1104
|
+
destinationId,
|
|
1105
|
+
items: body.items,
|
|
1106
|
+
workRef: body.workRef,
|
|
1107
|
+
mode: body.mode,
|
|
1108
|
+
});
|
|
1109
|
+
return { scope, receipt };
|
|
1110
|
+
});
|
|
1111
|
+
app.get("/api/memory/destinations/:destinationId/receipts", async (req) => {
|
|
1112
|
+
forbidCallbackGrant(req);
|
|
1113
|
+
const scope = resolveScope(req);
|
|
1114
|
+
const destinationId = String(req.params.destinationId ?? "").trim();
|
|
1115
|
+
const receipts = await platform.destinationStore.listReceipts(scope.orgId, destinationId);
|
|
1116
|
+
return { scope, destinationId, receipts };
|
|
919
1117
|
});
|
|
920
1118
|
/** Admin-only subscription management — never mixed into Pull (FR-028). */
|
|
921
1119
|
app.post("/api/memory/sources/:sourceId/receive:configure", async (req) => {
|
|
@@ -924,7 +1122,7 @@ export async function registerMemoryRoutes(app, platform) {
|
|
|
924
1122
|
const sourceId = String(req.params.sourceId ?? "").trim();
|
|
925
1123
|
if (!sourceId)
|
|
926
1124
|
throw new ServiceError("VALIDATION", "sourceId required", 400);
|
|
927
|
-
const source = resolveSourceDefinition(platform, scope
|
|
1125
|
+
const source = await resolveSourceDefinition(platform, scope, sourceId);
|
|
928
1126
|
const body = (req.body ?? {});
|
|
929
1127
|
const action = body.action ?? "create";
|
|
930
1128
|
const connectorRef = source.connectorRef ??
|