@stigmer/server 3.14.1 → 3.15.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 (116) hide show
  1. package/dist/boot/compose.d.ts +8 -1
  2. package/dist/boot/compose.d.ts.map +1 -1
  3. package/dist/boot/compose.js +98 -12
  4. package/dist/boot/compose.js.map +1 -1
  5. package/dist/domain/apikey/verifier.d.ts +8 -1
  6. package/dist/domain/apikey/verifier.d.ts.map +1 -1
  7. package/dist/domain/apikey/verifier.js +14 -2
  8. package/dist/domain/apikey/verifier.js.map +1 -1
  9. package/dist/domain/identityaccount/constants.d.ts +66 -0
  10. package/dist/domain/identityaccount/constants.d.ts.map +1 -0
  11. package/dist/domain/identityaccount/constants.js +153 -0
  12. package/dist/domain/identityaccount/constants.js.map +1 -0
  13. package/dist/domain/identityaccount/controller.d.ts +34 -0
  14. package/dist/domain/identityaccount/controller.d.ts.map +1 -0
  15. package/dist/domain/identityaccount/controller.js +342 -0
  16. package/dist/domain/identityaccount/controller.js.map +1 -0
  17. package/dist/domain/identityaccount/operator.d.ts +14 -0
  18. package/dist/domain/identityaccount/operator.d.ts.map +1 -0
  19. package/dist/domain/identityaccount/operator.js +67 -0
  20. package/dist/domain/identityaccount/operator.js.map +1 -0
  21. package/dist/domain/identityaccount/provisioning.d.ts +52 -0
  22. package/dist/domain/identityaccount/provisioning.d.ts.map +1 -0
  23. package/dist/domain/identityaccount/provisioning.js +114 -0
  24. package/dist/domain/identityaccount/provisioning.js.map +1 -0
  25. package/dist/domain/identityaccount/resolve.d.ts +36 -0
  26. package/dist/domain/identityaccount/resolve.d.ts.map +1 -0
  27. package/dist/domain/identityaccount/resolve.js +12 -0
  28. package/dist/domain/identityaccount/resolve.js.map +1 -0
  29. package/dist/domain/identityaccount/resource-store.d.ts +4 -0
  30. package/dist/domain/identityaccount/resource-store.d.ts.map +1 -0
  31. package/dist/domain/identityaccount/resource-store.js +131 -0
  32. package/dist/domain/identityaccount/resource-store.js.map +1 -0
  33. package/dist/domain/identityaccount/steps.d.ts +79 -0
  34. package/dist/domain/identityaccount/steps.d.ts.map +1 -0
  35. package/dist/domain/identityaccount/steps.js +291 -0
  36. package/dist/domain/identityaccount/steps.js.map +1 -0
  37. package/dist/domain/identityaccount/store-contract.d.ts +22 -0
  38. package/dist/domain/identityaccount/store-contract.d.ts.map +1 -0
  39. package/dist/domain/identityaccount/store-contract.js +307 -0
  40. package/dist/domain/identityaccount/store-contract.js.map +1 -0
  41. package/dist/domain/identityaccount/store.d.ts +66 -0
  42. package/dist/domain/identityaccount/store.d.ts.map +1 -0
  43. package/dist/domain/identityaccount/store.js +13 -0
  44. package/dist/domain/identityaccount/store.js.map +1 -0
  45. package/dist/extensions/drivers.d.ts +26 -0
  46. package/dist/extensions/drivers.d.ts.map +1 -1
  47. package/dist/extensions/gate-slots.d.ts +16 -1
  48. package/dist/extensions/gate-slots.d.ts.map +1 -1
  49. package/dist/extensions/gate-slots.js +1 -0
  50. package/dist/extensions/gate-slots.js.map +1 -1
  51. package/dist/extensions/identity-federation.d.ts +36 -0
  52. package/dist/extensions/identity-federation.d.ts.map +1 -0
  53. package/dist/extensions/identity-federation.js +2 -0
  54. package/dist/extensions/identity-federation.js.map +1 -0
  55. package/dist/extensions/registry.d.ts +18 -1
  56. package/dist/extensions/registry.d.ts.map +1 -1
  57. package/dist/extensions/registry.js +20 -0
  58. package/dist/extensions/registry.js.map +1 -1
  59. package/dist/identity/oidc-discovery.d.ts +36 -0
  60. package/dist/identity/oidc-discovery.d.ts.map +1 -0
  61. package/dist/identity/oidc-discovery.js +60 -0
  62. package/dist/identity/oidc-discovery.js.map +1 -0
  63. package/dist/identity/oidc-userinfo.d.ts +30 -0
  64. package/dist/identity/oidc-userinfo.d.ts.map +1 -0
  65. package/dist/identity/oidc-userinfo.js +28 -0
  66. package/dist/identity/oidc-userinfo.js.map +1 -0
  67. package/dist/identity/oidc-verifier.d.ts +6 -0
  68. package/dist/identity/oidc-verifier.d.ts.map +1 -1
  69. package/dist/identity/oidc-verifier.js +35 -34
  70. package/dist/identity/oidc-verifier.js.map +1 -1
  71. package/dist/index.d.ts +7 -0
  72. package/dist/index.d.ts.map +1 -1
  73. package/dist/index.js +3 -0
  74. package/dist/index.js.map +1 -1
  75. package/dist/pipeline/interceptors/auth.d.ts +10 -0
  76. package/dist/pipeline/interceptors/auth.d.ts.map +1 -1
  77. package/dist/pipeline/interceptors/auth.js +9 -1
  78. package/dist/pipeline/interceptors/auth.js.map +1 -1
  79. package/package.json +4 -4
  80. package/src/boot/__tests__/auth-enabled-composition.test.ts +226 -2
  81. package/src/boot/compose.ts +118 -13
  82. package/src/domain/apikey/__tests__/verifier.test.ts +146 -22
  83. package/src/domain/apikey/verifier.ts +24 -2
  84. package/src/domain/identityaccount/__tests__/constants.test.ts +155 -0
  85. package/src/domain/identityaccount/__tests__/identityaccount.test.ts +484 -0
  86. package/src/domain/identityaccount/__tests__/operator.test.ts +180 -0
  87. package/src/domain/identityaccount/__tests__/provisioning.test.ts +281 -0
  88. package/src/domain/identityaccount/__tests__/resolve.test.ts +114 -0
  89. package/src/domain/identityaccount/__tests__/resource-store.test.ts +216 -0
  90. package/src/domain/identityaccount/__tests__/support.ts +58 -0
  91. package/src/domain/identityaccount/constants.ts +178 -0
  92. package/src/domain/identityaccount/controller.ts +667 -0
  93. package/src/domain/identityaccount/operator.ts +94 -0
  94. package/src/domain/identityaccount/provisioning.ts +182 -0
  95. package/src/domain/identityaccount/resolve.ts +52 -0
  96. package/src/domain/identityaccount/resource-store.ts +157 -0
  97. package/src/domain/identityaccount/steps.ts +377 -0
  98. package/src/domain/identityaccount/store-contract.ts +471 -0
  99. package/src/domain/identityaccount/store.ts +70 -0
  100. package/src/extensions/__tests__/identity-account-composed.test.ts +803 -0
  101. package/src/extensions/__tests__/identity-account-points.test.ts +129 -0
  102. package/src/extensions/__tests__/registry.test.ts +4 -0
  103. package/src/extensions/__tests__/tier-truthfulness.test.ts +299 -0
  104. package/src/extensions/drivers.ts +26 -0
  105. package/src/extensions/gate-slots.ts +16 -0
  106. package/src/extensions/identity-federation.ts +58 -0
  107. package/src/extensions/registry.ts +44 -1
  108. package/src/identity/__tests__/oidc-discovery.test.ts +122 -0
  109. package/src/identity/__tests__/oidc-userinfo.test.ts +103 -0
  110. package/src/identity/__tests__/oidc-verifier.test.ts +173 -3
  111. package/src/identity/oidc-discovery.ts +84 -0
  112. package/src/identity/oidc-userinfo.ts +64 -0
  113. package/src/identity/oidc-verifier.ts +42 -45
  114. package/src/index.ts +19 -0
  115. package/src/pipeline/interceptors/auth.ts +13 -1
  116. package/src/pipeline/steps/__tests__/authorize-annotation-completeness.test.ts +184 -0
@@ -1,4 +1,4 @@
1
- import type { Transport } from "@connectrpc/connect";
1
+ import type { ConnectRouter, Transport } from "@connectrpc/connect";
2
2
  import { StreamBroker } from "../domain/agentexecution/stream-broker.js";
3
3
  import { TemporalManager } from "../temporal/manager.js";
4
4
  import type { IdentityVerifier } from "../extensions/identity.js";
@@ -73,6 +73,13 @@ export interface ComposedServer {
73
73
  * them or reorder them, and both are the drift DD-007 rules out.
74
74
  */
75
75
  identityVerifiers: ReadonlyArray<IdentityVerifier>;
76
+ /**
77
+ * The one routes function both routers are built from (exposed for
78
+ * tests, the `store` posture — the tier-truthfulness invariant
79
+ * enumerates the services a composition registers through it; the
80
+ * server registers no reflection service, deliberately).
81
+ */
82
+ routes: (router: ConnectRouter) => void;
76
83
  /** Completes wiring, flips SERVING, binds the port; returns the bound port. */
77
84
  start(): Promise<number>;
78
85
  /** NOT_SERVING first, stop background work, drain connections. */
@@ -1 +1 @@
1
- {"version":3,"file":"compose.d.ts","sourceRoot":"","sources":["../../src/boot/compose.ts"],"names":[],"mappings":"AA4BA,OAAO,KAAK,EAAiB,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAepE,OAAO,EAAE,YAAY,EAAE,MAAM,2CAA2C,CAAC;AAIzE,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAoBzD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AA6BlE,OAAO,EAKL,aAAa,EAEd,MAAM,6BAA6B,CAAC;AAoBrC,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAGhE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAEnD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAWjE,OAAO,EAAE,YAAY,IAAI,6BAA6B,EAAE,MAAM,8CAA8C,CAAC;AAW7G,OAAO,EAAE,WAAW,EAAyB,MAAM,wBAAwB,CAAC;AAK5E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAGhD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAE1C,MAAM,WAAW,cAAc;IAC7B,WAAW,EAAE,WAAW,CAAC;IACzB,+EAA+E;IAC/E,KAAK,EAAE,KAAK,CAAC;IACb;;;;;;;;;OASG;IACH,OAAO,EAAE,aAAa,CAAC;IACvB;;;;;OAKG;IACH,eAAe,EAAE,eAAe,CAAC;IACjC;;;;;OAKG;IACH,iBAAiB,EAAE,iBAAiB,CAAC;IACrC;;;;OAIG;IACH,0BAA0B,EAAE,YAAY,CAAC;IACzC;;;;;OAKG;IACH,6BAA6B,EAAE,6BAA6B,CAAC;IAC7D;;;;;;;;;OASG;IACH,kBAAkB,EAAE,SAAS,CAAC;IAC9B;;;;;;;;OAQG;IACH,iBAAiB,EAAE,aAAa,CAAC,gBAAgB,CAAC,CAAC;IACnD,+EAA+E;IAC/E,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IACzB,kEAAkE;IAClE,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC3B;AAED,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,YAAY,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf;;;;OAIG;IACH,UAAU,CAAC,EAAE,aAAa,CAAC,eAAe,CAAC,CAAC;IAC5C,gEAAgE;IAChE,SAAS,CAAC,EAAE,OAAO,KAAK,CAAC;IACzB,oEAAoE;IACpE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,wBAAsB,aAAa,CACjC,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,cAAc,CAAC,CA6hCzB"}
1
+ {"version":3,"file":"compose.d.ts","sourceRoot":"","sources":["../../src/boot/compose.ts"],"names":[],"mappings":"AA4BA,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAgBpE,OAAO,EAAE,YAAY,EAAE,MAAM,2CAA2C,CAAC;AAIzE,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AA6BzD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AA6BlE,OAAO,EAKL,aAAa,EAEd,MAAM,6BAA6B,CAAC;AAqBrC,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAGhE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAEnD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAWjE,OAAO,EAAE,YAAY,IAAI,6BAA6B,EAAE,MAAM,8CAA8C,CAAC;AAW7G,OAAO,EAAE,WAAW,EAAyB,MAAM,wBAAwB,CAAC;AAK5E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAGhD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAE1C,MAAM,WAAW,cAAc;IAC7B,WAAW,EAAE,WAAW,CAAC;IACzB,+EAA+E;IAC/E,KAAK,EAAE,KAAK,CAAC;IACb;;;;;;;;;OASG;IACH,OAAO,EAAE,aAAa,CAAC;IACvB;;;;;OAKG;IACH,eAAe,EAAE,eAAe,CAAC;IACjC;;;;;OAKG;IACH,iBAAiB,EAAE,iBAAiB,CAAC;IACrC;;;;OAIG;IACH,0BAA0B,EAAE,YAAY,CAAC;IACzC;;;;;OAKG;IACH,6BAA6B,EAAE,6BAA6B,CAAC;IAC7D;;;;;;;;;OASG;IACH,kBAAkB,EAAE,SAAS,CAAC;IAC9B;;;;;;;;OAQG;IACH,iBAAiB,EAAE,aAAa,CAAC,gBAAgB,CAAC,CAAC;IACnD;;;;;OAKG;IACH,MAAM,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,IAAI,CAAC;IACxC,+EAA+E;IAC/E,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IACzB,kEAAkE;IAClE,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC3B;AAED,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,YAAY,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf;;;;OAIG;IACH,UAAU,CAAC,EAAE,aAAa,CAAC,eAAe,CAAC,CAAC;IAC5C,gEAAgE;IAChE,SAAS,CAAC,EAAE,OAAO,KAAK,CAAC;IACzB,oEAAoE;IACpE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,wBAAsB,aAAa,CACjC,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,cAAc,CAAC,CAonCzB"}
@@ -25,6 +25,7 @@
25
25
  */
26
26
  import { mkdirSync } from "node:fs";
27
27
  import path from "node:path";
28
+ import { ApiResourceKind } from "@stigmer/protos/ai/stigmer/commons/apiresource/apiresourcekind/api_resource_kind_pb";
28
29
  import { HealthCheckResponse_ServingStatus as ServingStatus } from "@stigmer/protos/grpc/health/v1/health_pb";
29
30
  import { registerAgentServices } from "../domain/agent/controller.js";
30
31
  import { newConfigFromEnv, ROUTING_SESSION, } from "../domain/agentexecution/temporal/config.js";
@@ -51,6 +52,12 @@ import { registerChannelConversationServices } from "../domain/agentchannel/conv
51
52
  import { registerChannelMessageServices } from "../domain/agentchannel/message.js";
52
53
  import { registerAgentShareServices } from "../domain/agentshare/controller.js";
53
54
  import { registerApiKeyServices } from "../domain/apikey/controller.js";
55
+ import { newCreateAccountPath, registerIdentityAccountServices, } from "../domain/identityaccount/controller.js";
56
+ import { ensureOperatorAccount } from "../domain/identityaccount/operator.js";
57
+ import { newDirectAccountProvisioner } from "../domain/identityaccount/provisioning.js";
58
+ import { newResourceIdentityAccountStore } from "../domain/identityaccount/resource-store.js";
59
+ import { newIssuerDiscovery } from "../identity/oidc-discovery.js";
60
+ import { newOidcUserInfoClient } from "../identity/oidc-userinfo.js";
54
61
  import { newApiKeyIdentityVerifier } from "../domain/apikey/verifier.js";
55
62
  import { registerArtifactServices } from "../domain/artifact/controller.js";
56
63
  import { newOidcIdentityVerifier } from "../identity/oidc-verifier.js";
@@ -83,6 +90,7 @@ import { newSearchableResourceRegistry } from "../query/search/registry.js";
83
90
  import { initRpcMetrics, metricsExportPosture, } from "../observability/rpc-metrics.js";
84
91
  import { buildInterceptorChain } from "../pipeline/chain.js";
85
92
  import { createVerifierChainInterceptor } from "../pipeline/interceptors/auth.js";
93
+ import { operatorIdentitySnapshot } from "../pipeline/steps/defaults.js";
86
94
  import { createErrorBoundaryInterceptor } from "../pipeline/interceptors/error-boundary.js";
87
95
  import { createRequestMetricsInterceptor } from "../pipeline/interceptors/request-metrics.js";
88
96
  import { newPermissiveSingleTeamAuthorizer } from "../pipeline/steps/authorize.js";
@@ -156,6 +164,65 @@ export async function composeServer(options) {
156
164
  dbPath: config.dbPath,
157
165
  });
158
166
  }
167
+ // The require-authentication posture has two sources OR'd here: the
168
+ // OSS OIDC issuer (O3 rulings Q1+Q2) and a composed unit's declaration
169
+ // (registry point, entry 20260904.02). Neither source = the OSS
170
+ // trusted-local posture, byte-identical wire behavior. Resolved in the
171
+ // storage stage because the posture decides a WRITE below (the operator
172
+ // account); the verifier chain it also governs is built at the end.
173
+ const authEnabled = config.oidcIssuer !== "";
174
+ const requireAuthentication = authEnabled || extensions.requireAuthentication !== undefined;
175
+ // Stage: identity accounts (20260911.11) — the first domain whose
176
+ // persistence is a PORT rather than the generic Store. The composed
177
+ // driver (`drivers.identityAccountStore`, Q-IA-9) serves when a unit
178
+ // registers one; otherwise open source's adapter over `store` installs
179
+ // HERE (the default lives with the consumer, never in the registry).
180
+ // This ONE binding is what the create path, the provisioner, the
181
+ // operator ensure and both OSS verifiers read, so a composed driver is
182
+ // followed everywhere by construction. The domain's one create path is
183
+ // built once and shared by the create RPC, provisioning and the operator
184
+ // ensure below.
185
+ const identityAccounts = extensions.drivers.identityAccountStore ??
186
+ newResourceIdentityAccountStore(store);
187
+ const identityAccountPath = {
188
+ accounts: identityAccounts,
189
+ logger,
190
+ authorizer,
191
+ authorizationLifecycle,
192
+ };
193
+ const createIdentityAccount = newCreateAccountPath(identityAccountPath, ApiResourceKind.identity_account);
194
+ // ONE issuer discovery for every lane that reads a well-known document
195
+ // (A8): provisioning's userinfo client here and the OIDC verifier's
196
+ // JWKS location below share it, so an issuer is discovered once per
197
+ // process and validated the same way wherever it is consumed. Built in
198
+ // this stage, not inside routes() (which runs twice) — the same reason
199
+ // the searchRegistry lives here.
200
+ const issuerDiscovery = newIssuerDiscovery();
201
+ // Provisioning reads the caller's profile from the userinfo endpoint of
202
+ // the issuer that vouched for the token, discovered per issuer and
203
+ // cached (A8) — so a composition whose own verifiers name their issuer
204
+ // on the identity needs no knob here.
205
+ const identityAccountProvisioner = newDirectAccountProvisioner({
206
+ accounts: identityAccounts,
207
+ createAccount: createIdentityAccount,
208
+ userInfo: newOidcUserInfoClient(issuerDiscovery),
209
+ });
210
+ // Under the trusted-local posture the server knows its one principal
211
+ // from the operator seam (the SAME seam the interceptor stamps callers
212
+ // from — never config directly, so the row and the stamp cannot
213
+ // disagree; T01_1_review.md A2, A5) and states the fact at boot:
214
+ // create-if-absent, so preferences set later survive every reboot. A
215
+ // composition with an authentication posture never creates one — its
216
+ // users provision themselves on first sign-in. A stage that writes a
217
+ // resource is new here; it earns its place because it is the truth of
218
+ // that posture, and a failure is a loud boot throw like the storage
219
+ // stage's own.
220
+ if (!requireAuthentication) {
221
+ const operator = await ensureOperatorAccount({ accounts: identityAccounts, createAccount: createIdentityAccount }, operatorIdentitySnapshot());
222
+ logger.info("trusted-local operator account ensured", {
223
+ accountId: operator.metadata?.id ?? "",
224
+ });
225
+ }
159
226
  // Stage: keys — the ratified fail-loud boot ASYMMETRY (D2 cross-domain
160
227
  // invariants; Go server.go:277-293):
161
228
  //
@@ -576,6 +643,17 @@ export async function composeServer(options) {
576
643
  authorizationLifecycle,
577
644
  listReadScope: extensions.drivers.listReadScope,
578
645
  });
646
+ // IdentityAccount (20260911.11): served once by open source in every
647
+ // edition over the store PORT bound in the identity-accounts stage; a
648
+ // composition adds what differs per edition through the registry —
649
+ // the federation capability (the four federated RPC arms) and the
650
+ // provision slot's gate steps (the cloud's personal organization).
651
+ registerIdentityAccountServices(router, {
652
+ ...identityAccountPath,
653
+ provisioner: identityAccountProvisioner,
654
+ federation: extensions.drivers.identityFederation,
655
+ gateSteps: extensions.gateSteps,
656
+ });
579
657
  registerEnvironmentServices(router, {
580
658
  store,
581
659
  logger,
@@ -853,13 +931,8 @@ export async function composeServer(options) {
853
931
  };
854
932
  const inProcessWiring = createInProcessClients(routes, logger);
855
933
  inProcess = inProcessWiring.clients;
856
- // The require-authentication posture has two sources OR'd here: the
857
- // OSS OIDC issuer (O3 rulings Q1+Q2) and a composed unit's declaration
858
- // (registry point, entry 20260904.02). Neither source = the OSS
859
- // trusted-local posture, byte-identical wire behavior.
860
- const authEnabled = config.oidcIssuer !== "";
861
- const requireAuthentication = authEnabled || extensions.requireAuthentication !== undefined;
862
- // What the posture registers, in Java's ProviderManager order (opaque
934
+ // What the posture (resolved in the storage stage) registers, in Java's
935
+ // ProviderManager order (opaque
863
936
  // keys first — the cheapest claim — then the JWT lanes), ahead of the
864
937
  // extension entries ("OSS entries first", the registry contract):
865
938
  // - the API-key verifier rides the POSTURE, not the issuer
@@ -868,19 +941,31 @@ export async function composeServer(options) {
868
941
  // authentication posture must honor the keys it issues. Gating it on
869
942
  // the issuer left a posture-declaring composition minting keys
870
943
  // nothing verified.
871
- // - the OIDC verifier rides the ISSUER alone: it resolves callers to
872
- // the token's `sub`, which is the wrong principal for a composition
873
- // whose own lanes resolve users to their account ids — that is why a
874
- // declared posture never borrows the issuer knob.
944
+ // - the OIDC verifier rides the ISSUER alone: it is open source's
945
+ // single-issuer lane, and a composition with verifiers of its own
946
+ // names their issuers and audiences itself and declares the posture
947
+ // instead — so the knob and the extension entries never both claim
948
+ // one JWT.
949
+ // - both OSS verifiers resolve their subject through the identity-
950
+ // account domain (20260911.11 Q-IA-2, A6): a provisioned user is
951
+ // stamped with the account id whichever credential they present,
952
+ // an unprovisioned one is admitted idp-shaped. They read the SAME
953
+ // port the domain writes through (`identityAccounts`, the
954
+ // identity-accounts stage — a composed driver included), so a row
955
+ // provisioning creates resolves on the very next request.
875
956
  // The runner's credential in either posture is an operator-minted API
876
957
  // token via STIGMER_TOKEN (O3 ruling Q3) — no runner-specific verifier.
877
958
  const identityVerifiers = [
878
- ...(requireAuthentication ? [newApiKeyIdentityVerifier(store)] : []),
959
+ ...(requireAuthentication
960
+ ? [newApiKeyIdentityVerifier({ store, accounts: identityAccounts })]
961
+ : []),
879
962
  ...(authEnabled
880
963
  ? [
881
964
  newOidcIdentityVerifier({
882
965
  issuer: config.oidcIssuer,
883
966
  audience: config.oidcAudience,
967
+ accounts: identityAccounts,
968
+ discovery: issuerDiscovery,
884
969
  }),
885
970
  ]
886
971
  : []),
@@ -945,6 +1030,7 @@ export async function composeServer(options) {
945
1030
  workflowExecutionStreamBroker,
946
1031
  inProcessTransport: inProcessWiring.transport,
947
1032
  identityVerifiers,
1033
+ routes,
948
1034
  async start() {
949
1035
  // Temporal boot is NON-fatal end to end (Go server.go): a failed
950
1036
  // initial connect leaves the engine unavailable and the monitor
@@ -1 +1 @@
1
- {"version":3,"file":"compose.js","sourceRoot":"","sources":["../../src/boot/compose.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"compose.js","sourceRoot":"","sources":["../../src/boot/compose.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,15 @@
1
1
  import type { IdentityVerifier } from "../../extensions/identity.js";
2
2
  import type { Store } from "../../store/interface.js";
3
+ import type { AccountsBySubject } from "../identityaccount/resolve.js";
3
4
  /** Java classifyAuthError's fallback arm — the unknown/revoked-key copy. */
4
5
  export declare const INVALID_TOKEN_MESSAGE = "invalid token";
5
6
  /** Java classifyAuthError's "expired" arm. */
6
7
  export declare const TOKEN_EXPIRED_MESSAGE = "token has expired";
7
- export declare function newApiKeyIdentityVerifier(store: Store): IdentityVerifier;
8
+ export interface ApiKeyVerifierDeps {
9
+ /** Where the keys live — the generic Store, by hash (lookup.ts). */
10
+ readonly store: Store;
11
+ /** The identity-account domain's subject lookup the creator stamp resolves through (A6). */
12
+ readonly accounts: AccountsBySubject;
13
+ }
14
+ export declare function newApiKeyIdentityVerifier(deps: ApiKeyVerifierDeps): IdentityVerifier;
8
15
  //# sourceMappingURL=verifier.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"verifier.d.ts","sourceRoot":"","sources":["../../../src/domain/apikey/verifier.ts"],"names":[],"mappings":"AA6BA,OAAO,KAAK,EAEV,gBAAgB,EACjB,MAAM,8BAA8B,CAAC;AACtC,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAItD,4EAA4E;AAC5E,eAAO,MAAM,qBAAqB,kBAAkB,CAAC;AAErD,8CAA8C;AAC9C,eAAO,MAAM,qBAAqB,sBAAsB,CAAC;AAEzD,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,KAAK,GAAG,gBAAgB,CAgCxE"}
1
+ {"version":3,"file":"verifier.d.ts","sourceRoot":"","sources":["../../../src/domain/apikey/verifier.ts"],"names":[],"mappings":"AAuCA,OAAO,KAAK,EAEV,gBAAgB,EACjB,MAAM,8BAA8B,CAAC;AACtC,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAEtD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAIvE,4EAA4E;AAC5E,eAAO,MAAM,qBAAqB,kBAAkB,CAAC;AAErD,8CAA8C;AAC9C,eAAO,MAAM,qBAAqB,sBAAsB,CAAC;AAEzD,MAAM,WAAW,kBAAkB;IACjC,oEAAoE;IACpE,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;IACtB,4FAA4F;IAC5F,QAAQ,CAAC,QAAQ,EAAE,iBAAiB,CAAC;CACtC;AAED,wBAAgB,yBAAyB,CACvC,IAAI,EAAE,kBAAkB,GACvB,gBAAgB,CAiClB"}
@@ -23,16 +23,28 @@
23
23
  * seam wants. Expiry is "expires_at set and past"; never_expires is
24
24
  * deliberately not read — Java parity (never-expiring keys leave
25
25
  * expires_at unset).
26
+ *
27
+ * The stamp is then resolved the way the OIDC lane resolves `sub`
28
+ * (20260911.11, T01_1_review.md A6; domain/identityaccount/resolve.ts):
29
+ * a key minted before its owner was provisioned carries the raw subject
30
+ * and answers the owner's ACCOUNT id once one exists, so no write over a
31
+ * legacy key mints a raw-subject stamp again; a stamp that is already an
32
+ * account id is kept — one primary-key read either way, no cache. Only
33
+ * identityId changes on a hit: email/displayName stay the stamp's, the
34
+ * actor the key recorded at minting. The credential checks run first, so
35
+ * a revoked or expired key never reaches the account store.
26
36
  */
27
37
  import { Code, ConnectError } from "@connectrpc/connect";
28
38
  import { timestampDate } from "@bufbuild/protobuf/wkt";
39
+ import { identityIdForSubject } from "../identityaccount/resolve.js";
29
40
  import { hashApiKey, isApiKeyToken } from "./keymaterial.js";
30
41
  import { findApiKeyByHash } from "./lookup.js";
31
42
  /** Java classifyAuthError's fallback arm — the unknown/revoked-key copy. */
32
43
  export const INVALID_TOKEN_MESSAGE = "invalid token";
33
44
  /** Java classifyAuthError's "expired" arm. */
34
45
  export const TOKEN_EXPIRED_MESSAGE = "token has expired";
35
- export function newApiKeyIdentityVerifier(store) {
46
+ export function newApiKeyIdentityVerifier(deps) {
47
+ const { store, accounts } = deps;
36
48
  return {
37
49
  name: "apikey",
38
50
  async verify(token) {
@@ -55,7 +67,7 @@ export function newApiKeyIdentityVerifier(store) {
55
67
  throw new ConnectError(INVALID_TOKEN_MESSAGE, Code.Unauthenticated);
56
68
  }
57
69
  return {
58
- identityId: owner.id,
70
+ identityId: await identityIdForSubject(accounts, owner.id),
59
71
  callerClass: "user",
60
72
  issuer: "",
61
73
  rawToken: token,
@@ -1 +1 @@
1
- {"version":3,"file":"verifier.js","sourceRoot":"","sources":["../../../src/domain/apikey/verifier.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAOvD,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAE/C,4EAA4E;AAC5E,MAAM,CAAC,MAAM,qBAAqB,GAAG,eAAe,CAAC;AAErD,8CAA8C;AAC9C,MAAM,CAAC,MAAM,qBAAqB,GAAG,mBAAmB,CAAC;AAEzD,MAAM,UAAU,yBAAyB,CAAC,KAAY;IACpD,OAAO;QACL,IAAI,EAAE,QAAQ;QACd,KAAK,CAAC,MAAM,CAAC,KAAa;YACxB,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC1B,OAAO,IAAI,CAAC;YACd,CAAC;YACD,MAAM,GAAG,GAAG,MAAM,gBAAgB,CAAC,KAAK,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;YAC7D,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;gBACtB,MAAM,IAAI,YAAY,CAAC,qBAAqB,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;YACtE,CAAC;YACD,MAAM,SAAS,GAAG,GAAG,CAAC,IAAI,EAAE,SAAS,CAAC;YACtC,IAAI,SAAS,KAAK,SAAS,IAAI,aAAa,CAAC,SAAS,CAAC,IAAI,IAAI,IAAI,EAAE,EAAE,CAAC;gBACtE,MAAM,IAAI,YAAY,CAAC,qBAAqB,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;YACtE,CAAC;YACD,MAAM,KAAK,GAAG,GAAG,CAAC,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS,CAAC;YACtD,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC;gBAC3C,oEAAoE;gBACpE,mEAAmE;gBACnE,+DAA+D;gBAC/D,MAAM,IAAI,YAAY,CAAC,qBAAqB,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;YACtE,CAAC;YACD,OAAO;gBACL,UAAU,EAAE,KAAK,CAAC,EAAE;gBACpB,WAAW,EAAE,MAAM;gBACnB,MAAM,EAAE,EAAE;gBACV,QAAQ,EAAE,KAAK;gBACf,GAAG,CAAC,KAAK,CAAC,KAAK,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACrD,GAAG,CAAC,KAAK,CAAC,WAAW,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACxE,CAAC;QACJ,CAAC;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"verifier.js","sourceRoot":"","sources":["../../../src/domain/apikey/verifier.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAOvD,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAErE,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAE/C,4EAA4E;AAC5E,MAAM,CAAC,MAAM,qBAAqB,GAAG,eAAe,CAAC;AAErD,8CAA8C;AAC9C,MAAM,CAAC,MAAM,qBAAqB,GAAG,mBAAmB,CAAC;AASzD,MAAM,UAAU,yBAAyB,CACvC,IAAwB;IAExB,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC;IACjC,OAAO;QACL,IAAI,EAAE,QAAQ;QACd,KAAK,CAAC,MAAM,CAAC,KAAa;YACxB,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC1B,OAAO,IAAI,CAAC;YACd,CAAC;YACD,MAAM,GAAG,GAAG,MAAM,gBAAgB,CAAC,KAAK,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;YAC7D,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;gBACtB,MAAM,IAAI,YAAY,CAAC,qBAAqB,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;YACtE,CAAC;YACD,MAAM,SAAS,GAAG,GAAG,CAAC,IAAI,EAAE,SAAS,CAAC;YACtC,IAAI,SAAS,KAAK,SAAS,IAAI,aAAa,CAAC,SAAS,CAAC,IAAI,IAAI,IAAI,EAAE,EAAE,CAAC;gBACtE,MAAM,IAAI,YAAY,CAAC,qBAAqB,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;YACtE,CAAC;YACD,MAAM,KAAK,GAAG,GAAG,CAAC,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS,CAAC;YACtD,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC;gBAC3C,oEAAoE;gBACpE,mEAAmE;gBACnE,+DAA+D;gBAC/D,MAAM,IAAI,YAAY,CAAC,qBAAqB,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;YACtE,CAAC;YACD,OAAO;gBACL,UAAU,EAAE,MAAM,oBAAoB,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC;gBAC1D,WAAW,EAAE,MAAM;gBACnB,MAAM,EAAE,EAAE;gBACV,QAAQ,EAAE,KAAK;gBACf,GAAG,CAAC,KAAK,CAAC,KAAK,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACrD,GAAG,CAAC,KAAK,CAAC,WAAW,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACxE,CAAC;QACJ,CAAC;KACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,66 @@
1
+ import type { CallerIdentity } from "../../extensions/identity.js";
2
+ /** The kind's id prefix (kind_meta `identity_account.id_prefix`). */
3
+ export declare const ACCOUNT_ID_PREFIX = "ida";
4
+ /**
5
+ * The derived account id of a direct account with subject `idpId`. Pure,
6
+ * total over non-empty input; an empty subject has no principal and so
7
+ * no address — refused, never hashed.
8
+ */
9
+ export declare function accountIdFor(idpId: string): string;
10
+ /**
11
+ * The subject namespace of the trusted-local posture. An OIDC subject is
12
+ * `<connection>|<id>` by Auth0 convention; `local|` claims the same shape
13
+ * for the one principal no issuer vouches for, so the derived ids of a
14
+ * local operator and an OIDC user can never collide by construction.
15
+ */
16
+ export declare const LOCAL_IDP_ID_PREFIX = "local|";
17
+ /** `local|<identityId>` — the trusted-local operator's subject. */
18
+ export declare function localIdpIdFor(identityId: string): string;
19
+ /**
20
+ * The issuer subject a caller stands for:
21
+ * - a caller with no issuer and no token is the trusted-local operator
22
+ * (`local|<identityId>`; identityId is the operator's email or
23
+ * "system" — pipeline/interceptors/auth.ts trustedLocalIdentity);
24
+ * - a token-bearing caller is its JWT `sub`, read from the raw token
25
+ * the verifier already proved; `""` when the token carries no
26
+ * readable subject (an opaque credential under an issuer), which
27
+ * the provisionMyAccount handler maps to the UNAUTHENTICATED arm.
28
+ */
29
+ export declare function idpIdOf(caller: CallerIdentity): string;
30
+ /**
31
+ * Auth0's client-credentials subject shape (`<client_id>@clients`) — the
32
+ * cloud's IsMachineAccountVerifier rule, the one input to
33
+ * `is_machine_account`.
34
+ */
35
+ export declare const MACHINE_ACCOUNT_SUFFIX = "@clients";
36
+ export declare function isMachineSubject(idpId: string): boolean;
37
+ /** whoAmI for a caller with no account (NOT_FOUND). */
38
+ export declare const ACCOUNT_NOT_FOUND_FOR_CALLER_MESSAGE = "Identity account not found for the authenticated user";
39
+ /** provisionMyAccount for a caller whose credential names no subject (UNAUTHENTICATED). */
40
+ export declare const NO_IDP_ID_MESSAGE = "Cannot provision account: no IDP ID in authentication context";
41
+ /** provisionMyAccount when the issuer's userinfo cannot be read (UNAVAILABLE); the cause follows. */
42
+ export declare const USERINFO_UNAVAILABLE_PREFIX = "Failed to fetch user profile from identity provider: ";
43
+ /** get / getByEmail / getByIdpId / getActorInfo / update / delete on a missing account (NOT_FOUND). */
44
+ export declare function accountNotFoundMessage(handle: string): string;
45
+ /**
46
+ * The cloud#393 gate's refusal (PERMISSION_DENIED): the create RPC admits
47
+ * the platform's own pipelines only — machine-class callers and
48
+ * server-composed (in-process) requests (T01_1_review.md A7).
49
+ */
50
+ export declare const CREATE_IS_INTERNAL_MESSAGE = "this RPC is internal to the platform";
51
+ /**
52
+ * The reason a composition with no IdentityFederation unit refuses the four
53
+ * federation RPCs (UNIMPLEMENTED). The sentence a person can act on; the
54
+ * method-naming prefix is the organization directory's absent-method shape
55
+ * so clients matching on "is not implemented" keep working.
56
+ */
57
+ export declare const FEDERATION_UNIMPLEMENTED_REASON = "federated identity accounts are served by the Enterprise and Cloud editions";
58
+ export declare function federationUnimplementedMessage(method: string): string;
59
+ /**
60
+ * update with a changed spec.idp_id (FAILED_PRECONDITION; the schedule
61
+ * domain's immutability shape, T01_1_review.md A1). The subject IS the
62
+ * identity; a client that sends a different one has a bug it should hear
63
+ * about, never a silent preserve.
64
+ */
65
+ export declare function idpIdImmutableMessage(existingIdpId: string): string;
66
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/domain/identityaccount/constants.ts"],"names":[],"mappings":"AAgCA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAEnE,qEAAqE;AACrE,eAAO,MAAM,iBAAiB,QAAQ,CAAC;AAQvC;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAgBlD;AAED;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,WAAW,CAAC;AAE5C,mEAAmE;AACnE,wBAAgB,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAExD;AAED;;;;;;;;;GASG;AACH,wBAAgB,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,MAAM,CAKtD;AAsBD;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,aAAa,CAAC;AAEjD,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAEvD;AAMD,uDAAuD;AACvD,eAAO,MAAM,oCAAoC,0DACQ,CAAC;AAE1D,2FAA2F;AAC3F,eAAO,MAAM,iBAAiB,kEACmC,CAAC;AAElE,qGAAqG;AACrG,eAAO,MAAM,2BAA2B,0DACiB,CAAC;AAE1D,uGAAuG;AACvG,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAE7D;AAED;;;;GAIG;AACH,eAAO,MAAM,0BAA0B,yCACC,CAAC;AAEzC;;;;;GAKG;AACH,eAAO,MAAM,+BAA+B,gFACmC,CAAC;AAEhF,wBAAgB,8BAA8B,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAErE;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,CAEnE"}