@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.
- package/dist/http/guards.d.ts +46 -0
- package/dist/http/guards.d.ts.map +1 -0
- package/dist/http/guards.js +57 -0
- package/dist/http/guards.js.map +1 -0
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/modules/accounts/AccountController.d.ts +0 -10
- package/dist/modules/accounts/AccountController.d.ts.map +1 -1
- package/dist/modules/accounts/AccountController.js +56 -101
- package/dist/modules/accounts/AccountController.js.map +1 -1
- package/dist/modules/agentRuns/AgentRunController.d.ts +0 -6
- package/dist/modules/agentRuns/AgentRunController.d.ts.map +1 -1
- package/dist/modules/agentRuns/AgentRunController.js +19 -16
- package/dist/modules/agentRuns/AgentRunController.js.map +1 -1
- package/dist/modules/artifacts/ArtifactController.d.ts.map +1 -1
- package/dist/modules/artifacts/ArtifactController.js +4 -15
- package/dist/modules/artifacts/ArtifactController.js.map +1 -1
- package/dist/modules/auth/AuthController.d.ts.map +1 -1
- package/dist/modules/auth/AuthController.js +14 -9
- package/dist/modules/auth/AuthController.js.map +1 -1
- package/dist/modules/bootstrap/BootstrapController.d.ts.map +1 -1
- package/dist/modules/bootstrap/BootstrapController.js +6 -20
- package/dist/modules/bootstrap/BootstrapController.js.map +1 -1
- package/dist/modules/brainstorm/BrainstormController.d.ts.map +1 -1
- package/dist/modules/brainstorm/BrainstormController.js +17 -27
- package/dist/modules/brainstorm/BrainstormController.js.map +1 -1
- package/dist/modules/bugHunt/BugHuntController.d.ts.map +1 -1
- package/dist/modules/bugHunt/BugHuntController.js +4 -12
- package/dist/modules/bugHunt/BugHuntController.js.map +1 -1
- package/dist/modules/clarity/ClarityReviewController.d.ts.map +1 -1
- package/dist/modules/clarity/ClarityReviewController.js +18 -27
- package/dist/modules/clarity/ClarityReviewController.js.map +1 -1
- package/dist/modules/docInterview/DocInterviewController.d.ts.map +1 -1
- package/dist/modules/docInterview/DocInterviewController.js +6 -17
- package/dist/modules/docInterview/DocInterviewController.js.map +1 -1
- package/dist/modules/documents/DocumentSourceController.d.ts.map +1 -1
- package/dist/modules/documents/DocumentSourceController.js +4 -32
- package/dist/modules/documents/DocumentSourceController.js.map +1 -1
- package/dist/modules/environments/EnvironmentController.d.ts.map +1 -1
- package/dist/modules/environments/EnvironmentController.js +10 -63
- package/dist/modules/environments/EnvironmentController.js.map +1 -1
- package/dist/modules/environments/EnvironmentUserHandlerController.d.ts.map +1 -1
- package/dist/modules/environments/EnvironmentUserHandlerController.js +16 -25
- package/dist/modules/environments/EnvironmentUserHandlerController.js.map +1 -1
- package/dist/modules/fragmentLibrary/FragmentLibraryController.d.ts.map +1 -1
- package/dist/modules/fragmentLibrary/FragmentLibraryController.js +26 -60
- package/dist/modules/fragmentLibrary/FragmentLibraryController.js.map +1 -1
- package/dist/modules/github/GitHubController.d.ts.map +1 -1
- package/dist/modules/github/GitHubController.js +14 -48
- package/dist/modules/github/GitHubController.js.map +1 -1
- package/dist/modules/gitlab/GitLabController.d.ts.map +1 -1
- package/dist/modules/gitlab/GitLabController.js +3 -12
- package/dist/modules/gitlab/GitLabController.js.map +1 -1
- package/dist/modules/incidentEnrichment/IncidentEnrichmentController.d.ts.map +1 -1
- package/dist/modules/incidentEnrichment/IncidentEnrichmentController.js +3 -12
- package/dist/modules/incidentEnrichment/IncidentEnrichmentController.js.map +1 -1
- package/dist/modules/initiatives/InitiativeController.d.ts.map +1 -1
- package/dist/modules/initiatives/InitiativeController.js +4 -39
- package/dist/modules/initiatives/InitiativeController.js.map +1 -1
- package/dist/modules/kaizen/KaizenController.d.ts.map +1 -1
- package/dist/modules/kaizen/KaizenController.js +3 -10
- package/dist/modules/kaizen/KaizenController.js.map +1 -1
- package/dist/modules/localModels/LocalModelEndpointController.d.ts.map +1 -1
- package/dist/modules/localModels/LocalModelEndpointController.js +21 -31
- package/dist/modules/localModels/LocalModelEndpointController.js.map +1 -1
- package/dist/modules/localSettings/LocalSettingsController.d.ts +0 -9
- package/dist/modules/localSettings/LocalSettingsController.d.ts.map +1 -1
- package/dist/modules/localSettings/LocalSettingsController.js +9 -12
- package/dist/modules/localSettings/LocalSettingsController.js.map +1 -1
- package/dist/modules/merge/MergeTrackRecordController.d.ts.map +1 -1
- package/dist/modules/merge/MergeTrackRecordController.js +3 -10
- package/dist/modules/merge/MergeTrackRecordController.js.map +1 -1
- package/dist/modules/merge/RiskPolicyController.d.ts.map +1 -1
- package/dist/modules/merge/RiskPolicyController.js +3 -16
- package/dist/modules/merge/RiskPolicyController.js.map +1 -1
- package/dist/modules/modelPresets/ModelPresetController.d.ts.map +1 -1
- package/dist/modules/modelPresets/ModelPresetController.js +3 -16
- package/dist/modules/modelPresets/ModelPresetController.js.map +1 -1
- package/dist/modules/notificationWebhook/NotificationWebhookController.d.ts.map +1 -1
- package/dist/modules/notificationWebhook/NotificationWebhookController.js +3 -12
- package/dist/modules/notificationWebhook/NotificationWebhookController.js.map +1 -1
- package/dist/modules/notifications/NotificationController.d.ts.map +1 -1
- package/dist/modules/notifications/NotificationController.js +3 -12
- package/dist/modules/notifications/NotificationController.js.map +1 -1
- package/dist/modules/observability/PlatformObservabilityController.d.ts.map +1 -1
- package/dist/modules/observability/PlatformObservabilityController.js +7 -11
- package/dist/modules/observability/PlatformObservabilityController.js.map +1 -1
- package/dist/modules/openrouter/OpenRouterCatalogController.d.ts.map +1 -1
- package/dist/modules/openrouter/OpenRouterCatalogController.js +19 -23
- package/dist/modules/openrouter/OpenRouterCatalogController.js.map +1 -1
- package/dist/modules/packageRegistries/PackageRegistriesController.d.ts.map +1 -1
- package/dist/modules/packageRegistries/PackageRegistriesController.js +3 -12
- package/dist/modules/packageRegistries/PackageRegistriesController.js.map +1 -1
- package/dist/modules/preflight/PreflightController.d.ts.map +1 -1
- package/dist/modules/preflight/PreflightController.js +3 -8
- package/dist/modules/preflight/PreflightController.js.map +1 -1
- package/dist/modules/preview/PreviewController.d.ts.map +1 -1
- package/dist/modules/preview/PreviewController.js +4 -14
- package/dist/modules/preview/PreviewController.js.map +1 -1
- package/dist/modules/providers/ApiKeyController.d.ts +0 -1
- package/dist/modules/providers/ApiKeyController.d.ts.map +1 -1
- package/dist/modules/providers/ApiKeyController.js +21 -43
- package/dist/modules/providers/ApiKeyController.js.map +1 -1
- package/dist/modules/providers/PersonalSubscriptionController.d.ts.map +1 -1
- package/dist/modules/providers/PersonalSubscriptionController.js +15 -25
- package/dist/modules/providers/PersonalSubscriptionController.js.map +1 -1
- package/dist/modules/providers/UserSecretController.d.ts.map +1 -1
- package/dist/modules/providers/UserSecretController.js +23 -37
- package/dist/modules/providers/UserSecretController.js.map +1 -1
- package/dist/modules/providers/VendorCredentialController.d.ts.map +1 -1
- package/dist/modules/providers/VendorCredentialController.js +9 -16
- package/dist/modules/providers/VendorCredentialController.js.map +1 -1
- package/dist/modules/provisioningLogs/ProvisioningLogController.d.ts.map +1 -1
- package/dist/modules/provisioningLogs/ProvisioningLogController.js +3 -8
- package/dist/modules/provisioningLogs/ProvisioningLogController.js.map +1 -1
- package/dist/modules/publicApi/PublicApiKeyController.d.ts +0 -1
- package/dist/modules/publicApi/PublicApiKeyController.d.ts.map +1 -1
- package/dist/modules/publicApi/PublicApiKeyController.js +8 -13
- package/dist/modules/publicApi/PublicApiKeyController.js.map +1 -1
- package/dist/modules/recurring/RecurringPipelineController.d.ts.map +1 -1
- package/dist/modules/recurring/RecurringPipelineController.js +3 -18
- package/dist/modules/recurring/RecurringPipelineController.js.map +1 -1
- package/dist/modules/recurring/TrackerSettingsController.d.ts.map +1 -1
- package/dist/modules/recurring/TrackerSettingsController.js +3 -10
- package/dist/modules/recurring/TrackerSettingsController.js.map +1 -1
- package/dist/modules/releaseHealth/ReleaseHealthController.d.ts.map +1 -1
- package/dist/modules/releaseHealth/ReleaseHealthController.js +3 -18
- package/dist/modules/releaseHealth/ReleaseHealthController.js.map +1 -1
- package/dist/modules/reports/ReportsController.d.ts.map +1 -1
- package/dist/modules/reports/ReportsController.js +7 -11
- package/dist/modules/reports/ReportsController.js.map +1 -1
- package/dist/modules/requirements/RequirementReviewController.d.ts.map +1 -1
- package/dist/modules/requirements/RequirementReviewController.js +18 -36
- package/dist/modules/requirements/RequirementReviewController.js.map +1 -1
- package/dist/modules/runners/RunnerPoolController.d.ts.map +1 -1
- package/dist/modules/runners/RunnerPoolController.js +3 -18
- package/dist/modules/runners/RunnerPoolController.js.map +1 -1
- package/dist/modules/sandbox/SandboxController.d.ts.map +1 -1
- package/dist/modules/sandbox/SandboxController.js +3 -32
- package/dist/modules/sandbox/SandboxController.js.map +1 -1
- package/dist/modules/serviceFragmentDefaults/ServiceFragmentDefaultsController.d.ts.map +1 -1
- package/dist/modules/serviceFragmentDefaults/ServiceFragmentDefaultsController.js +3 -10
- package/dist/modules/serviceFragmentDefaults/ServiceFragmentDefaultsController.js.map +1 -1
- package/dist/modules/services/ServiceMountController.d.ts.map +1 -1
- package/dist/modules/services/ServiceMountController.js +3 -16
- package/dist/modules/services/ServiceMountController.js.map +1 -1
- package/dist/modules/settings/WorkspaceSettingsController.d.ts.map +1 -1
- package/dist/modules/settings/WorkspaceSettingsController.js +3 -10
- package/dist/modules/settings/WorkspaceSettingsController.js.map +1 -1
- package/dist/modules/sharedStack/SharedStackController.d.ts.map +1 -1
- package/dist/modules/sharedStack/SharedStackController.js +3 -20
- package/dist/modules/sharedStack/SharedStackController.js.map +1 -1
- package/dist/modules/skillLibrary/SkillLibraryController.d.ts.map +1 -1
- package/dist/modules/skillLibrary/SkillLibraryController.js +21 -44
- package/dist/modules/skillLibrary/SkillLibraryController.js.map +1 -1
- package/dist/modules/slack/SlackController.d.ts.map +1 -1
- package/dist/modules/slack/SlackController.js +4 -26
- package/dist/modules/slack/SlackController.js.map +1 -1
- package/dist/modules/tasks/TaskSourceController.d.ts.map +1 -1
- package/dist/modules/tasks/TaskSourceController.js +5 -47
- package/dist/modules/tasks/TaskSourceController.js.map +1 -1
- package/dist/modules/testSecrets/TestSecretsController.d.ts.map +1 -1
- package/dist/modules/testSecrets/TestSecretsController.js +3 -12
- package/dist/modules/testSecrets/TestSecretsController.js.map +1 -1
- package/dist/modules/userSettings/UserSettingsController.d.ts.map +1 -1
- package/dist/modules/userSettings/UserSettingsController.js +13 -19
- package/dist/modules/userSettings/UserSettingsController.js.map +1 -1
- package/dist/modules/validation/ValidationConfigController.d.ts.map +1 -1
- package/dist/modules/validation/ValidationConfigController.js +3 -14
- package/dist/modules/validation/ValidationConfigController.js.map +1 -1
- package/dist/modules/workspaces/WorkspaceController.d.ts.map +1 -1
- package/dist/modules/workspaces/WorkspaceController.js +9 -4
- package/dist/modules/workspaces/WorkspaceController.js.map +1 -1
- package/dist/modules/workspaces/WorkspaceMemberController.d.ts.map +1 -1
- package/dist/modules/workspaces/WorkspaceMemberController.js +10 -19
- package/dist/modules/workspaces/WorkspaceMemberController.js.map +1 -1
- package/package.json +6 -6
- package/dist/agents/storeAgentContextGate.d.ts +0 -36
- package/dist/agents/storeAgentContextGate.d.ts.map +0 -1
- package/dist/agents/storeAgentContextGate.js +0 -36
- 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
|
-
|
|
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 =
|
|
30
|
-
|
|
31
|
-
|
|
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
|
-
|
|
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 =
|
|
40
|
-
|
|
41
|
-
|
|
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 =
|
|
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 =
|
|
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":"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;
|
|
1
|
+
{"version":3,"file":"AgentRunController.js","sourceRoot":"","sources":["../../../src/modules/agentRuns/AgentRunController.ts"],"names":[],"mappings":"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"}
|
|
@@ -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;
|
|
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 {
|
|
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
|
|
9
|
-
*
|
|
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":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAE3B,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAG3C,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AAC5C,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EAChB,mBAAmB,EACnB,uBAAuB,EACvB,yBAAyB,GAC1B,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAAE,
|
|
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;
|
|
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 =
|
|
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 =
|
|
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;
|
|
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
|
-
|
|
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
|
|
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
|
-
|
|
69
|
-
|
|
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
|
-
|
|
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":"AAAA,OAAO,EACL,mCAAmC,EACnC,mCAAmC,EACnC,uBAAuB,EACvB,yBAAyB,EACzB,kCAAkC,EAClC,yBAAyB,EACzB,mCAAmC,GACpC,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AACrD,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAI3B,OAAO,EAAE,0BAA0B,EAAE,MAAM,+BAA+B,CAAA;AAC1E,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;
|
|
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;
|
|
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 {
|
|
6
|
-
/** Resolve the brainstorm module or
|
|
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
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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')
|