@cat-factory/server 0.170.1 → 0.171.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 (183) hide show
  1. package/dist/http/guards.d.ts +46 -0
  2. package/dist/http/guards.d.ts.map +1 -0
  3. package/dist/http/guards.js +57 -0
  4. package/dist/http/guards.js.map +1 -0
  5. package/dist/index.d.ts +1 -1
  6. package/dist/index.d.ts.map +1 -1
  7. package/dist/index.js +1 -1
  8. package/dist/index.js.map +1 -1
  9. package/dist/modules/accounts/AccountController.d.ts +0 -10
  10. package/dist/modules/accounts/AccountController.d.ts.map +1 -1
  11. package/dist/modules/accounts/AccountController.js +56 -101
  12. package/dist/modules/accounts/AccountController.js.map +1 -1
  13. package/dist/modules/agentRuns/AgentRunController.d.ts +0 -6
  14. package/dist/modules/agentRuns/AgentRunController.d.ts.map +1 -1
  15. package/dist/modules/agentRuns/AgentRunController.js +19 -16
  16. package/dist/modules/agentRuns/AgentRunController.js.map +1 -1
  17. package/dist/modules/artifacts/ArtifactController.d.ts.map +1 -1
  18. package/dist/modules/artifacts/ArtifactController.js +4 -15
  19. package/dist/modules/artifacts/ArtifactController.js.map +1 -1
  20. package/dist/modules/auth/AuthController.d.ts.map +1 -1
  21. package/dist/modules/auth/AuthController.js +14 -9
  22. package/dist/modules/auth/AuthController.js.map +1 -1
  23. package/dist/modules/bootstrap/BootstrapController.d.ts.map +1 -1
  24. package/dist/modules/bootstrap/BootstrapController.js +6 -20
  25. package/dist/modules/bootstrap/BootstrapController.js.map +1 -1
  26. package/dist/modules/brainstorm/BrainstormController.d.ts.map +1 -1
  27. package/dist/modules/brainstorm/BrainstormController.js +17 -27
  28. package/dist/modules/brainstorm/BrainstormController.js.map +1 -1
  29. package/dist/modules/bugHunt/BugHuntController.d.ts.map +1 -1
  30. package/dist/modules/bugHunt/BugHuntController.js +4 -12
  31. package/dist/modules/bugHunt/BugHuntController.js.map +1 -1
  32. package/dist/modules/clarity/ClarityReviewController.d.ts.map +1 -1
  33. package/dist/modules/clarity/ClarityReviewController.js +18 -27
  34. package/dist/modules/clarity/ClarityReviewController.js.map +1 -1
  35. package/dist/modules/docInterview/DocInterviewController.d.ts.map +1 -1
  36. package/dist/modules/docInterview/DocInterviewController.js +6 -17
  37. package/dist/modules/docInterview/DocInterviewController.js.map +1 -1
  38. package/dist/modules/documents/DocumentSourceController.d.ts.map +1 -1
  39. package/dist/modules/documents/DocumentSourceController.js +4 -32
  40. package/dist/modules/documents/DocumentSourceController.js.map +1 -1
  41. package/dist/modules/environments/EnvironmentController.d.ts.map +1 -1
  42. package/dist/modules/environments/EnvironmentController.js +10 -63
  43. package/dist/modules/environments/EnvironmentController.js.map +1 -1
  44. package/dist/modules/environments/EnvironmentUserHandlerController.d.ts.map +1 -1
  45. package/dist/modules/environments/EnvironmentUserHandlerController.js +16 -25
  46. package/dist/modules/environments/EnvironmentUserHandlerController.js.map +1 -1
  47. package/dist/modules/fragmentLibrary/FragmentLibraryController.d.ts.map +1 -1
  48. package/dist/modules/fragmentLibrary/FragmentLibraryController.js +26 -60
  49. package/dist/modules/fragmentLibrary/FragmentLibraryController.js.map +1 -1
  50. package/dist/modules/github/GitHubController.d.ts.map +1 -1
  51. package/dist/modules/github/GitHubController.js +14 -48
  52. package/dist/modules/github/GitHubController.js.map +1 -1
  53. package/dist/modules/gitlab/GitLabController.d.ts.map +1 -1
  54. package/dist/modules/gitlab/GitLabController.js +3 -12
  55. package/dist/modules/gitlab/GitLabController.js.map +1 -1
  56. package/dist/modules/incidentEnrichment/IncidentEnrichmentController.d.ts.map +1 -1
  57. package/dist/modules/incidentEnrichment/IncidentEnrichmentController.js +3 -12
  58. package/dist/modules/incidentEnrichment/IncidentEnrichmentController.js.map +1 -1
  59. package/dist/modules/initiatives/InitiativeController.d.ts.map +1 -1
  60. package/dist/modules/initiatives/InitiativeController.js +4 -39
  61. package/dist/modules/initiatives/InitiativeController.js.map +1 -1
  62. package/dist/modules/kaizen/KaizenController.d.ts.map +1 -1
  63. package/dist/modules/kaizen/KaizenController.js +3 -10
  64. package/dist/modules/kaizen/KaizenController.js.map +1 -1
  65. package/dist/modules/localModels/LocalModelEndpointController.d.ts.map +1 -1
  66. package/dist/modules/localModels/LocalModelEndpointController.js +21 -31
  67. package/dist/modules/localModels/LocalModelEndpointController.js.map +1 -1
  68. package/dist/modules/localSettings/LocalSettingsController.d.ts +0 -9
  69. package/dist/modules/localSettings/LocalSettingsController.d.ts.map +1 -1
  70. package/dist/modules/localSettings/LocalSettingsController.js +9 -12
  71. package/dist/modules/localSettings/LocalSettingsController.js.map +1 -1
  72. package/dist/modules/merge/MergeTrackRecordController.d.ts.map +1 -1
  73. package/dist/modules/merge/MergeTrackRecordController.js +3 -10
  74. package/dist/modules/merge/MergeTrackRecordController.js.map +1 -1
  75. package/dist/modules/merge/RiskPolicyController.d.ts.map +1 -1
  76. package/dist/modules/merge/RiskPolicyController.js +3 -16
  77. package/dist/modules/merge/RiskPolicyController.js.map +1 -1
  78. package/dist/modules/modelPresets/ModelPresetController.d.ts.map +1 -1
  79. package/dist/modules/modelPresets/ModelPresetController.js +3 -16
  80. package/dist/modules/modelPresets/ModelPresetController.js.map +1 -1
  81. package/dist/modules/notificationWebhook/NotificationWebhookController.d.ts.map +1 -1
  82. package/dist/modules/notificationWebhook/NotificationWebhookController.js +3 -12
  83. package/dist/modules/notificationWebhook/NotificationWebhookController.js.map +1 -1
  84. package/dist/modules/notifications/NotificationController.d.ts.map +1 -1
  85. package/dist/modules/notifications/NotificationController.js +3 -12
  86. package/dist/modules/notifications/NotificationController.js.map +1 -1
  87. package/dist/modules/observability/PlatformObservabilityController.d.ts.map +1 -1
  88. package/dist/modules/observability/PlatformObservabilityController.js +7 -11
  89. package/dist/modules/observability/PlatformObservabilityController.js.map +1 -1
  90. package/dist/modules/openrouter/OpenRouterCatalogController.d.ts.map +1 -1
  91. package/dist/modules/openrouter/OpenRouterCatalogController.js +19 -23
  92. package/dist/modules/openrouter/OpenRouterCatalogController.js.map +1 -1
  93. package/dist/modules/packageRegistries/PackageRegistriesController.d.ts.map +1 -1
  94. package/dist/modules/packageRegistries/PackageRegistriesController.js +3 -12
  95. package/dist/modules/packageRegistries/PackageRegistriesController.js.map +1 -1
  96. package/dist/modules/preflight/PreflightController.d.ts.map +1 -1
  97. package/dist/modules/preflight/PreflightController.js +3 -8
  98. package/dist/modules/preflight/PreflightController.js.map +1 -1
  99. package/dist/modules/preview/PreviewController.d.ts.map +1 -1
  100. package/dist/modules/preview/PreviewController.js +4 -14
  101. package/dist/modules/preview/PreviewController.js.map +1 -1
  102. package/dist/modules/providers/ApiKeyController.d.ts +0 -1
  103. package/dist/modules/providers/ApiKeyController.d.ts.map +1 -1
  104. package/dist/modules/providers/ApiKeyController.js +21 -43
  105. package/dist/modules/providers/ApiKeyController.js.map +1 -1
  106. package/dist/modules/providers/PersonalSubscriptionController.d.ts.map +1 -1
  107. package/dist/modules/providers/PersonalSubscriptionController.js +15 -25
  108. package/dist/modules/providers/PersonalSubscriptionController.js.map +1 -1
  109. package/dist/modules/providers/UserSecretController.d.ts.map +1 -1
  110. package/dist/modules/providers/UserSecretController.js +23 -37
  111. package/dist/modules/providers/UserSecretController.js.map +1 -1
  112. package/dist/modules/providers/VendorCredentialController.d.ts.map +1 -1
  113. package/dist/modules/providers/VendorCredentialController.js +9 -16
  114. package/dist/modules/providers/VendorCredentialController.js.map +1 -1
  115. package/dist/modules/provisioningLogs/ProvisioningLogController.d.ts.map +1 -1
  116. package/dist/modules/provisioningLogs/ProvisioningLogController.js +3 -8
  117. package/dist/modules/provisioningLogs/ProvisioningLogController.js.map +1 -1
  118. package/dist/modules/publicApi/PublicApiKeyController.d.ts +0 -1
  119. package/dist/modules/publicApi/PublicApiKeyController.d.ts.map +1 -1
  120. package/dist/modules/publicApi/PublicApiKeyController.js +8 -13
  121. package/dist/modules/publicApi/PublicApiKeyController.js.map +1 -1
  122. package/dist/modules/recurring/RecurringPipelineController.d.ts.map +1 -1
  123. package/dist/modules/recurring/RecurringPipelineController.js +3 -18
  124. package/dist/modules/recurring/RecurringPipelineController.js.map +1 -1
  125. package/dist/modules/recurring/TrackerSettingsController.d.ts.map +1 -1
  126. package/dist/modules/recurring/TrackerSettingsController.js +3 -10
  127. package/dist/modules/recurring/TrackerSettingsController.js.map +1 -1
  128. package/dist/modules/releaseHealth/ReleaseHealthController.d.ts.map +1 -1
  129. package/dist/modules/releaseHealth/ReleaseHealthController.js +3 -18
  130. package/dist/modules/releaseHealth/ReleaseHealthController.js.map +1 -1
  131. package/dist/modules/reports/ReportsController.d.ts.map +1 -1
  132. package/dist/modules/reports/ReportsController.js +7 -11
  133. package/dist/modules/reports/ReportsController.js.map +1 -1
  134. package/dist/modules/requirements/RequirementReviewController.d.ts.map +1 -1
  135. package/dist/modules/requirements/RequirementReviewController.js +18 -36
  136. package/dist/modules/requirements/RequirementReviewController.js.map +1 -1
  137. package/dist/modules/runners/RunnerPoolController.d.ts.map +1 -1
  138. package/dist/modules/runners/RunnerPoolController.js +3 -18
  139. package/dist/modules/runners/RunnerPoolController.js.map +1 -1
  140. package/dist/modules/sandbox/SandboxController.d.ts.map +1 -1
  141. package/dist/modules/sandbox/SandboxController.js +3 -32
  142. package/dist/modules/sandbox/SandboxController.js.map +1 -1
  143. package/dist/modules/serviceFragmentDefaults/ServiceFragmentDefaultsController.d.ts.map +1 -1
  144. package/dist/modules/serviceFragmentDefaults/ServiceFragmentDefaultsController.js +3 -10
  145. package/dist/modules/serviceFragmentDefaults/ServiceFragmentDefaultsController.js.map +1 -1
  146. package/dist/modules/services/ServiceMountController.d.ts.map +1 -1
  147. package/dist/modules/services/ServiceMountController.js +3 -16
  148. package/dist/modules/services/ServiceMountController.js.map +1 -1
  149. package/dist/modules/settings/WorkspaceSettingsController.d.ts.map +1 -1
  150. package/dist/modules/settings/WorkspaceSettingsController.js +3 -10
  151. package/dist/modules/settings/WorkspaceSettingsController.js.map +1 -1
  152. package/dist/modules/sharedStack/SharedStackController.d.ts.map +1 -1
  153. package/dist/modules/sharedStack/SharedStackController.js +3 -20
  154. package/dist/modules/sharedStack/SharedStackController.js.map +1 -1
  155. package/dist/modules/skillLibrary/SkillLibraryController.d.ts.map +1 -1
  156. package/dist/modules/skillLibrary/SkillLibraryController.js +21 -44
  157. package/dist/modules/skillLibrary/SkillLibraryController.js.map +1 -1
  158. package/dist/modules/slack/SlackController.d.ts.map +1 -1
  159. package/dist/modules/slack/SlackController.js +4 -26
  160. package/dist/modules/slack/SlackController.js.map +1 -1
  161. package/dist/modules/tasks/TaskSourceController.d.ts.map +1 -1
  162. package/dist/modules/tasks/TaskSourceController.js +5 -47
  163. package/dist/modules/tasks/TaskSourceController.js.map +1 -1
  164. package/dist/modules/testSecrets/TestSecretsController.d.ts.map +1 -1
  165. package/dist/modules/testSecrets/TestSecretsController.js +3 -12
  166. package/dist/modules/testSecrets/TestSecretsController.js.map +1 -1
  167. package/dist/modules/userSettings/UserSettingsController.d.ts.map +1 -1
  168. package/dist/modules/userSettings/UserSettingsController.js +13 -19
  169. package/dist/modules/userSettings/UserSettingsController.js.map +1 -1
  170. package/dist/modules/validation/ValidationConfigController.d.ts.map +1 -1
  171. package/dist/modules/validation/ValidationConfigController.js +3 -14
  172. package/dist/modules/validation/ValidationConfigController.js.map +1 -1
  173. package/dist/modules/workspaces/WorkspaceController.d.ts.map +1 -1
  174. package/dist/modules/workspaces/WorkspaceController.js +9 -4
  175. package/dist/modules/workspaces/WorkspaceController.js.map +1 -1
  176. package/dist/modules/workspaces/WorkspaceMemberController.d.ts.map +1 -1
  177. package/dist/modules/workspaces/WorkspaceMemberController.js +10 -19
  178. package/dist/modules/workspaces/WorkspaceMemberController.js.map +1 -1
  179. package/package.json +6 -6
  180. package/dist/agents/storeAgentContextGate.d.ts +0 -36
  181. package/dist/agents/storeAgentContextGate.d.ts.map +0 -1
  182. package/dist/agents/storeAgentContextGate.js +0 -36
  183. package/dist/agents/storeAgentContextGate.js.map +0 -1
@@ -4,15 +4,21 @@ import { Hono } from 'hono';
4
4
  import { param } from '../../http/params.js';
5
5
  import { personalGateForRun, readPersonalPassword } from '../providers/personalCredentialGate.js';
6
6
  import { UnavailableError } from '@cat-factory/kernel';
7
- const unavailable = (message) => {
8
- throw new UnavailableError(message);
9
- };
7
+ import { requireCapability } from '../../http/guards.js';
10
8
  /**
11
9
  * Cross-cutting endpoints over any "agent run" (bootstrap or execution),
12
10
  * dispatching to the right service by the run's kind. Mounted under
13
11
  * `/workspaces/:workspaceId`. This is the single retry path the board uses for a
14
12
  * failed run of either flow (replacing the bootstrap-only retry route).
15
13
  */
14
+ /** Resolve the repo-bootstrap module, or refuse with a 503 naming what isn't wired. */
15
+ function requireBootstrap(c) {
16
+ return requireCapability(c.get('container').bootstrap, 'Repo bootstrap is not configured');
17
+ }
18
+ /** Resolve the env-config-repair module, or refuse with a 503 naming what isn't wired. */
19
+ function requireEnvConfigRepair(c) {
20
+ return requireCapability(c.get('container').envConfigRepair, 'Environment config repair is not configured');
21
+ }
16
22
  export function agentRunController() {
17
23
  const app = new Hono();
18
24
  // Retry a failed run. Resolves the kind from the unified agent_runs table, then
@@ -26,19 +32,20 @@ export function agentRunController() {
26
32
  return c.json({ error: { code: 'not_found', message: `Agent run '${id}' not found` } }, 404);
27
33
  }
28
34
  if (ref.kind === 'bootstrap') {
29
- const bootstrap = container.bootstrap;
30
- if (!bootstrap)
31
- return unavailable('Repo bootstrap is not configured');
35
+ const bootstrap = requireBootstrap(c);
36
+ // A capability that IS wired but can't act: a predicate, not an absent value, so it
37
+ // throws directly rather than through the accessor.
32
38
  if (!bootstrap.service.canBootstrap) {
33
- return unavailable('Repo bootstrapping needs the GitHub App and the implementation container to be configured');
39
+ throw new UnavailableError('Repo bootstrapping needs the GitHub App and the implementation container to be configured');
34
40
  }
35
41
  const run = await bootstrap.service.retry(workspaceId, id);
36
42
  return c.json({ kind: ref.kind, run }, 201);
37
43
  }
38
44
  if (ref.kind === 'env-config-repair') {
39
- const repair = container.envConfigRepair;
40
- if (!repair || !repair.service.canRepair) {
41
- return unavailable('Environment config repair is not configured');
45
+ const repair = requireEnvConfigRepair(c);
46
+ // Wired but unable to act — a predicate, not an absent value.
47
+ if (!repair.service.canRepair) {
48
+ throw new UnavailableError('Environment config repair is not configured');
42
49
  }
43
50
  // No same-id re-drive (unlike bootstrap/execution): a repair run is a one-shot
44
51
  // clone→fix→push, so retry STARTS a fresh run from the failed job's coords (recovering
@@ -68,16 +75,12 @@ export function agentRunController() {
68
75
  return c.json({ error: { code: 'not_found', message: `Agent run '${id}' not found` } }, 404);
69
76
  }
70
77
  if (ref.kind === 'bootstrap') {
71
- const bootstrap = container.bootstrap;
72
- if (!bootstrap)
73
- return unavailable('Repo bootstrap is not configured');
78
+ const bootstrap = requireBootstrap(c);
74
79
  const run = await bootstrap.service.stop(workspaceId, id);
75
80
  return c.json({ kind: ref.kind, run }, 200);
76
81
  }
77
82
  if (ref.kind === 'env-config-repair') {
78
- const repair = container.envConfigRepair;
79
- if (!repair)
80
- return unavailable('Environment config repair is not configured');
83
+ const repair = requireEnvConfigRepair(c);
81
84
  const run = await repair.service.stop(workspaceId, id);
82
85
  return c.json({ kind: ref.kind, run }, 200);
83
86
  }
@@ -1 +1 @@
1
- {"version":3,"file":"AgentRunController.js","sourceRoot":"","sources":["../../../src/modules/agentRuns/AgentRunController.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AgentRunController.js","sourceRoot":"","sources":["../../../src/modules/agentRuns/AgentRunController.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAA;AACpF,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AACrD,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAG3B,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AAC5C,OAAO,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAA;AACjG,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AAExD;;;;;GAKG;AACH,uFAAuF;AACvF,SAAS,gBAAgB,CAAmB,CAAa;IACvD,OAAO,iBAAiB,CAAC,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,SAAS,EAAE,kCAAkC,CAAC,CAAA;AAC5F,CAAC;AAED,0FAA0F;AAC1F,SAAS,sBAAsB,CAAmB,CAAa;IAC7D,OAAO,iBAAiB,CACtB,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,eAAe,EAClC,6CAA6C,CAC9C,CAAA;AACH,CAAC;AAED,MAAM,UAAU,kBAAkB;IAChC,MAAM,GAAG,GAAG,IAAI,IAAI,EAAU,CAAA;IAE9B,gFAAgF;IAChF,2EAA2E;IAC3E,cAAc,CAAC,GAAG,EAAE,qBAAqB,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;QACrD,MAAM,SAAS,GAAG,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,CAAA;QACpC,MAAM,WAAW,GAAG,KAAK,CAAC,CAAC,EAAE,aAAa,CAAC,CAAA;QAC3C,MAAM,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,EAAE,CAAA;QAElC,MAAM,GAAG,GAAG,MAAM,SAAS,CAAC,kBAAkB,CAAC,MAAM,CAAC,WAAW,EAAE,EAAE,CAAC,CAAA;QACtE,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,EAAE,EAAE,GAAG,CAAC,CAAA;QAC9F,CAAC;QAED,IAAI,GAAG,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;YAC7B,MAAM,SAAS,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAA;YACrC,oFAAoF;YACpF,oDAAoD;YACpD,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;gBACpC,MAAM,IAAI,gBAAgB,CACxB,2FAA2F,CAC5F,CAAA;YACH,CAAC;YACD,MAAM,GAAG,GAAG,MAAM,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC,CAAA;YAC1D,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,GAAG,CAAC,CAAA;QAC7C,CAAC;QAED,IAAI,GAAG,CAAC,IAAI,KAAK,mBAAmB,EAAE,CAAC;YACrC,MAAM,MAAM,GAAG,sBAAsB,CAAC,CAAC,CAAC,CAAA;YACxC,8DAA8D;YAC9D,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;gBAC9B,MAAM,IAAI,gBAAgB,CAAC,6CAA6C,CAAC,CAAA;YAC3E,CAAC;YACD,+EAA+E;YAC/E,uFAAuF;YACvF,wFAAwF;YACxF,uEAAuE;YACvE,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC,CAAA;YACvD,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,GAAG,CAAC,CAAA;QAC7C,CAAC;QAED,wEAAwE;QACxE,8EAA8E;QAC9E,+EAA+E;QAC/E,wCAAwC;QACxC,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,GAAG,MAAM,kBAAkB,CACxD,SAAS,EACT,WAAW,EACX,EAAE,EACF,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,EACb,oBAAoB,CAAC,CAAC,CAAC,CACxB,CAAA;QACD,MAAM,GAAG,GAAG,MAAM,SAAS,CAAC,gBAAgB,CAAC,KAAK,CAAC,WAAW,EAAE,EAAE,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAA;QAC1F,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,GAAG,CAAC,CAAA;IAC7C,CAAC,CAAC,CAAA;IAEF,4EAA4E;IAC5E,6EAA6E;IAC7E,+EAA+E;IAC/E,uEAAuE;IACvE,cAAc,CAAC,GAAG,EAAE,oBAAoB,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;QACpD,MAAM,SAAS,GAAG,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,CAAA;QACpC,MAAM,WAAW,GAAG,KAAK,CAAC,CAAC,EAAE,aAAa,CAAC,CAAA;QAC3C,MAAM,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,EAAE,CAAA;QAElC,MAAM,GAAG,GAAG,MAAM,SAAS,CAAC,kBAAkB,CAAC,MAAM,CAAC,WAAW,EAAE,EAAE,CAAC,CAAA;QACtE,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,EAAE,EAAE,GAAG,CAAC,CAAA;QAC9F,CAAC;QAED,IAAI,GAAG,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;YAC7B,MAAM,SAAS,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAA;YACrC,MAAM,GAAG,GAAG,MAAM,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC,CAAA;YACzD,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,GAAG,CAAC,CAAA;QAC7C,CAAC;QAED,IAAI,GAAG,CAAC,IAAI,KAAK,mBAAmB,EAAE,CAAC;YACrC,MAAM,MAAM,GAAG,sBAAsB,CAAC,CAAC,CAAC,CAAA;YACxC,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC,CAAA;YACtD,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,GAAG,CAAC,CAAA;QAC7C,CAAC;QAED,MAAM,GAAG,GAAG,MAAM,SAAS,CAAC,gBAAgB,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAA;QACrE,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,GAAG,CAAC,CAAA;IAC7C,CAAC,CAAC,CAAA;IAEF,OAAO,GAAG,CAAA;AACZ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"ArtifactController.d.ts","sourceRoot":"","sources":["../../../src/modules/artifacts/ArtifactController.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAI3B,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AA2B/C;;;;;;GAMG;AACH,wBAAgB,kBAAkB,IAAI,IAAI,CAAC,MAAM,CAAC,CAuHjD"}
1
+ {"version":3,"file":"ArtifactController.d.ts","sourceRoot":"","sources":["../../../src/modules/artifacts/ArtifactController.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAI3B,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AA0B/C;;;;;;GAMG;AACH,wBAAgB,kBAAkB,IAAI,IAAI,CAAC,MAAM,CAAC,CAmHjD"}
@@ -2,19 +2,16 @@ import { Hono } from 'hono';
2
2
  import { bodyLimit } from 'hono/body-limit';
3
3
  import { param } from '../../http/params.js';
4
4
  import { MAX_REQUEST_BYTES, MAX_UPLOAD_BYTES, blobResponseHeaders, exceedsRequestSizeLimit, normalizeImageContentType, } from './imageArtifacts.js';
5
- import { UnavailableError } from '@cat-factory/kernel';
5
+ import { requireCapability } from '../../http/guards.js';
6
6
  /**
7
7
  * Resolve the binary-artifact store for the request's workspace (its account's configured
8
- * backend), or null when none is configured (the caller then 503s). All routes here are
9
- * mounted under `/workspaces/:workspaceId`.
8
+ * backend), or refuse with a 503 when none is configured. All routes here are mounted under
9
+ * `/workspaces/:workspaceId`.
10
10
  */
11
11
  async function requireStore(c) {
12
12
  const resolve = c.get('container').resolveBinaryArtifactStore;
13
- return resolve ? resolve(param(c, 'workspaceId')) : null;
13
+ return requireCapability(resolve ? await resolve(param(c, 'workspaceId')) : null, 'Binary-artifact storage is not configured');
14
14
  }
15
- const unavailable = () => {
16
- throw new UnavailableError('Binary-artifact storage is not configured');
17
- };
18
15
  const ALLOWED_KINDS = ['screenshot', 'reference'];
19
16
  /**
20
17
  * Workspace-scoped binary-artifact API backing the visual-confirmation gate: upload a
@@ -35,8 +32,6 @@ export function artifactController() {
35
32
  onError: (c) => c.json({ error: { code: 'too_large', message: 'Artifact exceeds size limit' } }, 413),
36
33
  }), async (c) => {
37
34
  const store = await requireStore(c);
38
- if (!store)
39
- return unavailable();
40
35
  // Refuse a grossly oversized body up-front (from Content-Length) so it is never buffered
41
36
  // into memory; the exact per-file ceiling is still enforced after parsing below.
42
37
  if (exceedsRequestSizeLimit(c.req.header('content-length'))) {
@@ -98,8 +93,6 @@ export function artifactController() {
98
93
  // Stream a stored blob's bytes (the metadata names its content type).
99
94
  app.get('/artifacts/:id/blob', async (c) => {
100
95
  const store = await requireStore(c);
101
- if (!store)
102
- return unavailable();
103
96
  const workspaceId = param(c, 'workspaceId');
104
97
  const id = param(c, 'id');
105
98
  // Read metadata + bytes in a SINGLE metadata lookup (the serve path needs both the
@@ -121,8 +114,6 @@ export function artifactController() {
121
114
  // List a run's artifacts (metadata only; the gate pairs screenshots vs references by view).
122
115
  app.get('/executions/:executionId/artifacts', async (c) => {
123
116
  const store = await requireStore(c);
124
- if (!store)
125
- return unavailable();
126
117
  const artifacts = await store.listByExecution(param(c, 'workspaceId'), param(c, 'executionId'));
127
118
  return c.json({ artifacts }, 200);
128
119
  });
@@ -130,8 +121,6 @@ export function artifactController() {
130
121
  // executionId because they're attached before any run).
131
122
  app.get('/blocks/:blockId/artifacts', async (c) => {
132
123
  const store = await requireStore(c);
133
- if (!store)
134
- return unavailable();
135
124
  const artifacts = await store.listByBlock(param(c, 'workspaceId'), param(c, 'blockId'));
136
125
  return c.json({ artifacts }, 200);
137
126
  });
@@ -1 +1 @@
1
- {"version":3,"file":"ArtifactController.js","sourceRoot":"","sources":["../../../src/modules/artifacts/ArtifactController.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ArtifactController.js","sourceRoot":"","sources":["../../../src/modules/artifacts/ArtifactController.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"AuthController.d.ts","sourceRoot":"","sources":["../../../src/modules/auth/AuthController.ts"],"names":[],"mappings":"AAkBA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAO3B,OAAO,EAGL,KAAK,WAAW,EAEjB,MAAM,uBAAuB,CAAA;AAC9B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AACvD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAoF/C;;;;;GAKG;AACH,wBAAgB,qBAAqB,CACnC,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,aAAa,EAAE,MAAM,EACrB,GAAG,EAAE,IAAI,CAAC,UAAU,EAAE,oBAAoB,GAAG,wBAAwB,CAAC,GACrE,MAAM,CAkBR;AAwBD;;;;GAIG;AACH,wBAAsB,WAAW,CAC/B,GAAG,EAAE,UAAU,EACf,IAAI,EAAE,WAAW,GAChB,OAAO,CAAC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAAC,CAIzC;AA0GD,wBAAgB,cAAc,IAAI,IAAI,CAAC,MAAM,CAAC,CAU7C"}
1
+ {"version":3,"file":"AuthController.d.ts","sourceRoot":"","sources":["../../../src/modules/auth/AuthController.ts"],"names":[],"mappings":"AAkBA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAO3B,OAAO,EAGL,KAAK,WAAW,EAEjB,MAAM,uBAAuB,CAAA;AAC9B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AACvD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAgG/C;;;;;GAKG;AACH,wBAAgB,qBAAqB,CACnC,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,aAAa,EAAE,MAAM,EACrB,GAAG,EAAE,IAAI,CAAC,UAAU,EAAE,oBAAoB,GAAG,wBAAwB,CAAC,GACrE,MAAM,CAkBR;AAwBD;;;;GAIG;AACH,wBAAsB,WAAW,CAC/B,GAAG,EAAE,UAAU,EACf,IAAI,EAAE,WAAW,GAChB,OAAO,CAAC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAAC,CAIzC;AA0GD,wBAAgB,cAAc,IAAI,IAAI,CAAC,MAAM,CAAC,CAU7C"}
@@ -8,6 +8,7 @@ import { verifySession } from '../../auth/middleware.js';
8
8
  import { mintMachineToken } from '../../auth/machineToken.js';
9
9
  import { HmacSigner, TOKEN_AUDIENCE, } from '../../auth/signing.js';
10
10
  import { ConflictError, NotFoundError, ValidationError, UnavailableError, UnauthorizedError, RateLimitedError, } from '@cat-factory/kernel';
11
+ import { requireCapability } from '../../http/guards.js';
11
12
  // Authentication endpoints. The SPA is handed a signed session token (via the URL
12
13
  // fragment for OAuth redirects, or the JSON body for password login) which it carries
13
14
  // as `Authorization: Bearer` on subsequent calls. Three login providers compose here:
@@ -19,6 +20,16 @@ import { ConflictError, NotFoundError, ValidationError, UnavailableError, Unauth
19
20
  const OAUTH_STATE_TTL_MS = 10 * 60 * 1000;
20
21
  /** Browser-binding cookie for an OAuth round-trip (see the GitHub flow notes below). */
21
22
  const OAUTH_STATE_COOKIE = 'cf_oauth_state';
23
+ // The one controller that keeps a local thrower rather than `requireCapability`: what it
24
+ // guards is a boolean FLAG (`cfg.githubEnabled` / `cfg.passwordEnabled`), not an absent
25
+ // value, so there is nothing for the accessor to narrow and return.
26
+ /**
27
+ * The Google OAuth client, or a 503. Wraps the nullable `googleClient(cfg)` builder so the two
28
+ * OAuth routes don't restate the refusal.
29
+ */
30
+ function requireGoogle(cfg) {
31
+ return requireCapability(googleClient(cfg), 'Authentication is not configured');
32
+ }
22
33
  const unavailable = () => {
23
34
  throw new UnavailableError('Authentication is not configured');
24
35
  };
@@ -321,9 +332,7 @@ function registerOAuthRoutes(app) {
321
332
  // ---- Google OAuth -------------------------------------------------------
322
333
  buildHonoRoute(app, googleLoginContract, async (c) => {
323
334
  const cfg = authConfig(c);
324
- const google = googleClient(cfg);
325
- if (!google)
326
- return unavailable();
335
+ const google = requireGoogle(cfg);
327
336
  const nonce = crypto.randomUUID();
328
337
  const state = {
329
338
  aud: TOKEN_AUDIENCE.oauthState,
@@ -344,9 +353,7 @@ function registerOAuthRoutes(app) {
344
353
  });
345
354
  buildHonoRoute(app, googleCallbackContract, async (c) => {
346
355
  const cfg = authConfig(c);
347
- const google = googleClient(cfg);
348
- if (!google)
349
- return unavailable();
356
+ const google = requireGoogle(cfg);
350
357
  const state = await consumeState(c, cfg);
351
358
  const code = c.req.query('code');
352
359
  if (!code || !state) {
@@ -453,9 +460,7 @@ function registerCredentialRoutes(app) {
453
460
  buildHonoRoute(app, patLoginContract, async (c) => {
454
461
  const cfg = authConfig(c);
455
462
  const container = c.get('container');
456
- const registry = container.vcsIdentity;
457
- if (!registry)
458
- return unavailable();
463
+ const registry = requireCapability(container.vcsIdentity, 'Authentication is not configured');
459
464
  const { provider, token } = c.req.valid('json');
460
465
  const entry = registry[provider];
461
466
  if (!entry) {
@@ -1 +1 @@
1
- {"version":3,"file":"AuthController.js","sourceRoot":"","sources":["../../../src/modules/auth/AuthController.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AuthController.js","sourceRoot":"","sources":["../../../src/modules/auth/AuthController.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"BootstrapController.d.ts","sourceRoot":"","sources":["../../../src/modules/bootstrap/BootstrapController.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAG3B,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAc/C;;;;;GAKG;AACH,wBAAgB,mBAAmB,IAAI,IAAI,CAAC,MAAM,CAAC,CA8ElD"}
1
+ {"version":3,"file":"BootstrapController.d.ts","sourceRoot":"","sources":["../../../src/modules/bootstrap/BootstrapController.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAG3B,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAW/C;;;;;GAKG;AACH,wBAAgB,mBAAmB,IAAI,IAAI,CAAC,MAAM,CAAC,CAyElD"}
@@ -4,13 +4,11 @@ import { Hono } from 'hono';
4
4
  import { requireWorkspacePermission } from '../../http/workspaceAccess.js';
5
5
  import { param } from '../../http/params.js';
6
6
  import { UnavailableError } from '@cat-factory/kernel';
7
- /** Resolve the bootstrap module or send a 503, returning null when unconfigured. */
7
+ import { requireCapability } from '../../http/guards.js';
8
+ /** Resolve the bootstrap module, or refuse with a 503 naming what isn't wired. */
8
9
  function requireBootstrap(c) {
9
- return c.get('container').bootstrap ?? null;
10
+ return requireCapability(c.get('container').bootstrap, 'Repo bootstrap is not configured');
10
11
  }
11
- const unavailable = (message) => {
12
- throw new UnavailableError(message);
13
- };
14
12
  /**
15
13
  * Workspace-scoped repo-bootstrap endpoints: CRUD over the managed reference
16
14
  * architecture list, and the "bootstrap repo" task (create a new repo from a
@@ -23,52 +21,40 @@ export function bootstrapController() {
23
21
  // ---- reference architectures -------------------------------------------
24
22
  buildHonoRoute(app, listReferenceArchitecturesContract, async (c) => {
25
23
  const bootstrap = requireBootstrap(c);
26
- if (!bootstrap)
27
- return unavailable('Repo bootstrap is not configured');
28
24
  return c.json(await bootstrap.service.listReferenceArchitectures(param(c, 'workspaceId')), 200);
29
25
  });
30
26
  buildHonoRoute(app, createReferenceArchitectureContract, async (c) => {
31
27
  const bootstrap = requireBootstrap(c);
32
- if (!bootstrap)
33
- return unavailable('Repo bootstrap is not configured');
34
28
  const created = await bootstrap.service.createReferenceArchitecture(param(c, 'workspaceId'), c.req.valid('json'));
35
29
  return c.json(created, 201);
36
30
  });
37
31
  buildHonoRoute(app, updateReferenceArchitectureContract, async (c) => {
38
32
  const bootstrap = requireBootstrap(c);
39
- if (!bootstrap)
40
- return unavailable('Repo bootstrap is not configured');
41
33
  const updated = await bootstrap.service.updateReferenceArchitecture(param(c, 'workspaceId'), c.req.valid('param').id, c.req.valid('json'));
42
34
  return c.json(updated, 200);
43
35
  });
44
36
  buildHonoRoute(app, deleteReferenceArchitectureContract, async (c) => {
45
37
  const bootstrap = requireBootstrap(c);
46
- if (!bootstrap)
47
- return unavailable('Repo bootstrap is not configured');
48
38
  await bootstrap.service.deleteReferenceArchitecture(param(c, 'workspaceId'), c.req.valid('param').id);
49
39
  return c.body(null, 204);
50
40
  });
51
41
  // ---- bootstrap jobs -----------------------------------------------------
52
42
  buildHonoRoute(app, listBootstrapJobsContract, async (c) => {
53
43
  const bootstrap = requireBootstrap(c);
54
- if (!bootstrap)
55
- return unavailable('Repo bootstrap is not configured');
56
44
  return c.json(await bootstrap.service.listJobs(param(c, 'workspaceId')), 200);
57
45
  });
58
46
  buildHonoRoute(app, getBootstrapJobContract, async (c) => {
59
47
  const bootstrap = requireBootstrap(c);
60
- if (!bootstrap)
61
- return unavailable('Repo bootstrap is not configured');
62
48
  return c.json(await bootstrap.service.getJob(param(c, 'workspaceId'), c.req.valid('param').id), 200);
63
49
  });
64
50
  // Kick off a bootstrap run. Requires the GitHub + container machinery to be
65
51
  // wired; otherwise the run path is unavailable even though CRUD works.
66
52
  buildHonoRoute(app, startBootstrapJobContract, async (c) => {
67
53
  const bootstrap = requireBootstrap(c);
68
- if (!bootstrap)
69
- return unavailable('Repo bootstrap is not configured');
54
+ // Wired but unable to act — a predicate, not an absent value, so it throws directly
55
+ // rather than through the accessor.
70
56
  if (!bootstrap.service.canBootstrap) {
71
- return unavailable('Repo bootstrapping needs the GitHub App and the implementation container to be configured');
57
+ throw new UnavailableError('Repo bootstrapping needs the GitHub App and the implementation container to be configured');
72
58
  }
73
59
  const job = await bootstrap.service.bootstrap(param(c, 'workspaceId'), c.req.valid('json'));
74
60
  return c.json(job, 201);
@@ -1 +1 @@
1
- {"version":3,"file":"BootstrapController.js","sourceRoot":"","sources":["../../../src/modules/bootstrap/BootstrapController.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BootstrapController.js","sourceRoot":"","sources":["../../../src/modules/bootstrap/BootstrapController.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"BrainstormController.d.ts","sourceRoot":"","sources":["../../../src/modules/brainstorm/BrainstormController.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAE3B,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAa/C;;;;;;;;;GASG;AACH,wBAAgB,oBAAoB,IAAI,IAAI,CAAC,MAAM,CAAC,CA4GnD"}
1
+ {"version":3,"file":"BrainstormController.d.ts","sourceRoot":"","sources":["../../../src/modules/brainstorm/BrainstormController.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAE3B,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAmB/C;;;;;;;;;GASG;AACH,wBAAgB,oBAAoB,IAAI,IAAI,CAAC,MAAM,CAAC,CAoGnD"}
@@ -2,14 +2,20 @@ import { getBrainstormContract, incorporateBrainstormContract, proceedBrainstorm
2
2
  import { buildHonoRoute } from '@toad-contracts/hono';
3
3
  import { Hono } from 'hono';
4
4
  import { param } from '../../http/params.js';
5
- import { UnavailableError } from '@cat-factory/kernel';
6
- /** Resolve the brainstorm module or send a 503, returning null when unconfigured. */
5
+ import { requireCapability } from '../../http/guards.js';
6
+ /** Resolve the brainstorm module, or refuse with a 503 naming what isn't wired. */
7
7
  function requireBrainstorm(c) {
8
- return c.get('container').brainstorm ?? null;
8
+ return requireCapability(c.get('container').brainstorm, 'Brainstorm is not configured');
9
+ }
10
+ /**
11
+ * The brainstorm module as a REFUSAL only. These routes drive their mutations through the
12
+ * execution service and read nothing off the module itself — but an unwired deployment must
13
+ * still 503 rather than answer. Discarding a `requireBrainstorm` result would read as a
14
+ * no-op statement, so the guard is named for what it does and returns `void`.
15
+ */
16
+ function assertBrainstormWired(c) {
17
+ requireBrainstorm(c);
9
18
  }
10
- const unavailable = () => {
11
- throw new UnavailableError('Brainstorm is not configured');
12
- };
13
19
  /**
14
20
  * Workspace-scoped brainstorm (structured-dialogue) endpoints, STAGE-scoped: a block may have
15
21
  * one live `requirements` session and one live `architecture` session at once. The brainstorm
@@ -25,8 +31,6 @@ export function brainstormController() {
25
31
  // The current session for a block + stage (null when none has been run yet).
26
32
  buildHonoRoute(app, getBrainstormContract, async (c) => {
27
33
  const brainstorm = requireBrainstorm(c);
28
- if (!brainstorm)
29
- return unavailable();
30
34
  const { blockId, stage } = c.req.valid('param');
31
35
  const session = await brainstorm.services[stage].getForBlock(param(c, 'workspaceId'), blockId);
32
36
  return c.json(session, 200);
@@ -35,9 +39,7 @@ export function brainstormController() {
35
39
  // execution service so the off-path surface honours the task's merge-preset knobs and threads
36
40
  // in any upstream refined requirements, exactly like the gate.
37
41
  buildHonoRoute(app, reviewBrainstormContract, async (c) => {
38
- const brainstorm = requireBrainstorm(c);
39
- if (!brainstorm)
40
- return unavailable();
42
+ assertBrainstormWired(c);
41
43
  const { blockId, stage } = c.req.valid('param');
42
44
  const session = await c
43
45
  .get('container')
@@ -47,8 +49,6 @@ export function brainstormController() {
47
49
  // Respond to a single option (pick / steer). Session-id scoped (stage-agnostic store).
48
50
  buildHonoRoute(app, replyBrainstormItemContract, async (c) => {
49
51
  const brainstorm = requireBrainstorm(c);
50
- if (!brainstorm)
51
- return unavailable();
52
52
  const { sessionId, itemId } = c.req.valid('param');
53
53
  const session = await brainstorm.services.requirements.replyToItem(param(c, 'workspaceId'), sessionId, itemId, c.req.valid('json').reply);
54
54
  return c.json(session, 200);
@@ -56,17 +56,13 @@ export function brainstormController() {
56
56
  // Set an option's status (resolve / dismiss / reopen). Session-id scoped.
57
57
  buildHonoRoute(app, updateBrainstormItemStatusContract, async (c) => {
58
58
  const brainstorm = requireBrainstorm(c);
59
- if (!brainstorm)
60
- return unavailable();
61
59
  const { sessionId, itemId } = c.req.valid('param');
62
60
  const session = await brainstorm.services.requirements.setItemStatus(param(c, 'workspaceId'), sessionId, itemId, c.req.valid('json').status);
63
61
  return c.json(session, 200);
64
62
  });
65
63
  // Incorporate the picks ASYNCHRONOUSLY (the durable driver folds + re-runs).
66
64
  buildHonoRoute(app, incorporateBrainstormContract, async (c) => {
67
- const brainstorm = requireBrainstorm(c);
68
- if (!brainstorm)
69
- return unavailable();
65
+ assertBrainstormWired(c);
70
66
  const { blockId, stage } = c.req.valid('param');
71
67
  const session = await c
72
68
  .get('container')
@@ -75,9 +71,7 @@ export function brainstormController() {
75
71
  });
76
72
  // Re-run the brainstorm against the converged direction (one more pass).
77
73
  buildHonoRoute(app, reReviewBrainstormContract, async (c) => {
78
- const brainstorm = requireBrainstorm(c);
79
- if (!brainstorm)
80
- return unavailable();
74
+ assertBrainstormWired(c);
81
75
  const { blockId, stage } = c.req.valid('param');
82
76
  const session = await c
83
77
  .get('container')
@@ -86,9 +80,7 @@ export function brainstormController() {
86
80
  });
87
81
  // Proceed: settle the brainstorm (last converged direction wins downstream) and advance.
88
82
  buildHonoRoute(app, proceedBrainstormContract, async (c) => {
89
- const brainstorm = requireBrainstorm(c);
90
- if (!brainstorm)
91
- return unavailable();
83
+ assertBrainstormWired(c);
92
84
  const { blockId, stage } = c.req.valid('param');
93
85
  const session = await c
94
86
  .get('container')
@@ -97,9 +89,7 @@ export function brainstormController() {
97
89
  });
98
90
  // Resolve a session that hit its iteration cap: one more round / proceed / stop-reset.
99
91
  buildHonoRoute(app, resolveBrainstormExceededContract, async (c) => {
100
- const brainstorm = requireBrainstorm(c);
101
- if (!brainstorm)
102
- return unavailable();
92
+ assertBrainstormWired(c);
103
93
  const { blockId, stage } = c.req.valid('param');
104
94
  const session = await c
105
95
  .get('container')