@stigmer/server 3.15.2 → 3.15.3-dev.20260914100347
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/boot/compose.d.ts.map +1 -1
- package/dist/boot/compose.js +103 -9
- package/dist/boot/compose.js.map +1 -1
- package/dist/domain/iampolicy/access-lists.d.ts +27 -0
- package/dist/domain/iampolicy/access-lists.d.ts.map +1 -0
- package/dist/domain/iampolicy/access-lists.js +124 -0
- package/dist/domain/iampolicy/access-lists.js.map +1 -0
- package/dist/domain/iampolicy/constants.d.ts +135 -0
- package/dist/domain/iampolicy/constants.d.ts.map +1 -0
- package/dist/domain/iampolicy/constants.js +203 -0
- package/dist/domain/iampolicy/constants.js.map +1 -0
- package/dist/domain/iampolicy/controller.d.ts +29 -0
- package/dist/domain/iampolicy/controller.d.ts.map +1 -0
- package/dist/domain/iampolicy/controller.js +451 -0
- package/dist/domain/iampolicy/controller.js.map +1 -0
- package/dist/domain/iampolicy/display-resolver.d.ts +6 -0
- package/dist/domain/iampolicy/display-resolver.d.ts.map +1 -0
- package/dist/domain/iampolicy/display-resolver.js +90 -0
- package/dist/domain/iampolicy/display-resolver.js.map +1 -0
- package/dist/domain/iampolicy/grant-path.d.ts +42 -0
- package/dist/domain/iampolicy/grant-path.d.ts.map +1 -0
- package/dist/domain/iampolicy/grant-path.js +183 -0
- package/dist/domain/iampolicy/grant-path.js.map +1 -0
- package/dist/domain/iampolicy/grant-scope.d.ts +4 -0
- package/dist/domain/iampolicy/grant-scope.d.ts.map +1 -0
- package/dist/domain/iampolicy/grant-scope.js +34 -0
- package/dist/domain/iampolicy/grant-scope.js.map +1 -0
- package/dist/domain/iampolicy/membership.d.ts +111 -0
- package/dist/domain/iampolicy/membership.d.ts.map +1 -0
- package/dist/domain/iampolicy/membership.js +152 -0
- package/dist/domain/iampolicy/membership.js.map +1 -0
- package/dist/domain/iampolicy/permissions.d.ts +19 -0
- package/dist/domain/iampolicy/permissions.d.ts.map +1 -0
- package/dist/domain/iampolicy/permissions.js +27 -0
- package/dist/domain/iampolicy/permissions.js.map +1 -0
- package/dist/domain/iampolicy/resource-store.d.ts +4 -0
- package/dist/domain/iampolicy/resource-store.d.ts.map +1 -0
- package/dist/domain/iampolicy/resource-store.js +135 -0
- package/dist/domain/iampolicy/resource-store.js.map +1 -0
- package/dist/domain/iampolicy/role-lifecycle.d.ts +9 -0
- package/dist/domain/iampolicy/role-lifecycle.d.ts.map +1 -0
- package/dist/domain/iampolicy/role-lifecycle.js +106 -0
- package/dist/domain/iampolicy/role-lifecycle.js.map +1 -0
- package/dist/domain/iampolicy/roles.d.ts +11 -0
- package/dist/domain/iampolicy/roles.d.ts.map +1 -0
- package/dist/domain/iampolicy/roles.js +78 -0
- package/dist/domain/iampolicy/roles.js.map +1 -0
- package/dist/domain/iampolicy/specs.d.ts +7 -0
- package/dist/domain/iampolicy/specs.d.ts.map +1 -0
- package/dist/domain/iampolicy/specs.js +45 -0
- package/dist/domain/iampolicy/specs.js.map +1 -0
- package/dist/domain/iampolicy/steps.d.ts +18 -0
- package/dist/domain/iampolicy/steps.d.ts.map +1 -0
- package/dist/domain/iampolicy/steps.js +117 -0
- package/dist/domain/iampolicy/steps.js.map +1 -0
- package/dist/domain/iampolicy/store-contract.d.ts +8 -0
- package/dist/domain/iampolicy/store-contract.d.ts.map +1 -0
- package/dist/domain/iampolicy/store-contract.js +258 -0
- package/dist/domain/iampolicy/store-contract.js.map +1 -0
- package/dist/domain/iampolicy/store.d.ts +78 -0
- package/dist/domain/iampolicy/store.d.ts.map +1 -0
- package/dist/domain/iampolicy/store.js +13 -0
- package/dist/domain/iampolicy/store.js.map +1 -0
- package/dist/domain/iampolicy/wire-refusals.d.ts +25 -0
- package/dist/domain/iampolicy/wire-refusals.d.ts.map +1 -0
- package/dist/domain/iampolicy/wire-refusals.js +76 -0
- package/dist/domain/iampolicy/wire-refusals.js.map +1 -0
- package/dist/domain/identityaccount/constants.d.ts +33 -0
- package/dist/domain/identityaccount/constants.d.ts.map +1 -1
- package/dist/domain/identityaccount/constants.js +2 -48
- package/dist/domain/identityaccount/constants.js.map +1 -1
- package/dist/domain/identityaccount/controller.d.ts +8 -1
- package/dist/domain/identityaccount/controller.d.ts.map +1 -1
- package/dist/domain/identityaccount/controller.js +54 -29
- package/dist/domain/identityaccount/controller.js.map +1 -1
- package/dist/domain/identityaccount/operator.d.ts.map +1 -1
- package/dist/domain/identityaccount/operator.js +2 -4
- package/dist/domain/identityaccount/operator.js.map +1 -1
- package/dist/domain/identityaccount/provisioning.d.ts +20 -1
- package/dist/domain/identityaccount/provisioning.d.ts.map +1 -1
- package/dist/domain/identityaccount/provisioning.js +17 -3
- package/dist/domain/identityaccount/provisioning.js.map +1 -1
- package/dist/domain/identityaccount/resolve.d.ts +23 -0
- package/dist/domain/identityaccount/resolve.d.ts.map +1 -1
- package/dist/domain/identityaccount/resolve.js +17 -0
- package/dist/domain/identityaccount/resolve.js.map +1 -1
- package/dist/domain/identityaccount/store-contract.d.ts +4 -18
- package/dist/domain/identityaccount/store-contract.d.ts.map +1 -1
- package/dist/domain/identityaccount/store-contract.js +12 -47
- package/dist/domain/identityaccount/store-contract.js.map +1 -1
- package/dist/extensions/authorization-queries.d.ts +81 -0
- package/dist/extensions/authorization-queries.d.ts.map +1 -0
- package/dist/extensions/authorization-queries.js +2 -0
- package/dist/extensions/authorization-queries.js.map +1 -0
- package/dist/extensions/drivers.d.ts +49 -2
- package/dist/extensions/drivers.d.ts.map +1 -1
- package/dist/extensions/identity.d.ts +14 -0
- package/dist/extensions/identity.d.ts.map +1 -1
- package/dist/extensions/identity.js +18 -1
- package/dist/extensions/identity.js.map +1 -1
- package/dist/extensions/policy-grant-scope.d.ts +50 -0
- package/dist/extensions/policy-grant-scope.d.ts.map +1 -0
- package/dist/extensions/policy-grant-scope.js +2 -0
- package/dist/extensions/policy-grant-scope.js.map +1 -0
- package/dist/extensions/registry.d.ts +23 -1
- package/dist/extensions/registry.d.ts.map +1 -1
- package/dist/extensions/registry.js +30 -0
- package/dist/extensions/registry.js.map +1 -1
- package/dist/extensions/resource-authorization.d.ts +63 -0
- package/dist/extensions/resource-authorization.d.ts.map +1 -1
- package/dist/index.d.ts +7 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/pipeline/apiresource-meta.d.ts +56 -1
- package/dist/pipeline/apiresource-meta.d.ts.map +1 -1
- package/dist/pipeline/apiresource-meta.js +155 -1
- package/dist/pipeline/apiresource-meta.js.map +1 -1
- package/dist/pipeline/interceptors/auth.d.ts +12 -0
- package/dist/pipeline/interceptors/auth.d.ts.map +1 -1
- package/dist/pipeline/interceptors/auth.js +13 -1
- package/dist/pipeline/interceptors/auth.js.map +1 -1
- package/dist/pipeline/steps/authorize.d.ts +20 -5
- package/dist/pipeline/steps/authorize.d.ts.map +1 -1
- package/dist/pipeline/steps/authorize.js +37 -17
- package/dist/pipeline/steps/authorize.js.map +1 -1
- package/dist/pipeline/steps/defaults.d.ts +10 -0
- package/dist/pipeline/steps/defaults.d.ts.map +1 -1
- package/dist/pipeline/steps/defaults.js +39 -0
- package/dist/pipeline/steps/defaults.js.map +1 -1
- package/dist/store/port-contract.d.ts +61 -0
- package/dist/store/port-contract.d.ts.map +1 -0
- package/dist/store/port-contract.js +67 -0
- package/dist/store/port-contract.js.map +1 -0
- package/package.json +4 -4
- package/src/boot/compose.ts +107 -10
- package/src/domain/iampolicy/__tests__/access-lists.test.ts +238 -0
- package/src/domain/iampolicy/__tests__/constants.test.ts +388 -0
- package/src/domain/iampolicy/__tests__/controller.test.ts +960 -0
- package/src/domain/iampolicy/__tests__/display-resolver.test.ts +138 -0
- package/src/domain/iampolicy/__tests__/grant-path.test.ts +474 -0
- package/src/domain/iampolicy/__tests__/grant-scope.test.ts +61 -0
- package/src/domain/iampolicy/__tests__/iampolicy.test.ts +532 -0
- package/src/domain/iampolicy/__tests__/membership.test.ts +447 -0
- package/src/domain/iampolicy/__tests__/permissions.test.ts +41 -0
- package/src/domain/iampolicy/__tests__/resource-store.test.ts +165 -0
- package/src/domain/iampolicy/__tests__/role-lifecycle.test.ts +361 -0
- package/src/domain/iampolicy/__tests__/roles.test.ts +53 -0
- package/src/domain/iampolicy/__tests__/specs.test.ts +41 -0
- package/src/domain/iampolicy/__tests__/steps.test.ts +278 -0
- package/src/domain/iampolicy/__tests__/support.ts +195 -0
- package/src/domain/iampolicy/__tests__/wire-refusals.test.ts +117 -0
- package/src/domain/iampolicy/access-lists.ts +191 -0
- package/src/domain/iampolicy/constants.ts +243 -0
- package/src/domain/iampolicy/controller.ts +798 -0
- package/src/domain/iampolicy/display-resolver.ts +123 -0
- package/src/domain/iampolicy/grant-path.ts +270 -0
- package/src/domain/iampolicy/grant-scope.ts +36 -0
- package/src/domain/iampolicy/membership.ts +298 -0
- package/src/domain/iampolicy/permissions.ts +35 -0
- package/src/domain/iampolicy/resource-store.ts +186 -0
- package/src/domain/iampolicy/role-lifecycle.ts +132 -0
- package/src/domain/iampolicy/roles.ts +95 -0
- package/src/domain/iampolicy/specs.ts +53 -0
- package/src/domain/iampolicy/steps.ts +178 -0
- package/src/domain/iampolicy/store-contract.ts +450 -0
- package/src/domain/iampolicy/store.ts +103 -0
- package/src/domain/iampolicy/wire-refusals.ts +110 -0
- package/src/domain/identityaccount/__tests__/provisioning.test.ts +19 -7
- package/src/domain/identityaccount/__tests__/resolve.test.ts +113 -2
- package/src/domain/identityaccount/constants.ts +16 -31
- package/src/domain/identityaccount/controller.ts +65 -35
- package/src/domain/identityaccount/operator.ts +5 -5
- package/src/domain/identityaccount/provisioning.ts +43 -5
- package/src/domain/identityaccount/resolve.ts +43 -0
- package/src/domain/identityaccount/store-contract.ts +22 -70
- package/src/extensions/__tests__/composed-support.ts +87 -0
- package/src/extensions/__tests__/iam-policy-composed.test.ts +373 -0
- package/src/extensions/__tests__/iam-policy-points.test.ts +169 -0
- package/src/extensions/__tests__/identity-account-composed.test.ts +12 -78
- package/src/extensions/__tests__/identity.test.ts +62 -0
- package/src/extensions/__tests__/tier-truthfulness.test.ts +8 -0
- package/src/extensions/authorization-queries.ts +97 -0
- package/src/extensions/drivers.ts +49 -2
- package/src/extensions/identity.ts +21 -0
- package/src/extensions/policy-grant-scope.ts +50 -0
- package/src/extensions/registry.ts +62 -1
- package/src/extensions/resource-authorization.ts +65 -0
- package/src/index.ts +20 -0
- package/src/pipeline/__tests__/grantable-roles-for.test.ts +87 -0
- package/src/pipeline/__tests__/kind-by-enum-name.test.ts +107 -0
- package/src/pipeline/__tests__/kind-served-by-edition.test.ts +107 -0
- package/src/pipeline/apiresource-meta.ts +181 -1
- package/src/pipeline/interceptors/auth.ts +14 -1
- package/src/pipeline/steps/__tests__/authorize-annotation-completeness.test.ts +73 -3
- package/src/pipeline/steps/__tests__/authorize.test.ts +134 -9
- package/src/pipeline/steps/__tests__/derived-id.test.ts +49 -0
- package/src/pipeline/steps/authorize.ts +46 -21
- package/src/pipeline/steps/defaults.ts +42 -0
- package/src/store/__tests__/port-contract.test.ts +123 -0
- package/src/store/port-contract.ts +102 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"store-contract.js","sourceRoot":"","sources":["../../../src/domain/identityaccount/store-contract.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"store-contract.js","sourceRoot":"","sources":["../../../src/domain/identityaccount/store-contract.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The authorization-query capability (20260913.01, T01_1_review.md Q-OR-8):
|
|
3
|
+
* the TUPLE half of the IamPolicy query surface — the questions only an
|
|
4
|
+
* authorization engine can answer over its own graph, as opposed to the
|
|
5
|
+
* ROW half (who holds which role on what) that every edition answers from
|
|
6
|
+
* IamPolicy rows. Single instance, registered as
|
|
7
|
+
* `drivers.authorizationQueries` (the identityFederation shape: a driver
|
|
8
|
+
* point that is open source's own behaviour when absent).
|
|
9
|
+
*
|
|
10
|
+
* Absent, the IamPolicy query controller refuses `checkAuthorization`,
|
|
11
|
+
* `listAuthorizedResourceIds`, `listAuthorizedPrincipalIds`, and a
|
|
12
|
+
* `checkMyPermission` that carries contextual policies, UNIMPLEMENTED with
|
|
13
|
+
* the edition reason (domain/iampolicy/constants.ts
|
|
14
|
+
* AUTHORIZATION_QUERIES_UNIMPLEMENTED_MESSAGE) — never INTERNAL, the
|
|
15
|
+
* organization directory's absent-method precedent. Present, the
|
|
16
|
+
* controller still owns everything that is not the graph question: the
|
|
17
|
+
* annotation's Authorize step, `checkAuthorization`'s principal-trust rule
|
|
18
|
+
* (a user asks only about their own account; machine and internal about
|
|
19
|
+
* anyone), the UNAUTHENTICATED refusal, and the plain
|
|
20
|
+
* `checkMyPermission` that rides the composed Authorizer instead. The
|
|
21
|
+
* engine receives boundary-validated refs and never asks who is calling.
|
|
22
|
+
*
|
|
23
|
+
* The engine speaks the CONTRACT's vocabulary, not a backend's (Q-S3-1,
|
|
24
|
+
* 2026-09-13): `ApiResourceRef` for a principal or resource (kind = the
|
|
25
|
+
* enum member name, id, and for a principal an optional relation — the
|
|
26
|
+
* userset form `organization:X#member`), `IamPolicySpec` for a policy and
|
|
27
|
+
* for the what-if policies every query may carry, and the relation and
|
|
28
|
+
* kind strings as the wire sends them. The cloud's driver renders these to
|
|
29
|
+
* OpenFGA's `type:id#relation` strings itself; that grammar belongs to the
|
|
30
|
+
* store that runs it and never enters this library.
|
|
31
|
+
*
|
|
32
|
+
* Semantics the controller and the conformance suite rely on (the Java
|
|
33
|
+
* check-handler posture the cloud's client already implements):
|
|
34
|
+
*
|
|
35
|
+
* - `check` answers a public grant (a wildcard principal resolves), so
|
|
36
|
+
* "may I read this public agent" is true for anyone.
|
|
37
|
+
* - the two listings never expand wildcards, and `listPrincipalIds`
|
|
38
|
+
* answers DIRECT principals only — a listing is an inventory of who
|
|
39
|
+
* was named, never a resolution of who could reach.
|
|
40
|
+
* - contextual policies are evaluated as if held, and nothing is written.
|
|
41
|
+
*
|
|
42
|
+
* Error doctrine (the ListReadScope rule, verbatim in spirit: a seam that
|
|
43
|
+
* cannot answer THROWS — never an empty set, never false): `false` and
|
|
44
|
+
* `[]` are REAL answers. A backend outage surfaces as a throw; a
|
|
45
|
+
* ConnectError keeps its code (the cloud maps its three OpenFGA wire arms —
|
|
46
|
+
* DEADLINE_EXCEEDED, UNAVAILABLE, INTERNAL — before throwing), any other
|
|
47
|
+
* throw is INTERNAL through the pipeline's boundary. A denial dressed as
|
|
48
|
+
* an outage, or an outage dressed as a denial, is the fail-open class this
|
|
49
|
+
* contract exists to refuse.
|
|
50
|
+
*
|
|
51
|
+
* Why this is not `ListReadScope`: the read scope narrows the server's OWN
|
|
52
|
+
* list lanes for the calling identity with no what-if input; this engine
|
|
53
|
+
* answers the wire's explicit queries about an ARBITRARY principal with
|
|
54
|
+
* contextual policies. Both are ratified seams with distinct consumers;
|
|
55
|
+
* a cloud driver may wrap one client for both, and that is its business.
|
|
56
|
+
*/
|
|
57
|
+
import type { ApiResourceRef, IamPolicySpec } from "@stigmer/protos/ai/stigmer/iam/iampolicy/v1/spec_pb";
|
|
58
|
+
/** The query-engine contract (single-instance point, ExtensionDrivers.authorizationQueries). */
|
|
59
|
+
export interface AuthorizationQueryEngine {
|
|
60
|
+
/**
|
|
61
|
+
* Whether `policy` is effectively held — its principal has its relation
|
|
62
|
+
* on its resource — given `contextualPolicies` evaluated as if held.
|
|
63
|
+
* The proto's CheckAuthorizationInput shape; `checkMyPermission` builds
|
|
64
|
+
* the spec from the caller's account ref. The spec's refs are present
|
|
65
|
+
* (boundary-validated, or controller-built).
|
|
66
|
+
*/
|
|
67
|
+
check(policy: IamPolicySpec, contextualPolicies: ReadonlyArray<IamPolicySpec>): Promise<boolean>;
|
|
68
|
+
/**
|
|
69
|
+
* The ids of `resourceKind` resources on which `principal` holds
|
|
70
|
+
* `relation` (ListAuthorizedResourceIdsInput's field order). Wildcards
|
|
71
|
+
* are not expanded.
|
|
72
|
+
*/
|
|
73
|
+
listResourceIds(principal: ApiResourceRef, relation: string, resourceKind: string, contextualPolicies: ReadonlyArray<IamPolicySpec>): Promise<ReadonlyArray<string>>;
|
|
74
|
+
/**
|
|
75
|
+
* The ids of `principalKind` principals holding `relation` on `resource`
|
|
76
|
+
* (ListAuthorizedPrincipalIdsInput's field order). Direct principals
|
|
77
|
+
* only; wildcards are not expanded.
|
|
78
|
+
*/
|
|
79
|
+
listPrincipalIds(resource: ApiResourceRef, relation: string, principalKind: string, contextualPolicies: ReadonlyArray<IamPolicySpec>): Promise<ReadonlyArray<string>>;
|
|
80
|
+
}
|
|
81
|
+
//# sourceMappingURL=authorization-queries.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"authorization-queries.d.ts","sourceRoot":"","sources":["../../src/extensions/authorization-queries.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuDG;AACH,OAAO,KAAK,EACV,cAAc,EACd,aAAa,EACd,MAAM,qDAAqD,CAAC;AAE7D,gGAAgG;AAChG,MAAM,WAAW,wBAAwB;IACvC;;;;;;OAMG;IACH,KAAK,CACH,MAAM,EAAE,aAAa,EACrB,kBAAkB,EAAE,aAAa,CAAC,aAAa,CAAC,GAC/C,OAAO,CAAC,OAAO,CAAC,CAAC;IACpB;;;;OAIG;IACH,eAAe,CACb,SAAS,EAAE,cAAc,EACzB,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,EACpB,kBAAkB,EAAE,aAAa,CAAC,aAAa,CAAC,GAC/C,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC;IAClC;;;;OAIG;IACH,gBAAgB,CACd,QAAQ,EAAE,cAAc,EACxB,QAAQ,EAAE,MAAM,EAChB,aAAa,EAAE,MAAM,EACrB,kBAAkB,EAAE,aAAa,CAAC,aAAa,CAAC,GAC/C,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC;CACnC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"authorization-queries.js","sourceRoot":"","sources":["../../src/extensions/authorization-queries.ts"],"names":[],"mappings":""}
|
|
@@ -26,6 +26,11 @@
|
|
|
26
26
|
* - identity-account store + identity federation (the first domain
|
|
27
27
|
* whose persistence is a PORT, and the four federated RPC arms only
|
|
28
28
|
* one edition serves) — landed with 20260911.11, gate ruling Q-IA-9
|
|
29
|
+
* - IamPolicy store + policy grant scope + authorization queries (the
|
|
30
|
+
* IamPolicy domain's row half served in every edition; the store
|
|
31
|
+
* port, which kinds an edition grants on, and the tuple-half query
|
|
32
|
+
* engine only an authorization backend can answer) — landed with
|
|
33
|
+
* 20260913.01, gate ruling Q-OR-10
|
|
29
34
|
*
|
|
30
35
|
* Merge rules (enforced by resolveExtensions, DD-006 §2b): the two
|
|
31
36
|
* provider kinds are single-instance points — a second declaring unit is
|
|
@@ -40,14 +45,17 @@
|
|
|
40
45
|
import type { ArtifactStorageDriverFactory } from "../artifactstorage/artifact-storage.js";
|
|
41
46
|
import type { ChannelRuntime } from "../domain/agentchannel/channel-runtime.js";
|
|
42
47
|
import type { IdentityAccountStore } from "../domain/identityaccount/store.js";
|
|
48
|
+
import type { IamPolicyStore } from "../domain/iampolicy/store.js";
|
|
43
49
|
import type { SecretCodec } from "../encryption/codec.js";
|
|
44
50
|
import type { ModelCatalogProvider } from "../domain/workflow/registry/model-catalog-provider.js";
|
|
45
51
|
import type { VisitorErrorPolicy } from "../pipeline/interceptors/error-boundary.js";
|
|
46
52
|
import type { RunnerCredentialProvider } from "../runnerauth/runner-credential-provider.js";
|
|
47
53
|
import type { SandboxProvisionerFactory } from "../sandbox/provisioner.js";
|
|
54
|
+
import type { AuthorizationQueryEngine } from "./authorization-queries.js";
|
|
48
55
|
import type { IdentityFederation } from "./identity-federation.js";
|
|
49
56
|
import type { ListReadScope } from "./list-read-scope.js";
|
|
50
57
|
import type { OrganizationDirectory } from "./organization-directory.js";
|
|
58
|
+
import type { PolicyGrantScope } from "./policy-grant-scope.js";
|
|
51
59
|
import type { ResourceAuthorizationLifecycle } from "./resource-authorization.js";
|
|
52
60
|
import type { ScheduleFireCallerMint } from "./schedule-fire-caller.js";
|
|
53
61
|
/** The driver contributions of one extension unit. */
|
|
@@ -83,8 +91,13 @@ export interface ExtensionDrivers {
|
|
|
83
91
|
* The resource-authorization lifecycle seam (C2, ruling Q2;
|
|
84
92
|
* single-instance point). When composed, the three shared tuple steps
|
|
85
93
|
* (CreateAuthorizationTuples / CleanupIamPolicies /
|
|
86
|
-
* UpdateVisibilityTuples) deliver resolved events to it
|
|
87
|
-
*
|
|
94
|
+
* UpdateVisibilityTuples) deliver resolved events to it, and the
|
|
95
|
+
* IamPolicy grant path delivers the two policy hooks. Corrected
|
|
96
|
+
* 2026-09-13 (20260913.01 Q-OR-6): when absent, the steps no-op, but
|
|
97
|
+
* open source is no longer record-less — the composition root installs
|
|
98
|
+
* the built-in role lifecycle (domain/iampolicy/role-lifecycle.ts, the
|
|
99
|
+
* entry's slice 4), which writes IamPolicy rows, whenever no extension
|
|
100
|
+
* registers an Authorizer (resource-authorization.ts header).
|
|
88
101
|
*/
|
|
89
102
|
readonly resourceAuthorizationLifecycle?: ResourceAuthorizationLifecycle;
|
|
90
103
|
/**
|
|
@@ -162,5 +175,39 @@ export interface ExtensionDrivers {
|
|
|
162
175
|
* edition reason — the organizationDirectory absent-method shape.
|
|
163
176
|
*/
|
|
164
177
|
readonly identityFederation?: IdentityFederation;
|
|
178
|
+
/**
|
|
179
|
+
* The IamPolicy store driver (20260913.01, Q-OR-10; single-instance
|
|
180
|
+
* point). The IamPolicy domain's persistence is a PORT like the
|
|
181
|
+
* identity-account domain's: when composed, every row the one grant
|
|
182
|
+
* path writes, deletes or reads — user grants, the structural
|
|
183
|
+
* bootstrap lanes, the access lists and counts — goes through this
|
|
184
|
+
* driver (the cloud serves the domain over its own `cloud.iam_policy`
|
|
185
|
+
* table this way, legacy random ids included). When absent, the OSS
|
|
186
|
+
* adapter over the generic Store installs at the compose.ts
|
|
187
|
+
* consumption site — OSS behavior byte-identical.
|
|
188
|
+
*/
|
|
189
|
+
readonly iamPolicyStore?: IamPolicyStore;
|
|
190
|
+
/**
|
|
191
|
+
* The policy grant scope (20260913.01, Q-OR-3; single-instance point):
|
|
192
|
+
* which kinds a user may grant a role on in this edition, with which
|
|
193
|
+
* roles. Narrows the proto's `grantable_roles`, total over the enum,
|
|
194
|
+
* synchronous (policy-grant-scope.ts carries the reasons). When
|
|
195
|
+
* composed, ValidateGrantableRole and checkMyPermission's
|
|
196
|
+
* `can_grant_access` arm read it; when absent, open source's
|
|
197
|
+
* organization-only default installs at the compose.ts consumption
|
|
198
|
+
* site — the organization grants its four proto roles, nothing else
|
|
199
|
+
* grants anything.
|
|
200
|
+
*/
|
|
201
|
+
readonly policyGrantScope?: PolicyGrantScope;
|
|
202
|
+
/**
|
|
203
|
+
* The authorization-query engine (20260913.01, Q-OR-8; single-instance
|
|
204
|
+
* point): the tuple-half questions — checkAuthorization, the two
|
|
205
|
+
* listAuthorized*Ids, a checkMyPermission with contextual policies —
|
|
206
|
+
* only an authorization backend can answer over its own graph. When
|
|
207
|
+
* composed, the IamPolicy query controller dispatches to it after its
|
|
208
|
+
* own trust checks; when absent, those RPC arms refuse UNIMPLEMENTED
|
|
209
|
+
* with the edition reason — the identityFederation absent shape.
|
|
210
|
+
*/
|
|
211
|
+
readonly authorizationQueries?: AuthorizationQueryEngine;
|
|
165
212
|
}
|
|
166
213
|
//# sourceMappingURL=drivers.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"drivers.d.ts","sourceRoot":"","sources":["../../src/extensions/drivers.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"drivers.d.ts","sourceRoot":"","sources":["../../src/extensions/drivers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG;AACH,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,wCAAwC,CAAC;AAC3F,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2CAA2C,CAAC;AAChF,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAC/E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uDAAuD,CAAC;AAClG,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4CAA4C,CAAC;AACrF,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,6CAA6C,CAAC;AAC5F,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AAC3E,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAC3E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AACzE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,6BAA6B,CAAC;AAClF,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAExE,sDAAsD;AACtD,MAAM,WAAW,gBAAgB;IAC/B;;;;OAIG;IACH,QAAQ,CAAC,oBAAoB,CAAC,EAAE,oBAAoB,CAAC;IACrD;;;;;OAKG;IACH,QAAQ,CAAC,wBAAwB,CAAC,EAAE,wBAAwB,CAAC;IAC7D;;;;OAIG;IACH,QAAQ,CAAC,sBAAsB,CAAC,EAAE,WAAW,CAC3C,MAAM,EACN,4BAA4B,CAC7B,CAAC;IACF;;;;;;OAMG;IACH,QAAQ,CAAC,yBAAyB,CAAC,EAAE,WAAW,CAC9C,MAAM,EACN,yBAAyB,CAC1B,CAAC;IACF;;;;;;;;;;;OAWG;IACH,QAAQ,CAAC,8BAA8B,CAAC,EAAE,8BAA8B,CAAC;IACzE;;;;;OAKG;IACH,QAAQ,CAAC,qBAAqB,CAAC,EAAE,qBAAqB,CAAC;IACvD;;;;;;OAMG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,cAAc,CAAC;IACzC;;;;;;;OAOG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,aAAa,CAAC;IACvC;;;;;;OAMG;IACH,QAAQ,CAAC,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IACjD;;;;;;;;;;;OAWG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IACzD;;;;;;;OAOG;IACH,QAAQ,CAAC,kBAAkB,CAAC,EAAE,sBAAsB,CAAC;IACrD;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,oBAAoB,CAAC,EAAE,oBAAoB,CAAC;IACrD;;;;;;;OAOG;IACH,QAAQ,CAAC,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IACjD;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,cAAc,CAAC;IACzC;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IAC7C;;;;;;;;OAQG;IACH,QAAQ,CAAC,oBAAoB,CAAC,EAAE,wBAAwB,CAAC;CAC1D"}
|
|
@@ -88,4 +88,18 @@ export interface IdentityVerifier {
|
|
|
88
88
|
*/
|
|
89
89
|
verify(token: string): Promise<CallerIdentity | null>;
|
|
90
90
|
}
|
|
91
|
+
/**
|
|
92
|
+
* Whether `caller` is one of the platform's own pipelines — the admission
|
|
93
|
+
* rule of the RPCs a person must never reach directly, stated ONCE
|
|
94
|
+
* (20260911.11 A7 for the identity-account `create` RPC; 20260913.01
|
|
95
|
+
* Q-OR-7 and Q-S5-10 for the three IamPolicy system RPCs): a `machine`
|
|
96
|
+
* account (the platform's service accounts), the `internal` class (the
|
|
97
|
+
* server acting as itself over the in-process transport) or ANY identity
|
|
98
|
+
* that entered through that transport (a propagated user the server is
|
|
99
|
+
* composing a request for). A wire `user`, a `runner` and a composition's
|
|
100
|
+
* own classes are refused by the RPC that reads this — under the
|
|
101
|
+
* permissive Authorizer the annotation alone would admit anyone, so the
|
|
102
|
+
* rule is load-bearing in open source.
|
|
103
|
+
*/
|
|
104
|
+
export declare function isPlatformPipelineCaller(caller: CallerIdentity): boolean;
|
|
91
105
|
//# 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"}
|
|
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"}
|
|
@@ -12,5 +12,22 @@
|
|
|
12
12
|
* HandlerContext.values (never ambient state — the every-dependency-
|
|
13
13
|
* explicit doctrine).
|
|
14
14
|
*/
|
|
15
|
-
|
|
15
|
+
/**
|
|
16
|
+
* Whether `caller` is one of the platform's own pipelines — the admission
|
|
17
|
+
* rule of the RPCs a person must never reach directly, stated ONCE
|
|
18
|
+
* (20260911.11 A7 for the identity-account `create` RPC; 20260913.01
|
|
19
|
+
* Q-OR-7 and Q-S5-10 for the three IamPolicy system RPCs): a `machine`
|
|
20
|
+
* account (the platform's service accounts), the `internal` class (the
|
|
21
|
+
* server acting as itself over the in-process transport) or ANY identity
|
|
22
|
+
* that entered through that transport (a propagated user the server is
|
|
23
|
+
* composing a request for). A wire `user`, a `runner` and a composition's
|
|
24
|
+
* own classes are refused by the RPC that reads this — under the
|
|
25
|
+
* permissive Authorizer the annotation alone would admit anyone, so the
|
|
26
|
+
* rule is load-bearing in open source.
|
|
27
|
+
*/
|
|
28
|
+
export function isPlatformPipelineCaller(caller) {
|
|
29
|
+
return (caller.callerClass === "machine" ||
|
|
30
|
+
caller.callerClass === "internal" ||
|
|
31
|
+
caller.origin === "in-process");
|
|
32
|
+
}
|
|
16
33
|
//# sourceMappingURL=identity.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"identity.js","sourceRoot":"","sources":["../../src/extensions/identity.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG"}
|
|
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"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The policy-grant-scope driver point (20260913.01; the P1 gate's Q7 iii,
|
|
3
|
+
* T01_1_review.md Q-OR-3): WHICH kinds a user may grant a role on in this
|
|
4
|
+
* edition, and with which roles. Single instance, registered as
|
|
5
|
+
* `drivers.policyGrantScope` (the identityFederation shape: a driver point
|
|
6
|
+
* whose absence is open source's own behaviour). Absent, the composition
|
|
7
|
+
* root installs `newOrganizationOnlyGrantScope()`
|
|
8
|
+
* (domain/iampolicy/grant-scope.ts): the organization grants the roles its
|
|
9
|
+
* `kind_meta` lists — owner, admin, member, viewer (Q-OR-4) — and no other
|
|
10
|
+
* kind grants anything. Per-resource grants (a viewer on one agent) are
|
|
11
|
+
* what the Enterprise and Cloud editions add by registering a wider scope;
|
|
12
|
+
* the cloud registers every kind's `kind_meta` roles.
|
|
13
|
+
*
|
|
14
|
+
* Who reads it: the IamPolicy command controller's ValidateGrantableRole on
|
|
15
|
+
* `create` — AFTER the proto (`grantableRolesFor` in
|
|
16
|
+
* pipeline/apiresource-meta.ts, the source of "what can be granted at
|
|
17
|
+
* all"; a kind that lists no roles is system-managed in every edition and
|
|
18
|
+
* refused before the scope is asked) and never on `bootstrapPolicy`, the
|
|
19
|
+
* structural lane — and `checkMyPermission`'s second arm, which answers
|
|
20
|
+
* `can_grant_access` false for a kind outside the scope so the console's
|
|
21
|
+
* existing PermissionGate hides grant controls without a new SDK surface
|
|
22
|
+
* (Q-OR-5).
|
|
23
|
+
*
|
|
24
|
+
* The contract every scope is held to (Q-S3-3, 2026-09-13):
|
|
25
|
+
*
|
|
26
|
+
* - It NARROWS the proto, never widens it. A scope's answer for a kind is
|
|
27
|
+
* read as a subset of `kind_meta.authorization.grantable_roles`;
|
|
28
|
+
* ValidateGrantableRole intersects the two, so a driver cannot admit a
|
|
29
|
+
* role the contract does not list by accident.
|
|
30
|
+
* - It is TOTAL over ApiResourceKind, the unknown kind included: a kind
|
|
31
|
+
* it does not admit answers the empty list, never a throw.
|
|
32
|
+
* checkMyPermission asks about a kind that came off the wire and was
|
|
33
|
+
* resolved by `kindByEnumName`, which yields the unknown kind rather
|
|
34
|
+
* than failing (apiresource-meta.ts header).
|
|
35
|
+
* - It is SYNCHRONOUS: an edition's grant scope is a fact about the
|
|
36
|
+
* edition, a proto read at most, never I/O. A scope that would need a
|
|
37
|
+
* network to answer is a different seam.
|
|
38
|
+
*/
|
|
39
|
+
import type { ApiResourceKind } from "@stigmer/protos/ai/stigmer/commons/apiresource/apiresourcekind/api_resource_kind_pb";
|
|
40
|
+
import type { IamRole } from "@stigmer/protos/ai/stigmer/iam/v1/enum_pb";
|
|
41
|
+
/** The grant-scope contract (single-instance point, ExtensionDrivers.policyGrantScope). */
|
|
42
|
+
export interface PolicyGrantScope {
|
|
43
|
+
/**
|
|
44
|
+
* The roles a user may grant on a resource of `kind` in this edition — a
|
|
45
|
+
* subset of the kind's proto `grantable_roles`; empty when the edition
|
|
46
|
+
* grants nothing on the kind (or the kind is unknown). Never throws.
|
|
47
|
+
*/
|
|
48
|
+
grantableRoles(kind: ApiResourceKind): ReadonlyArray<IamRole>;
|
|
49
|
+
}
|
|
50
|
+
//# sourceMappingURL=policy-grant-scope.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"policy-grant-scope.d.ts","sourceRoot":"","sources":["../../src/extensions/policy-grant-scope.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qFAAqF,CAAC;AAC3H,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,2CAA2C,CAAC;AAEzE,2FAA2F;AAC3F,MAAM,WAAW,gBAAgB;IAC/B;;;;OAIG;IACH,cAAc,CAAC,IAAI,EAAE,eAAe,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;CAC/D"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"policy-grant-scope.js","sourceRoot":"","sources":["../../src/extensions/policy-grant-scope.ts"],"names":[],"mappings":""}
|
|
@@ -34,7 +34,10 @@
|
|
|
34
34
|
* points (20260911.11) at the identity-accounts stage (the store driver,
|
|
35
35
|
* ahead of the boot-time operator ensure) and the routes stage (the
|
|
36
36
|
* federation capability and the provision slot's steps, into the
|
|
37
|
-
* identity-account controller).
|
|
37
|
+
* identity-account controller); the IamPolicy points (20260913.01) at
|
|
38
|
+
* the same two stages — the store driver where the grant path is built,
|
|
39
|
+
* beside the identity-account store, and the grant scope and the query
|
|
40
|
+
* engine into the IamPolicy controller at the routes stage.
|
|
38
41
|
*/
|
|
39
42
|
import type { DescMessage } from "@bufbuild/protobuf";
|
|
40
43
|
import type { ConnectRouter } from "@connectrpc/connect";
|
|
@@ -42,9 +45,12 @@ import { ServerEdition } from "@stigmer/protos/ai/stigmer/platform/v1/server_inf
|
|
|
42
45
|
import type { ArtifactStorageDriverFactory } from "../artifactstorage/artifact-storage.js";
|
|
43
46
|
import type { ChannelRuntime } from "../domain/agentchannel/channel-runtime.js";
|
|
44
47
|
import type { IdentityAccountStore } from "../domain/identityaccount/store.js";
|
|
48
|
+
import type { IamPolicyStore } from "../domain/iampolicy/store.js";
|
|
45
49
|
import type { SecretCodec } from "../encryption/codec.js";
|
|
50
|
+
import type { AuthorizationQueryEngine } from "./authorization-queries.js";
|
|
46
51
|
import type { IdentityFederation } from "./identity-federation.js";
|
|
47
52
|
import type { ListReadScope } from "./list-read-scope.js";
|
|
53
|
+
import type { PolicyGrantScope } from "./policy-grant-scope.js";
|
|
48
54
|
import type { ModelCatalogProvider } from "../domain/workflow/registry/model-catalog-provider.js";
|
|
49
55
|
import type { VisitorErrorPolicy } from "../pipeline/interceptors/error-boundary.js";
|
|
50
56
|
import type { PipelineStep } from "../pipeline/pipeline.js";
|
|
@@ -227,6 +233,22 @@ export interface ResolvedExtensionDrivers {
|
|
|
227
233
|
* four federated RPCs refuse UNIMPLEMENTED with the edition reason.
|
|
228
234
|
*/
|
|
229
235
|
readonly identityFederation: IdentityFederation | undefined;
|
|
236
|
+
/**
|
|
237
|
+
* The 20260913.01 IamPolicy store driver — undefined = the compose.ts
|
|
238
|
+
* stage that builds the grant path installs the OSS adapter over the
|
|
239
|
+
* generic Store, OSS behavior byte-identical.
|
|
240
|
+
*/
|
|
241
|
+
readonly iamPolicyStore: IamPolicyStore | undefined;
|
|
242
|
+
/**
|
|
243
|
+
* The 20260913.01 policy grant scope — undefined = compose.ts installs
|
|
244
|
+
* open source's organization-only default.
|
|
245
|
+
*/
|
|
246
|
+
readonly policyGrantScope: PolicyGrantScope | undefined;
|
|
247
|
+
/**
|
|
248
|
+
* The 20260913.01 authorization-query engine — undefined = the
|
|
249
|
+
* tuple-half RPC arms refuse UNIMPLEMENTED with the edition reason.
|
|
250
|
+
*/
|
|
251
|
+
readonly authorizationQueries: AuthorizationQueryEngine | undefined;
|
|
230
252
|
}
|
|
231
253
|
/**
|
|
232
254
|
* Merges the composed units, enforcing the §2b loud-fail rules. Runs
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/extensions/registry.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/extensions/registry.ts"],"names":[],"mappings":"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"}
|
|
@@ -43,6 +43,12 @@ export function resolveExtensions(units = []) {
|
|
|
43
43
|
let identityAccountStoreDeclaredBy;
|
|
44
44
|
let identityFederation;
|
|
45
45
|
let identityFederationDeclaredBy;
|
|
46
|
+
let iamPolicyStore;
|
|
47
|
+
let iamPolicyStoreDeclaredBy;
|
|
48
|
+
let policyGrantScope;
|
|
49
|
+
let policyGrantScopeDeclaredBy;
|
|
50
|
+
let authorizationQueries;
|
|
51
|
+
let authorizationQueriesDeclaredBy;
|
|
46
52
|
const artifactStorageDrivers = new Map();
|
|
47
53
|
const storageDriverDeclaredBy = new Map();
|
|
48
54
|
const sandboxProvisionerDrivers = new Map();
|
|
@@ -151,6 +157,27 @@ export function resolveExtensions(units = []) {
|
|
|
151
157
|
identityFederation = unit.drivers.identityFederation;
|
|
152
158
|
identityFederationDeclaredBy = unit.name;
|
|
153
159
|
}
|
|
160
|
+
if (unit.drivers?.iamPolicyStore !== undefined) {
|
|
161
|
+
if (iamPolicyStoreDeclaredBy !== undefined) {
|
|
162
|
+
throw new Error(`extension '${unit.name}' registers an IamPolicyStore, but '${iamPolicyStoreDeclaredBy}' already did — exactly one may be composed`);
|
|
163
|
+
}
|
|
164
|
+
iamPolicyStore = unit.drivers.iamPolicyStore;
|
|
165
|
+
iamPolicyStoreDeclaredBy = unit.name;
|
|
166
|
+
}
|
|
167
|
+
if (unit.drivers?.policyGrantScope !== undefined) {
|
|
168
|
+
if (policyGrantScopeDeclaredBy !== undefined) {
|
|
169
|
+
throw new Error(`extension '${unit.name}' registers a PolicyGrantScope, but '${policyGrantScopeDeclaredBy}' already did — exactly one may be composed`);
|
|
170
|
+
}
|
|
171
|
+
policyGrantScope = unit.drivers.policyGrantScope;
|
|
172
|
+
policyGrantScopeDeclaredBy = unit.name;
|
|
173
|
+
}
|
|
174
|
+
if (unit.drivers?.authorizationQueries !== undefined) {
|
|
175
|
+
if (authorizationQueriesDeclaredBy !== undefined) {
|
|
176
|
+
throw new Error(`extension '${unit.name}' registers an AuthorizationQueryEngine, but '${authorizationQueriesDeclaredBy}' already did — exactly one may be composed`);
|
|
177
|
+
}
|
|
178
|
+
authorizationQueries = unit.drivers.authorizationQueries;
|
|
179
|
+
authorizationQueriesDeclaredBy = unit.name;
|
|
180
|
+
}
|
|
154
181
|
if (unit.drivers?.artifactStorageDrivers !== undefined) {
|
|
155
182
|
for (const [name, factory] of unit.drivers.artifactStorageDrivers) {
|
|
156
183
|
if (BUILT_IN_STORAGE_TYPES.includes(name)) {
|
|
@@ -242,6 +269,9 @@ export function resolveExtensions(units = []) {
|
|
|
242
269
|
scheduleFireCaller,
|
|
243
270
|
identityAccountStore,
|
|
244
271
|
identityFederation,
|
|
272
|
+
iamPolicyStore,
|
|
273
|
+
policyGrantScope,
|
|
274
|
+
authorizationQueries,
|
|
245
275
|
},
|
|
246
276
|
services,
|
|
247
277
|
workers,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/extensions/registry.ts"],"names":[],"mappings":"AAyCA,OAAO,EAAE,aAAa,EAAE,MAAM,uDAAuD,CAAC;AAGtF,OAAO,EAAE,sBAAsB,EAAE,MAAM,wCAAwC,CAAC;AAIhF,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AASvD,OAAO,EAAE,kCAAkC,EAAE,MAAM,2BAA2B,CAAC;AAK/E,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAgMtD;;;;;GAKG;AACH,MAAM,UAAU,iBAAiB,CAC/B,QAAwC,EAAE;IAE1C,MAAM,SAAS,GAAa,EAAE,CAAC;IAC/B,MAAM,iBAAiB,GAAuB,EAAE,CAAC;IACjD,MAAM,YAAY,GAAkB,EAAE,CAAC;IACvC,MAAM,SAAS,GAAG,IAAI,GAAG,EAAoD,CAAC;IAC9E,MAAM,eAAe,GAAmC,EAAE,CAAC;IAC3D,MAAM,kBAAkB,GAAsC,EAAE,CAAC;IACjE,MAAM,QAAQ,GAAmC,EAAE,CAAC;IACpD,MAAM,OAAO,GAAoB,EAAE,CAAC;IAEpC,IAAI,OAAkC,CAAC;IACvC,IAAI,iBAAqC,CAAC;IAC1C,IAAI,+BAAmD,CAAC;IACxD,IAAI,UAAkC,CAAC;IACvC,IAAI,oBAAwC,CAAC;IAC7C,IAAI,oBAAsD,CAAC;IAC3D,IAAI,iBAAqC,CAAC;IAC1C,IAAI,wBAA8D,CAAC;IACnE,IAAI,oBAAwC,CAAC;IAC7C,IAAI,8BAES,CAAC;IACd,IAAI,gCAAoD,CAAC;IACzD,IAAI,qBAAwD,CAAC;IAC7D,IAAI,+BAAmD,CAAC;IACxD,IAAI,cAA0C,CAAC;IAC/C,IAAI,wBAA4C,CAAC;IACjD,IAAI,aAAwC,CAAC;IAC7C,IAAI,uBAA2C,CAAC;IAChD,IAAI,kBAAkD,CAAC;IACvD,IAAI,4BAAgD,CAAC;IACrD,IAAI,kBAAsD,CAAC;IAC3D,IAAI,4BAAgD,CAAC;IACrD,IAAI,oBAAsD,CAAC;IAC3D,IAAI,8BAAkD,CAAC;IACvD,IAAI,kBAAkD,CAAC;IACvD,IAAI,4BAAgD,CAAC;IACrD,MAAM,sBAAsB,GAAG,IAAI,GAAG,EAGnC,CAAC;IACJ,MAAM,uBAAuB,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC1D,MAAM,yBAAyB,GAAG,IAAI,GAAG,EAGtC,CAAC;IACJ,MAAM,uBAAuB,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC1D,MAAM,YAAY,GAAG,IAAI,GAAG,EAAuB,CAAC;IACpD,MAAM,qBAAqB,GAAG,IAAI,GAAG,EAAkB,CAAC;IAExD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,IAAI,CAAC,IAAI,KAAK,EAAE,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CACb,uHAAuH,CACxH,CAAC;QACJ,CAAC;QACD,IAAI,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YAClC,MAAM,IAAI,KAAK,CACb,6BAA6B,IAAI,CAAC,IAAI,4DAA4D,CACnG,CAAC;QACJ,CAAC;QACD,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAE1B,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YAC/B,IAAI,IAAI,CAAC,OAAO,KAAK,aAAa,CAAC,0BAA0B,EAAE,CAAC;gBAC9D,MAAM,IAAI,KAAK,CACb,cAAc,IAAI,CAAC,IAAI,gGAAgG,CACxH,CAAC;YACJ,CAAC;YACD,IAAI,iBAAiB,KAAK,SAAS,EAAE,CAAC;gBACpC,MAAM,IAAI,KAAK,CACb,cAAc,IAAI,CAAC,IAAI,uCAAuC,iBAAiB,+DAA+D,CAC/I,CAAC;YACJ,CAAC;YACD,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;YACvB,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC;QAChC,CAAC;QAED,IAAI,IAAI,CAAC,qBAAqB,KAAK,SAAS,EAAE,CAAC;YAC7C,IAAI,+BAA+B,KAAK,SAAS,EAAE,CAAC;gBAClD,MAAM,IAAI,KAAK,CACb,cAAc,IAAI,CAAC,IAAI,uDAAuD,+BAA+B,sDAAsD,CACpK,CAAC;YACJ,CAAC;YACD,+BAA+B,GAAG,IAAI,CAAC,IAAI,CAAC;QAC9C,CAAC;QAED,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;YAClC,IAAI,oBAAoB,KAAK,SAAS,EAAE,CAAC;gBACvC,MAAM,IAAI,KAAK,CACb,cAAc,IAAI,CAAC,IAAI,mCAAmC,oBAAoB,wDAAwD,CACvI,CAAC;YACJ,CAAC;YACD,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;YAC7B,oBAAoB,GAAG,IAAI,CAAC,IAAI,CAAC;QACnC,CAAC;QAED,IAAI,IAAI,CAAC,OAAO,EAAE,oBAAoB,KAAK,SAAS,EAAE,CAAC;YACrD,IAAI,iBAAiB,KAAK,SAAS,EAAE,CAAC;gBACpC,MAAM,IAAI,KAAK,CACb,cAAc,IAAI,CAAC,IAAI,4CAA4C,iBAAiB,6CAA6C,CAClI,CAAC;YACJ,CAAC;YACD,oBAAoB,GAAG,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC;YACzD,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC;QAChC,CAAC;QAED,IAAI,IAAI,CAAC,OAAO,EAAE,wBAAwB,KAAK,SAAS,EAAE,CAAC;YACzD,IAAI,oBAAoB,KAAK,SAAS,EAAE,CAAC;gBACvC,MAAM,IAAI,KAAK,CACb,cAAc,IAAI,CAAC,IAAI,gDAAgD,oBAAoB,6CAA6C,CACzI,CAAC;YACJ,CAAC;YACD,wBAAwB,GAAG,IAAI,CAAC,OAAO,CAAC,wBAAwB,CAAC;YACjE,oBAAoB,GAAG,IAAI,CAAC,IAAI,CAAC;QACnC,CAAC;QAED,IAAI,IAAI,CAAC,OAAO,EAAE,8BAA8B,KAAK,SAAS,EAAE,CAAC;YAC/D,IAAI,gCAAgC,KAAK,SAAS,EAAE,CAAC;gBACnD,MAAM,IAAI,KAAK,CACb,cAAc,IAAI,CAAC,IAAI,sDAAsD,gCAAgC,6CAA6C,CAC3J,CAAC;YACJ,CAAC;YACD,8BAA8B;gBAC5B,IAAI,CAAC,OAAO,CAAC,8BAA8B,CAAC;YAC9C,gCAAgC,GAAG,IAAI,CAAC,IAAI,CAAC;QAC/C,CAAC;QAED,IAAI,IAAI,CAAC,OAAO,EAAE,qBAAqB,KAAK,SAAS,EAAE,CAAC;YACtD,IAAI,+BAA+B,KAAK,SAAS,EAAE,CAAC;gBAClD,MAAM,IAAI,KAAK,CACb,cAAc,IAAI,CAAC,IAAI,8CAA8C,+BAA+B,6CAA6C,CAClJ,CAAC;YACJ,CAAC;YACD,qBAAqB,GAAG,IAAI,CAAC,OAAO,CAAC,qBAAqB,CAAC;YAC3D,+BAA+B,GAAG,IAAI,CAAC,IAAI,CAAC;QAC9C,CAAC;QAED,IAAI,IAAI,CAAC,OAAO,EAAE,cAAc,KAAK,SAAS,EAAE,CAAC;YAC/C,IAAI,wBAAwB,KAAK,SAAS,EAAE,CAAC;gBAC3C,MAAM,IAAI,KAAK,CACb,cAAc,IAAI,CAAC,IAAI,sCAAsC,wBAAwB,6CAA6C,CACnI,CAAC;YACJ,CAAC;YACD,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC;YAC7C,wBAAwB,GAAG,IAAI,CAAC,IAAI,CAAC;QACvC,CAAC;QAED,IAAI,IAAI,CAAC,OAAO,EAAE,aAAa,KAAK,SAAS,EAAE,CAAC;YAC9C,IAAI,uBAAuB,KAAK,SAAS,EAAE,CAAC;gBAC1C,MAAM,IAAI,KAAK,CACb,cAAc,IAAI,CAAC,IAAI,qCAAqC,uBAAuB,6CAA6C,CACjI,CAAC;YACJ,CAAC;YACD,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC;YAC3C,uBAAuB,GAAG,IAAI,CAAC,IAAI,CAAC;QACtC,CAAC;QAED,IAAI,IAAI,CAAC,OAAO,EAAE,kBAAkB,KAAK,SAAS,EAAE,CAAC;YACnD,IAAI,4BAA4B,KAAK,SAAS,EAAE,CAAC;gBAC/C,MAAM,IAAI,KAAK,CACb,cAAc,IAAI,CAAC,IAAI,0CAA0C,4BAA4B,6CAA6C,CAC3I,CAAC;YACJ,CAAC;YACD,kBAAkB,GAAG,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC;YACrD,4BAA4B,GAAG,IAAI,CAAC,IAAI,CAAC;QAC3C,CAAC;QAED,IAAI,IAAI,CAAC,OAAO,EAAE,kBAAkB,KAAK,SAAS,EAAE,CAAC;YACnD,IAAI,4BAA4B,KAAK,SAAS,EAAE,CAAC;gBAC/C,MAAM,IAAI,KAAK,CACb,cAAc,IAAI,CAAC,IAAI,8CAA8C,4BAA4B,6CAA6C,CAC/I,CAAC;YACJ,CAAC;YACD,kBAAkB,GAAG,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC;YACrD,4BAA4B,GAAG,IAAI,CAAC,IAAI,CAAC;QAC3C,CAAC;QAED,IAAI,IAAI,CAAC,OAAO,EAAE,oBAAoB,KAAK,SAAS,EAAE,CAAC;YACrD,IAAI,8BAA8B,KAAK,SAAS,EAAE,CAAC;gBACjD,MAAM,IAAI,KAAK,CACb,cAAc,IAAI,CAAC,IAAI,6CAA6C,8BAA8B,6CAA6C,CAChJ,CAAC;YACJ,CAAC;YACD,oBAAoB,GAAG,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC;YACzD,8BAA8B,GAAG,IAAI,CAAC,IAAI,CAAC;QAC7C,CAAC;QAED,IAAI,IAAI,CAAC,OAAO,EAAE,kBAAkB,KAAK,SAAS,EAAE,CAAC;YACnD,IAAI,4BAA4B,KAAK,SAAS,EAAE,CAAC;gBAC/C,MAAM,IAAI,KAAK,CACb,cAAc,IAAI,CAAC,IAAI,2CAA2C,4BAA4B,6CAA6C,CAC5I,CAAC;YACJ,CAAC;YACD,kBAAkB,GAAG,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC;YACrD,4BAA4B,GAAG,IAAI,CAAC,IAAI,CAAC;QAC3C,CAAC;QAED,IAAI,IAAI,CAAC,OAAO,EAAE,sBAAsB,KAAK,SAAS,EAAE,CAAC;YACvD,KAAK,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,sBAAsB,EAAE,CAAC;gBAClE,IAAK,sBAAgD,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;oBACrE,MAAM,IAAI,KAAK,CACb,cAAc,IAAI,CAAC,IAAI,wCAAwC,IAAI,mEAAmE,CACvI,CAAC;gBACJ,CAAC;gBACD,MAAM,UAAU,GAAG,uBAAuB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBACrD,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;oBAC7B,MAAM,IAAI,KAAK,CACb,cAAc,IAAI,CAAC,IAAI,wCAAwC,IAAI,WAAW,UAAU,qEAAqE,CAC9J,CAAC;gBACJ,CAAC;gBACD,sBAAsB,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;gBAC1C,uBAAuB,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;YAC/C,CAAC;QACH,CAAC;QAED,IAAI,IAAI,CAAC,OAAO,EAAE,yBAAyB,KAAK,SAAS,EAAE,CAAC;YAC1D,KAAK,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,yBAAyB,EAAE,CAAC;gBACrE,IAEI,kCACD,CAAC,QAAQ,CAAC,IAAI,CAAC,EAChB,CAAC;oBACD,MAAM,IAAI,KAAK,CACb,cAAc,IAAI,CAAC,IAAI,oCAAoC,IAAI,kEAAkE,CAClI,CAAC;gBACJ,CAAC;gBACD,MAAM,UAAU,GAAG,uBAAuB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBACrD,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;oBAC7B,MAAM,IAAI,KAAK,CACb,cAAc,IAAI,CAAC,IAAI,oCAAoC,IAAI,WAAW,UAAU,qEAAqE,CAC1J,CAAC;gBACJ,CAAC;gBACD,yBAAyB,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;gBAC7C,uBAAuB,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;YAC/C,CAAC;QACH,CAAC;QAED,IAAI,IAAI,CAAC,OAAO,EAAE,YAAY,KAAK,SAAS,EAAE,CAAC;YAC7C,KAAK,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;gBACzD,IAAI,OAAO,KAAK,UAAU,EAAE,CAAC;oBAC3B,MAAM,IAAI,KAAK,CACb,cAAc,IAAI,CAAC,IAAI,6BAA6B,OAAO,2EAA2E,CACvI,CAAC;gBACJ,CAAC;gBACD,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,OAAO,KAAK,OAAO,EAAE,CAAC;oBACzD,8DAA8D;oBAC9D,4DAA4D;oBAC5D,4DAA4D;oBAC5D,WAAW;oBACX,MAAM,IAAI,KAAK,CACb,cAAc,IAAI,CAAC,IAAI,6BAA6B,OAAO,sBAAsB,KAAK,CAAC,OAAO,kEAAkE,CACjK,CAAC;gBACJ,CAAC;gBACD,MAAM,UAAU,GAAG,qBAAqB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;gBACtD,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;oBAC7B,MAAM,IAAI,KAAK,CACb,cAAc,IAAI,CAAC,IAAI,6BAA6B,OAAO,WAAW,UAAU,uEAAuE,CACxJ,CAAC;gBACJ,CAAC;gBACD,YAAY,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;gBACjC,qBAAqB,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;YAChD,CAAC;QACH,CAAC;QAED,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;YACjC,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;gBAC3C,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;oBACnC,MAAM,QAAQ,GACZ,mBAAmB,CAAC,IAAI,GAAG,CAAC;wBAC1B,CAAC,CAAC,CAAC,GAAG,mBAAmB,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC;wBAC9C,CAAC,CAAC,EAAE,CAAC;oBACT,MAAM,IAAI,KAAK,CACb,cAAc,IAAI,CAAC,IAAI,8CAA8C,IAAI,uBACvE,QAAQ,KAAK,EAAE,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,IAAI,QAAQ,GACzD,EAAE,CACH,CAAC;gBACJ,CAAC;gBACD,MAAM,QAAQ,GAAG,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;gBAC3C,SAAS,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,GAAG,QAAQ,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC;YAC/C,CAAC;QACH,CAAC;QAED,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,iBAAiB,IAAI,EAAE,CAAC,CAAC,CAAC;QAC1D,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC,CAAC;QAChD,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,qBAAqB,EAAE,SAAS,IAAI,EAAE,CAAC,CAAC,CAAC;QACvE,kBAAkB,CAAC,IAAI,CACrB,GAAG,CAAC,IAAI,CAAC,qBAAqB,EAAE,kBAAkB,IAAI,EAAE,CAAC,CAC1D,CAAC;QACF,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC;QACxC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC;IACxC,CAAC;IAED,OAAO;QACL,SAAS;QACT,OAAO,EAAE,OAAO,IAAI,aAAa,CAAC,GAAG;QACrC,qBAAqB,EACnB,+BAA+B,KAAK,SAAS;YAC3C,CAAC,CAAC,EAAE,UAAU,EAAE,+BAA+B,EAAE;YACjD,CAAC,CAAC,SAAS;QACf,UAAU;QACV,iBAAiB;QACjB,YAAY;QACZ,SAAS;QACT,eAAe;QACf,kBAAkB;QAClB,OAAO,EAAE;YACP,oBAAoB;YACpB,wBAAwB;YACxB,8BAA8B;YAC9B,qBAAqB;YACrB,sBAAsB;YACtB,yBAAyB;YACzB,cAAc;YACd,aAAa;YACb,kBAAkB;YAClB,YAAY;YACZ,kBAAkB;YAClB,oBAAoB;YACpB,kBAAkB;SACnB;QACD,QAAQ;QACR,OAAO;KACR,CAAC;AACJ,CAAC"}
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/extensions/registry.ts"],"names":[],"mappings":"AA4CA,OAAO,EAAE,aAAa,EAAE,MAAM,uDAAuD,CAAC;AAGtF,OAAO,EAAE,sBAAsB,EAAE,MAAM,wCAAwC,CAAC;AAKhF,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAWvD,OAAO,EAAE,kCAAkC,EAAE,MAAM,2BAA2B,CAAC;AAK/E,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAgNtD;;;;;GAKG;AACH,MAAM,UAAU,iBAAiB,CAC/B,QAAwC,EAAE;IAE1C,MAAM,SAAS,GAAa,EAAE,CAAC;IAC/B,MAAM,iBAAiB,GAAuB,EAAE,CAAC;IACjD,MAAM,YAAY,GAAkB,EAAE,CAAC;IACvC,MAAM,SAAS,GAAG,IAAI,GAAG,EAAoD,CAAC;IAC9E,MAAM,eAAe,GAAmC,EAAE,CAAC;IAC3D,MAAM,kBAAkB,GAAsC,EAAE,CAAC;IACjE,MAAM,QAAQ,GAAmC,EAAE,CAAC;IACpD,MAAM,OAAO,GAAoB,EAAE,CAAC;IAEpC,IAAI,OAAkC,CAAC;IACvC,IAAI,iBAAqC,CAAC;IAC1C,IAAI,+BAAmD,CAAC;IACxD,IAAI,UAAkC,CAAC;IACvC,IAAI,oBAAwC,CAAC;IAC7C,IAAI,oBAAsD,CAAC;IAC3D,IAAI,iBAAqC,CAAC;IAC1C,IAAI,wBAA8D,CAAC;IACnE,IAAI,oBAAwC,CAAC;IAC7C,IAAI,8BAES,CAAC;IACd,IAAI,gCAAoD,CAAC;IACzD,IAAI,qBAAwD,CAAC;IAC7D,IAAI,+BAAmD,CAAC;IACxD,IAAI,cAA0C,CAAC;IAC/C,IAAI,wBAA4C,CAAC;IACjD,IAAI,aAAwC,CAAC;IAC7C,IAAI,uBAA2C,CAAC;IAChD,IAAI,kBAAkD,CAAC;IACvD,IAAI,4BAAgD,CAAC;IACrD,IAAI,kBAAsD,CAAC;IAC3D,IAAI,4BAAgD,CAAC;IACrD,IAAI,oBAAsD,CAAC;IAC3D,IAAI,8BAAkD,CAAC;IACvD,IAAI,kBAAkD,CAAC;IACvD,IAAI,4BAAgD,CAAC;IACrD,IAAI,cAA0C,CAAC;IAC/C,IAAI,wBAA4C,CAAC;IACjD,IAAI,gBAA8C,CAAC;IACnD,IAAI,0BAA8C,CAAC;IACnD,IAAI,oBAA0D,CAAC;IAC/D,IAAI,8BAAkD,CAAC;IACvD,MAAM,sBAAsB,GAAG,IAAI,GAAG,EAGnC,CAAC;IACJ,MAAM,uBAAuB,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC1D,MAAM,yBAAyB,GAAG,IAAI,GAAG,EAGtC,CAAC;IACJ,MAAM,uBAAuB,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC1D,MAAM,YAAY,GAAG,IAAI,GAAG,EAAuB,CAAC;IACpD,MAAM,qBAAqB,GAAG,IAAI,GAAG,EAAkB,CAAC;IAExD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,IAAI,CAAC,IAAI,KAAK,EAAE,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CACb,uHAAuH,CACxH,CAAC;QACJ,CAAC;QACD,IAAI,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YAClC,MAAM,IAAI,KAAK,CACb,6BAA6B,IAAI,CAAC,IAAI,4DAA4D,CACnG,CAAC;QACJ,CAAC;QACD,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAE1B,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YAC/B,IAAI,IAAI,CAAC,OAAO,KAAK,aAAa,CAAC,0BAA0B,EAAE,CAAC;gBAC9D,MAAM,IAAI,KAAK,CACb,cAAc,IAAI,CAAC,IAAI,gGAAgG,CACxH,CAAC;YACJ,CAAC;YACD,IAAI,iBAAiB,KAAK,SAAS,EAAE,CAAC;gBACpC,MAAM,IAAI,KAAK,CACb,cAAc,IAAI,CAAC,IAAI,uCAAuC,iBAAiB,+DAA+D,CAC/I,CAAC;YACJ,CAAC;YACD,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;YACvB,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC;QAChC,CAAC;QAED,IAAI,IAAI,CAAC,qBAAqB,KAAK,SAAS,EAAE,CAAC;YAC7C,IAAI,+BAA+B,KAAK,SAAS,EAAE,CAAC;gBAClD,MAAM,IAAI,KAAK,CACb,cAAc,IAAI,CAAC,IAAI,uDAAuD,+BAA+B,sDAAsD,CACpK,CAAC;YACJ,CAAC;YACD,+BAA+B,GAAG,IAAI,CAAC,IAAI,CAAC;QAC9C,CAAC;QAED,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;YAClC,IAAI,oBAAoB,KAAK,SAAS,EAAE,CAAC;gBACvC,MAAM,IAAI,KAAK,CACb,cAAc,IAAI,CAAC,IAAI,mCAAmC,oBAAoB,wDAAwD,CACvI,CAAC;YACJ,CAAC;YACD,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;YAC7B,oBAAoB,GAAG,IAAI,CAAC,IAAI,CAAC;QACnC,CAAC;QAED,IAAI,IAAI,CAAC,OAAO,EAAE,oBAAoB,KAAK,SAAS,EAAE,CAAC;YACrD,IAAI,iBAAiB,KAAK,SAAS,EAAE,CAAC;gBACpC,MAAM,IAAI,KAAK,CACb,cAAc,IAAI,CAAC,IAAI,4CAA4C,iBAAiB,6CAA6C,CAClI,CAAC;YACJ,CAAC;YACD,oBAAoB,GAAG,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC;YACzD,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC;QAChC,CAAC;QAED,IAAI,IAAI,CAAC,OAAO,EAAE,wBAAwB,KAAK,SAAS,EAAE,CAAC;YACzD,IAAI,oBAAoB,KAAK,SAAS,EAAE,CAAC;gBACvC,MAAM,IAAI,KAAK,CACb,cAAc,IAAI,CAAC,IAAI,gDAAgD,oBAAoB,6CAA6C,CACzI,CAAC;YACJ,CAAC;YACD,wBAAwB,GAAG,IAAI,CAAC,OAAO,CAAC,wBAAwB,CAAC;YACjE,oBAAoB,GAAG,IAAI,CAAC,IAAI,CAAC;QACnC,CAAC;QAED,IAAI,IAAI,CAAC,OAAO,EAAE,8BAA8B,KAAK,SAAS,EAAE,CAAC;YAC/D,IAAI,gCAAgC,KAAK,SAAS,EAAE,CAAC;gBACnD,MAAM,IAAI,KAAK,CACb,cAAc,IAAI,CAAC,IAAI,sDAAsD,gCAAgC,6CAA6C,CAC3J,CAAC;YACJ,CAAC;YACD,8BAA8B;gBAC5B,IAAI,CAAC,OAAO,CAAC,8BAA8B,CAAC;YAC9C,gCAAgC,GAAG,IAAI,CAAC,IAAI,CAAC;QAC/C,CAAC;QAED,IAAI,IAAI,CAAC,OAAO,EAAE,qBAAqB,KAAK,SAAS,EAAE,CAAC;YACtD,IAAI,+BAA+B,KAAK,SAAS,EAAE,CAAC;gBAClD,MAAM,IAAI,KAAK,CACb,cAAc,IAAI,CAAC,IAAI,8CAA8C,+BAA+B,6CAA6C,CAClJ,CAAC;YACJ,CAAC;YACD,qBAAqB,GAAG,IAAI,CAAC,OAAO,CAAC,qBAAqB,CAAC;YAC3D,+BAA+B,GAAG,IAAI,CAAC,IAAI,CAAC;QAC9C,CAAC;QAED,IAAI,IAAI,CAAC,OAAO,EAAE,cAAc,KAAK,SAAS,EAAE,CAAC;YAC/C,IAAI,wBAAwB,KAAK,SAAS,EAAE,CAAC;gBAC3C,MAAM,IAAI,KAAK,CACb,cAAc,IAAI,CAAC,IAAI,sCAAsC,wBAAwB,6CAA6C,CACnI,CAAC;YACJ,CAAC;YACD,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC;YAC7C,wBAAwB,GAAG,IAAI,CAAC,IAAI,CAAC;QACvC,CAAC;QAED,IAAI,IAAI,CAAC,OAAO,EAAE,aAAa,KAAK,SAAS,EAAE,CAAC;YAC9C,IAAI,uBAAuB,KAAK,SAAS,EAAE,CAAC;gBAC1C,MAAM,IAAI,KAAK,CACb,cAAc,IAAI,CAAC,IAAI,qCAAqC,uBAAuB,6CAA6C,CACjI,CAAC;YACJ,CAAC;YACD,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC;YAC3C,uBAAuB,GAAG,IAAI,CAAC,IAAI,CAAC;QACtC,CAAC;QAED,IAAI,IAAI,CAAC,OAAO,EAAE,kBAAkB,KAAK,SAAS,EAAE,CAAC;YACnD,IAAI,4BAA4B,KAAK,SAAS,EAAE,CAAC;gBAC/C,MAAM,IAAI,KAAK,CACb,cAAc,IAAI,CAAC,IAAI,0CAA0C,4BAA4B,6CAA6C,CAC3I,CAAC;YACJ,CAAC;YACD,kBAAkB,GAAG,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC;YACrD,4BAA4B,GAAG,IAAI,CAAC,IAAI,CAAC;QAC3C,CAAC;QAED,IAAI,IAAI,CAAC,OAAO,EAAE,kBAAkB,KAAK,SAAS,EAAE,CAAC;YACnD,IAAI,4BAA4B,KAAK,SAAS,EAAE,CAAC;gBAC/C,MAAM,IAAI,KAAK,CACb,cAAc,IAAI,CAAC,IAAI,8CAA8C,4BAA4B,6CAA6C,CAC/I,CAAC;YACJ,CAAC;YACD,kBAAkB,GAAG,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC;YACrD,4BAA4B,GAAG,IAAI,CAAC,IAAI,CAAC;QAC3C,CAAC;QAED,IAAI,IAAI,CAAC,OAAO,EAAE,oBAAoB,KAAK,SAAS,EAAE,CAAC;YACrD,IAAI,8BAA8B,KAAK,SAAS,EAAE,CAAC;gBACjD,MAAM,IAAI,KAAK,CACb,cAAc,IAAI,CAAC,IAAI,6CAA6C,8BAA8B,6CAA6C,CAChJ,CAAC;YACJ,CAAC;YACD,oBAAoB,GAAG,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC;YACzD,8BAA8B,GAAG,IAAI,CAAC,IAAI,CAAC;QAC7C,CAAC;QAED,IAAI,IAAI,CAAC,OAAO,EAAE,kBAAkB,KAAK,SAAS,EAAE,CAAC;YACnD,IAAI,4BAA4B,KAAK,SAAS,EAAE,CAAC;gBAC/C,MAAM,IAAI,KAAK,CACb,cAAc,IAAI,CAAC,IAAI,2CAA2C,4BAA4B,6CAA6C,CAC5I,CAAC;YACJ,CAAC;YACD,kBAAkB,GAAG,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC;YACrD,4BAA4B,GAAG,IAAI,CAAC,IAAI,CAAC;QAC3C,CAAC;QAED,IAAI,IAAI,CAAC,OAAO,EAAE,cAAc,KAAK,SAAS,EAAE,CAAC;YAC/C,IAAI,wBAAwB,KAAK,SAAS,EAAE,CAAC;gBAC3C,MAAM,IAAI,KAAK,CACb,cAAc,IAAI,CAAC,IAAI,uCAAuC,wBAAwB,6CAA6C,CACpI,CAAC;YACJ,CAAC;YACD,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC;YAC7C,wBAAwB,GAAG,IAAI,CAAC,IAAI,CAAC;QACvC,CAAC;QAED,IAAI,IAAI,CAAC,OAAO,EAAE,gBAAgB,KAAK,SAAS,EAAE,CAAC;YACjD,IAAI,0BAA0B,KAAK,SAAS,EAAE,CAAC;gBAC7C,MAAM,IAAI,KAAK,CACb,cAAc,IAAI,CAAC,IAAI,wCAAwC,0BAA0B,6CAA6C,CACvI,CAAC;YACJ,CAAC;YACD,gBAAgB,GAAG,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC;YACjD,0BAA0B,GAAG,IAAI,CAAC,IAAI,CAAC;QACzC,CAAC;QAED,IAAI,IAAI,CAAC,OAAO,EAAE,oBAAoB,KAAK,SAAS,EAAE,CAAC;YACrD,IAAI,8BAA8B,KAAK,SAAS,EAAE,CAAC;gBACjD,MAAM,IAAI,KAAK,CACb,cAAc,IAAI,CAAC,IAAI,iDAAiD,8BAA8B,6CAA6C,CACpJ,CAAC;YACJ,CAAC;YACD,oBAAoB,GAAG,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC;YACzD,8BAA8B,GAAG,IAAI,CAAC,IAAI,CAAC;QAC7C,CAAC;QAED,IAAI,IAAI,CAAC,OAAO,EAAE,sBAAsB,KAAK,SAAS,EAAE,CAAC;YACvD,KAAK,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,sBAAsB,EAAE,CAAC;gBAClE,IAAK,sBAAgD,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;oBACrE,MAAM,IAAI,KAAK,CACb,cAAc,IAAI,CAAC,IAAI,wCAAwC,IAAI,mEAAmE,CACvI,CAAC;gBACJ,CAAC;gBACD,MAAM,UAAU,GAAG,uBAAuB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBACrD,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;oBAC7B,MAAM,IAAI,KAAK,CACb,cAAc,IAAI,CAAC,IAAI,wCAAwC,IAAI,WAAW,UAAU,qEAAqE,CAC9J,CAAC;gBACJ,CAAC;gBACD,sBAAsB,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;gBAC1C,uBAAuB,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;YAC/C,CAAC;QACH,CAAC;QAED,IAAI,IAAI,CAAC,OAAO,EAAE,yBAAyB,KAAK,SAAS,EAAE,CAAC;YAC1D,KAAK,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,yBAAyB,EAAE,CAAC;gBACrE,IAEI,kCACD,CAAC,QAAQ,CAAC,IAAI,CAAC,EAChB,CAAC;oBACD,MAAM,IAAI,KAAK,CACb,cAAc,IAAI,CAAC,IAAI,oCAAoC,IAAI,kEAAkE,CAClI,CAAC;gBACJ,CAAC;gBACD,MAAM,UAAU,GAAG,uBAAuB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBACrD,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;oBAC7B,MAAM,IAAI,KAAK,CACb,cAAc,IAAI,CAAC,IAAI,oCAAoC,IAAI,WAAW,UAAU,qEAAqE,CAC1J,CAAC;gBACJ,CAAC;gBACD,yBAAyB,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;gBAC7C,uBAAuB,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;YAC/C,CAAC;QACH,CAAC;QAED,IAAI,IAAI,CAAC,OAAO,EAAE,YAAY,KAAK,SAAS,EAAE,CAAC;YAC7C,KAAK,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;gBACzD,IAAI,OAAO,KAAK,UAAU,EAAE,CAAC;oBAC3B,MAAM,IAAI,KAAK,CACb,cAAc,IAAI,CAAC,IAAI,6BAA6B,OAAO,2EAA2E,CACvI,CAAC;gBACJ,CAAC;gBACD,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,OAAO,KAAK,OAAO,EAAE,CAAC;oBACzD,8DAA8D;oBAC9D,4DAA4D;oBAC5D,4DAA4D;oBAC5D,WAAW;oBACX,MAAM,IAAI,KAAK,CACb,cAAc,IAAI,CAAC,IAAI,6BAA6B,OAAO,sBAAsB,KAAK,CAAC,OAAO,kEAAkE,CACjK,CAAC;gBACJ,CAAC;gBACD,MAAM,UAAU,GAAG,qBAAqB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;gBACtD,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;oBAC7B,MAAM,IAAI,KAAK,CACb,cAAc,IAAI,CAAC,IAAI,6BAA6B,OAAO,WAAW,UAAU,uEAAuE,CACxJ,CAAC;gBACJ,CAAC;gBACD,YAAY,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;gBACjC,qBAAqB,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;YAChD,CAAC;QACH,CAAC;QAED,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;YACjC,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;gBAC3C,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;oBACnC,MAAM,QAAQ,GACZ,mBAAmB,CAAC,IAAI,GAAG,CAAC;wBAC1B,CAAC,CAAC,CAAC,GAAG,mBAAmB,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC;wBAC9C,CAAC,CAAC,EAAE,CAAC;oBACT,MAAM,IAAI,KAAK,CACb,cAAc,IAAI,CAAC,IAAI,8CAA8C,IAAI,uBACvE,QAAQ,KAAK,EAAE,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,IAAI,QAAQ,GACzD,EAAE,CACH,CAAC;gBACJ,CAAC;gBACD,MAAM,QAAQ,GAAG,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;gBAC3C,SAAS,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,GAAG,QAAQ,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC;YAC/C,CAAC;QACH,CAAC;QAED,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,iBAAiB,IAAI,EAAE,CAAC,CAAC,CAAC;QAC1D,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC,CAAC;QAChD,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,qBAAqB,EAAE,SAAS,IAAI,EAAE,CAAC,CAAC,CAAC;QACvE,kBAAkB,CAAC,IAAI,CACrB,GAAG,CAAC,IAAI,CAAC,qBAAqB,EAAE,kBAAkB,IAAI,EAAE,CAAC,CAC1D,CAAC;QACF,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC;QACxC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC;IACxC,CAAC;IAED,OAAO;QACL,SAAS;QACT,OAAO,EAAE,OAAO,IAAI,aAAa,CAAC,GAAG;QACrC,qBAAqB,EACnB,+BAA+B,KAAK,SAAS;YAC3C,CAAC,CAAC,EAAE,UAAU,EAAE,+BAA+B,EAAE;YACjD,CAAC,CAAC,SAAS;QACf,UAAU;QACV,iBAAiB;QACjB,YAAY;QACZ,SAAS;QACT,eAAe;QACf,kBAAkB;QAClB,OAAO,EAAE;YACP,oBAAoB;YACpB,wBAAwB;YACxB,8BAA8B;YAC9B,qBAAqB;YACrB,sBAAsB;YACtB,yBAAyB;YACzB,cAAc;YACd,aAAa;YACb,kBAAkB;YAClB,YAAY;YACZ,kBAAkB;YAClB,oBAAoB;YACpB,kBAAkB;YAClB,cAAc;YACd,gBAAgB;YAChB,oBAAoB;SACrB;QACD,QAAQ;QACR,OAAO;KACR,CAAC;AACJ,CAAC"}
|
|
@@ -26,9 +26,37 @@
|
|
|
26
26
|
* - onVisibilityChanged: SYNCHRONOUS, post-persist; a throw fails the
|
|
27
27
|
* request (metadata may be persisted with tuples lagging — retrying
|
|
28
28
|
* the same transition converges, the set-diff is idempotent).
|
|
29
|
+
*
|
|
30
|
+
* Corrected 2026-09-13 (20260913.01, T01_1_review.md Q-OR-6, Q-OR-10):
|
|
31
|
+
* "no driver composed = OSS behavior byte-identical" described the seam
|
|
32
|
+
* while the only writer of authorization records was the cloud's tuple
|
|
33
|
+
* driver. The seam now records authorization at lifecycle points in EVERY
|
|
34
|
+
* edition: open source's built-in role lifecycle
|
|
35
|
+
* (domain/iampolicy/role-lifecycle.ts, the entry's slice 4) writes
|
|
36
|
+
* IamPolicy rows (the organization creator's `owner` row; cleanup on
|
|
37
|
+
* delete), and a composed driver writes tuples too. The two POLICY hooks below are the
|
|
38
|
+
* other direction of the same seam — the IamPolicy domain's one grant and
|
|
39
|
+
* revoke path (domain/iampolicy/grant-path.ts) telling the driver that a
|
|
40
|
+
* row was written or is about to be deleted, so a composition can mirror
|
|
41
|
+
* the row as a tuple. Their order is the cloud#425 invariant, fixed by the
|
|
42
|
+
* path and stated on each event:
|
|
43
|
+
* - onPolicyGranted: SYNCHRONOUS, AFTER the row is persisted; fires on
|
|
44
|
+
* the duplicate arm too (the inline heal for a row whose tuple never
|
|
45
|
+
* landed). A throw fails the request with the row in place — the
|
|
46
|
+
* caller's retry or a boot backfill heals it.
|
|
47
|
+
* - onPolicyRevoked: SYNCHRONOUS, BEFORE the row is deleted. A throw
|
|
48
|
+
* leaves row and tuple, so a retry converges; the reverse order was
|
|
49
|
+
* the fail-open incident class ("revoke" silently becoming "keep").
|
|
50
|
+
* On the absent arm (no row for the spec) it fires with the spec and
|
|
51
|
+
* no policy, so a composition can still delete a bare tuple written
|
|
52
|
+
* before the row mirror existed.
|
|
53
|
+
* Absent method = no mirror is written (the OSS posture: rows are the
|
|
54
|
+
* record).
|
|
29
55
|
*/
|
|
30
56
|
import type { ApiResourceKind } from "@stigmer/protos/ai/stigmer/commons/apiresource/apiresourcekind/api_resource_kind_pb";
|
|
31
57
|
import type { OwnerAttributionType } from "@stigmer/protos/ai/stigmer/commons/apiresource/apiresourcekind/authorization_config_pb";
|
|
58
|
+
import type { IamPolicy } from "@stigmer/protos/ai/stigmer/iam/iampolicy/v1/api_pb";
|
|
59
|
+
import type { IamPolicySpec } from "@stigmer/protos/ai/stigmer/iam/iampolicy/v1/spec_pb";
|
|
32
60
|
import type { CallerIdentity } from "./identity.js";
|
|
33
61
|
/**
|
|
34
62
|
* The visibility tuple shapes of the shared FGA model, named
|
|
@@ -114,6 +142,29 @@ export interface DefaultInstanceLinkedEvent {
|
|
|
114
142
|
readonly blueprintKind: ApiResourceKind;
|
|
115
143
|
readonly blueprintId: string;
|
|
116
144
|
}
|
|
145
|
+
/**
|
|
146
|
+
* Fired synchronously AFTER an IamPolicy row is persisted by the domain's
|
|
147
|
+
* grant path — and on the duplicate arm, when the triple was already held
|
|
148
|
+
* and no row was written, so a composition heals a row whose tuple never
|
|
149
|
+
* landed (cloud#425's inline heal). `policy` is the row as stored: on the
|
|
150
|
+
* duplicate arm the FIRST writer's row, whose id may be a legacy random
|
|
151
|
+
* one on a composition that predates derived ids.
|
|
152
|
+
*/
|
|
153
|
+
export interface PolicyGrantedEvent {
|
|
154
|
+
readonly policy: IamPolicy;
|
|
155
|
+
/** True when the triple was already held and this grant wrote nothing. */
|
|
156
|
+
readonly duplicate: boolean;
|
|
157
|
+
}
|
|
158
|
+
/**
|
|
159
|
+
* Fired synchronously BEFORE an IamPolicy row is deleted by the domain's
|
|
160
|
+
* grant path. `spec` is always the triple being revoked; `policy` is the
|
|
161
|
+
* row found for it, or `undefined` on the absent arm — the spec alone is
|
|
162
|
+
* enough to name the tuple a composition still deletes then.
|
|
163
|
+
*/
|
|
164
|
+
export interface PolicyRevokedEvent {
|
|
165
|
+
readonly spec: IamPolicySpec;
|
|
166
|
+
readonly policy: IamPolicy | undefined;
|
|
167
|
+
}
|
|
117
168
|
/**
|
|
118
169
|
* The driver interface (single-instance point, registered via
|
|
119
170
|
* ExtensionDrivers.resourceAuthorizationLifecycle). Implementations must
|
|
@@ -131,5 +182,17 @@ export interface ResourceAuthorizationLifecycle {
|
|
|
131
182
|
* (the OSS posture: local access control needs none).
|
|
132
183
|
*/
|
|
133
184
|
onDefaultInstanceLinked?(event: DefaultInstanceLinkedEvent): Promise<void>;
|
|
185
|
+
/**
|
|
186
|
+
* OPTIONAL (added 20260913.01 slice 2): synchronous, AFTER the row
|
|
187
|
+
* persist, on the duplicate arm too; a throw fails the grant with the
|
|
188
|
+
* row in place. Absent method = rows are the record (the OSS posture).
|
|
189
|
+
*/
|
|
190
|
+
onPolicyGranted?(event: PolicyGrantedEvent): Promise<void>;
|
|
191
|
+
/**
|
|
192
|
+
* OPTIONAL (added 20260913.01 slice 2): synchronous, BEFORE the row
|
|
193
|
+
* delete; a throw leaves row and tuple for the retry. Absent method =
|
|
194
|
+
* rows are the record (the OSS posture).
|
|
195
|
+
*/
|
|
196
|
+
onPolicyRevoked?(event: PolicyRevokedEvent): Promise<void>;
|
|
134
197
|
}
|
|
135
198
|
//# sourceMappingURL=resource-authorization.d.ts.map
|