@stigmer/server 3.21.0 → 3.22.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.
Files changed (185) hide show
  1. package/dist/authorization/evaluator.d.ts +7 -1
  2. package/dist/authorization/evaluator.d.ts.map +1 -1
  3. package/dist/authorization/evaluator.js.map +1 -1
  4. package/dist/authorization/list-read-scope.d.ts.map +1 -1
  5. package/dist/authorization/list-read-scope.js +19 -11
  6. package/dist/authorization/list-read-scope.js.map +1 -1
  7. package/dist/authorization/model/organization.d.ts.map +1 -1
  8. package/dist/authorization/model/organization.js +2 -0
  9. package/dist/authorization/model/organization.js.map +1 -1
  10. package/dist/domain/agent/controller.d.ts.map +1 -1
  11. package/dist/domain/agent/controller.js +2 -0
  12. package/dist/domain/agent/controller.js.map +1 -1
  13. package/dist/domain/agentchannel/controller.d.ts.map +1 -1
  14. package/dist/domain/agentchannel/controller.js +6 -1
  15. package/dist/domain/agentchannel/controller.js.map +1 -1
  16. package/dist/domain/agentchannel/steps.d.ts +19 -0
  17. package/dist/domain/agentchannel/steps.d.ts.map +1 -1
  18. package/dist/domain/agentchannel/steps.js +32 -0
  19. package/dist/domain/agentchannel/steps.js.map +1 -1
  20. package/dist/domain/agentinstance/controller.d.ts +5 -5
  21. package/dist/domain/agentinstance/controller.d.ts.map +1 -1
  22. package/dist/domain/agentinstance/controller.js +6 -1
  23. package/dist/domain/agentinstance/controller.js.map +1 -1
  24. package/dist/domain/agentinstance/steps.d.ts +43 -8
  25. package/dist/domain/agentinstance/steps.d.ts.map +1 -1
  26. package/dist/domain/agentinstance/steps.js +71 -8
  27. package/dist/domain/agentinstance/steps.js.map +1 -1
  28. package/dist/domain/agentshare/controller.d.ts.map +1 -1
  29. package/dist/domain/agentshare/controller.js +7 -1
  30. package/dist/domain/agentshare/controller.js.map +1 -1
  31. package/dist/domain/agentshare/steps.d.ts +58 -0
  32. package/dist/domain/agentshare/steps.d.ts.map +1 -1
  33. package/dist/domain/agentshare/steps.js +109 -4
  34. package/dist/domain/agentshare/steps.js.map +1 -1
  35. package/dist/domain/artifact/controller.js +21 -25
  36. package/dist/domain/artifact/controller.js.map +1 -1
  37. package/dist/domain/channelapp/controller.d.ts.map +1 -1
  38. package/dist/domain/channelapp/controller.js +2 -0
  39. package/dist/domain/channelapp/controller.js.map +1 -1
  40. package/dist/domain/environment/controller.d.ts.map +1 -1
  41. package/dist/domain/environment/controller.js +2 -0
  42. package/dist/domain/environment/controller.js.map +1 -1
  43. package/dist/domain/executioncontext/controller.d.ts.map +1 -1
  44. package/dist/domain/executioncontext/controller.js +2 -0
  45. package/dist/domain/executioncontext/controller.js.map +1 -1
  46. package/dist/domain/executioncontext/steps.d.ts.map +1 -1
  47. package/dist/domain/executioncontext/steps.js +2 -1
  48. package/dist/domain/executioncontext/steps.js.map +1 -1
  49. package/dist/domain/mcpserver/connect.d.ts.map +1 -1
  50. package/dist/domain/mcpserver/connect.js +8 -7
  51. package/dist/domain/mcpserver/connect.js.map +1 -1
  52. package/dist/domain/mcpserver/controller.d.ts.map +1 -1
  53. package/dist/domain/mcpserver/controller.js +2 -0
  54. package/dist/domain/mcpserver/controller.js.map +1 -1
  55. package/dist/domain/mcpserver/start-connect.d.ts.map +1 -1
  56. package/dist/domain/mcpserver/start-connect.js +8 -7
  57. package/dist/domain/mcpserver/start-connect.js.map +1 -1
  58. package/dist/domain/memory/controller.d.ts.map +1 -1
  59. package/dist/domain/memory/controller.js +6 -1
  60. package/dist/domain/memory/controller.js.map +1 -1
  61. package/dist/domain/memory/steps.d.ts +23 -0
  62. package/dist/domain/memory/steps.d.ts.map +1 -1
  63. package/dist/domain/memory/steps.js +35 -0
  64. package/dist/domain/memory/steps.js.map +1 -1
  65. package/dist/domain/oauthapp/controller.d.ts.map +1 -1
  66. package/dist/domain/oauthapp/controller.js +2 -0
  67. package/dist/domain/oauthapp/controller.js.map +1 -1
  68. package/dist/domain/plugin/controller.d.ts.map +1 -1
  69. package/dist/domain/plugin/controller.js +5 -24
  70. package/dist/domain/plugin/controller.js.map +1 -1
  71. package/dist/domain/schedule/controller.d.ts.map +1 -1
  72. package/dist/domain/schedule/controller.js +7 -1
  73. package/dist/domain/schedule/controller.js.map +1 -1
  74. package/dist/domain/schedule/steps.d.ts +19 -0
  75. package/dist/domain/schedule/steps.d.ts.map +1 -1
  76. package/dist/domain/schedule/steps.js +32 -0
  77. package/dist/domain/schedule/steps.js.map +1 -1
  78. package/dist/domain/session/steps.d.ts +8 -9
  79. package/dist/domain/session/steps.d.ts.map +1 -1
  80. package/dist/domain/session/steps.js +17 -21
  81. package/dist/domain/session/steps.js.map +1 -1
  82. package/dist/domain/skill/controller.d.ts.map +1 -1
  83. package/dist/domain/skill/controller.js +8 -17
  84. package/dist/domain/skill/controller.js.map +1 -1
  85. package/dist/domain/workflow/controller.d.ts.map +1 -1
  86. package/dist/domain/workflow/controller.js +30 -107
  87. package/dist/domain/workflow/controller.js.map +1 -1
  88. package/dist/domain/workflow/version-resolution.d.ts +5 -0
  89. package/dist/domain/workflow/version-resolution.d.ts.map +1 -0
  90. package/dist/domain/workflow/version-resolution.js +113 -0
  91. package/dist/domain/workflow/version-resolution.js.map +1 -0
  92. package/dist/domain/workflowinstance/controller.d.ts.map +1 -1
  93. package/dist/domain/workflowinstance/controller.js +6 -1
  94. package/dist/domain/workflowinstance/controller.js.map +1 -1
  95. package/dist/domain/workflowinstance/steps.d.ts +20 -0
  96. package/dist/domain/workflowinstance/steps.d.ts.map +1 -1
  97. package/dist/domain/workflowinstance/steps.js +39 -0
  98. package/dist/domain/workflowinstance/steps.js.map +1 -1
  99. package/dist/extensions/identity.d.ts +19 -0
  100. package/dist/extensions/identity.d.ts.map +1 -1
  101. package/dist/extensions/identity.js +22 -3
  102. package/dist/extensions/identity.js.map +1 -1
  103. package/dist/extensions/list-read-scope.d.ts +41 -7
  104. package/dist/extensions/list-read-scope.d.ts.map +1 -1
  105. package/dist/extensions/list-read-scope.js +13 -2
  106. package/dist/extensions/list-read-scope.js.map +1 -1
  107. package/dist/pipeline/steps/authorize-resolved-target.d.ts +88 -0
  108. package/dist/pipeline/steps/authorize-resolved-target.d.ts.map +1 -0
  109. package/dist/pipeline/steps/authorize-resolved-target.js +36 -0
  110. package/dist/pipeline/steps/authorize-resolved-target.js.map +1 -0
  111. package/dist/pipeline/steps/authorize.d.ts +27 -0
  112. package/dist/pipeline/steps/authorize.d.ts.map +1 -1
  113. package/dist/pipeline/steps/authorize.js +49 -10
  114. package/dist/pipeline/steps/authorize.js.map +1 -1
  115. package/dist/pipeline/steps/guard-memory-capture.d.ts.map +1 -1
  116. package/dist/pipeline/steps/guard-memory-capture.js +2 -1
  117. package/dist/pipeline/steps/guard-memory-capture.js.map +1 -1
  118. package/dist/pipeline/steps/guard-reserved-labels.d.ts.map +1 -1
  119. package/dist/pipeline/steps/guard-reserved-labels.js +6 -7
  120. package/dist/pipeline/steps/guard-reserved-labels.js.map +1 -1
  121. package/dist/pipeline/steps/helpers.d.ts +9 -5
  122. package/dist/pipeline/steps/helpers.d.ts.map +1 -1
  123. package/dist/pipeline/steps/helpers.js +11 -15
  124. package/dist/pipeline/steps/helpers.js.map +1 -1
  125. package/dist/pipeline/steps/version-history.d.ts +11 -0
  126. package/dist/pipeline/steps/version-history.d.ts.map +1 -1
  127. package/dist/pipeline/steps/version-history.js +26 -0
  128. package/dist/pipeline/steps/version-history.js.map +1 -1
  129. package/package.json +6 -6
  130. package/src/authorization/__tests__/list-read-scope.test.ts +23 -12
  131. package/src/authorization/__tests__/skip-lane-inventory.test.ts +160 -0
  132. package/src/authorization/__tests__/wire-permissions.test.ts +5 -5
  133. package/src/authorization/evaluator.ts +7 -0
  134. package/src/authorization/list-read-scope.ts +22 -11
  135. package/src/authorization/model/__tests__/registry.test.ts +2 -0
  136. package/src/authorization/model/organization.ts +2 -0
  137. package/src/domain/agent/controller.ts +10 -0
  138. package/src/domain/agentchannel/__tests__/create-authorization.test.ts +58 -0
  139. package/src/domain/agentchannel/controller.ts +19 -0
  140. package/src/domain/agentchannel/steps.ts +40 -0
  141. package/src/domain/agentinstance/__tests__/create-authorization.composed.test.ts +243 -0
  142. package/src/domain/agentinstance/__tests__/create-authorization.test.ts +144 -0
  143. package/src/domain/agentinstance/controller.ts +24 -5
  144. package/src/domain/agentinstance/steps.ts +82 -8
  145. package/src/domain/agentshare/__tests__/create-authorization.test.ts +86 -0
  146. package/src/domain/agentshare/__tests__/member-audience.test.ts +113 -0
  147. package/src/domain/agentshare/controller.ts +21 -0
  148. package/src/domain/agentshare/steps.ts +181 -15
  149. package/src/domain/artifact/controller.ts +18 -22
  150. package/src/domain/channelapp/controller.ts +10 -0
  151. package/src/domain/environment/controller.ts +10 -0
  152. package/src/domain/executioncontext/__tests__/executioncontext.test.ts +1 -0
  153. package/src/domain/executioncontext/controller.ts +10 -0
  154. package/src/domain/executioncontext/steps.ts +2 -1
  155. package/src/domain/mcpserver/connect.ts +11 -10
  156. package/src/domain/mcpserver/controller.ts +13 -1
  157. package/src/domain/mcpserver/start-connect.ts +17 -11
  158. package/src/domain/memory/__tests__/create-authorization.test.ts +59 -0
  159. package/src/domain/memory/controller.ts +11 -0
  160. package/src/domain/memory/steps.ts +41 -0
  161. package/src/domain/oauthapp/controller.ts +10 -0
  162. package/src/domain/plugin/controller.ts +22 -36
  163. package/src/domain/schedule/__tests__/create-authorization.test.ts +58 -0
  164. package/src/domain/schedule/controller.ts +20 -0
  165. package/src/domain/schedule/steps.ts +45 -2
  166. package/src/domain/session/steps.ts +24 -32
  167. package/src/domain/skill/controller.ts +24 -23
  168. package/src/domain/workflow/controller.ts +58 -145
  169. package/src/domain/workflow/version-resolution.ts +166 -0
  170. package/src/domain/workflowinstance/__tests__/create-authorization.test.ts +109 -0
  171. package/src/domain/workflowinstance/controller.ts +19 -0
  172. package/src/domain/workflowinstance/steps.ts +49 -1
  173. package/src/extensions/__tests__/composed-support.ts +38 -4
  174. package/src/extensions/__tests__/identity.test.ts +44 -1
  175. package/src/extensions/__tests__/list-read-scope-composed.test.ts +87 -1
  176. package/src/extensions/__tests__/list-read-scope.test.ts +63 -0
  177. package/src/extensions/identity.ts +23 -5
  178. package/src/extensions/list-read-scope.ts +47 -7
  179. package/src/pipeline/steps/__tests__/authorize-resolved-target.test.ts +285 -0
  180. package/src/pipeline/steps/authorize-resolved-target.ts +129 -0
  181. package/src/pipeline/steps/authorize.ts +70 -13
  182. package/src/pipeline/steps/guard-memory-capture.ts +2 -1
  183. package/src/pipeline/steps/guard-reserved-labels.ts +6 -9
  184. package/src/pipeline/steps/helpers.ts +11 -15
  185. package/src/pipeline/steps/version-history.ts +34 -0
@@ -0,0 +1,113 @@
1
+ /**
2
+ * Workflow version resolution — the getByReference ladder as a pipeline
3
+ * step, so the lane can carry the resolved-target authorization the
4
+ * position-1 annotation cannot express (the target is a slug, not a field).
5
+ *
6
+ * The ladder is the Go query.go read, moved here from the direct handler
7
+ * without a behaviour change: slug required; org required (a workflow's slug
8
+ * is unique only within an org); kind mismatch refused with Go's rendering
9
+ * (the NAME for defined values, the bare NUMBER for unknown ones, because
10
+ * ref.kind carries no defined_only rule and enumToJson would throw on the
11
+ * unknown arm); the slug scan's store failure wrapped so a raw storage error
12
+ * never crosses the wire as Unknown; empty or "latest" is the current head;
13
+ * a version matching the head's hash or tag is the head; otherwise the
14
+ * audit store by hash or tag, with the snapshot's tag overlaid from the
15
+ * audit column (the source of truth) so callers never see a stale embedded
16
+ * tag after a tag move. The resolved row lands under TARGET_RESOURCE_KEY,
17
+ * the loader contract every getByReference chain shares.
18
+ *
19
+ * Deliberately NOT the shared ladder in pipeline/steps/version-history.ts:
20
+ * that one decodes through the typed audit reads and carries no tag
21
+ * overlay, so folding the two would change what one of them returns for a
22
+ * moved tag. Consolidating them is a separate change with its own proof.
23
+ *
24
+ * Proven by __tests__/workflow.test.ts's getByReference block and the
25
+ * conformance suite's workflow reference arms.
26
+ */
27
+ import { create, fromBinary } from "@bufbuild/protobuf";
28
+ import { WorkflowSchema } from "@stigmer/protos/ai/stigmer/agentic/workflow/v1/api_pb";
29
+ import { ApiResourceMetadataSchema, ApiResourceMetadataVersionSchema, } from "@stigmer/protos/ai/stigmer/commons/apiresource/metadata_pb";
30
+ import { ApiResourceKind } from "@stigmer/protos/ai/stigmer/commons/apiresource/apiresourcekind/api_resource_kind_pb";
31
+ import { internalError, invalidArgumentError, notFoundError, } from "../../pipeline/errors.js";
32
+ import { findResourceBySlug, requireOrgForReference, } from "../../pipeline/steps/helpers.js";
33
+ import { TARGET_RESOURCE_KEY } from "../../pipeline/steps/load-target.js";
34
+ import { AuditNotFoundError } from "../../store/interface.js";
35
+ /** A 64-hex value is an exact content hash; anything else is a tag. */
36
+ const WORKFLOW_HASH_PATTERN = /^[a-f0-9]{64}$/;
37
+ export function newLoadWorkflowByReferenceStep(store) {
38
+ return {
39
+ name: "LoadWorkflowByReference",
40
+ async execute(ctx) {
41
+ const ref = ctx.input;
42
+ if (ref.slug === "") {
43
+ throw invalidArgumentError("slug is required in reference");
44
+ }
45
+ requireOrgForReference(ApiResourceKind.workflow, ref.org);
46
+ if (ref.kind !== ApiResourceKind.api_resource_kind_unknown &&
47
+ ref.kind !== ApiResourceKind.workflow) {
48
+ const got = ApiResourceKind[ref.kind] ?? String(ref.kind);
49
+ throw invalidArgumentError(`kind mismatch: expected ${ApiResourceKind[ApiResourceKind.workflow]}, got ${got}`);
50
+ }
51
+ let mainWorkflow;
52
+ try {
53
+ mainWorkflow = await findResourceBySlug(store, ApiResourceKind.workflow, WorkflowSchema, ref.slug, ref.org);
54
+ }
55
+ catch (error) {
56
+ throw internalError(error, "failed to list workflows");
57
+ }
58
+ if (mainWorkflow === undefined) {
59
+ throw notFoundError("workflow", ref.slug);
60
+ }
61
+ const version = ref.version.trim();
62
+ if (version === "" ||
63
+ version === "latest" ||
64
+ workflowMatchesVersion(mainWorkflow, version)) {
65
+ ctx.set(TARGET_RESOURCE_KEY, mainWorkflow);
66
+ return;
67
+ }
68
+ const archived = await findAuditWorkflowByVersion(store, mainWorkflow.metadata.id, version);
69
+ if (archived === undefined) {
70
+ throw notFoundError("workflow version", `${ref.slug}:${version}`);
71
+ }
72
+ ctx.set(TARGET_RESOURCE_KEY, archived);
73
+ },
74
+ };
75
+ }
76
+ function workflowMatchesVersion(wf, version) {
77
+ if (wf.status === undefined) {
78
+ return false;
79
+ }
80
+ if (WORKFLOW_HASH_PATTERN.test(version)) {
81
+ return wf.status.versionHash === version;
82
+ }
83
+ return wf.metadata?.version?.tag === version;
84
+ }
85
+ async function findAuditWorkflowByVersion(store, workflowId, version) {
86
+ let rec;
87
+ try {
88
+ rec = WORKFLOW_HASH_PATTERN.test(version)
89
+ ? await store.getAuditRecordByHash(ApiResourceKind.workflow, workflowId, version)
90
+ : await store.getAuditRecordByTag(ApiResourceKind.workflow, workflowId, version);
91
+ }
92
+ catch (error) {
93
+ if (error instanceof AuditNotFoundError) {
94
+ return undefined;
95
+ }
96
+ throw internalError(error, "failed to query workflow audit by version");
97
+ }
98
+ let wf;
99
+ try {
100
+ wf = fromBinary(WorkflowSchema, rec.data);
101
+ }
102
+ catch (error) {
103
+ throw internalError(error, "failed to decode archived workflow version");
104
+ }
105
+ // Overlay the authoritative tag (audit column) onto the snapshot's
106
+ // metadata.version.tag — the snapshot's embedded tag is only correct as
107
+ // of archival time.
108
+ wf.metadata ??= create(ApiResourceMetadataSchema);
109
+ wf.metadata.version ??= create(ApiResourceMetadataVersionSchema);
110
+ wf.metadata.version.tag = rec.tag;
111
+ return wf;
112
+ }
113
+ //# sourceMappingURL=version-resolution.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version-resolution.js","sourceRoot":"","sources":["../../../src/domain/workflow/version-resolution.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"controller.d.ts","sourceRoot":"","sources":["../../../src/domain/workflowinstance/controller.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AACH,OAAO,KAAK,EAAE,aAAa,EAAkB,MAAM,qBAAqB,CAAC;AAwBzE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AACjE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AAEzE,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,4CAA4C,CAAC;AAwDjG,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAQtD,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,YAAY,CAAC;AAE/D,MAAM,WAAW,8BAA8B;IAC7C,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,kHAAkH;IAClH,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;IAChC,qFAAqF;IACrF,QAAQ,CAAC,sBAAsB,EAAE,8BAA8B,GAAG,SAAS,CAAC;IAC5E;;;OAGG;IACH,QAAQ,CAAC,oBAAoB,EAAE,4BAA4B,CAAC;IAC5D,oHAAoH;IACpH,QAAQ,CAAC,aAAa,EAAE,aAAa,GAAG,SAAS,CAAC;CACnD;AAED,6EAA6E;AAC7E,wBAAgB,gCAAgC,CAC9C,MAAM,EAAE,aAAa,EACrB,IAAI,EAAE,8BAA8B,GACnC,IAAI,CAeN"}
1
+ {"version":3,"file":"controller.d.ts","sourceRoot":"","sources":["../../../src/domain/workflowinstance/controller.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AACH,OAAO,KAAK,EAAE,aAAa,EAAkB,MAAM,qBAAqB,CAAC;AAwBzE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AACjE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AAEzE,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,4CAA4C,CAAC;AA4DjG,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAStD,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,YAAY,CAAC;AAE/D,MAAM,WAAW,8BAA8B;IAC7C,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,kHAAkH;IAClH,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;IAChC,qFAAqF;IACrF,QAAQ,CAAC,sBAAsB,EAAE,8BAA8B,GAAG,SAAS,CAAC;IAC5E;;;OAGG;IACH,QAAQ,CAAC,oBAAoB,EAAE,4BAA4B,CAAC;IAC5D,oHAAoH;IACpH,QAAQ,CAAC,aAAa,EAAE,aAAa,GAAG,SAAS,CAAC;CACnD;AAED,6EAA6E;AAC7E,wBAAgB,gCAAgC,CAC9C,MAAM,EAAE,aAAa,EACrB,IAAI,EAAE,8BAA8B,GACnC,IAAI,CAeN"}
@@ -12,6 +12,7 @@ import { newPipeline } from "../../pipeline/pipeline.js";
12
12
  import { callerIdentityOf } from "../../pipeline/interceptors/auth.js";
13
13
  import { RequestContext } from "../../pipeline/request-context.js";
14
14
  import { newAuthorizeStep } from "../../pipeline/steps/authorize.js";
15
+ import { loadedTargetAsMethod, newAuthorizeResolvedTargetStep, } from "../../pipeline/steps/authorize-resolved-target.js";
15
16
  import { newGuardReservedLabelsStep } from "../../pipeline/steps/guard-reserved-labels.js";
16
17
  import { newAuthorizeVisibilityTransitionStep, newGuardPublicVisibilityStep, } from "../../pipeline/steps/visibility-gates.js";
17
18
  import { newBuildNewStateStep, setAuditFieldsForUpdate, } from "../../pipeline/steps/defaults.js";
@@ -30,7 +31,7 @@ import { newResolveSlugStep } from "../../pipeline/steps/slug.js";
30
31
  import { newValidateProtoStep } from "../../pipeline/steps/validation.js";
31
32
  import { newValidateVisibilityStep, newValidateVisibilityUpdateStep, } from "../../pipeline/steps/validate-visibility.js";
32
33
  import { workflowInstanceSearchExtractor } from "./search-extractor.js";
33
- import { newLoadParentWorkflowStep, newRejectDefaultWorkflowInstanceVisibilityUpdateStep, newValidateInstanceUpdateStep, newValidateSameOrgBusinessRuleStep, } from "./steps.js";
34
+ import { newLoadParentWorkflowStep, newRejectDefaultWorkflowInstanceVisibilityUpdateStep, newValidateInstanceUpdateStep, newValidateSameOrgBusinessRuleStep, resolveWorkflowInstanceCreateTargets, } from "./steps.js";
34
35
  /** Registers both workflowinstance services on the router (routes stage). */
35
36
  export function registerWorkflowInstanceServices(router, deps) {
36
37
  router.service(WorkflowInstanceCommandController, {
@@ -62,6 +63,9 @@ async function createInstance(deps, instance, ctx) {
62
63
  .addStep(newValidateVisibilityStep())
63
64
  .addStep(newResolveSlugStep())
64
65
  .addStep(newLoadParentWorkflowStep(deps.parentWorkflowLoader, deps.logger))
66
+ // Before the same-org rule, whose refusal names the parent's organization
67
+ // (steps.ts, resolveWorkflowInstanceCreateTargets).
68
+ .addStep(newAuthorizeResolvedTargetStep(deps.authorizer, resolveWorkflowInstanceCreateTargets))
65
69
  .addStep(newValidateSameOrgBusinessRuleStep(deps.logger))
66
70
  .addStep(newCheckDuplicateStep(deps.store))
67
71
  .addStep(newBuildNewStateStep())
@@ -306,6 +310,7 @@ async function getByReference(deps, ref, ctx) {
306
310
  .addStep(newAuthorizeStep(WorkflowInstanceQueryController.method.getByReference, deps.authorizer))
307
311
  .addStep(newValidateProtoStep())
308
312
  .addStep(newLoadByReferenceStep(deps.store, WorkflowInstanceSchema))
313
+ .addStep(newAuthorizeResolvedTargetStep(deps.authorizer, loadedTargetAsMethod(WorkflowInstanceQueryController.method.get)))
309
314
  .build()
310
315
  .execute(reqCtx);
311
316
  return reqCtx.get(TARGET_RESOURCE_KEY);
@@ -1 +1 @@
1
- {"version":3,"file":"controller.js","sourceRoot":"","sources":["../../../src/domain/workflowinstance/controller.ts"],"names":[],"mappings":"AAoBA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAGxD,OAAO,EAAE,sBAAsB,EAAE,MAAM,+DAA+D,CAAC;AAEvG,OAAO,EAAE,iCAAiC,EAAE,MAAM,mEAAmE,CAAC;AACtH,OAAO,EAAE,+BAA+B,EAAE,MAAM,iEAAiE,CAAC;AAKlH,OAAO,EAAE,0BAA0B,EAAE,MAAM,gEAAgE,CAAC;AAC5G,OAAO,EAAE,0BAA0B,EAAE,MAAM,8DAA8D,CAAC;AAK1G,OAAO,EAAE,eAAe,EAAE,MAAM,qFAAqF,CAAC;AAStH,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAE9E,OAAO,EAAE,kBAAkB,EAAE,MAAM,4CAA4C,CAAC;AAChF,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACxE,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAEzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAC;AACvE,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AACrE,OAAO,EAAE,0BAA0B,EAAE,MAAM,+CAA+C,CAAC;AAC3F,OAAO,EACL,oCAAoC,EACpC,4BAA4B,GAC7B,MAAM,0CAA0C,CAAC;AAClD,OAAO,EACL,oBAAoB,EACpB,uBAAuB,GACxB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,uBAAuB,EAAE,MAAM,4CAA4C,CAAC;AACrF,OAAO,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAC1E,OAAO,EACL,qBAAqB,EACrB,wBAAwB,EACxB,4BAA4B,GAC7B,MAAM,gCAAgC,CAAC;AACxC,OAAO,EACL,wBAAwB,EACxB,kBAAkB,GACnB,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EACL,qBAAqB,EACrB,mBAAmB,GACpB,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EACL,iBAAiB,EACjB,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,wCAAwC,CAAC;AAChD,OAAO,EAAE,sBAAsB,EAAE,MAAM,2CAA2C,CAAC;AACnF,OAAO,EACL,mBAAmB,EACnB,iBAAiB,GAClB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,0BAA0B,EAAE,MAAM,oCAAoC,CAAC;AAChF,OAAO,EACL,yBAAyB,EACzB,gCAAgC,EAChC,mCAAmC,EACnC,6BAA6B,GAC9B,MAAM,8CAA8C,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAC1E,OAAO,EACL,yBAAyB,EACzB,+BAA+B,GAChC,MAAM,6CAA6C,CAAC;AAErD,OAAO,EAAE,+BAA+B,EAAE,MAAM,uBAAuB,CAAC;AACxE,OAAO,EACL,yBAAyB,EACzB,oDAAoD,EACpD,6BAA6B,EAC7B,kCAAkC,GACnC,MAAM,YAAY,CAAC;AAmBpB,6EAA6E;AAC7E,MAAM,UAAU,gCAAgC,CAC9C,MAAqB,EACrB,IAAoC;IAEpC,MAAM,CAAC,OAAO,CAAC,iCAAiC,EAAE;QAChD,KAAK,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,QAAQ,EAAE,GAAG,CAAC;QACpD,MAAM,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE,EAAE,CAAC,cAAc,CAAC,IAAI,EAAE,QAAQ,EAAE,GAAG,CAAC;QAC9D,MAAM,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,QAAQ,EAAE,GAAG,CAAC;QACtD,gBAAgB,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC,gBAAgB,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC;QACpE,yBAAyB,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,CACxC,yBAAyB,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC;QAC7C,MAAM,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,cAAc,CAAC,IAAI,EAAE,EAAE,EAAE,GAAG,CAAC;KACnD,CAAC,CAAC;IACH,MAAM,CAAC,OAAO,CAAC,+BAA+B,EAAE;QAC9C,GAAG,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,EAAE,GAAG,CAAC;QACpC,cAAc,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,cAAc,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC;QAC5D,aAAa,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,aAAa,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC;KAC3D,CAAC,CAAC;AACL,CAAC;AAED,SAAS,MAAM,CAAC,GAAmB;IACjC,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;AAC5C,CAAC;AAED,8EAA8E;AAC9E,eAAe;AACf,8EAA8E;AAE9E,2DAA2D;AAC3D,KAAK,UAAU,cAAc,CAC3B,IAAoC,EACpC,QAA0B,EAC1B,GAAmB;IAEnB,MAAM,MAAM,GAAG,IAAI,cAAc,CAC/B,sBAAsB,EACtB,QAAQ,EACR,gBAAgB,CAAC,GAAG,CAAC,EACrB,MAAM,CAAC,GAAG,CAAC,CACZ,CAAC;IACF,MAAM,WAAW,CACf,0BAA0B,EAC1B,IAAI,CAAC,MAAM,CACZ;SACE,OAAO,CACN,gBAAgB,CACd,iCAAiC,CAAC,MAAM,CAAC,MAAM,EAC/C,IAAI,CAAC,UAAU,CAChB,CACF;SACA,OAAO,CAAC,oBAAoB,EAAE,CAAC;SAC/B,OAAO,CAAC,yBAAyB,EAAE,CAAC;SACpC,OAAO,CAAC,kBAAkB,EAAE,CAAC;SAC7B,OAAO,CAAC,yBAAyB,CAAC,IAAI,CAAC,oBAAoB,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;SAC1E,OAAO,CAAC,kCAAkC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;SACxD,OAAO,CAAC,qBAAqB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SAC1C,OAAO,CAAC,oBAAoB,EAAE,CAAC;SAC/B,OAAO,CAAC,4BAA4B,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;SACtD,OAAO,CAAC,0BAA0B,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;SACpD,OAAO,CAAC,0BAA0B,EAAE,CAAC;SACrC,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SACnC,OAAO,CACN,gCAAgC,CAC9B,IAAI,CAAC,sBAAsB,EAC3B,IAAI,CAAC,MAAM,CACZ,CACF;SACA,OAAO,CACN,kBAAkB,CAChB,IAAI,CAAC,KAAK,EACV,+BAA+B,EAC/B,IAAI,CAAC,MAAM,CACZ,CACF;SACA,KAAK,EAAE;SACP,OAAO,CAAC,MAAM,CAAC,CAAC;IACnB,OAAO,MAAM,CAAC,QAAQ,CAAC;AACzB,CAAC;AAED,2EAA2E;AAC3E,KAAK,UAAU,MAAM,CACnB,IAAoC,EACpC,QAA0B,EAC1B,GAAmB;IAEnB,MAAM,MAAM,GAAG,IAAI,cAAc,CAC/B,sBAAsB,EACtB,QAAQ,EACR,gBAAgB,CAAC,GAAG,CAAC,EACrB,MAAM,CAAC,GAAG,CAAC,CACZ,CAAC;IACF,MAAM,WAAW,CACf,0BAA0B,EAC1B,IAAI,CAAC,MAAM,CACZ;SACE,OAAO,CACN,gBAAgB,CACd,iCAAiC,CAAC,MAAM,CAAC,MAAM,EAC/C,IAAI,CAAC,UAAU,CAChB,CACF;SACA,OAAO,CAAC,oBAAoB,EAAE,CAAC;SAC/B,OAAO,CAAC,kBAAkB,EAAE,CAAC;SAC7B,OAAO,CAAC,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SACxC,OAAO,CAAC,6BAA6B,EAAE,CAAC;SACxC,OAAO,CAAC,uBAAuB,EAAE,CAAC;SAClC,OAAO,CAAC,0BAA0B,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;SACpD,OAAO,CAAC,0BAA0B,EAAE,CAAC;SACrC,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SACnC,OAAO,CACN,kBAAkB,CAChB,IAAI,CAAC,KAAK,EACV,+BAA+B,EAC/B,IAAI,CAAC,MAAM,CACZ,CACF;SACA,KAAK,EAAE;SACP,OAAO,CAAC,MAAM,CAAC,CAAC;IACnB,OAAO,MAAM,CAAC,QAAQ,CAAC;AACzB,CAAC;AAED;;;GAGG;AACH,KAAK,UAAU,KAAK,CAClB,IAAoC,EACpC,QAA0B,EAC1B,GAAmB;IAEnB,MAAM,MAAM,GAAG,IAAI,cAAc,CAC/B,sBAAsB,EACtB,QAAQ,EACR,gBAAgB,CAAC,GAAG,CAAC,EACrB,MAAM,CAAC,GAAG,CAAC,CACZ,CAAC;IACF,MAAM,WAAW,CACf,yBAAyB,EACzB,IAAI,CAAC,MAAM,CACZ;SACE,OAAO,CACN,gBAAgB,CACd,iCAAiC,CAAC,MAAM,CAAC,KAAK,EAC9C,IAAI,CAAC,UAAU,CAChB,CACF;SACA,OAAO,CAAC,oBAAoB,EAAE,CAAC;SAC/B,OAAO,CAAC,kBAAkB,EAAE,CAAC;SAC7B,OAAO,CAAC,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SACxC,KAAK,EAAE;SACP,OAAO,CAAC,MAAM,CAAC,CAAC;IAEnB,MAAM,YAAY,GAAG,MAAM,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;IACnD,IAAI,OAAO,YAAY,KAAK,SAAS,EAAE,CAAC;QACtC,MAAM,aAAa,CACjB,IAAI,KAAK,CAAC,8CAA8C,CAAC,EACzD,sDAAsD,CACvD,CAAC;IACJ,CAAC;IACD,OAAO,YAAY;QACjB,CAAC,CAAC,cAAc,CAAC,IAAI,EAAE,QAAQ,EAAE,GAAG,CAAC;QACrC,CAAC,CAAC,MAAM,CACJ,IAAI,EACJ,mBAAmB,CAAC,sBAAsB,EAAE,QAAQ,EAAE,MAAM,CAAC,EAC7D,GAAG,CACJ,CAAC;AACR,CAAC;AAED;;;;GAIG;AACH,KAAK,UAAU,cAAc,CAC3B,IAAoC,EACpC,UAA8B,EAC9B,GAAmB;IAEnB,MAAM,MAAM,GAAG,IAAI,cAAc,CAC/B,iCAAiC,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,EACrD,UAAU,EACV,gBAAgB,CAAC,GAAG,CAAC,EACrB,MAAM,CAAC,GAAG,CAAC,CACZ,CAAC;IACF,MAAM,WAAW,CAEf,0BAA0B,EAAE,IAAI,CAAC,MAAM,CAAC;SACvC,OAAO,CACN,gBAAgB,CACd,iCAAiC,CAAC,MAAM,CAAC,MAAM,EAC/C,IAAI,CAAC,UAAU,CAChB,CACF;SACA,OAAO,CAAC,oBAAoB,EAAE,CAAC;SAC/B,OAAO,CAAC,wBAAwB,EAAE,CAAC;SACnC,OAAO,CAAC,4BAA4B,CAAC,IAAI,CAAC,KAAK,EAAE,sBAAsB,CAAC,CAAC;SACzE,OAAO,CAAC,qBAAqB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SAC1C,OAAO,CACN,yBAAyB,CAAC,IAAI,CAAC,sBAAsB,EAAE,IAAI,CAAC,MAAM,CAAC,CACpE;SACA,OAAO,CAAC,wBAAwB,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;SAC1D,KAAK,EAAE;SACP,OAAO,CAAC,MAAM,CAAC,CAAC;IAEnB,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;IAClD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,MAAM,aAAa,CACjB,IAAI,KAAK,CAAC,gDAAgD,CAAC,EAC3D,gDAAgD,CACjD,CAAC;IACJ,CAAC;IACD,OAAO,OAA2B,CAAC;AACrC,CAAC;AAED,8EAA8E;AAC9E,yEAAyE;AACzE,sEAAsE;AACtE,yEAAyE;AACzE,sBAAsB;AACtB,8EAA8E;AAE9E,MAAM,8BAA8B,GAAG,0BAA0B,CAAC;AAKlE,KAAK,UAAU,gBAAgB,CAC7B,IAAoC,EACpC,KAA4B,EAC5B,GAAmB;IAEnB,MAAM,MAAM,GAAG,IAAI,cAAc,CAC/B,iCAAiC,CAAC,MAAM,CAAC,gBAAgB,CAAC,KAAK,EAC/D,KAAK,EACL,gBAAgB,CAAC,GAAG,CAAC,EACrB,MAAM,CAAC,GAAG,CAAC,CACZ,CAAC;IACF,MAAM,WAAW,CACf,qCAAqC,EACrC,IAAI,CAAC,MAAM,CACZ;SACE,OAAO,CACN,gBAAgB,CACd,iCAAiC,CAAC,MAAM,CAAC,gBAAgB,EACzD,IAAI,CAAC,UAAU,CAChB,CACF;SACA,OAAO,CAAC,oBAAoB,EAAE,CAAC;SAC/B,OAAO,CACN,mBAAmB,CACjB,IAAI,CAAC,KAAK,EACV,8BAA8B,EAC9B,iCAAiC,EACjC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAC1B,CACF;SACA,OAAO,CACN,mCAAmC,CAAC,8BAA8B,CAAC,CACpE;SACA,OAAO,CACN,oDAAoD,CAClD,IAAI,CAAC,KAAK,EACV,8BAA8B,CAC/B,CACF;SACA,OAAO,CAAC,+BAA+B,EAAE,CAAC;SAC1C,OAAO,CACN,oCAAoC,CAClC,8BAA8B,EAC9B,IAAI,CAAC,UAAU,CAChB,CACF;SACA,OAAO,CAAC,4BAA4B,EAAE,CAAC;SACvC,OAAO,CACN,sBAAsB,CACpB,IAAI,CAAC,KAAK,EACV,8BAA8B,EAC9B,oCAAoC,CACrC,CACF;SACA,OAAO,CACN,6BAA6B,CAC3B,IAAI,CAAC,sBAAsB,EAC3B,8BAA8B,CAC/B,CACF;SACA,OAAO,CACN,oBAAoB,CAClB,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,MAAM,EACX,8BAA8B,EAC9B,oCAAoC,CACrC,CACF;SACA,KAAK,EAAE;SACP,OAAO,CAAC,MAAM,CAAC,CAAC;IAEnB,OAAO,MAAM,CAAC,GAAG,CAAC,8BAA8B,CAAqB,CAAC;AACxE,CAAC;AAED,sEAAsE;AACtE,SAAS,4BAA4B;IACnC,OAAO;QACL,IAAI,EAAE,uBAAuB;QAC7B,OAAO,CAAC,GAAyC;YAC/C,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC;YACxB,MAAM,QAAQ,GAAG,GAAG,CAAC,GAAG,CACtB,8BAA8B,CACX,CAAC;YAEtB,QAAQ,CAAC,QAAS,CAAC,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC;YAEjD,IAAI,CAAC;gBACH,uBAAuB,CACrB,sBAAsB,EACtB,QAAQ,EACR,cAAc,EACd,GAAG,CAAC,cAAc,CACnB,CAAC;YACJ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,IAAI,KAAK,CACb,+BAA+B,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CACxF,CAAC;YACJ,CAAC;YAED,GAAG,CAAC,GAAG,CAAC,8BAA8B,EAAE,QAAQ,CAAC,CAAC;QACpD,CAAC;KACF,CAAC;AACJ,CAAC;AAED,8EAA8E;AAC9E,yEAAyE;AACzE,wEAAwE;AACxE,yEAAyE;AACzE,sEAAsE;AACtE,+DAA+D;AAC/D,yEAAyE;AACzE,kDAAkD;AAClD,8EAA8E;AAE9E,MAAM,wCAAwC,GAC5C,mCAAmC,CAAC;AAKtC,KAAK,UAAU,yBAAyB,CACtC,IAAoC,EACpC,KAAqC,EACrC,GAAmB;IAEnB,MAAM,MAAM,GAAG,IAAI,cAAc,CAC/B,iCAAiC,CAAC,MAAM,CAAC,yBAAyB,CAAC,KAAK,EACxE,KAAK,EACL,gBAAgB,CAAC,GAAG,CAAC,EACrB,MAAM,CAAC,GAAG,CAAC,CACZ,CAAC;IACF,MAAM,WAAW,CACf,+CAA+C,EAC/C,IAAI,CAAC,MAAM,CACZ;SACE,OAAO,CACN,gBAAgB,CACd,iCAAiC,CAAC,MAAM,CAAC,yBAAyB,EAClE,IAAI,CAAC,UAAU,CAChB,CACF;SACA,OAAO,CAAC,oBAAoB,EAAE,CAAC;SAC/B,OAAO,CACN,mBAAmB,CACjB,IAAI,CAAC,KAAK,EACV,wCAAwC,EACxC,0CAA0C,EAC1C,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAC1B,CACF;SACA,OAAO,CAAC,qCAAqC,EAAE,CAAC;SAChD,OAAO,CACN,sBAAsB,CACpB,IAAI,CAAC,KAAK,EACV,wCAAwC,EACxC,6CAA6C,CAC9C,CACF;SACA,OAAO,CACN,oBAAoB,CAClB,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,MAAM,EACX,wCAAwC,EACxC,6CAA6C,CAC9C,CACF;SACA,KAAK,EAAE;SACP,OAAO,CAAC,MAAM,CAAC,CAAC;IAEnB,OAAO,MAAM,CAAC,GAAG,CACf,wCAAwC,CACrB,CAAC;AACxB,CAAC;AAED,4EAA4E;AAC5E,SAAS,qCAAqC;IAC5C,OAAO;QACL,IAAI,EAAE,gCAAgC;QACtC,OAAO,CAAC,GAAkD;YACxD,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC;YACxB,MAAM,QAAQ,GAAG,GAAG,CAAC,GAAG,CACtB,wCAAwC,CACrB,CAAC;YAEtB,QAAQ,CAAC,IAAI,KAAK,MAAM,CAAC,0BAA0B,CAAC,CAAC;YACrD,QAAQ,CAAC,IAAI,CAAC,mBAAmB,GAAG,KAAK,CAAC,mBAAmB,CAAC;YAE9D,IAAI,CAAC;gBACH,uBAAuB,CACrB,sBAAsB,EACtB,QAAQ,EACR,cAAc,EACd,GAAG,CAAC,cAAc,CACnB,CAAC;YACJ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,IAAI,KAAK,CACb,+BAA+B,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CACxF,CAAC;YACJ,CAAC;YAED,GAAG,CAAC,GAAG,CAAC,wCAAwC,EAAE,QAAQ,CAAC,CAAC;QAC9D,CAAC;KACF,CAAC;AACJ,CAAC;AAED,8EAA8E;AAC9E,oEAAoE;AACpE,uEAAuE;AACvE,wEAAwE;AACxE,8EAA8E;AAE9E;;;;GAIG;AACH,SAAS,mBAAmB,CAC1B,KAAY,EACZ,WAAmB,EACnB,QAAgB,EAChB,YAAmD;IAEnD,OAAO;QACL,IAAI,EAAE,QAAQ;QACd,KAAK,CAAC,OAAO,CAAC,GAAyB;YACrC,MAAM,UAAU,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;YACrC,IAAI,QAA0B,CAAC;YAC/B,IAAI,CAAC;gBACH,QAAQ,GAAG,MAAM,KAAK,CAAC,WAAW,CAChC,eAAe,CAAC,iBAAiB,EACjC,UAAU,EACV,sBAAsB,CACvB,CAAC;YACJ,CAAC;YAAC,MAAM,CAAC;gBACP,MAAM,aAAa,CAAC,mBAAmB,EAAE,UAAU,CAAC,CAAC;YACvD,CAAC;YACD,GAAG,CAAC,GAAG,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;QACjC,CAAC;KACF,CAAC;AACJ,CAAC;AAED,SAAS,sBAAsB,CAC7B,KAAY,EACZ,WAAmB,EACnB,QAAgB;IAEhB,OAAO;QACL,IAAI,EAAE,QAAQ;QACd,KAAK,CAAC,OAAO,CAAC,GAAyB;YACrC,MAAM,QAAQ,GAAG,GAAG,CAAC,GAAG,CAAC,WAAW,CAAqB,CAAC;YAC1D,IAAI,CAAC;gBACH,MAAM,KAAK,CAAC,YAAY,CACtB,eAAe,CAAC,iBAAiB,EACjC,QAAQ,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,EAC3B,sBAAsB,EACtB,QAAQ,CACT,CAAC;YACJ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,aAAa,CAAC,KAAK,EAAE,kCAAkC,CAAC,CAAC;YACjE,CAAC;QACH,CAAC;KACF,CAAC;AACJ,CAAC;AAED,2EAA2E;AAC3E,SAAS,oBAAoB,CAC3B,KAAY,EACZ,MAAc,EACd,WAAmB,EACnB,QAAgB;IAEhB,OAAO;QACL,IAAI,EAAE,QAAQ;QACd,KAAK,CAAC,OAAO,CAAC,GAAyB;YACrC,MAAM,QAAQ,GAAG,GAAG,CAAC,GAAG,CAAC,WAAW,CAAqB,CAAC;YAC1D,MAAM,KAAK,GACT,+BAA+B,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;YAChE,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACxB,MAAM,CAAC,IAAI,CAAC,GAAG,QAAQ,oCAAoC,EAAE;oBAC3D,EAAE,EAAE,QAAQ,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE;iBAChC,CAAC,CAAC;gBACH,OAAO;YACT,CAAC;YACD,IAAI,CAAC;gBACH,MAAM,KAAK,CAAC,iBAAiB,CAC3B,eAAe,CAAC,iBAAiB,EACjC,QAAQ,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,EAC3B,KAAK,CACN,CAAC;YACJ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,CAAC,IAAI,CAAC,GAAG,QAAQ,wBAAwB,EAAE;oBAC/C,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;oBAC7D,EAAE,EAAE,QAAQ,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE;iBAChC,CAAC,CAAC;YACL,CAAC;QACH,CAAC;KACF,CAAC;AACJ,CAAC;AAED,8EAA8E;AAC9E,aAAa;AACb,8EAA8E;AAE9E,KAAK,UAAU,GAAG,CAChB,IAAoC,EACpC,UAA8B,EAC9B,GAAmB;IAEnB,MAAM,MAAM,GAAG,IAAI,cAAc,CAC/B,+BAA+B,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,EAChD,UAAU,EACV,gBAAgB,CAAC,GAAG,CAAC,EACrB,MAAM,CAAC,GAAG,CAAC,CACZ,CAAC;IACF,MAAM,WAAW,CACf,uBAAuB,EACvB,IAAI,CAAC,MAAM,CACZ;SACE,OAAO,CACN,gBAAgB,CACd,+BAA+B,CAAC,MAAM,CAAC,GAAG,EAC1C,IAAI,CAAC,UAAU,CAChB,CACF;SACA,OAAO,CAAC,oBAAoB,EAAE,CAAC;SAC/B,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,KAAK,EAAE,sBAAsB,CAAC,CAAC;SAC9D,KAAK,EAAE;SACP,OAAO,CAAC,MAAM,CAAC,CAAC;IACnB,OAAO,MAAM,CAAC,GAAG,CAAC,mBAAmB,CAAqB,CAAC;AAC7D,CAAC;AAED,KAAK,UAAU,cAAc,CAC3B,IAAoC,EACpC,GAAyB,EACzB,GAAmB;IAEnB,MAAM,MAAM,GAAG,IAAI,cAAc,CAC/B,+BAA+B,CAAC,MAAM,CAAC,cAAc,CAAC,KAAK,EAC3D,GAAG,EACH,gBAAgB,CAAC,GAAG,CAAC,EACrB,MAAM,CAAC,GAAG,CAAC,CACZ,CAAC;IACF,MAAM,WAAW,CAEf,oCAAoC,EAAE,IAAI,CAAC,MAAM,CAAC;SACjD,OAAO,CACN,gBAAgB,CACd,+BAA+B,CAAC,MAAM,CAAC,cAAc,EACrD,IAAI,CAAC,UAAU,CAChB,CACF;SACA,OAAO,CAAC,oBAAoB,EAAE,CAAC;SAC/B,OAAO,CAAC,sBAAsB,CAAC,IAAI,CAAC,KAAK,EAAE,sBAAsB,CAAC,CAAC;SACnE,KAAK,EAAE;SACP,OAAO,CAAC,MAAM,CAAC,CAAC;IACnB,OAAO,MAAM,CAAC,GAAG,CAAC,mBAAmB,CAAqB,CAAC;AAC7D,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,0BAA0B,GAAG,wBAAwB,CAAC;AAK5D,KAAK,UAAU,aAAa,CAC1B,IAAoC,EACpC,OAA8C,EAC9C,GAAmB;IAEnB,MAAM,MAAM,GAAG,IAAI,cAAc,CAC/B,+BAA+B,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,EAC1D,OAAO,EACP,gBAAgB,CAAC,GAAG,CAAC,EACrB,MAAM,CAAC,GAAG,CAAC,CACZ,CAAC;IACF,MAAM,WAAW,CACf,mCAAmC,EACnC,IAAI,CAAC,MAAM,CACZ;SACE,OAAO,CACN,gBAAgB,CACd,+BAA+B,CAAC,MAAM,CAAC,aAAa,EACpD,IAAI,CAAC,UAAU,CAChB,CACF;SACA,OAAO,CAAC,oBAAoB,EAAE,CAAC;SAC/B,OAAO,CAAC,qBAAqB,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;SAC3E,KAAK,EAAE;SACP,OAAO,CAAC,MAAM,CAAC,CAAC;IAEnB,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;IACpD,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QACvB,OAAO,MAAM,CAAC,0BAA0B,CAAC,CAAC;IAC5C,CAAC;IACD,OAAO,IAA4B,CAAC;AACtC,CAAC;AAED,SAAS,qBAAqB,CAC5B,KAAY,EACZ,MAAc,EACd,aAAwC;IAExC,OAAO;QACL,IAAI,EAAE,gBAAgB;QACtB,KAAK,CAAC,OAAO,CAAC,GAAsC;YAClD,MAAM,OAAO,GAAG,GAAG,CAAC,KAAK,CAAC;YAC1B,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;YAEtC,IAAI,IAAkB,CAAC;YACvB,IAAI,CAAC;gBACH,IAAI,GAAG,MAAM,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;YACxD,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,CAAC,KAAK,CAAC,mCAAmC,EAAE;oBAChD,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;oBAC7D,UAAU;iBACX,CAAC,CAAC;gBACH,MAAM,aAAa,CAAC,KAAK,EAAE,mCAAmC,CAAC,CAAC;YAClE,CAAC;YAED,MAAM,OAAO,GAAuB,EAAE,CAAC;YACvC,KAAK,MAAM,IAAI,IAAI,IAAI,EAAE,CAAC;gBACxB,IAAI,CAAC;oBACH,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,sBAAsB,EAAE,IAAI,CAAC,CAAC,CAAC;gBACzD,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,MAAM,CAAC,IAAI,CAAC,iDAAiD,EAAE;wBAC7D,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;qBAC9D,CAAC,CAAC;oBACH,SAAS;gBACX,CAAC;YACH,CAAC;YACD,oEAAoE;YACpE,+DAA+D;YAC/D,2DAA2D;YAC3D,6CAA6C;YAC7C,MAAM,QAAQ,GAAG,MAAM,uBAAuB,CAC5C,aAAa,EACb,GAAG,CAAC,cAAc,EAClB,eAAe,CAAC,iBAAiB,EACjC,OAAO,CAAC,MAAM,CACZ,CAAC,QAAQ,EAAE,EAAE,CACX,QAAQ,CAAC,IAAI,EAAE,UAAU,KAAK,UAAU;gBACxC,CAAC,OAAO,CAAC,GAAG,KAAK,EAAE,IAAI,QAAQ,CAAC,QAAQ,EAAE,GAAG,KAAK,OAAO,CAAC,GAAG,CAAC,CACjE,EACD,EAAE,CACH,CAAC;YAEF,MAAM,CAAC,IAAI,CAAC,uCAAuC,EAAE;gBACnD,UAAU;gBACV,KAAK,EAAE,QAAQ,CAAC,MAAM;aACvB,CAAC,CAAC;YAEH,GAAG,CAAC,GAAG,CACL,0BAA0B,EAC1B,MAAM,CAAC,0BAA0B,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAC1D,CAAC;QACJ,CAAC;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"controller.js","sourceRoot":"","sources":["../../../src/domain/workflowinstance/controller.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,8 @@ import type { Workflow } from "@stigmer/protos/ai/stigmer/agentic/workflow/v1/ap
3
3
  import { WorkflowInstanceSchema } from "@stigmer/protos/ai/stigmer/agentic/workflowinstance/v1/api_pb";
4
4
  import type { Logger } from "../../boot/logger.js";
5
5
  import type { PipelineStep } from "../../pipeline/pipeline.js";
6
+ import type { RequestContext } from "../../pipeline/request-context.js";
7
+ import type { AuthorizationTarget } from "../../pipeline/steps/authorize.js";
6
8
  import type { Store } from "../../store/interface.js";
7
9
  type InstanceDesc = typeof WorkflowInstanceSchema;
8
10
  /** Context key for the loaded parent workflow (Go ParentWorkflowKey). */
@@ -19,6 +21,24 @@ export type ParentWorkflowLoaderProvider = () => ParentWorkflowLoader;
19
21
  * (capital-W copy is the wire contract).
20
22
  */
21
23
  export declare function newLoadParentWorkflowStep(loaderProvider: ParentWorkflowLoaderProvider, logger: Logger): PipelineStep<InstanceDesc>;
24
+ /** The deny copy of the parent's bar, the Java WorkflowInstanceCreateHandler's. */
25
+ export declare const WORKFLOW_INSTANCE_PARENT_DENIED_MESSAGE = "You don't have permission to create instances of this workflow";
26
+ /**
27
+ * The create lane's authorization question, for AuthorizeResolvedTarget
28
+ * after LoadParentWorkflow and BEFORE ValidateSameOrgBusinessRule (whose
29
+ * refusal names the parent's organization, which a refused caller should
30
+ * not learn). The RPC is is_skip_authorization because its target is the
31
+ * PARENT, loaded from spec.workflow_id, not a request field.
32
+ *
33
+ * One question: may the caller run this workflow (can_execute on the
34
+ * parent, the relation the run gate asks; the same-org rule already binds
35
+ * the instance's organization to the workflow's, so there is no separate
36
+ * organization bar). A DEFAULT instance asks nothing, for the reason its
37
+ * agent twin gives (agentinstance/steps.ts): it is the workflow's row,
38
+ * composed by the server for the run's human, keyed on the in-process
39
+ * origin, the reserved label and the parent's organization together.
40
+ */
41
+ export declare function resolveWorkflowInstanceCreateTargets(ctx: RequestContext<InstanceDesc>): ReadonlyArray<AuthorizationTarget>;
22
42
  /**
23
43
  * ValidateSameOrgBusinessRule — create.go: instances must live in the same
24
44
  * organization as the parent workflow; cross-org instances could leak
@@ -1 +1 @@
1
- {"version":3,"file":"steps.d.ts","sourceRoot":"","sources":["../../../src/domain/workflowinstance/steps.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAGtD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,uDAAuD,CAAC;AACtF,OAAO,EAAE,sBAAsB,EAAE,MAAM,+DAA+D,CAAC;AAIvG,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAQnD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAK/D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAEtD,KAAK,YAAY,GAAG,OAAO,sBAAsB,CAAC;AAElD,yEAAyE;AACzE,eAAO,MAAM,mBAAmB,oBAAoB,CAAC;AAQrD,MAAM,WAAW,oBAAoB;IACnC,GAAG,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;CAC5C;AAED,wDAAwD;AACxD,MAAM,MAAM,4BAA4B,GAAG,MAAM,oBAAoB,CAAC;AAEtE;;;;;GAKG;AACH,wBAAgB,yBAAyB,CACvC,cAAc,EAAE,4BAA4B,EAC5C,MAAM,EAAE,MAAM,GACb,YAAY,CAAC,YAAY,CAAC,CAsB5B;AAED;;;;GAIG;AACH,wBAAgB,kCAAkC,CAChD,MAAM,EAAE,MAAM,GACb,YAAY,CAAC,YAAY,CAAC,CA4B5B;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,6BAA6B,IAAI,YAAY,CAAC,YAAY,CAAC,CAqB1E;AAED;;;;;;;;;GASG;AACH,wBAAgB,oDAAoD,CAClE,IAAI,SAAS,WAAW,EACxB,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,GAAG,YAAY,CAAC,IAAI,CAAC,CAmCvD"}
1
+ {"version":3,"file":"steps.d.ts","sourceRoot":"","sources":["../../../src/domain/workflowinstance/steps.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAGtD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,uDAAuD,CAAC;AACtF,OAAO,EAAE,sBAAsB,EAAE,MAAM,+DAA+D,CAAC;AAKvG,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AASnD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACxE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AAI7E,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAEtD,KAAK,YAAY,GAAG,OAAO,sBAAsB,CAAC;AAElD,yEAAyE;AACzE,eAAO,MAAM,mBAAmB,oBAAoB,CAAC;AAQrD,MAAM,WAAW,oBAAoB;IACnC,GAAG,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;CAC5C;AAED,wDAAwD;AACxD,MAAM,MAAM,4BAA4B,GAAG,MAAM,oBAAoB,CAAC;AAEtE;;;;;GAKG;AACH,wBAAgB,yBAAyB,CACvC,cAAc,EAAE,4BAA4B,EAC5C,MAAM,EAAE,MAAM,GACb,YAAY,CAAC,YAAY,CAAC,CAuB5B;AAED,mFAAmF;AACnF,eAAO,MAAM,uCAAuC,mEACc,CAAC;AAEnE;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,oCAAoC,CAClD,GAAG,EAAE,cAAc,CAAC,YAAY,CAAC,GAChC,aAAa,CAAC,mBAAmB,CAAC,CAqBpC;AAED;;;;GAIG;AACH,wBAAgB,kCAAkC,CAChD,MAAM,EAAE,MAAM,GACb,YAAY,CAAC,YAAY,CAAC,CA4B5B;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,6BAA6B,IAAI,YAAY,CAAC,YAAY,CAAC,CAqB1E;AAED;;;;;;;;;GASG;AACH,wBAAgB,oDAAoD,CAClE,IAAI,SAAS,WAAW,EACxB,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,GAAG,YAAY,CAAC,IAAI,CAAC,CAmCvD"}
@@ -11,6 +11,8 @@
11
11
  import { ConnectError } from "@connectrpc/connect";
12
12
  import { WorkflowSchema } from "@stigmer/protos/ai/stigmer/agentic/workflow/v1/api_pb";
13
13
  import { ApiResourceKind } from "@stigmer/protos/ai/stigmer/commons/apiresource/apiresourcekind/api_resource_kind_pb";
14
+ import { IamPermission } from "@stigmer/protos/ai/stigmer/iam/v1/enum_pb";
15
+ import { isServerComposedRequest } from "../../extensions/identity.js";
14
16
  import { isDefaultInstance } from "../../pipeline/apiresource-labels.js";
15
17
  import { failedPreconditionError, internalError, invalidArgumentError, notFoundError, } from "../../pipeline/errors.js";
16
18
  import { EXISTING_RESOURCE_KEY } from "../../pipeline/steps/load-existing.js";
@@ -45,6 +47,43 @@ export function newLoadParentWorkflowStep(loaderProvider, logger) {
45
47
  },
46
48
  };
47
49
  }
50
+ /** The deny copy of the parent's bar, the Java WorkflowInstanceCreateHandler's. */
51
+ export const WORKFLOW_INSTANCE_PARENT_DENIED_MESSAGE = "You don't have permission to create instances of this workflow";
52
+ /**
53
+ * The create lane's authorization question, for AuthorizeResolvedTarget
54
+ * after LoadParentWorkflow and BEFORE ValidateSameOrgBusinessRule (whose
55
+ * refusal names the parent's organization, which a refused caller should
56
+ * not learn). The RPC is is_skip_authorization because its target is the
57
+ * PARENT, loaded from spec.workflow_id, not a request field.
58
+ *
59
+ * One question: may the caller run this workflow (can_execute on the
60
+ * parent, the relation the run gate asks; the same-org rule already binds
61
+ * the instance's organization to the workflow's, so there is no separate
62
+ * organization bar). A DEFAULT instance asks nothing, for the reason its
63
+ * agent twin gives (agentinstance/steps.ts): it is the workflow's row,
64
+ * composed by the server for the run's human, keyed on the in-process
65
+ * origin, the reserved label and the parent's organization together.
66
+ */
67
+ export function resolveWorkflowInstanceCreateTargets(ctx) {
68
+ const parent = ctx.get(PARENT_WORKFLOW_KEY);
69
+ if (parent === undefined) {
70
+ throw new Error("parent workflow not found in context");
71
+ }
72
+ const metadata = ctx.newState.metadata;
73
+ if (isDefaultInstance(metadata) &&
74
+ isServerComposedRequest(ctx.callerIdentity) &&
75
+ (metadata?.org ?? "") === (parent.metadata?.org ?? "")) {
76
+ return [];
77
+ }
78
+ return [
79
+ {
80
+ permission: IamPermission.can_execute,
81
+ resourceKind: ApiResourceKind.workflow,
82
+ resourceId: parent.metadata?.id ?? "",
83
+ deniedMessage: WORKFLOW_INSTANCE_PARENT_DENIED_MESSAGE,
84
+ },
85
+ ];
86
+ }
48
87
  /**
49
88
  * ValidateSameOrgBusinessRule — create.go: instances must live in the same
50
89
  * organization as the parent workflow; cross-org instances could leak
@@ -1 +1 @@
1
- {"version":3,"file":"steps.js","sourceRoot":"","sources":["../../../src/domain/workflowinstance/steps.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"steps.js","sourceRoot":"","sources":["../../../src/domain/workflowinstance/steps.ts"],"names":[],"mappings":"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"}
@@ -102,4 +102,23 @@ export interface IdentityVerifier {
102
102
  * rule is load-bearing in open source.
103
103
  */
104
104
  export declare function isPlatformPipelineCaller(caller: CallerIdentity): boolean;
105
+ /**
106
+ * Whether the request `caller` arrived on was composed by the server's own
107
+ * code rather than presented on the wire: the `internal` class (the server
108
+ * acting as itself) or ANY identity that entered through the in-process
109
+ * transport (a propagated person the server is building a request for,
110
+ * such as the default-instance self-heal that creates as the run's human
111
+ * for attribution). The serving chassis strips the propagation header, so
112
+ * the wire cannot claim this.
113
+ *
114
+ * This is the trust arm the label guard, the memory-capture gate and the
115
+ * execution-context create check share: what a server-composed request
116
+ * carries was decided by the service code that built it, and the
117
+ * entry-point request already passed its own gate. It is NARROWER than
118
+ * `isPlatformPipelineCaller`: a wire `machine` account is one of the
119
+ * platform's pipelines but its request is still the wire's, so a step
120
+ * that trusts server-composed state (a reserved label, a default
121
+ * instance's provenance) must key on this predicate and never on that one.
122
+ */
123
+ export declare function isServerComposedRequest(caller: CallerIdentity): boolean;
105
124
  //# sourceMappingURL=identity.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"identity.d.ts","sourceRoot":"","sources":["../../src/extensions/identity.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH;;;;;;;;;;;;;;GAcG;AACH,MAAM,MAAM,WAAW,GACnB,MAAM,GACN,SAAS,GACT,QAAQ,GACR,UAAU,GACV,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;AAElB;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,YAAY,CAAC;AAE/C;;;;;GAKG;AACH,MAAM,WAAW,cAAc;IAC7B,uEAAuE;IACvE,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC;IAClC,wEAAwE;IACxE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,mEAAmE;IACnE,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B;;;;;;OAMG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B;;;;;OAKG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,UAAU,CAAC;CAC9B;AAED;;;;GAIG;AACH,MAAM,WAAW,gBAAgB;IAC/B,uEAAuE;IACvE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB;;;;;OAKG;IACH,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;CACvD;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAMxE"}
1
+ {"version":3,"file":"identity.d.ts","sourceRoot":"","sources":["../../src/extensions/identity.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH;;;;;;;;;;;;;;GAcG;AACH,MAAM,MAAM,WAAW,GACnB,MAAM,GACN,SAAS,GACT,QAAQ,GACR,UAAU,GACV,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;AAElB;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,YAAY,CAAC;AAE/C;;;;;GAKG;AACH,MAAM,WAAW,cAAc;IAC7B,uEAAuE;IACvE,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC;IAClC,wEAAwE;IACxE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,mEAAmE;IACnE,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B;;;;;;OAMG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B;;;;;OAKG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,UAAU,CAAC;CAC9B;AAED;;;;GAIG;AACH,MAAM,WAAW,gBAAgB;IAC/B,uEAAuE;IACvE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB;;;;;OAKG;IACH,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;CACvD;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAExE;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAEvE"}
@@ -26,8 +26,27 @@
26
26
  * rule is load-bearing in open source.
27
27
  */
28
28
  export function isPlatformPipelineCaller(caller) {
29
- return (caller.callerClass === "machine" ||
30
- caller.callerClass === "internal" ||
31
- caller.origin === "in-process");
29
+ return caller.callerClass === "machine" || isServerComposedRequest(caller);
30
+ }
31
+ /**
32
+ * Whether the request `caller` arrived on was composed by the server's own
33
+ * code rather than presented on the wire: the `internal` class (the server
34
+ * acting as itself) or ANY identity that entered through the in-process
35
+ * transport (a propagated person the server is building a request for,
36
+ * such as the default-instance self-heal that creates as the run's human
37
+ * for attribution). The serving chassis strips the propagation header, so
38
+ * the wire cannot claim this.
39
+ *
40
+ * This is the trust arm the label guard, the memory-capture gate and the
41
+ * execution-context create check share: what a server-composed request
42
+ * carries was decided by the service code that built it, and the
43
+ * entry-point request already passed its own gate. It is NARROWER than
44
+ * `isPlatformPipelineCaller`: a wire `machine` account is one of the
45
+ * platform's pipelines but its request is still the wire's, so a step
46
+ * that trusts server-composed state (a reserved label, a default
47
+ * instance's provenance) must key on this predicate and never on that one.
48
+ */
49
+ export function isServerComposedRequest(caller) {
50
+ return caller.callerClass === "internal" || caller.origin === "in-process";
32
51
  }
33
52
  //# sourceMappingURL=identity.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"identity.js","sourceRoot":"","sources":["../../src/extensions/identity.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAuFH;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,wBAAwB,CAAC,MAAsB;IAC7D,OAAO,CACL,MAAM,CAAC,WAAW,KAAK,SAAS;QAChC,MAAM,CAAC,WAAW,KAAK,UAAU;QACjC,MAAM,CAAC,MAAM,KAAK,YAAY,CAC/B,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"identity.js","sourceRoot":"","sources":["../../src/extensions/identity.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAuFH;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,wBAAwB,CAAC,MAAsB;IAC7D,OAAO,MAAM,CAAC,WAAW,KAAK,SAAS,IAAI,uBAAuB,CAAC,MAAM,CAAC,CAAC;AAC7E,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,uBAAuB,CAAC,MAAsB;IAC5D,OAAO,MAAM,CAAC,WAAW,KAAK,UAAU,IAAI,MAAM,CAAC,MAAM,KAAK,YAAY,CAAC;AAC7E,CAAC"}
@@ -48,11 +48,27 @@
48
48
  * authorization-backend outage surfaces as the pipeline's sanitized
49
49
  * INTERNAL, exactly the Java baseline (DD-007: unavailable is never
50
50
  * softened).
51
- * - The scope receives whatever identity the call carries, including
52
- * the in-process `internal` class — the driver owns that arm's
53
- * semantics (the Java baseline propagates the original caller
54
- * through in-process calls, so a composed driver normally never
55
- * sees `internal` on these lanes).
51
+ * - THE `internal` CLASS IS ANSWERED HERE, NEVER OFFERED TO
52
+ * `restrictListEntries`. The server acting as itself over the
53
+ * in-process transport (boot/inprocess.ts mints the class; nothing
54
+ * else can) is the server's own trust domain, on list lanes exactly
55
+ * as on the Authorize step, which returns for the class before any
56
+ * Authorizer is asked (pipeline/steps/authorize.ts). The helper
57
+ * below returns the org-narrowed rows for that class before the
58
+ * scope is consulted. The rule is class-only, like the step's: a
59
+ * caller PROPAGATED through the in-process header keeps its own
60
+ * class and stays scoped. Why here and not in a driver: a driver
61
+ * answering "every offered id" for the class must be written once
62
+ * per edition and is a silent short list the day one edition
63
+ * forgets (stigmer#1207: a composed driver scoped the class and
64
+ * every server-internal list read came back empty — the
65
+ * personal-environment reads at execution-context creation and MCP
66
+ * connect in this repository, and a composition's own in-process
67
+ * readers of a session's executions).
68
+ * The enumeration verb is a wire caller's verb: no in-process edge
69
+ * reaches `authorizedResourceIds`, and only a scanning driver can
70
+ * say "all", so that verb's internal arm stays the driver's and is
71
+ * stated in its doc below.
56
72
  * - THE SCOPE IS THE LAST PER-ROW PREDICATE IN A LANE (stigmer-cloud
57
73
  * 20260913.04 T02, Q-LB-11). Every request predicate a lane applies
58
74
  * — the request's org, a phase, labels, a parent id, filter criteria
@@ -143,6 +159,13 @@ export interface ListReadScope {
143
159
  * answer — consumers map it to their lane's empty shape without
144
160
  * touching the store. A scope may throw on a kind it was never ruled
145
161
  * to serve (a consumer bug by contract).
162
+ *
163
+ * The `internal` class CAN reach this verb (no helper stands between a
164
+ * consumer and it), and the driver owns that arm: a scanning driver
165
+ * answers every id of the kind, an engine-backed one answers what its
166
+ * engine holds for the class. No in-process edge reaches an
167
+ * enumeration lane today, so the two answers have never met a caller;
168
+ * a consumer that adds one reads this line first.
146
169
  */
147
170
  authorizedResourceIds(caller: CallerIdentity, kind: ApiResourceKind): Promise<ReadonlySet<string>>;
148
171
  /**
@@ -150,6 +173,12 @@ export interface ListReadScope {
150
173
  * baseline: the authorized-ids intersection plus the guest
151
174
  * cookie-label rule where the lane carries it). The result must be a
152
175
  * subset of the offered ids — a scope only narrows.
176
+ *
177
+ * `caller` is never the `internal` class: `restrictListByReadScope`,
178
+ * the one consumption idiom, answers that class before any driver is
179
+ * asked (the header's contract line). A driver that is offered it has
180
+ * been reached around the idiom and should refuse loudly rather than
181
+ * evaluate the server as a person (the built-in driver does).
153
182
  */
154
183
  restrictListEntries(caller: CallerIdentity, kind: ApiResourceKind, entries: ReadonlyArray<ListEntryMeta>): Promise<ReadonlySet<string>>;
155
184
  }
@@ -187,8 +216,13 @@ export interface ScopedListResource {
187
216
  * permission-bounded across orgs, verified per lane in the entry's
188
217
  * census — lanes Java does not org-narrow pass ""), then to the kept
189
218
  * ids. The same set either way (both are per-row predicates); the
190
- * order is the header's second-to-last contract line: the scope sees
191
- * the org's rows, not the kind's;
219
+ * order is the header's contract line: the scope sees the org's
220
+ * rows, not the kind's;
221
+ * - scope composed, caller `internal` → the org-narrowed rows, the
222
+ * scope never asked and no candidate built (the header's contract
223
+ * line). The org predicate is the REQUEST's, not the caller's, so
224
+ * the server's own read of a cross-org lane still honours the org
225
+ * it asked for; only the caller predicate is skipped;
192
226
  * - every candidate carries the row's authorization facts, and the
193
227
  * candidates of a kind whose authorization is its parent's name that
194
228
  * parent again as `authorizationParent` — one of the facts' parent
@@ -1 +1 @@
1
- {"version":3,"file":"list-read-scope.d.ts","sourceRoot":"","sources":["../../src/extensions/list-read-scope.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8GG;AACH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qFAAqF,CAAC;AAC3H,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,wDAAwD,CAAC;AACpG,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0DAA0D,CAAC;AAUjG,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,KAAK,EACV,kBAAkB,EAClB,qBAAqB,EACtB,MAAM,6BAA6B,CAAC;AAErC;;;;;;GAMG;AACH,MAAM,WAAW,aAAc,SAAQ,qBAAqB;IAC1D,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAClD;;;;;;;;;OASG;IACH,QAAQ,CAAC,mBAAmB,CAAC,EAAE,kBAAkB,CAAC;CACnD;AAED,kFAAkF;AAClF,MAAM,WAAW,aAAa;IAC5B;;;;;;OAMG;IACH,qBAAqB,CACnB,MAAM,EAAE,cAAc,EACtB,IAAI,EAAE,eAAe,GACpB,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC;IAEhC;;;;;OAKG;IACH,mBAAmB,CACjB,MAAM,EAAE,cAAc,EACtB,IAAI,EAAE,eAAe,EACrB,OAAO,EAAE,aAAa,CAAC,aAAa,CAAC,GACpC,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC;CACjC;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,EAAE;QACT,EAAE,CAAC,EAAE,MAAM,CAAC;QACZ,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAChC,UAAU,CAAC,EAAE,qBAAqB,CAAC;KACpC,CAAC;IACF,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,gBAAgB,CAAA;KAAE,CAAC;CACvC;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAsB,uBAAuB,CAAC,CAAC,SAAS,kBAAkB,EACxE,KAAK,EAAE,aAAa,GAAG,SAAS,EAChC,MAAM,EAAE,cAAc,EACtB,IAAI,EAAE,eAAe,EACrB,SAAS,EAAE,aAAa,CAAC,CAAC,CAAC,EAC3B,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,CAAC,EAAE,CAAC,CAqBd"}
1
+ {"version":3,"file":"list-read-scope.d.ts","sourceRoot":"","sources":["../../src/extensions/list-read-scope.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8HG;AACH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qFAAqF,CAAC;AAC3H,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,wDAAwD,CAAC;AACpG,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0DAA0D,CAAC;AAUjG,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,KAAK,EACV,kBAAkB,EAClB,qBAAqB,EACtB,MAAM,6BAA6B,CAAC;AAErC;;;;;;GAMG;AACH,MAAM,WAAW,aAAc,SAAQ,qBAAqB;IAC1D,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAClD;;;;;;;;;OASG;IACH,QAAQ,CAAC,mBAAmB,CAAC,EAAE,kBAAkB,CAAC;CACnD;AAED,kFAAkF;AAClF,MAAM,WAAW,aAAa;IAC5B;;;;;;;;;;;;;OAaG;IACH,qBAAqB,CACnB,MAAM,EAAE,cAAc,EACtB,IAAI,EAAE,eAAe,GACpB,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC;IAEhC;;;;;;;;;;;OAWG;IACH,mBAAmB,CACjB,MAAM,EAAE,cAAc,EACtB,IAAI,EAAE,eAAe,EACrB,OAAO,EAAE,aAAa,CAAC,aAAa,CAAC,GACpC,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC;CACjC;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,EAAE;QACT,EAAE,CAAC,EAAE,MAAM,CAAC;QACZ,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAChC,UAAU,CAAC,EAAE,qBAAqB,CAAC;KACpC,CAAC;IACF,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,gBAAgB,CAAA;KAAE,CAAC;CACvC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAsB,uBAAuB,CAAC,CAAC,SAAS,kBAAkB,EACxE,KAAK,EAAE,aAAa,GAAG,SAAS,EAChC,MAAM,EAAE,cAAc,EACtB,IAAI,EAAE,eAAe,EACrB,SAAS,EAAE,aAAa,CAAC,CAAC,CAAC,EAC3B,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,CAAC,EAAE,CAAC,CA2Bd"}
@@ -19,8 +19,13 @@ import { rowAuthorizationFactsOf } from "../pipeline/steps/authorization-facts.j
19
19
  * permission-bounded across orgs, verified per lane in the entry's
20
20
  * census — lanes Java does not org-narrow pass ""), then to the kept
21
21
  * ids. The same set either way (both are per-row predicates); the
22
- * order is the header's second-to-last contract line: the scope sees
23
- * the org's rows, not the kind's;
22
+ * order is the header's contract line: the scope sees the org's
23
+ * rows, not the kind's;
24
+ * - scope composed, caller `internal` → the org-narrowed rows, the
25
+ * scope never asked and no candidate built (the header's contract
26
+ * line). The org predicate is the REQUEST's, not the caller's, so
27
+ * the server's own read of a cross-org lane still honours the org
28
+ * it asked for; only the caller predicate is skipped;
24
29
  * - every candidate carries the row's authorization facts, and the
25
30
  * candidates of a kind whose authorization is its parent's name that
26
31
  * parent again as `authorizationParent` — one of the facts' parent
@@ -34,6 +39,12 @@ export async function restrictListByReadScope(scope, caller, kind, resources, re
34
39
  const offered = requestOrg === ""
35
40
  ? resources
36
41
  : resources.filter((resource) => resource.metadata?.org === requestOrg);
42
+ // The server acting as itself: the trust-domain rule of the Authorize
43
+ // step, applied to a list answer — the caller predicate is skipped, the
44
+ // request's org predicate above is not (the header's contract line).
45
+ if (caller.callerClass === "internal") {
46
+ return [...offered];
47
+ }
37
48
  const parentOf = authorizationParentReader(kind);
38
49
  const entries = offered.map((resource) => {
39
50
  const entry = {
@@ -1 +1 @@
1
- {"version":3,"file":"list-read-scope.js","sourceRoot":"","sources":["../../src/extensions/list-read-scope.ts"],"names":[],"mappings":"AAmHA,sEAAsE;AACtE,uEAAuE;AACvE,yEAAyE;AACzE,yEAAyE;AACzE,sBAAsB;AACtB,OAAO,EAAE,8BAA8B,EAAE,MAAM,iCAAiC,CAAC;AACjF,OAAO,EAAE,uBAAuB,EAAE,MAAM,0CAA0C,CAAC;AA4EnF;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,KAAgC,EAChC,MAAsB,EACtB,IAAqB,EACrB,SAA2B,EAC3B,UAAkB;IAElB,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,OAAO,CAAC,GAAG,SAAS,CAAC,CAAC;IACxB,CAAC;IACD,MAAM,OAAO,GACX,UAAU,KAAK,EAAE;QACf,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,GAAG,KAAK,UAAU,CAAC,CAAC;IAC5E,MAAM,QAAQ,GAAG,yBAAyB,CAAC,IAAI,CAAC,CAAC;IACjD,MAAM,OAAO,GAAoB,OAAO,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE;QACxD,MAAM,KAAK,GAAkB;YAC3B,GAAG,uBAAuB,CAAC,IAAI,EAAE,QAAQ,CAAC;YAC1C,MAAM,EAAE,QAAQ,CAAC,QAAQ,EAAE,MAAM,IAAI,EAAE;SACxC,CAAC;QACF,MAAM,mBAAmB,GAAG,QAAQ,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QACxD,OAAO,mBAAmB,KAAK,SAAS;YACtC,CAAC,CAAC,KAAK;YACP,CAAC,CAAC,EAAE,GAAG,KAAK,EAAE,mBAAmB,EAAE,CAAC;IACxC,CAAC,CAAC,CAAC;IACH,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,mBAAmB,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IACvE,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AAChF,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,yBAAyB,CAChC,IAAqB;IAIrB,MAAM,MAAM,GAAG,8BAA8B,CAAC,IAAI,CAAC,CAAC;IACpD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,OAAO,GAAG,EAAE,CAAC,SAAS,CAAC;IACzB,CAAC;IACD,OAAO,CAAC,WAAW,EAAE,EAAE,CACrB,WAAW,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,KAAK,MAAM,CAAC,QAAQ,CAAC,CAAC;AAClE,CAAC"}
1
+ {"version":3,"file":"list-read-scope.js","sourceRoot":"","sources":["../../src/extensions/list-read-scope.ts"],"names":[],"mappings":"AAmIA,sEAAsE;AACtE,uEAAuE;AACvE,yEAAyE;AACzE,yEAAyE;AACzE,sBAAsB;AACtB,OAAO,EAAE,8BAA8B,EAAE,MAAM,iCAAiC,CAAC;AACjF,OAAO,EAAE,uBAAuB,EAAE,MAAM,0CAA0C,CAAC;AAyFnF;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,KAAgC,EAChC,MAAsB,EACtB,IAAqB,EACrB,SAA2B,EAC3B,UAAkB;IAElB,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,OAAO,CAAC,GAAG,SAAS,CAAC,CAAC;IACxB,CAAC;IACD,MAAM,OAAO,GACX,UAAU,KAAK,EAAE;QACf,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,GAAG,KAAK,UAAU,CAAC,CAAC;IAC5E,sEAAsE;IACtE,wEAAwE;IACxE,qEAAqE;IACrE,IAAI,MAAM,CAAC,WAAW,KAAK,UAAU,EAAE,CAAC;QACtC,OAAO,CAAC,GAAG,OAAO,CAAC,CAAC;IACtB,CAAC;IACD,MAAM,QAAQ,GAAG,yBAAyB,CAAC,IAAI,CAAC,CAAC;IACjD,MAAM,OAAO,GAAoB,OAAO,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE;QACxD,MAAM,KAAK,GAAkB;YAC3B,GAAG,uBAAuB,CAAC,IAAI,EAAE,QAAQ,CAAC;YAC1C,MAAM,EAAE,QAAQ,CAAC,QAAQ,EAAE,MAAM,IAAI,EAAE;SACxC,CAAC;QACF,MAAM,mBAAmB,GAAG,QAAQ,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QACxD,OAAO,mBAAmB,KAAK,SAAS;YACtC,CAAC,CAAC,KAAK;YACP,CAAC,CAAC,EAAE,GAAG,KAAK,EAAE,mBAAmB,EAAE,CAAC;IACxC,CAAC,CAAC,CAAC;IACH,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,mBAAmB,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IACvE,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AAChF,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,yBAAyB,CAChC,IAAqB;IAIrB,MAAM,MAAM,GAAG,8BAA8B,CAAC,IAAI,CAAC,CAAC;IACpD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,OAAO,GAAG,EAAE,CAAC,SAAS,CAAC;IACzB,CAAC;IACD,OAAO,CAAC,WAAW,EAAE,EAAE,CACrB,WAAW,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,KAAK,MAAM,CAAC,QAAQ,CAAC,CAAC;AAClE,CAAC"}