@x12i/memorix-service 3.6.2 → 3.6.4

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.
Files changed (78) hide show
  1. package/README.md +8 -0
  2. package/dist/access-gate.d.ts +10 -0
  3. package/dist/access-gate.d.ts.map +1 -1
  4. package/dist/access-gate.js +38 -1
  5. package/dist/access-gate.js.map +1 -1
  6. package/dist/app.d.ts.map +1 -1
  7. package/dist/app.js +2 -0
  8. package/dist/app.js.map +1 -1
  9. package/dist/blob-store/types.js +1 -1
  10. package/dist/blob-store/types.js.map +1 -1
  11. package/dist/callback-grant.d.ts.map +1 -1
  12. package/dist/callback-grant.js +10 -6
  13. package/dist/callback-grant.js.map +1 -1
  14. package/dist/catalog/catalog-service.js +1 -1
  15. package/dist/catalog/catalog-service.js.map +1 -1
  16. package/dist/catalog-bridge.d.ts.map +1 -1
  17. package/dist/catalog-bridge.js +74 -61
  18. package/dist/catalog-bridge.js.map +1 -1
  19. package/dist/cli.d.ts.map +1 -1
  20. package/dist/cli.js +6 -2
  21. package/dist/cli.js.map +1 -1
  22. package/dist/connector-catalog.d.ts +8 -3
  23. package/dist/connector-catalog.d.ts.map +1 -1
  24. package/dist/connector-catalog.js +66 -93
  25. package/dist/connector-catalog.js.map +1 -1
  26. package/dist/generic-connectors.d.ts +39 -1
  27. package/dist/generic-connectors.d.ts.map +1 -1
  28. package/dist/generic-connectors.js +142 -3
  29. package/dist/generic-connectors.js.map +1 -1
  30. package/dist/index.d.ts +1 -1
  31. package/dist/index.d.ts.map +1 -1
  32. package/dist/index.js +1 -1
  33. package/dist/index.js.map +1 -1
  34. package/dist/jobs-scope.d.ts +1 -0
  35. package/dist/jobs-scope.d.ts.map +1 -1
  36. package/dist/jobs-scope.js +5 -4
  37. package/dist/jobs-scope.js.map +1 -1
  38. package/dist/mgc-landing-stores.d.ts +94 -0
  39. package/dist/mgc-landing-stores.d.ts.map +1 -0
  40. package/dist/mgc-landing-stores.js +174 -0
  41. package/dist/mgc-landing-stores.js.map +1 -0
  42. package/dist/optional-companion-url.d.ts +1 -1
  43. package/dist/optional-companion-url.js +1 -1
  44. package/dist/pipeline-compile.d.ts +1 -1
  45. package/dist/pipeline-compile.js +1 -1
  46. package/dist/platform.d.ts +17 -1
  47. package/dist/platform.d.ts.map +1 -1
  48. package/dist/platform.js +56 -8
  49. package/dist/platform.js.map +1 -1
  50. package/dist/routes/connector-invocations.d.ts.map +1 -1
  51. package/dist/routes/connector-invocations.js +6 -1
  52. package/dist/routes/connector-invocations.js.map +1 -1
  53. package/dist/routes/connector-ops.d.ts +2 -1
  54. package/dist/routes/connector-ops.d.ts.map +1 -1
  55. package/dist/routes/connector-ops.js +8 -5
  56. package/dist/routes/connector-ops.js.map +1 -1
  57. package/dist/routes/data.d.ts.map +1 -1
  58. package/dist/routes/data.js +11 -12
  59. package/dist/routes/data.js.map +1 -1
  60. package/dist/routes/jobs.d.ts.map +1 -1
  61. package/dist/routes/jobs.js +46 -21
  62. package/dist/routes/jobs.js.map +1 -1
  63. package/dist/routes/memory.d.ts.map +1 -1
  64. package/dist/routes/memory.js +187 -90
  65. package/dist/routes/memory.js.map +1 -1
  66. package/dist/routes/mgc-landing.d.ts +7 -0
  67. package/dist/routes/mgc-landing.d.ts.map +1 -0
  68. package/dist/routes/mgc-landing.js +177 -0
  69. package/dist/routes/mgc-landing.js.map +1 -0
  70. package/dist/scope.d.ts +23 -0
  71. package/dist/scope.d.ts.map +1 -1
  72. package/dist/scope.js +13 -1
  73. package/dist/scope.js.map +1 -1
  74. package/dist/write-precondition.d.ts +14 -0
  75. package/dist/write-precondition.d.ts.map +1 -0
  76. package/dist/write-precondition.js +41 -0
  77. package/dist/write-precondition.js.map +1 -0
  78. package/package.json +1 -2
@@ -1,6 +1,8 @@
1
1
  import { randomUUID } from "node:crypto";
2
2
  import { evaluateWork, fingerprintPlan, previewWork, previewWorkSelector, promoteHeldRuns, recoverBatch, requeueRun, } from "@x12i/memorix-pipeline/v2";
3
3
  import { ServiceError } from "../errors.js";
4
+ import { forbidCallbackGrant } from "../access-gate.js";
5
+ import { resolveScope } from "../request-scope.js";
4
6
  import { agentMatches, resolveConcreteOrgId, resolveJobsScope, toMemorixScope, } from "../jobs-scope.js";
5
7
  import { listExecutionTargets, parseExecutionTarget, resolveExecutionTarget, resolvePipelineIdAsTarget, } from "../execution-target.js";
6
8
  const PER_ORG_LIST_CAP = 200;
@@ -82,14 +84,17 @@ function parseWorkSelector(body) {
82
84
  }
83
85
  async function resolveOrgIds(platform, scope) {
84
86
  if (scope.orgId)
85
- return [scope.orgId];
87
+ return [platform.resolveOrgId(scope.orgId)];
86
88
  return platform.listKnownOperationalOrgIds();
87
89
  }
88
- function requireScopedOrg(scope, action) {
90
+ function requireScopedOrg(platform, scope, action) {
89
91
  if (!scope.orgId) {
90
92
  throw new ServiceError("SCOPE_INVALID", `${action} requires a concrete organization (not all)`, 400);
91
93
  }
92
- return scope.orgId;
94
+ return platform.resolveOrgId(scope.orgId);
95
+ }
96
+ function concreteOrgId(platform, scope, query) {
97
+ return platform.resolveOrgId(resolveConcreteOrgId(scope, query));
93
98
  }
94
99
  function emptyCounts() {
95
100
  return {
@@ -240,7 +245,7 @@ export async function registerJobsRoutes(app, platform) {
240
245
  });
241
246
  app.get("/api/jobs/v1/settings", async (req) => {
242
247
  const scope = resolveJobsScope(req);
243
- const orgId = requireScopedOrg(scope, "queue settings");
248
+ const orgId = requireScopedOrg(platform, scope, "queue settings");
244
249
  const stores = platform.operationalStoresFor(orgId);
245
250
  const settings = await stores.queueSettings.get(orgId);
246
251
  return { scope, settings };
@@ -273,7 +278,7 @@ export async function registerJobsRoutes(app, platform) {
273
278
  app.get("/api/jobs/v1/work/:workId", async (req) => {
274
279
  const scope = resolveJobsScope(req);
275
280
  const { workId } = req.params;
276
- const orgId = resolveConcreteOrgId(scope, req.query);
281
+ const orgId = concreteOrgId(platform, scope, req.query);
277
282
  const stores = platform.operationalStoresFor(orgId);
278
283
  const work = await stores.workDefinitions.get(orgId, workId);
279
284
  if (!work) {
@@ -287,7 +292,7 @@ export async function registerJobsRoutes(app, platform) {
287
292
  });
288
293
  app.post("/api/jobs/v1/work/:workId/preview", async (req) => {
289
294
  const scope = resolveJobsScope(req);
290
- const orgId = requireScopedOrg(scope, "work preview");
295
+ const orgId = requireScopedOrg(platform, scope, "work preview");
291
296
  const { workId } = req.params;
292
297
  const memorixScope = toMemorixScope(orgId, scope.agentIds);
293
298
  const deps = createWorkEvaluatorDeps(platform, memorixScope);
@@ -328,7 +333,7 @@ export async function registerJobsRoutes(app, platform) {
328
333
  app.get("/api/jobs/v1/batches/:batchId", async (req) => {
329
334
  const scope = resolveJobsScope(req);
330
335
  const { batchId } = req.params;
331
- const orgId = resolveConcreteOrgId(scope, req.query);
336
+ const orgId = concreteOrgId(platform, scope, req.query);
332
337
  const stores = platform.operationalStoresFor(orgId);
333
338
  const ledger = platform.pipelineLedgerFor(orgId);
334
339
  const batch = await stores.batches.get(orgId, batchId);
@@ -381,7 +386,7 @@ export async function registerJobsRoutes(app, platform) {
381
386
  app.get("/api/jobs/v1/runs/:runId", async (req) => {
382
387
  const scope = resolveJobsScope(req);
383
388
  const { runId } = req.params;
384
- const orgId = resolveConcreteOrgId(scope, req.query);
389
+ const orgId = concreteOrgId(platform, scope, req.query);
385
390
  const ledger = platform.pipelineLedgerFor(orgId);
386
391
  const run = await ledger.getRun(orgId, runId);
387
392
  if (!run) {
@@ -407,7 +412,7 @@ export async function registerJobsRoutes(app, platform) {
407
412
  });
408
413
  app.get("/api/jobs/v1/information/preview", async (req) => {
409
414
  const scope = resolveJobsScope(req);
410
- const orgId = requireScopedOrg(scope, "information preview");
415
+ const orgId = requireScopedOrg(platform, scope, "information preview");
411
416
  const q = req.query;
412
417
  const body = asRecord(req.body);
413
418
  const selector = parseWorkSelector({
@@ -421,7 +426,7 @@ export async function registerJobsRoutes(app, platform) {
421
426
  });
422
427
  app.post("/api/jobs/v1/information/preview", async (req) => {
423
428
  const scope = resolveJobsScope(req);
424
- const orgId = requireScopedOrg(scope, "information preview");
429
+ const orgId = requireScopedOrg(platform, scope, "information preview");
425
430
  const body = asRecord(req.body) ?? {};
426
431
  const selector = parseWorkSelector(body);
427
432
  const memorixScope = toMemorixScope(orgId, scope.agentIds);
@@ -431,7 +436,7 @@ export async function registerJobsRoutes(app, platform) {
431
436
  // ── P4 writes ────────────────────────────────────────────────────────────
432
437
  app.put("/api/jobs/v1/settings", async (req) => {
433
438
  const scope = resolveJobsScope(req);
434
- const orgId = requireScopedOrg(scope, "update queue settings");
439
+ const orgId = requireScopedOrg(platform, scope, "update queue settings");
435
440
  const body = asRecord(req.body) ?? {};
436
441
  const stores = platform.operationalStoresFor(orgId);
437
442
  const settings = await stores.queueSettings.save(orgId, {
@@ -463,7 +468,7 @@ export async function registerJobsRoutes(app, platform) {
463
468
  });
464
469
  app.post("/api/jobs/v1/work", async (req) => {
465
470
  const scope = resolveJobsScope(req);
466
- const orgId = requireScopedOrg(scope, "create work");
471
+ const orgId = requireScopedOrg(platform, scope, "create work");
467
472
  if (!scope.agentIds?.length) {
468
473
  throw new ServiceError("SCOPE_INVALID", "agentIds required to create work", 400);
469
474
  }
@@ -541,7 +546,7 @@ export async function registerJobsRoutes(app, platform) {
541
546
  });
542
547
  app.patch("/api/jobs/v1/work/:workId", async (req) => {
543
548
  const scope = resolveJobsScope(req);
544
- const orgId = requireScopedOrg(scope, "update work");
549
+ const orgId = requireScopedOrg(platform, scope, "update work");
545
550
  const { workId } = req.params;
546
551
  const body = asRecord(req.body) ?? {};
547
552
  const stores = platform.operationalStoresFor(orgId);
@@ -603,7 +608,7 @@ export async function registerJobsRoutes(app, platform) {
603
608
  });
604
609
  app.delete("/api/jobs/v1/work/:workId", async (req) => {
605
610
  const scope = resolveJobsScope(req);
606
- const orgId = requireScopedOrg(scope, "delete work");
611
+ const orgId = requireScopedOrg(platform, scope, "delete work");
607
612
  const { workId } = req.params;
608
613
  const stores = platform.operationalStoresFor(orgId);
609
614
  const existing = await stores.workDefinitions.get(orgId, workId);
@@ -615,7 +620,7 @@ export async function registerJobsRoutes(app, platform) {
615
620
  });
616
621
  app.post("/api/jobs/v1/work/:workId/evaluate", async (req) => {
617
622
  const scope = resolveJobsScope(req);
618
- const orgId = requireScopedOrg(scope, "evaluate work");
623
+ const orgId = requireScopedOrg(platform, scope, "evaluate work");
619
624
  const { workId } = req.params;
620
625
  const memorixScope = toMemorixScope(orgId, scope.agentIds ?? []);
621
626
  const deps = createWorkEvaluatorDeps(platform, memorixScope);
@@ -633,7 +638,7 @@ export async function registerJobsRoutes(app, platform) {
633
638
  });
634
639
  app.post("/api/jobs/v1/work/:workId/actions/:action", async (req) => {
635
640
  const scope = resolveJobsScope(req);
636
- const orgId = requireScopedOrg(scope, "work action");
641
+ const orgId = requireScopedOrg(platform, scope, "work action");
637
642
  const { workId, action } = req.params;
638
643
  const stores = platform.operationalStoresFor(orgId);
639
644
  const existing = await stores.workDefinitions.get(orgId, workId);
@@ -664,7 +669,7 @@ export async function registerJobsRoutes(app, platform) {
664
669
  });
665
670
  app.post("/api/jobs/v1/on-demand/single", async (req) => {
666
671
  const scope = resolveJobsScope(req);
667
- const orgId = requireScopedOrg(scope, "on-demand single");
672
+ const orgId = requireScopedOrg(platform, scope, "on-demand single");
668
673
  if (!scope.agentIds?.length) {
669
674
  throw new ServiceError("SCOPE_INVALID", "agentIds required", 400);
670
675
  }
@@ -721,7 +726,7 @@ export async function registerJobsRoutes(app, platform) {
721
726
  });
722
727
  app.post("/api/jobs/v1/on-demand/batches", async (req) => {
723
728
  const scope = resolveJobsScope(req);
724
- const orgId = requireScopedOrg(scope, "on-demand batch");
729
+ const orgId = requireScopedOrg(platform, scope, "on-demand batch");
725
730
  if (!scope.agentIds?.length) {
726
731
  throw new ServiceError("SCOPE_INVALID", "agentIds required", 400);
727
732
  }
@@ -819,7 +824,7 @@ export async function registerJobsRoutes(app, platform) {
819
824
  });
820
825
  app.post("/api/jobs/v1/batches/:batchId/recover", async (req) => {
821
826
  const scope = resolveJobsScope(req);
822
- const orgId = requireScopedOrg(scope, "batch recover");
827
+ const orgId = requireScopedOrg(platform, scope, "batch recover");
823
828
  requireConfirm(req.body, "batch recover");
824
829
  const { batchId } = req.params;
825
830
  const stores = platform.operationalStoresFor(orgId);
@@ -842,7 +847,7 @@ export async function registerJobsRoutes(app, platform) {
842
847
  });
843
848
  app.post("/api/jobs/v1/runs/:runId/cancel", async (req) => {
844
849
  const scope = resolveJobsScope(req);
845
- const orgId = requireScopedOrg(scope, "cancel run");
850
+ const orgId = requireScopedOrg(platform, scope, "cancel run");
846
851
  requireConfirm(req.body, "cancel run");
847
852
  const { runId } = req.params;
848
853
  const ledger = platform.pipelineLedgerFor(orgId);
@@ -864,7 +869,7 @@ export async function registerJobsRoutes(app, platform) {
864
869
  });
865
870
  app.post("/api/jobs/v1/runs/:runId/retry", async (req) => {
866
871
  const scope = resolveJobsScope(req);
867
- const orgId = requireScopedOrg(scope, "retry run");
872
+ const orgId = requireScopedOrg(platform, scope, "retry run");
868
873
  requireConfirm(req.body, "retry run");
869
874
  const { runId } = req.params;
870
875
  const stores = platform.operationalStoresFor(orgId);
@@ -884,5 +889,25 @@ export async function registerJobsRoutes(app, platform) {
884
889
  throw new ServiceError("VALIDATION", message, 400);
885
890
  }
886
891
  });
892
+ app.post("/api/jobs/target-deliveries", async (req) => {
893
+ forbidCallbackGrant(req);
894
+ const scope = resolveScope(req);
895
+ const body = (req.body ?? {});
896
+ const destinationId = String(body.destinationId ?? "").trim();
897
+ if (!destinationId) {
898
+ throw new ServiceError("VALIDATION", "destinationId required", 400);
899
+ }
900
+ if (!Array.isArray(body.items) || body.items.length === 0) {
901
+ throw new ServiceError("VALIDATION", "items required", 400);
902
+ }
903
+ const receipt = await platform.deliverer.deliver({
904
+ orgId: scope.orgId,
905
+ destinationId,
906
+ items: body.items,
907
+ workRef: body.workRef,
908
+ mode: body.mode,
909
+ });
910
+ return { scope, receipt };
911
+ });
887
912
  }
888
913
  //# sourceMappingURL=jobs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"jobs.js","sourceRoot":"","sources":["../../src/routes/jobs.ts"],"names":[],"mappings":"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"}
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;AAwB/C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAwKtD,wBAAsB,oBAAoB,CACxC,GAAG,EAAE,eAAe,EACpB,QAAQ,EAAE,eAAe,GACxB,OAAO,CAAC,IAAI,CAAC,CA4yCf"}
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;AAqLtD,wBAAsB,oBAAoB,CACxC,GAAG,EAAE,eAAe,EACpB,QAAQ,EAAE,eAAe,GACxB,OAAO,CAAC,IAAI,CAAC,CA85Cf"}