@noodleseed/one 0.71.0 → 0.73.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 (168) hide show
  1. package/dist/agent-skills-state.d.ts +40 -0
  2. package/dist/agent-skills-state.d.ts.map +1 -0
  3. package/dist/agent-skills-state.js +184 -0
  4. package/dist/agent-skills-state.js.map +1 -0
  5. package/dist/agents.d.ts +15 -4
  6. package/dist/agents.d.ts.map +1 -1
  7. package/dist/agents.js +196 -76
  8. package/dist/agents.js.map +1 -1
  9. package/dist/auth-discovery.d.ts +2 -0
  10. package/dist/auth-discovery.d.ts.map +1 -1
  11. package/dist/auth-discovery.js +63 -4
  12. package/dist/auth-discovery.js.map +1 -1
  13. package/dist/bin.js +0 -0
  14. package/dist/commands/catalog-data-config.d.ts.map +1 -1
  15. package/dist/commands/catalog-data-config.js +10 -1
  16. package/dist/commands/catalog-data-config.js.map +1 -1
  17. package/dist/commands/catalog-data-resources.d.ts.map +1 -1
  18. package/dist/commands/catalog-data-resources.js +5 -5
  19. package/dist/commands/catalog-data-resources.js.map +1 -1
  20. package/dist/commands/config-values.d.ts +10 -2
  21. package/dist/commands/config-values.d.ts.map +1 -1
  22. package/dist/commands/config-values.js +81 -1
  23. package/dist/commands/config-values.js.map +1 -1
  24. package/dist/skills-update.d.ts +1 -0
  25. package/dist/skills-update.d.ts.map +1 -1
  26. package/dist/skills-update.js +81 -5
  27. package/dist/skills-update.js.map +1 -1
  28. package/node_modules/@noodle-borg/agent-kit/dist/behavior-skills.d.ts +20 -0
  29. package/node_modules/@noodle-borg/agent-kit/dist/behavior-skills.d.ts.map +1 -0
  30. package/node_modules/@noodle-borg/agent-kit/dist/behavior-skills.js +280 -0
  31. package/node_modules/@noodle-borg/agent-kit/dist/behavior-skills.js.map +1 -0
  32. package/node_modules/@noodle-borg/agent-kit/dist/generated/example-files.js +1 -1
  33. package/node_modules/@noodle-borg/agent-kit/dist/generated/example-files.js.map +1 -1
  34. package/node_modules/@noodle-borg/agent-kit/dist/index.d.ts +18 -4
  35. package/node_modules/@noodle-borg/agent-kit/dist/index.d.ts.map +1 -1
  36. package/node_modules/@noodle-borg/agent-kit/dist/index.js +57 -46
  37. package/node_modules/@noodle-borg/agent-kit/dist/index.js.map +1 -1
  38. package/node_modules/@noodle-borg/agent-kit/dist/skill-feedback-ref.js +1 -1
  39. package/node_modules/@noodle-borg/agent-kit/dist/skill-feedback-ref.js.map +1 -1
  40. package/node_modules/@noodle-borg/agent-kit/dist/skill-registry.d.ts +31 -0
  41. package/node_modules/@noodle-borg/agent-kit/dist/skill-registry.d.ts.map +1 -0
  42. package/node_modules/@noodle-borg/agent-kit/dist/skill-registry.js +116 -0
  43. package/node_modules/@noodle-borg/agent-kit/dist/skill-registry.js.map +1 -0
  44. package/node_modules/@noodle-borg/agent-kit/dist/skill-router.d.ts +3 -3
  45. package/node_modules/@noodle-borg/agent-kit/dist/skill-router.d.ts.map +1 -1
  46. package/node_modules/@noodle-borg/agent-kit/dist/skill-router.js +35 -25
  47. package/node_modules/@noodle-borg/agent-kit/dist/skill-router.js.map +1 -1
  48. package/node_modules/@noodle-borg/agent-kit/package.json +1 -1
  49. package/node_modules/@noodle-borg/auth/dist/jwt-issuer.d.ts +2 -0
  50. package/node_modules/@noodle-borg/auth/dist/jwt-issuer.d.ts.map +1 -1
  51. package/node_modules/@noodle-borg/auth/dist/jwt-issuer.js +1 -0
  52. package/node_modules/@noodle-borg/auth/dist/jwt-issuer.js.map +1 -1
  53. package/node_modules/@noodle-borg/auth/dist/verify.d.ts +2 -0
  54. package/node_modules/@noodle-borg/auth/dist/verify.d.ts.map +1 -1
  55. package/node_modules/@noodle-borg/auth/dist/verify.js +16 -0
  56. package/node_modules/@noodle-borg/auth/dist/verify.js.map +1 -1
  57. package/node_modules/@noodle-borg/service/dist/auth/deploy-gate.d.ts +3 -0
  58. package/node_modules/@noodle-borg/service/dist/auth/deploy-gate.d.ts.map +1 -1
  59. package/node_modules/@noodle-borg/service/dist/auth/deploy-gate.js +1 -0
  60. package/node_modules/@noodle-borg/service/dist/auth/deploy-gate.js.map +1 -1
  61. package/node_modules/@noodle-borg/service/dist/config-value-projection.d.ts +58 -0
  62. package/node_modules/@noodle-borg/service/dist/config-value-projection.d.ts.map +1 -0
  63. package/node_modules/@noodle-borg/service/dist/config-value-projection.js +40 -0
  64. package/node_modules/@noodle-borg/service/dist/config-value-projection.js.map +1 -0
  65. package/node_modules/@noodle-borg/service/dist/oauth/authorization-initiation.d.ts.map +1 -1
  66. package/node_modules/@noodle-borg/service/dist/oauth/authorization-initiation.js +4 -0
  67. package/node_modules/@noodle-borg/service/dist/oauth/authorization-initiation.js.map +1 -1
  68. package/node_modules/@noodle-borg/service/dist/oauth/consent-claims.d.ts +1 -0
  69. package/node_modules/@noodle-borg/service/dist/oauth/consent-claims.d.ts.map +1 -1
  70. package/node_modules/@noodle-borg/service/dist/oauth/consent-claims.js +10 -0
  71. package/node_modules/@noodle-borg/service/dist/oauth/consent-claims.js.map +1 -1
  72. package/node_modules/@noodle-borg/service/dist/oauth/developer-grant-flow.d.ts +3 -1
  73. package/node_modules/@noodle-borg/service/dist/oauth/developer-grant-flow.d.ts.map +1 -1
  74. package/node_modules/@noodle-borg/service/dist/oauth/developer-grant-flow.js +2 -0
  75. package/node_modules/@noodle-borg/service/dist/oauth/developer-grant-flow.js.map +1 -1
  76. package/node_modules/@noodle-borg/service/dist/oauth/fresh-auth.d.ts +6 -0
  77. package/node_modules/@noodle-borg/service/dist/oauth/fresh-auth.d.ts.map +1 -0
  78. package/node_modules/@noodle-borg/service/dist/oauth/fresh-auth.js +14 -0
  79. package/node_modules/@noodle-borg/service/dist/oauth/fresh-auth.js.map +1 -0
  80. package/node_modules/@noodle-borg/service/dist/oauth/google.d.ts +3 -2
  81. package/node_modules/@noodle-borg/service/dist/oauth/google.d.ts.map +1 -1
  82. package/node_modules/@noodle-borg/service/dist/oauth/google.js +8 -4
  83. package/node_modules/@noodle-borg/service/dist/oauth/google.js.map +1 -1
  84. package/node_modules/@noodle-borg/service/dist/oauth/provider.d.ts.map +1 -1
  85. package/node_modules/@noodle-borg/service/dist/oauth/provider.js +7 -2
  86. package/node_modules/@noodle-borg/service/dist/oauth/provider.js.map +1 -1
  87. package/node_modules/@noodle-borg/service/dist/oauth/store-postgres-schema.d.ts.map +1 -1
  88. package/node_modules/@noodle-borg/service/dist/oauth/store-postgres-schema.js +4 -0
  89. package/node_modules/@noodle-borg/service/dist/oauth/store-postgres-schema.js.map +1 -1
  90. package/node_modules/@noodle-borg/service/dist/oauth/store-postgres.d.ts.map +1 -1
  91. package/node_modules/@noodle-borg/service/dist/oauth/store-postgres.js +36 -12
  92. package/node_modules/@noodle-borg/service/dist/oauth/store-postgres.js.map +1 -1
  93. package/node_modules/@noodle-borg/service/dist/oauth/store.d.ts +3 -0
  94. package/node_modules/@noodle-borg/service/dist/oauth/store.d.ts.map +1 -1
  95. package/node_modules/@noodle-borg/service/dist/oauth/store.js +19 -7
  96. package/node_modules/@noodle-borg/service/dist/oauth/store.js.map +1 -1
  97. package/node_modules/@noodle-borg/service/dist/oauth/token-issuer.d.ts +1 -0
  98. package/node_modules/@noodle-borg/service/dist/oauth/token-issuer.d.ts.map +1 -1
  99. package/node_modules/@noodle-borg/service/dist/oauth/token-issuer.js +13 -5
  100. package/node_modules/@noodle-borg/service/dist/oauth/token-issuer.js.map +1 -1
  101. package/node_modules/@noodle-borg/service/dist/oauth/upstream-callback-handler.d.ts.map +1 -1
  102. package/node_modules/@noodle-borg/service/dist/oauth/upstream-callback-handler.js +5 -0
  103. package/node_modules/@noodle-borg/service/dist/oauth/upstream-callback-handler.js.map +1 -1
  104. package/node_modules/@noodle-borg/service/dist/oauth/upstream-consent.d.ts +1 -0
  105. package/node_modules/@noodle-borg/service/dist/oauth/upstream-consent.d.ts.map +1 -1
  106. package/node_modules/@noodle-borg/service/dist/oauth/upstream-consent.js +33 -21
  107. package/node_modules/@noodle-borg/service/dist/oauth/upstream-consent.js.map +1 -1
  108. package/node_modules/@noodle-borg/service/dist/oauth/upstream-federation.d.ts +2 -1
  109. package/node_modules/@noodle-borg/service/dist/oauth/upstream-federation.d.ts.map +1 -1
  110. package/node_modules/@noodle-borg/service/dist/oauth/upstream-federation.js +2 -2
  111. package/node_modules/@noodle-borg/service/dist/oauth/upstream-federation.js.map +1 -1
  112. package/node_modules/@noodle-borg/service/dist/oauth/upstream-human.d.ts +4 -1
  113. package/node_modules/@noodle-borg/service/dist/oauth/upstream-human.d.ts.map +1 -1
  114. package/node_modules/@noodle-borg/service/dist/oauth/upstream-human.js.map +1 -1
  115. package/node_modules/@noodle-borg/service/dist/oauth/upstream-provider-choice.d.ts.map +1 -1
  116. package/node_modules/@noodle-borg/service/dist/oauth/upstream-provider-choice.js +4 -0
  117. package/node_modules/@noodle-borg/service/dist/oauth/upstream-provider-choice.js.map +1 -1
  118. package/node_modules/@noodle-borg/service/dist/oauth/workos.d.ts +4 -2
  119. package/node_modules/@noodle-borg/service/dist/oauth/workos.d.ts.map +1 -1
  120. package/node_modules/@noodle-borg/service/dist/oauth/workos.js +5 -3
  121. package/node_modules/@noodle-borg/service/dist/oauth/workos.js.map +1 -1
  122. package/node_modules/@noodle-borg/service/dist/routes/auth-discovery.d.ts.map +1 -1
  123. package/node_modules/@noodle-borg/service/dist/routes/auth-discovery.js +46 -0
  124. package/node_modules/@noodle-borg/service/dist/routes/auth-discovery.js.map +1 -1
  125. package/node_modules/@noodle-borg/service/dist/routes/config-contracts.d.ts +181 -0
  126. package/node_modules/@noodle-borg/service/dist/routes/config-contracts.d.ts.map +1 -0
  127. package/node_modules/@noodle-borg/service/dist/routes/config-contracts.js +50 -0
  128. package/node_modules/@noodle-borg/service/dist/routes/config-contracts.js.map +1 -0
  129. package/node_modules/@noodle-borg/service/dist/routes/config-values-dispatch.d.ts +20 -0
  130. package/node_modules/@noodle-borg/service/dist/routes/config-values-dispatch.d.ts.map +1 -0
  131. package/node_modules/@noodle-borg/service/dist/routes/config-values-dispatch.js +37 -0
  132. package/node_modules/@noodle-borg/service/dist/routes/config-values-dispatch.js.map +1 -0
  133. package/node_modules/@noodle-borg/service/dist/routes/config-values-paths.d.ts +12 -0
  134. package/node_modules/@noodle-borg/service/dist/routes/config-values-paths.d.ts.map +1 -0
  135. package/node_modules/@noodle-borg/service/dist/routes/config-values-paths.js +88 -0
  136. package/node_modules/@noodle-borg/service/dist/routes/config-values-paths.js.map +1 -0
  137. package/node_modules/@noodle-borg/service/dist/routes/config-values.d.ts +8 -0
  138. package/node_modules/@noodle-borg/service/dist/routes/config-values.d.ts.map +1 -0
  139. package/node_modules/@noodle-borg/service/dist/routes/config-values.js +218 -0
  140. package/node_modules/@noodle-borg/service/dist/routes/config-values.js.map +1 -0
  141. package/node_modules/@noodle-borg/service/dist/routes/control-plane.d.ts +2 -3
  142. package/node_modules/@noodle-borg/service/dist/routes/control-plane.d.ts.map +1 -1
  143. package/node_modules/@noodle-borg/service/dist/routes/control-plane.js +2 -71
  144. package/node_modules/@noodle-borg/service/dist/routes/control-plane.js.map +1 -1
  145. package/node_modules/@noodle-borg/service/dist/routes/paths.d.ts +2 -9
  146. package/node_modules/@noodle-borg/service/dist/routes/paths.d.ts.map +1 -1
  147. package/node_modules/@noodle-borg/service/dist/routes/paths.js +2 -40
  148. package/node_modules/@noodle-borg/service/dist/routes/paths.js.map +1 -1
  149. package/node_modules/@noodle-borg/service/dist/service.d.ts.map +1 -1
  150. package/node_modules/@noodle-borg/service/dist/service.js +15 -13
  151. package/node_modules/@noodle-borg/service/dist/service.js.map +1 -1
  152. package/node_modules/@noodle-borg/service/dist/store/config-values.d.ts +57 -0
  153. package/node_modules/@noodle-borg/service/dist/store/config-values.d.ts.map +1 -0
  154. package/node_modules/@noodle-borg/service/dist/store/config-values.js +98 -0
  155. package/node_modules/@noodle-borg/service/dist/store/config-values.js.map +1 -0
  156. package/node_modules/@noodle-borg/service/dist/store/postgres-config.d.ts +1 -1
  157. package/node_modules/@noodle-borg/service/dist/store/postgres-config.d.ts.map +1 -1
  158. package/node_modules/@noodle-borg/service/dist/store/postgres-config.js +22 -3
  159. package/node_modules/@noodle-borg/service/dist/store/postgres-config.js.map +1 -1
  160. package/node_modules/@noodle-borg/service/dist/store/postgres.d.ts +1 -1
  161. package/node_modules/@noodle-borg/service/dist/store/postgres.d.ts.map +1 -1
  162. package/node_modules/@noodle-borg/service/dist/store/postgres.js +2 -2
  163. package/node_modules/@noodle-borg/service/dist/store/postgres.js.map +1 -1
  164. package/node_modules/@noodle-borg/service/dist/store.d.ts +1 -56
  165. package/node_modules/@noodle-borg/service/dist/store.d.ts.map +1 -1
  166. package/node_modules/@noodle-borg/service/dist/store.js +1 -84
  167. package/node_modules/@noodle-borg/service/dist/store.js.map +1 -1
  168. package/package.json +1 -1
@@ -1,68 +1,75 @@
1
+ // Intent router for the project-local `noodle-seed` skill. Keep this file small: it selects one
2
+ // outcome workflow and bounds progressive disclosure. Detailed MCP guidance belongs in the
3
+ // one-level reference tree rendered by skill-content.ts.
4
+ import { BEHAVIOR_SKILLS } from './behavior-skills.js';
1
5
  export const SKILL_DESCRIPTION = 'Use when building, validating, testing, deploying, or operating a local or hosted Noodle Seed ' +
2
6
  'MCP server or app authored in TypeScript with the noodle CLI.';
3
7
  export const APP_DIRECTORY_COMPLIANCE_REFERENCE = 'references/app-directory-compliance.md';
4
8
  export const SKILL_ROUTES = [
9
+ {
10
+ id: 'design-product',
11
+ intent: 'Turn a vague MCP product idea into a bounded design before implementation',
12
+ skill: 'designing-mcp-products',
13
+ exitCondition: 'The product contract identifies the user benefit, model boundary, evidence, and next implementation skill.',
14
+ },
5
15
  {
6
16
  id: 'build-server',
7
17
  intent: 'Create or extend a headless MCP server whose external API contract is already modeled',
8
- primaryReference: 'references/build-an-mcp-server.md',
9
- supportingReferences: ['references/authoring-workflow.md', 'references/sdk-surface.md'],
18
+ skill: 'authoring-mcp-servers',
10
19
  exitCondition: 'The requested server behavior is locally validated and tested; connector reads have real-output evidence.',
11
20
  },
12
21
  {
13
22
  id: 'connect-api',
14
23
  intent: 'Connect a real API when credentials or an API specification are available',
15
- primaryReference: 'references/connect-an-api.md',
16
- supportingReferences: ['references/authoring-workflow.md'],
24
+ skill: 'connecting-apis-to-mcp',
17
25
  exitCondition: 'A representative live read returns populated, intentionally mapped fields without exposing credentials.',
18
26
  },
19
27
  {
20
28
  id: 'build-app',
21
29
  intent: 'Build or change an MCP App, widget, or host-visible UI',
22
- primaryReference: 'references/build-an-mcp-app.md',
23
- supportingReferences: ['references/experience-design.md', 'references/widgets-and-apps.md'],
30
+ skill: 'building-mcp-apps',
24
31
  exitCondition: 'The UI has a stated user benefit, passes the requested checks, and degrades to useful text.',
25
32
  },
26
33
  {
27
34
  id: 'verify-recover',
28
- intent: 'Validate, test, diagnose, or recover a failing local or hosted project',
29
- primaryReference: 'references/verify-and-recover.md',
30
- supportingReferences: ['references/agent-contract.md', 'references/compile-errors.md'],
35
+ intent: 'Validate, test, or prove a project at a named delivery evidence level',
36
+ skill: 'verifying-mcp-delivery',
31
37
  exitCondition: 'The failing evidence layer is repaired and rerun, or the remaining blocker and exact next action are reported.',
32
38
  },
39
+ {
40
+ id: 'debug-recover',
41
+ intent: 'Diagnose or recover an existing project with concrete local or hosted failure evidence',
42
+ skill: 'debugging-mcp-delivery',
43
+ exitCondition: 'The failing layer is repaired and rerun, or the stable blocker and exact next action are reported.',
44
+ },
33
45
  {
34
46
  id: 'inspect-hosted',
35
47
  intent: 'Inspect or diagnose hosted status, logs, metrics, events, or deployment metadata read-only',
36
- primaryReference: 'references/inspect-hosted.md',
37
- supportingReferences: [],
48
+ skill: 'debugging-mcp-delivery',
38
49
  exitCondition: 'The requested hosted evidence is reported without changing target, configuration, access, or deployment state.',
39
50
  },
40
51
  {
41
52
  id: 'deploy-hosted',
42
53
  intent: 'Deploy, configure, connect with writes, change access, or roll back a hosted MCP service when explicitly requested',
43
- primaryReference: 'references/deploy-and-ops.md',
44
- supportingReferences: ['references/cli-commands.md'],
54
+ skill: 'deploying-mcp-services',
45
55
  exitCondition: 'The requested hosted state is evidenced without claiming unperformed host or production checks.',
46
56
  },
47
57
  {
48
58
  id: 'embed-assistant',
49
59
  intent: 'Embed a Noodle assistant in an existing SaaS or web application',
50
- primaryReference: 'references/embedded-assistant.md',
51
- supportingReferences: ['references/authoring-workflow.md'],
60
+ skill: 'embedding-mcp-assistants',
52
61
  exitCondition: 'The requested embed boundary works with verified identity and credential separation at the tested level.',
53
62
  },
54
63
  {
55
64
  id: 'publish',
56
65
  intent: 'Prepare or submit an integration to a host directory',
57
- primaryReference: 'references/publishing.md',
58
- supportingReferences: [APP_DIRECTORY_COMPLIANCE_REFERENCE],
66
+ skill: 'publishing-mcp-integrations',
59
67
  exitCondition: 'The requested submission evidence is complete and any host-review uncertainty is explicit.',
60
68
  },
61
69
  {
62
70
  id: 'feedback',
63
71
  intent: 'Report a Noodle Seed bug, documentation gap, or product improvement',
64
- primaryReference: 'references/feedback.md',
65
- supportingReferences: [],
72
+ skill: 'reporting-noodle-feedback',
66
73
  exitCondition: 'A sanitized command is shown to the user and is submitted only after explicit approval.',
67
74
  },
68
75
  ];
@@ -91,13 +98,16 @@ export const REFERENCE_INDEX_LINES = [
91
98
  ];
92
99
  function routeTableLines() {
93
100
  return [
94
- '| User outcome | Primary reference | Supporting references only when needed | Done when |',
101
+ '| User outcome | Load sibling skill | Canonical playbook | Done when |',
95
102
  '| :--- | :--- | :--- | :--- |',
96
103
  ...SKILL_ROUTES.map((route) => {
97
- const supporting = route.supportingReferences.length > 0
98
- ? route.supportingReferences.map((reference) => `\`${reference}\``).join(', ')
104
+ const skill = BEHAVIOR_SKILLS.find((candidate) => candidate.name === route.skill);
105
+ if (skill === undefined)
106
+ throw new Error(`missing behavior skill for route ${route.id}`);
107
+ const supporting = skill.supportingReferences.length > 0
108
+ ? skill.supportingReferences.map((reference) => `\`${reference}\``).join(', ')
99
109
  : 'None';
100
- return `| ${route.intent} | \`${route.primaryReference}\` | ${supporting} | ${route.exitCondition} |`;
110
+ return `| ${route.intent} | \`${route.skill}\` | \`${skill.primaryReference}\` (${supporting}) | ${route.exitCondition} |`;
101
111
  }),
102
112
  ];
103
113
  }
@@ -116,9 +126,9 @@ export function skillRouterBody(_target) {
116
126
  '',
117
127
  '## Route the request',
118
128
  '',
119
- 'Choose exactly one primary route from the user outcome below. Read that primary reference in full, then begin the work. Read supporting references only when the primary workflow sends you there or the named evidence exposes that concern. Stop discovery once the route is selected.',
129
+ 'Choose exactly one primary route from the user outcome below, then load the selected sibling skill and hand off the request. Read that primary reference in full; read supporting references only when the sibling or observed evidence requires them. Do not reread the corpus or restart discovery after the handoff.',
120
130
  '',
121
- 'Apply this precedence when wording overlaps: diagnosis of an existing failure takes the verification route; an MCP App/UI outcome takes the App route; external API integration from credentials, a URL, or an API specification takes precedence over generic server building; hosted inspection is the read-only route; hosted mutation requires the explicitly requested deployment route.',
131
+ 'Apply this precedence when wording overlaps: concrete failure evidence takes the debugging route; an MCP App/UI outcome takes the App route; external API integration from credentials, a URL, or an API specification takes precedence over generic server building; hosted inspection is debugging read-only; hosted mutation requires the explicitly requested deployment route.',
122
132
  '',
123
133
  'Negative routing examples: “Inspect hosted logs/status” → `inspect-hosted` (read-only). “Prepare for deployment” → the applicable build or verification route and stop with a handoff; preparation does not authorize `link`, hosted config, deployment, rollback, host writes, or submission. “Keep this local” → a build or verification route, never a hosted route.',
124
134
  '',
@@ -1 +1 @@
1
- {"version":3,"file":"skill-router.js","sourceRoot":"","sources":["../src/skill-router.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"skill-router.js","sourceRoot":"","sources":["../src/skill-router.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@noodle-borg/agent-kit",
3
- "version": "0.37.0",
3
+ "version": "0.39.0",
4
4
  "private": true,
5
5
  "license": "Apache-2.0",
6
6
  "type": "module",
@@ -14,6 +14,8 @@ export interface AccessTokenClaims {
14
14
  readonly timeZone?: string;
15
15
  /** Space-delimited scopes, when any. */
16
16
  readonly scope?: string;
17
+ /** Verified upstream authentication event time as a JWT NumericDate in integer seconds. */
18
+ readonly authTime?: number;
17
19
  /** Boundary represented by the token. Absent means the normal Noodle platform identity boundary. */
18
20
  readonly identityKind?: 'platform' | 'customer';
19
21
  /** Customer bridge provider that verified the upstream identity, when this is a customer token. */
@@ -1 +1 @@
1
- {"version":3,"file":"jwt-issuer.d.ts","sourceRoot":"","sources":["../src/jwt-issuer.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAEtD,MAAM,WAAW,iBAAiB;IAChC,0FAA0F;IAC1F,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,qGAAqG;IACrG,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,gFAAgF;IAChF,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,sCAAsC;IACtC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,8CAA8C;IAC9C,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,+DAA+D;IAC/D,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,wCAAwC;IACxC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,oGAAoG;IACpG,QAAQ,CAAC,YAAY,CAAC,EAAE,UAAU,GAAG,UAAU,CAAC;IAChD,mGAAmG;IACnG,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACnC,gGAAgG;IAChG,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACnC,mDAAmD;IACnD,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;CACjC;AAED;;;;;GAKG;AACH,wBAAsB,eAAe,CACnC,QAAQ,EAAE,kBAAkB,EAC5B,MAAM,EAAE,iBAAiB,EACzB,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,MAAM,CAAC,CAsBjB"}
1
+ {"version":3,"file":"jwt-issuer.d.ts","sourceRoot":"","sources":["../src/jwt-issuer.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAEtD,MAAM,WAAW,iBAAiB;IAChC,0FAA0F;IAC1F,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,qGAAqG;IACrG,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,gFAAgF;IAChF,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,sCAAsC;IACtC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,8CAA8C;IAC9C,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,+DAA+D;IAC/D,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,wCAAwC;IACxC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,2FAA2F;IAC3F,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,oGAAoG;IACpG,QAAQ,CAAC,YAAY,CAAC,EAAE,UAAU,GAAG,UAAU,CAAC;IAChD,mGAAmG;IACnG,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACnC,gGAAgG;IAChG,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACnC,mDAAmD;IACnD,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;CACjC;AAED;;;;;GAKG;AACH,wBAAsB,eAAe,CACnC,QAAQ,EAAE,kBAAkB,EAC5B,MAAM,EAAE,iBAAiB,EACzB,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,MAAM,CAAC,CAuBjB"}
@@ -13,6 +13,7 @@ export async function mintAccessToken(provider, claims, ttlSeconds) {
13
13
  ...(claims.locale !== undefined ? { locale: claims.locale } : {}),
14
14
  ...(claims.timeZone !== undefined ? { zoneinfo: claims.timeZone } : {}),
15
15
  ...(claims.scope !== undefined ? { scope: claims.scope } : {}),
16
+ ...(claims.authTime !== undefined ? { auth_time: claims.authTime } : {}),
16
17
  ...(claims.identityKind !== undefined ? { noodle_identity: claims.identityKind } : {}),
17
18
  ...(claims.identityProvider !== undefined
18
19
  ? { noodle_identity_provider: claims.identityProvider }
@@ -1 +1 @@
1
- {"version":3,"file":"jwt-issuer.js","sourceRoot":"","sources":["../src/jwt-issuer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AA4B/B;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,QAA4B,EAC5B,MAAyB,EACzB,UAAkB;IAElB,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,UAAU,EAAE,CAAC;IACxC,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC;QACtB,GAAG,CAAC,MAAM,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9D,GAAG,CAAC,MAAM,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjE,GAAG,CAAC,MAAM,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvE,GAAG,CAAC,MAAM,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9D,GAAG,CAAC,MAAM,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACtF,GAAG,CAAC,MAAM,CAAC,gBAAgB,KAAK,SAAS;YACvC,CAAC,CAAC,EAAE,wBAAwB,EAAE,MAAM,CAAC,gBAAgB,EAAE;YACvD,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,MAAM,CAAC,gBAAgB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,MAAM,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9F,GAAG,CAAC,MAAM,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACnF,CAAC;SACC,kBAAkB,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC;SACjE,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC;SACxB,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC;SAC1B,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC;SAC5B,WAAW,EAAE;SACb,MAAM,CAAC,UAAU,EAAE,CAAC;SACpB,iBAAiB,CAAC,GAAG,UAAU,GAAG,CAAC,CAAC;IACvC,OAAO,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;AAClC,CAAC"}
1
+ {"version":3,"file":"jwt-issuer.js","sourceRoot":"","sources":["../src/jwt-issuer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AA8B/B;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,QAA4B,EAC5B,MAAyB,EACzB,UAAkB;IAElB,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,UAAU,EAAE,CAAC;IACxC,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC;QACtB,GAAG,CAAC,MAAM,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9D,GAAG,CAAC,MAAM,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjE,GAAG,CAAC,MAAM,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvE,GAAG,CAAC,MAAM,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9D,GAAG,CAAC,MAAM,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACxE,GAAG,CAAC,MAAM,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACtF,GAAG,CAAC,MAAM,CAAC,gBAAgB,KAAK,SAAS;YACvC,CAAC,CAAC,EAAE,wBAAwB,EAAE,MAAM,CAAC,gBAAgB,EAAE;YACvD,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,MAAM,CAAC,gBAAgB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,MAAM,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9F,GAAG,CAAC,MAAM,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACnF,CAAC;SACC,kBAAkB,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC;SACjE,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC;SACxB,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC;SAC1B,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC;SAC5B,WAAW,EAAE;SACb,MAAM,CAAC,UAAU,EAAE,CAAC;SACpB,iBAAiB,CAAC,GAAG,UAAU,GAAG,CAAC,CAAC;IACvC,OAAO,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;AAClC,CAAC"}
@@ -19,6 +19,8 @@ export interface VerifiedIdentity {
19
19
  readonly timeZone?: string;
20
20
  /** Expiry in seconds since the epoch, when present. */
21
21
  readonly expiresAt?: number;
22
+ /** Verified upstream authentication event time as a JWT NumericDate in integer seconds. */
23
+ readonly authTime?: number;
22
24
  /** Boundary represented by the token. Absent means the normal Noodle platform identity boundary. */
23
25
  readonly identityKind?: 'platform' | 'customer';
24
26
  /** Customer bridge provider that verified the upstream identity, when this is a customer token. */
@@ -1 +1 @@
1
- {"version":3,"file":"verify.d.ts","sourceRoot":"","sources":["../src/verify.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAc,eAAe,EAAE,MAAM,MAAM,CAAC;AAGxD;;;;GAIG;AACH,MAAM,WAAW,gBAAgB;IAC/B,6FAA6F;IAC7F,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,2DAA2D;IAC3D,QAAQ,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;IACnC,sEAAsE;IACtE,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,sDAAsD;IACtD,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,qEAAqE;IACrE,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,sFAAsF;IACtF,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,uDAAuD;IACvD,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,oGAAoG;IACpG,QAAQ,CAAC,YAAY,CAAC,EAAE,UAAU,GAAG,UAAU,CAAC;IAChD,mGAAmG;IACnG,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACnC,uEAAuE;IACvE,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACnC,0DAA0D;IAC1D,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;CACjC;AAED,MAAM,WAAW,iBAAiB;IAChC,kFAAkF;IAClF,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,qGAAqG;IACrG,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B;;;OAGG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,eAAe,CAAC;CACxC;AAED;;;;GAIG;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAAC;AAEnG;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,iBAAiB,GAAG,aAAa,CAc1E"}
1
+ {"version":3,"file":"verify.d.ts","sourceRoot":"","sources":["../src/verify.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAc,eAAe,EAAE,MAAM,MAAM,CAAC;AAGxD;;;;GAIG;AACH,MAAM,WAAW,gBAAgB;IAC/B,6FAA6F;IAC7F,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,2DAA2D;IAC3D,QAAQ,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;IACnC,sEAAsE;IACtE,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,sDAAsD;IACtD,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,qEAAqE;IACrE,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,sFAAsF;IACtF,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,uDAAuD;IACvD,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,2FAA2F;IAC3F,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,oGAAoG;IACpG,QAAQ,CAAC,YAAY,CAAC,EAAE,UAAU,GAAG,UAAU,CAAC;IAChD,mGAAmG;IACnG,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACnC,uEAAuE;IACvE,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACnC,0DAA0D;IAC1D,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;CACjC;AAED,MAAM,WAAW,iBAAiB;IAChC,kFAAkF;IAClF,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,qGAAqG;IACrG,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B;;;OAGG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,eAAe,CAAC;CACxC;AAED;;;;GAIG;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAAC;AAEnG;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,iBAAiB,GAAG,aAAa,CAc1E"}
@@ -33,6 +33,9 @@ function toIdentity(payload) {
33
33
  const timeZone = canonicalTimeZone(payload.zoneinfo);
34
34
  const developerGrantId = boundedClaim(payload.noodle_grant_id);
35
35
  const oauthClientId = boundedClaim(payload.client_id);
36
+ const authTime = validatedAuthenticationTime(payload.auth_time);
37
+ if (authTime === null)
38
+ return null;
36
39
  return {
37
40
  subject: payload.sub,
38
41
  scopes: parseScopes(payload),
@@ -41,6 +44,7 @@ function toIdentity(payload) {
41
44
  ...(locale !== undefined ? { locale } : {}),
42
45
  ...(timeZone !== undefined ? { timeZone } : {}),
43
46
  ...(typeof payload.exp === 'number' ? { expiresAt: payload.exp } : {}),
47
+ ...(authTime !== undefined ? { authTime } : {}),
44
48
  ...(payload.noodle_identity === 'platform' || payload.noodle_identity === 'customer'
45
49
  ? { identityKind: payload.noodle_identity }
46
50
  : {}),
@@ -51,6 +55,18 @@ function toIdentity(payload) {
51
55
  ...(oauthClientId !== undefined ? { oauthClientId } : {}),
52
56
  };
53
57
  }
58
+ function validatedAuthenticationTime(value) {
59
+ if (value === undefined)
60
+ return undefined;
61
+ if (typeof value !== 'number' ||
62
+ !Number.isFinite(value) ||
63
+ !Number.isInteger(value) ||
64
+ value < 0 ||
65
+ value > Math.floor(Date.now() / 1_000)) {
66
+ return null;
67
+ }
68
+ return value;
69
+ }
54
70
  function boundedClaim(value) {
55
71
  if (typeof value !== 'string')
56
72
  return undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"verify.js","sourceRoot":"","sources":["../src/verify.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"verify.js","sourceRoot":"","sources":["../src/verify.ts"],"names":[],"mappings":"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"}
@@ -19,6 +19,8 @@ export interface ControlPlaneIdentity {
19
19
  readonly developerGrantId?: string;
20
20
  /** OAuth client bound to this token, required whenever `developerGrantId` is present. */
21
21
  readonly oauthClientId?: string;
22
+ /** Verified upstream authentication event time, as a JWT NumericDate in integer seconds. */
23
+ readonly authTime?: number;
22
24
  }
23
25
  export type ControlPlaneAuthResult = {
24
26
  readonly ok: true;
@@ -112,6 +114,7 @@ export interface NoodleOAuthControlPlaneGateOptions {
112
114
  readonly givenName?: string;
113
115
  readonly developerGrantId?: string;
114
116
  readonly oauthClientId?: string;
117
+ readonly authTime?: number;
115
118
  } | null>;
116
119
  readonly audience: string | readonly string[];
117
120
  readonly admins: readonly string[];
@@ -1 +1 @@
1
- {"version":3,"file":"deploy-gate.d.ts","sourceRoot":"","sources":["../../src/auth/deploy-gate.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AACjD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,EAAyB,KAAK,yBAAyB,EAAE,MAAM,yBAAyB,CAAC;AAEhG;;;;;GAKG;AACH,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,wGAAwG;IACxG,QAAQ,CAAC,eAAe,CAAC,EAAE,kBAAkB,CAAC;IAC9C,4FAA4F;IAC5F,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;IAC7B,6EAA6E;IAC7E,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACnC,yFAAyF;IACzF,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;CACjC;AAED,MAAM,MAAM,sBAAsB,GAC9B;IAAE,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC;IAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,oBAAoB,CAAA;CAAE,GAC/D;IAAE,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,GAAG,GAAG,GAAG,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAEjF,MAAM,WAAW,cAAc;IAC7B,iFAAiF;IACjF,SAAS,CAAC,GAAG,EAAE,eAAe,GAAG,OAAO,CAAC,sBAAsB,CAAC,GAAG,sBAAsB,CAAC;CAC3F;AAED,mGAAmG;AACnG,wBAAgB,WAAW,CAAC,GAAG,EAAE,eAAe,GAAG,MAAM,GAAG,IAAI,CAK/D;AAED,uGAAuG;AACvG,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,OAAO,CAI/D;AAED,sFAAsF;AACtF,wBAAgB,YAAY,IAAI,cAAc,CAE7C;AAED,MAAM,WAAW,qBAAqB;IACpC,MAAM,CACJ,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,GACnC,OAAO,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACpE;AAED,MAAM,WAAW,gBAAgB;IAC/B,eAAe,CAAC,KAAK,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC;CACxF;AAED,MAAM,MAAM,sBAAsB,GAAG,YAAY,GAAG,QAAQ,CAAC;AAE7D,MAAM,WAAW,6BAA6B;IAC5C;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,CAAC;IAC9C,QAAQ,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;IACnC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IACrC,QAAQ,CAAC,UAAU,CAAC,EAAE,sBAAsB,CAAC;IAC7C,QAAQ,CAAC,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IAC7C,QAAQ,CAAC,mBAAmB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACjD,QAAQ,CAAC,oBAAoB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAClD,QAAQ,CAAC,QAAQ,CAAC,EAAE,qBAAqB,CAAC;IAC1C,8FAA8F;IAC9F,QAAQ,CAAC,yBAAyB,CAAC,EAAE,yBAAyB,CAAC;CAChE;AAED,qBAAa,sBAAuB,YAAW,cAAc;;gBAW/C,OAAO,EAAE,6BAA6B;IAoB5C,SAAS,CAAC,GAAG,EAAE,eAAe,GAAG,OAAO,CAAC,sBAAsB,CAAC;CAsDvE;AAED,MAAM,WAAW,qCAAqC;IACpD,mFAAmF;IACnF,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,CAAC;IAC9C,gFAAgF;IAChF,QAAQ,CAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;IACrC,QAAQ,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;IACnC,QAAQ,CAAC,QAAQ,CAAC,EAAE,qBAAqB,CAAC;CAC3C;AAED;;;;GAIG;AACH,qBAAa,8BAA+B,YAAW,cAAc;;gBAMvD,OAAO,EAAE,qCAAqC;IAuBpD,SAAS,CAAC,GAAG,EAAE,eAAe,GAAG,OAAO,CAAC,sBAAsB,CAAC;CA4BvE;AAED;;;;;;;GAOG;AACH,qBAAa,yBAA0B,YAAW,cAAc;;gBAGlD,KAAK,EAAE,SAAS,cAAc,EAAE;IAOtC,SAAS,CAAC,GAAG,EAAE,eAAe,GAAG,OAAO,CAAC,sBAAsB,CAAC;CAWvE;AAED,MAAM,WAAW,kCAAkC;IACjD,QAAQ,CAAC,QAAQ,EAAE,CACjB,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,KACb,OAAO,CAAC;QACX,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;QACzB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QACxB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;QAC5B,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;QACnC,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;KACjC,GAAG,IAAI,CAAC,CAAC;IACV,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,CAAC;IAC9C,QAAQ,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;IACnC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IACrC,QAAQ,CAAC,UAAU,CAAC,EAAE,sBAAsB,CAAC;IAC7C,QAAQ,CAAC,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IAC7C,QAAQ,CAAC,mBAAmB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACjD,QAAQ,CAAC,oBAAoB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAClD,0GAA0G;IAC1G,QAAQ,CAAC,yBAAyB,CAAC,EAAE,yBAAyB,CAAC;CAChE;AAED,qBAAa,2BAA4B,YAAW,cAAc;;gBAoBpD,OAAO,EAAE,kCAAkC;IAkBjD,SAAS,CAAC,GAAG,EAAE,eAAe,GAAG,OAAO,CAAC,sBAAsB,CAAC;CAqDvE"}
1
+ {"version":3,"file":"deploy-gate.d.ts","sourceRoot":"","sources":["../../src/auth/deploy-gate.ts"],"names":[],"mappings":"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"}
@@ -261,6 +261,7 @@ export class NoodleOAuthControlPlaneGate {
261
261
  ? { developerGrantId: identity.developerGrantId }
262
262
  : {}),
263
263
  ...(identity.oauthClientId !== undefined ? { oauthClientId: identity.oauthClientId } : {}),
264
+ ...(identity.authTime !== undefined ? { authTime: identity.authTime } : {}),
264
265
  superAdmin: identity.developerGrantId === undefined &&
265
266
  // Noodle access tokens carry the canonical principal. Mutable email must never grant authority.
266
267
  this.#admins.has(identity.subject.toLowerCase()),
@@ -1 +1 @@
1
- {"version":3,"file":"deploy-gate.js","sourceRoot":"","sources":["../../src/auth/deploy-gate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"deploy-gate.js","sourceRoot":"","sources":["../../src/auth/deploy-gate.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,58 @@
1
+ import type { ConfigValueMetadata, ManagedConfigKind } from './store.js';
2
+ export type ConfigSource = {
3
+ readonly kind: 'organization';
4
+ readonly organizationId: string;
5
+ } | {
6
+ readonly kind: 'app';
7
+ readonly organizationId: string;
8
+ readonly appId: string;
9
+ } | {
10
+ readonly kind: 'environment';
11
+ readonly organizationId: string;
12
+ readonly appId: string;
13
+ readonly environmentId: string;
14
+ readonly environmentName: string;
15
+ readonly isProduction: boolean;
16
+ };
17
+ export interface EffectiveConfigRow {
18
+ readonly name: string;
19
+ readonly source: ConfigSource;
20
+ readonly fallbackSource?: ConfigSource;
21
+ readonly value?: string;
22
+ }
23
+ export interface EffectiveConfigResponse {
24
+ readonly kind: 'secret' | 'variable';
25
+ readonly environment: {
26
+ readonly id: string;
27
+ readonly name: string;
28
+ readonly isProduction: boolean;
29
+ };
30
+ readonly capabilities: {
31
+ readonly canManage: boolean;
32
+ readonly canReveal: boolean;
33
+ };
34
+ readonly entries: readonly EffectiveConfigRow[];
35
+ }
36
+ export interface EffectiveConfigProjectionInput {
37
+ readonly kind: ManagedConfigKind;
38
+ readonly organization: {
39
+ readonly id: string;
40
+ };
41
+ readonly app: {
42
+ readonly id: string;
43
+ };
44
+ readonly environment: {
45
+ readonly id: string;
46
+ readonly name: string;
47
+ readonly isProduction: boolean;
48
+ };
49
+ readonly organizationValues: readonly ConfigValueMetadata[];
50
+ readonly appValues: readonly ConfigValueMetadata[];
51
+ readonly environmentValues: readonly ConfigValueMetadata[];
52
+ }
53
+ /**
54
+ * Builds the effective org → app → environment view without exposing secret values. Each override retains
55
+ * exactly its nearest lower-precedence source so clients can explain inheritance without resolving values.
56
+ */
57
+ export declare function projectEffectiveConfig(input: EffectiveConfigProjectionInput): readonly EffectiveConfigRow[];
58
+ //# sourceMappingURL=config-value-projection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config-value-projection.d.ts","sourceRoot":"","sources":["../src/config-value-projection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAEzE,MAAM,MAAM,YAAY,GACpB;IAAE,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAC;IAAC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAA;CAAE,GAClE;IAAE,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC;IAAC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GACjF;IACE,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC;IAC7B,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC;CAChC,CAAC;AAEN,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC;IAC9B,QAAQ,CAAC,cAAc,CAAC,EAAE,YAAY,CAAC;IACvC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,IAAI,EAAE,QAAQ,GAAG,UAAU,CAAC;IACrC,QAAQ,CAAC,WAAW,EAAE;QACpB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;QACpB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QACtB,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC;KAChC,CAAC;IACF,QAAQ,CAAC,YAAY,EAAE;QAAE,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;QAAC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAA;KAAE,CAAC;IACpF,QAAQ,CAAC,OAAO,EAAE,SAAS,kBAAkB,EAAE,CAAC;CACjD;AAED,MAAM,WAAW,8BAA8B;IAC7C,QAAQ,CAAC,IAAI,EAAE,iBAAiB,CAAC;IACjC,QAAQ,CAAC,YAAY,EAAE;QAAE,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC;IAC/C,QAAQ,CAAC,GAAG,EAAE;QAAE,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC;IACtC,QAAQ,CAAC,WAAW,EAAE;QACpB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;QACpB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QACtB,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC;KAChC,CAAC;IACF,QAAQ,CAAC,kBAAkB,EAAE,SAAS,mBAAmB,EAAE,CAAC;IAC5D,QAAQ,CAAC,SAAS,EAAE,SAAS,mBAAmB,EAAE,CAAC;IACnD,QAAQ,CAAC,iBAAiB,EAAE,SAAS,mBAAmB,EAAE,CAAC;CAC5D;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,8BAA8B,GACpC,SAAS,kBAAkB,EAAE,CAwB/B"}
@@ -0,0 +1,40 @@
1
+ /**
2
+ * Builds the effective org → app → environment view without exposing secret values. Each override retains
3
+ * exactly its nearest lower-precedence source so clients can explain inheritance without resolving values.
4
+ */
5
+ export function projectEffectiveConfig(input) {
6
+ const projected = new Map();
7
+ const organizationSource = {
8
+ kind: 'organization',
9
+ organizationId: input.organization.id,
10
+ };
11
+ const appSource = {
12
+ kind: 'app',
13
+ organizationId: input.organization.id,
14
+ appId: input.app.id,
15
+ };
16
+ const environmentSource = {
17
+ kind: 'environment',
18
+ organizationId: input.organization.id,
19
+ appId: input.app.id,
20
+ environmentId: input.environment.id,
21
+ environmentName: input.environment.name,
22
+ isProduction: input.environment.isProduction,
23
+ };
24
+ projectScope(projected, input.kind, input.organizationValues, organizationSource);
25
+ projectScope(projected, input.kind, input.appValues, appSource);
26
+ projectScope(projected, input.kind, input.environmentValues, environmentSource);
27
+ return [...projected.values()].sort((left, right) => left.name.localeCompare(right.name));
28
+ }
29
+ function projectScope(projected, kind, values, source) {
30
+ for (const value of values) {
31
+ const inherited = projected.get(value.name);
32
+ projected.set(value.name, {
33
+ name: value.name,
34
+ source,
35
+ ...(inherited !== undefined ? { fallbackSource: inherited.source } : {}),
36
+ ...(kind === 'variable' && value.value !== undefined ? { value: value.value } : {}),
37
+ });
38
+ }
39
+ }
40
+ //# sourceMappingURL=config-value-projection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config-value-projection.js","sourceRoot":"","sources":["../src/config-value-projection.ts"],"names":[],"mappings":"AA8CA;;;GAGG;AACH,MAAM,UAAU,sBAAsB,CACpC,KAAqC;IAErC,MAAM,SAAS,GAAG,IAAI,GAAG,EAA8B,CAAC;IACxD,MAAM,kBAAkB,GAAiB;QACvC,IAAI,EAAE,cAAc;QACpB,cAAc,EAAE,KAAK,CAAC,YAAY,CAAC,EAAE;KACtC,CAAC;IACF,MAAM,SAAS,GAAiB;QAC9B,IAAI,EAAE,KAAK;QACX,cAAc,EAAE,KAAK,CAAC,YAAY,CAAC,EAAE;QACrC,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,EAAE;KACpB,CAAC;IACF,MAAM,iBAAiB,GAAiB;QACtC,IAAI,EAAE,aAAa;QACnB,cAAc,EAAE,KAAK,CAAC,YAAY,CAAC,EAAE;QACrC,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,EAAE;QACnB,aAAa,EAAE,KAAK,CAAC,WAAW,CAAC,EAAE;QACnC,eAAe,EAAE,KAAK,CAAC,WAAW,CAAC,IAAI;QACvC,YAAY,EAAE,KAAK,CAAC,WAAW,CAAC,YAAY;KAC7C,CAAC;IAEF,YAAY,CAAC,SAAS,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,kBAAkB,EAAE,kBAAkB,CAAC,CAAC;IAClF,YAAY,CAAC,SAAS,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IAChE,YAAY,CAAC,SAAS,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,iBAAiB,EAAE,iBAAiB,CAAC,CAAC;IAChF,OAAO,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;AAC5F,CAAC;AAED,SAAS,YAAY,CACnB,SAA0C,EAC1C,IAAuB,EACvB,MAAsC,EACtC,MAAoB;IAEpB,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,MAAM,SAAS,GAAG,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC5C,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE;YACxB,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,MAAM;YACN,GAAG,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACxE,GAAG,CAAC,IAAI,KAAK,UAAU,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACpF,CAAC,CAAC;IACL,CAAC;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"authorization-initiation.d.ts","sourceRoot":"","sources":["../../src/oauth/authorization-initiation.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mDAAmD,CAAC;AAC7F,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,0CAA0C,CAAC;AAC3F,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAE1D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAEvD,OAAO,KAAK,EACV,UAAU,EAGX,MAAM,YAAY,CAAC;AAGpB,OAAO,EAGL,KAAK,+BAA+B,EACpC,KAAK,oBAAoB,EAC1B,MAAM,qBAAqB,CAAC;AAE7B,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AAE7E,wBAAsB,qBAAqB,CAAC,KAAK,EAAE;IACjD,QAAQ,CAAC,MAAM,EAAE,0BAA0B,CAAC;IAC5C,QAAQ,CAAC,MAAM,EAAE,mBAAmB,CAAC;IACrC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC;IAC3B,QAAQ,CAAC,MAAM,CAAC,EAAE,mBAAmB,CAAC;IACtC,QAAQ,CAAC,MAAM,CAAC,EAAE,+BAA+B,CAAC;IAClD,QAAQ,CAAC,OAAO,CAAC,EAAE,oBAAoB,CAAC;IACxC,QAAQ,CAAC,YAAY,CAAC,EAAE,yBAAyB,CAAC;IAClD,QAAQ,CAAC,6BAA6B,CAAC,EAAE,CACvC,QAAQ,EAAE,MAAM,KACb,OAAO,CAAC,sBAAsB,GAAG,SAAS,CAAC,CAAC;IACjD,QAAQ,CAAC,wBAAwB,CAAC,EAAE,CAAC,MAAM,EAAE,0BAA0B,KAAK,MAAM,GAAG,SAAS,CAAC;IAC/F,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B,GAAG,OAAO,CAAC,IAAI,CAAC,CA+DhB"}
1
+ {"version":3,"file":"authorization-initiation.d.ts","sourceRoot":"","sources":["../../src/oauth/authorization-initiation.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mDAAmD,CAAC;AAC7F,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,0CAA0C,CAAC;AAC3F,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAG1D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAEvD,OAAO,KAAK,EACV,UAAU,EAGX,MAAM,YAAY,CAAC;AAGpB,OAAO,EAGL,KAAK,+BAA+B,EACpC,KAAK,oBAAoB,EAC1B,MAAM,qBAAqB,CAAC;AAE7B,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AAE7E,wBAAsB,qBAAqB,CAAC,KAAK,EAAE;IACjD,QAAQ,CAAC,MAAM,EAAE,0BAA0B,CAAC;IAC5C,QAAQ,CAAC,MAAM,EAAE,mBAAmB,CAAC;IACrC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC;IAC3B,QAAQ,CAAC,MAAM,CAAC,EAAE,mBAAmB,CAAC;IACtC,QAAQ,CAAC,MAAM,CAAC,EAAE,+BAA+B,CAAC;IAClD,QAAQ,CAAC,OAAO,CAAC,EAAE,oBAAoB,CAAC;IACxC,QAAQ,CAAC,YAAY,CAAC,EAAE,yBAAyB,CAAC;IAClD,QAAQ,CAAC,6BAA6B,CAAC,EAAE,CACvC,QAAQ,EAAE,MAAM,KACb,OAAO,CAAC,sBAAsB,GAAG,SAAS,CAAC,CAAC;IACjD,QAAQ,CAAC,wBAAwB,CAAC,EAAE,CAAC,MAAM,EAAE,0BAA0B,KAAK,MAAM,GAAG,SAAS,CAAC;IAC/F,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B,GAAG,OAAO,CAAC,IAAI,CAAC,CAkEhB"}
@@ -1,5 +1,6 @@
1
1
  import { InvalidRequestError } from '@modelcontextprotocol/sdk/server/auth/errors.js';
2
2
  import { bridgeAuthorizeUrl } from './customer-bridge.js';
3
+ import { FRESH_AUTH_SCOPE } from './fresh-auth.js';
3
4
  import { defaultResourceFromClient, normalizeResource } from './provider-util.js';
4
5
  import { hashToken, randomToken } from './tokens.js';
5
6
  import { upstreamAuthorizationUrl } from './upstream-federation.js';
@@ -53,6 +54,9 @@ export async function initiateAuthorization(input) {
53
54
  ...(input.google === undefined ? {} : { google: input.google }),
54
55
  ...(input.workos === undefined ? {} : { workos: input.workos }),
55
56
  state: nonce,
57
+ ...(input.params.scopes?.includes(FRESH_AUTH_SCOPE) === true
58
+ ? { options: { forceAuthentication: true } }
59
+ : {}),
56
60
  }));
57
61
  }
58
62
  function pendingRecord(input, resource, nonce, upstreamProvider) {
@@ -1 +1 @@
1
- {"version":3,"file":"authorization-initiation.js","sourceRoot":"","sources":["../../src/oauth/authorization-initiation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"authorization-initiation.js","sourceRoot":"","sources":["../../src/oauth/authorization-initiation.ts"],"names":[],"mappings":"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"}
@@ -13,6 +13,7 @@ export interface ConsentClaims {
13
13
  readonly ownerLocale?: string;
14
14
  readonly ownerTimeZone?: string;
15
15
  readonly scope?: string;
16
+ readonly authTime?: number;
16
17
  }
17
18
  export interface DeveloperGrantClaims extends Omit<ConsentClaims, 'kind'> {
18
19
  readonly kind: 'developer-grant';
@@ -1 +1 @@
1
- {"version":3,"file":"consent-claims.d.ts","sourceRoot":"","sources":["../../src/oauth/consent-claims.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAEvC,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AAG5E,mGAAmG;AACnG,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,oBAAqB,SAAQ,IAAI,CAAC,aAAa,EAAE,MAAM,CAAC;IACvE,QAAQ,CAAC,IAAI,EAAE,iBAAiB,CAAC;IACjC,QAAQ,CAAC,OAAO,EAAE,SAAS,oBAAoB,EAAE,CAAC;CACnD;AAED,wBAAgB,eAAe,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,IAAI,UAAU,GAAG,aAAa,CAa1F;AAED,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,UAAU,GAClB,OAAO,IAAI,UAAU,GAAG,oBAAoB,CAe9C"}
1
+ {"version":3,"file":"consent-claims.d.ts","sourceRoot":"","sources":["../../src/oauth/consent-claims.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAEvC,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AAG5E,mGAAmG;AACnG,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,oBAAqB,SAAQ,IAAI,CAAC,aAAa,EAAE,MAAM,CAAC;IACvE,QAAQ,CAAC,IAAI,EAAE,iBAAiB,CAAC;IACjC,QAAQ,CAAC,OAAO,EAAE,SAAS,oBAAoB,EAAE,CAAC;CACnD;AAED,wBAAgB,eAAe,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,IAAI,UAAU,GAAG,aAAa,CAc1F;AAED,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,UAAU,GAClB,OAAO,IAAI,UAAU,GAAG,oBAAoB,CAgB9C"}
@@ -7,6 +7,7 @@ export function isConsentClaims(payload) {
7
7
  typeof payload.codeChallenge === 'string' &&
8
8
  typeof payload.resource === 'string' &&
9
9
  typeof payload.ownerSubject === 'string' &&
10
+ validAuthenticationTime(payload.authTime) &&
10
11
  hasCanonicalOAuthIdentityPreferences({
11
12
  locale: payload.ownerLocale,
12
13
  timeZone: payload.ownerTimeZone,
@@ -21,11 +22,20 @@ export function isDeveloperGrantClaims(payload) {
21
22
  typeof payload.ownerSubject === 'string' &&
22
23
  Array.isArray(payload.choices) &&
23
24
  payload.choices.every(isDeveloperGrantChoice) &&
25
+ validAuthenticationTime(payload.authTime) &&
24
26
  hasCanonicalOAuthIdentityPreferences({
25
27
  locale: payload.ownerLocale,
26
28
  timeZone: payload.ownerTimeZone,
27
29
  }));
28
30
  }
31
+ function validAuthenticationTime(value) {
32
+ return (value === undefined ||
33
+ (typeof value === 'number' &&
34
+ Number.isFinite(value) &&
35
+ Number.isInteger(value) &&
36
+ value >= 0 &&
37
+ value <= Math.floor(Date.now() / 1_000)));
38
+ }
29
39
  function isDeveloperGrantChoice(value) {
30
40
  if (typeof value !== 'object' || value === null)
31
41
  return false;
@@ -1 +1 @@
1
- {"version":3,"file":"consent-claims.js","sourceRoot":"","sources":["../../src/oauth/consent-claims.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAInE,OAAO,EAAE,oCAAoC,EAAE,MAAM,2BAA2B,CAAC;AAsBjF,MAAM,UAAU,eAAe,CAAC,OAAmB;IACjD,OAAO,CACJ,OAA8B,CAAC,IAAI,KAAK,SAAS;QAClD,OAAQ,OAAkC,CAAC,QAAQ,KAAK,QAAQ;QAChE,OAAQ,OAAqC,CAAC,WAAW,KAAK,QAAQ;QACtE,OAAQ,OAAuC,CAAC,aAAa,KAAK,QAAQ;QAC1E,OAAQ,OAAkC,CAAC,QAAQ,KAAK,QAAQ;QAChE,OAAQ,OAAsC,CAAC,YAAY,KAAK,QAAQ;QACxE,oCAAoC,CAAC;YACnC,MAAM,EAAE,OAAO,CAAC,WAAW;YAC3B,QAAQ,EAAE,OAAO,CAAC,aAAa;SAChC,CAAC,CACH,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,sBAAsB,CACpC,OAAmB;IAEnB,OAAO,CACJ,OAA8B,CAAC,IAAI,KAAK,iBAAiB;QAC1D,OAAQ,OAAkC,CAAC,QAAQ,KAAK,QAAQ;QAChE,OAAQ,OAAqC,CAAC,WAAW,KAAK,QAAQ;QACtE,OAAQ,OAAuC,CAAC,aAAa,KAAK,QAAQ;QAC1E,OAAQ,OAAkC,CAAC,QAAQ,KAAK,QAAQ;QAChE,OAAQ,OAAsC,CAAC,YAAY,KAAK,QAAQ;QACxE,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC;QAC9B,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,sBAAsB,CAAC;QAC7C,oCAAoC,CAAC;YACnC,MAAM,EAAE,OAAO,CAAC,WAAW;YAC3B,QAAQ,EAAE,OAAO,CAAC,aAAa;SAChC,CAAC,CACH,CAAC;AACJ,CAAC;AAED,SAAS,sBAAsB,CAAC,KAAc;IAC5C,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IAC9D,MAAM,MAAM,GAAG,KAAgC,CAAC;IAChD,OAAO,CACL,OAAO,MAAM,CAAC,GAAG,KAAK,QAAQ;QAC9B,CAAC,MAAM,CAAC,WAAW,KAAK,SAAS,IAAI,OAAO,MAAM,CAAC,WAAW,KAAK,QAAQ,CAAC;QAC5E,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,YAAY,CAAC;QAClC,MAAM,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC;QAC9B,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,OAAO,WAAW,KAAK,QAAQ,CAAC;QAC3E,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,YAAY,CAAC;QAClC,MAAM,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC;QAC9B,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,qBAAqB,CAAC,CACjD,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"consent-claims.js","sourceRoot":"","sources":["../../src/oauth/consent-claims.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAInE,OAAO,EAAE,oCAAoC,EAAE,MAAM,2BAA2B,CAAC;AAuBjF,MAAM,UAAU,eAAe,CAAC,OAAmB;IACjD,OAAO,CACJ,OAA8B,CAAC,IAAI,KAAK,SAAS;QAClD,OAAQ,OAAkC,CAAC,QAAQ,KAAK,QAAQ;QAChE,OAAQ,OAAqC,CAAC,WAAW,KAAK,QAAQ;QACtE,OAAQ,OAAuC,CAAC,aAAa,KAAK,QAAQ;QAC1E,OAAQ,OAAkC,CAAC,QAAQ,KAAK,QAAQ;QAChE,OAAQ,OAAsC,CAAC,YAAY,KAAK,QAAQ;QACxE,uBAAuB,CAAC,OAAO,CAAC,QAAQ,CAAC;QACzC,oCAAoC,CAAC;YACnC,MAAM,EAAE,OAAO,CAAC,WAAW;YAC3B,QAAQ,EAAE,OAAO,CAAC,aAAa;SAChC,CAAC,CACH,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,sBAAsB,CACpC,OAAmB;IAEnB,OAAO,CACJ,OAA8B,CAAC,IAAI,KAAK,iBAAiB;QAC1D,OAAQ,OAAkC,CAAC,QAAQ,KAAK,QAAQ;QAChE,OAAQ,OAAqC,CAAC,WAAW,KAAK,QAAQ;QACtE,OAAQ,OAAuC,CAAC,aAAa,KAAK,QAAQ;QAC1E,OAAQ,OAAkC,CAAC,QAAQ,KAAK,QAAQ;QAChE,OAAQ,OAAsC,CAAC,YAAY,KAAK,QAAQ;QACxE,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC;QAC9B,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,sBAAsB,CAAC;QAC7C,uBAAuB,CAAC,OAAO,CAAC,QAAQ,CAAC;QACzC,oCAAoC,CAAC;YACnC,MAAM,EAAE,OAAO,CAAC,WAAW;YAC3B,QAAQ,EAAE,OAAO,CAAC,aAAa;SAChC,CAAC,CACH,CAAC;AACJ,CAAC;AAED,SAAS,uBAAuB,CAAC,KAAc;IAC7C,OAAO,CACL,KAAK,KAAK,SAAS;QACnB,CAAC,OAAO,KAAK,KAAK,QAAQ;YACxB,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC;YACtB,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC;YACvB,KAAK,IAAI,CAAC;YACV,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,CAAC,CAC3C,CAAC;AACJ,CAAC;AAED,SAAS,sBAAsB,CAAC,KAAc;IAC5C,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IAC9D,MAAM,MAAM,GAAG,KAAgC,CAAC;IAChD,OAAO,CACL,OAAO,MAAM,CAAC,GAAG,KAAK,QAAQ;QAC9B,CAAC,MAAM,CAAC,WAAW,KAAK,SAAS,IAAI,OAAO,MAAM,CAAC,WAAW,KAAK,QAAQ,CAAC;QAC5E,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,YAAY,CAAC;QAClC,MAAM,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC;QAC9B,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,OAAO,WAAW,KAAK,QAAQ,CAAC;QAC3E,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,YAAY,CAAC;QAClC,MAAM,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC;QAC9B,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,qBAAqB,CAAC,CACjD,CAAC;AACJ,CAAC"}