@cat-factory/orchestration 0.151.1 → 0.152.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/container/dependencies.d.ts +23 -10
- package/dist/container/dependencies.d.ts.map +1 -1
- package/dist/container/engine-collaborators.d.ts +3 -0
- package/dist/container/engine-collaborators.d.ts.map +1 -1
- package/dist/container/engine-collaborators.js +2 -2
- package/dist/container/engine-collaborators.js.map +1 -1
- package/dist/container/environmentsModule.factory.js +2 -2
- package/dist/container/environmentsModule.factory.js.map +1 -1
- package/dist/container/modules.d.ts +2 -1
- package/dist/container/modules.d.ts.map +1 -1
- package/dist/container/modules.js +50 -6
- package/dist/container/modules.js.map +1 -1
- package/dist/container/runtime.d.ts +2 -2
- package/dist/container/runtime.d.ts.map +1 -1
- package/dist/container/runtime.js +5 -2
- package/dist/container/runtime.js.map +1 -1
- package/dist/container.d.ts +17 -3
- package/dist/container.d.ts.map +1 -1
- package/dist/container.js +9 -3
- package/dist/container.js.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/modules/board/BoardService.d.ts +16 -0
- package/dist/modules/board/BoardService.d.ts.map +1 -1
- package/dist/modules/board/BoardService.js +53 -17
- package/dist/modules/board/BoardService.js.map +1 -1
- package/dist/modules/bugHunt/BugHuntAssessorService.d.ts +40 -0
- package/dist/modules/bugHunt/BugHuntAssessorService.d.ts.map +1 -0
- package/dist/modules/bugHunt/BugHuntAssessorService.js +89 -0
- package/dist/modules/bugHunt/BugHuntAssessorService.js.map +1 -0
- package/dist/modules/environments/EnvironmentTestService.d.ts +2 -5
- package/dist/modules/environments/EnvironmentTestService.d.ts.map +1 -1
- package/dist/modules/environments/EnvironmentTestService.js +2 -2
- package/dist/modules/environments/EnvironmentTestService.js.map +1 -1
- package/dist/modules/execution/ExecutionService.d.ts +17 -8
- package/dist/modules/execution/ExecutionService.d.ts.map +1 -1
- package/dist/modules/execution/ExecutionService.js +47 -81
- package/dist/modules/execution/ExecutionService.js.map +1 -1
- package/dist/modules/execution/ExecutionServiceDependencies.d.ts +2 -3
- package/dist/modules/execution/ExecutionServiceDependencies.d.ts.map +1 -1
- package/dist/modules/execution/PostMergeBoardController.d.ts +59 -0
- package/dist/modules/execution/PostMergeBoardController.d.ts.map +1 -0
- package/dist/modules/execution/PostMergeBoardController.js +98 -0
- package/dist/modules/execution/PostMergeBoardController.js.map +1 -0
- package/dist/modules/execution/PrVerificationReportController.d.ts +2 -6
- package/dist/modules/execution/PrVerificationReportController.d.ts.map +1 -1
- package/dist/modules/execution/PrVerificationReportController.js +6 -1
- package/dist/modules/execution/PrVerificationReportController.js.map +1 -1
- package/dist/modules/execution/ReviewGateController.d.ts +2 -3
- package/dist/modules/execution/ReviewGateController.d.ts.map +1 -1
- package/dist/modules/execution/ReviewGateController.js +12 -2
- package/dist/modules/execution/ReviewGateController.js.map +1 -1
- package/dist/modules/execution/drive.d.ts +2 -5
- package/dist/modules/execution/drive.d.ts.map +1 -1
- package/dist/modules/execution/drive.js +15 -5
- package/dist/modules/execution/drive.js.map +1 -1
- package/dist/modules/merge/MergeTrackRecordService.d.ts +9 -1
- package/dist/modules/merge/MergeTrackRecordService.d.ts.map +1 -1
- package/dist/modules/merge/MergeTrackRecordService.js +40 -7
- package/dist/modules/merge/MergeTrackRecordService.js.map +1 -1
- package/dist/modules/observability/platformMetricsSweep.d.ts +2 -5
- package/dist/modules/observability/platformMetricsSweep.d.ts.map +1 -1
- package/dist/modules/observability/platformMetricsSweep.js +6 -3
- package/dist/modules/observability/platformMetricsSweep.js.map +1 -1
- package/dist/modules/recurring/RecurringPipelineService.d.ts +3 -3
- package/dist/modules/recurring/RecurringPipelineService.d.ts.map +1 -1
- package/dist/modules/recurring/RecurringPipelineService.js +4 -4
- package/dist/modules/recurring/RecurringPipelineService.js.map +1 -1
- package/package.json +11 -11
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import type { BugHuntAssessor, BugHuntSubject, Logger, ModelProvider, ModelProviderResolver, ModelRef } from '@cat-factory/kernel';
|
|
2
|
+
/** What the inline assessor needs to resolve its model and reach the provider. */
|
|
3
|
+
export interface BugHuntAssessorServiceDeps {
|
|
4
|
+
/** Resolve a ModelProvider for a workspace's credential scope (preferred). */
|
|
5
|
+
modelProviderResolver?: ModelProviderResolver;
|
|
6
|
+
/** Static provider (e.g. a fake in tests) used when no resolver is set. */
|
|
7
|
+
modelProvider?: ModelProvider;
|
|
8
|
+
/** Routing-default model ref. */
|
|
9
|
+
modelRef?: ModelRef;
|
|
10
|
+
/** Resolve a model catalog id to a ref (the deployment-aware resolver). */
|
|
11
|
+
resolveBlockModel?: (modelId: string | undefined) => ModelRef | undefined;
|
|
12
|
+
/** Keep an ambient-eligible harness ref inline (local mode) instead of degrading it. */
|
|
13
|
+
runsInline?: (ref: ModelRef) => boolean;
|
|
14
|
+
/** Resolve the workspace's default model for the `bug-hunter` kind. */
|
|
15
|
+
resolveWorkspaceModelDefault?: (workspaceId: string, agentKind: string) => Promise<string | undefined>;
|
|
16
|
+
/** Current time, injected so the rendered candidate ages are deterministic under test. */
|
|
17
|
+
now?: () => number;
|
|
18
|
+
/** Facade logger; a swallowed ranking failure with no trace is an unowned bug. */
|
|
19
|
+
logger?: Logger;
|
|
20
|
+
}
|
|
21
|
+
export declare class BugHuntAssessorService implements BugHuntAssessor {
|
|
22
|
+
private readonly deps;
|
|
23
|
+
constructor(deps: BugHuntAssessorServiceDeps);
|
|
24
|
+
/** Whether a ranking can run (a provider AND a routing default are wired). */
|
|
25
|
+
get enabled(): boolean;
|
|
26
|
+
assess(subject: BugHuntSubject): Promise<{
|
|
27
|
+
verdicts: unknown;
|
|
28
|
+
model: string;
|
|
29
|
+
}>;
|
|
30
|
+
/**
|
|
31
|
+
* Build the error AND log it. The caller deliberately swallows a ranking failure (the scan is
|
|
32
|
+
* still useful), so this is the only place the cause is recorded — without it a revoked key
|
|
33
|
+
* would surface to an operator as nothing but a permanently "unranked" hunt.
|
|
34
|
+
*/
|
|
35
|
+
private fail;
|
|
36
|
+
private resolveModel;
|
|
37
|
+
/** Workspace per-kind default > routing default (subscription refs degrade inline). */
|
|
38
|
+
private modelFor;
|
|
39
|
+
}
|
|
40
|
+
//# sourceMappingURL=BugHuntAssessorService.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BugHuntAssessorService.d.ts","sourceRoot":"","sources":["../../../src/modules/bugHunt/BugHuntAssessorService.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,eAAe,EACf,cAAc,EACd,MAAM,EACN,aAAa,EACb,qBAAqB,EACrB,QAAQ,EACT,MAAM,qBAAqB,CAAA;AA+B5B,kFAAkF;AAClF,MAAM,WAAW,0BAA0B;IACzC,8EAA8E;IAC9E,qBAAqB,CAAC,EAAE,qBAAqB,CAAA;IAC7C,2EAA2E;IAC3E,aAAa,CAAC,EAAE,aAAa,CAAA;IAC7B,iCAAiC;IACjC,QAAQ,CAAC,EAAE,QAAQ,CAAA;IACnB,2EAA2E;IAC3E,iBAAiB,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,KAAK,QAAQ,GAAG,SAAS,CAAA;IACzE,wFAAwF;IACxF,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,QAAQ,KAAK,OAAO,CAAA;IACvC,uEAAuE;IACvE,4BAA4B,CAAC,EAAE,CAC7B,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,KACd,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAA;IAChC,0FAA0F;IAC1F,GAAG,CAAC,EAAE,MAAM,MAAM,CAAA;IAClB,kFAAkF;IAClF,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AAgBD,qBAAa,sBAAuB,YAAW,eAAe;IAChD,OAAO,CAAC,QAAQ,CAAC,IAAI;IAAjC,YAA6B,IAAI,EAAE,0BAA0B,EAAI;IAEjE,8EAA8E;IAC9E,IAAI,OAAO,IAAI,OAAO,CAErB;IAEK,MAAM,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC;QAAE,QAAQ,EAAE,OAAO,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAiCnF;IAED;;;;OAIG;IACH,OAAO,CAAC,IAAI;YASE,YAAY;IAW1B,uFAAuF;YACzE,QAAQ;CAavB"}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
import { generateText } from 'ai';
|
|
2
|
+
import { extractJson, inlineModelRef, resolveScopedModelProvider, ValidationError, } from '@cat-factory/kernel';
|
|
3
|
+
import { BUG_HUNT_AGENT_KIND, BUG_HUNT_SYSTEM_PROMPT, catFactoryObservability, renderBugHuntPrompt, } from '@cat-factory/agents';
|
|
4
|
+
/**
|
|
5
|
+
* Ranking is a judgement over a fixed candidate list, so it must be reproducible for the same
|
|
6
|
+
* board: a shortlist that reorders between two identical hunts is not a recommendation, it's
|
|
7
|
+
* noise. Same reasoning (and same value) as the judge assessment.
|
|
8
|
+
*/
|
|
9
|
+
const TEMPERATURE = 0;
|
|
10
|
+
/**
|
|
11
|
+
* Output budget. One verdict is ~60 tokens and a scan is capped at 40 candidates, so this
|
|
12
|
+
* leaves comfortable headroom — a truncated reply is unparseable JSON, which costs the whole
|
|
13
|
+
* ranking rather than its tail.
|
|
14
|
+
*/
|
|
15
|
+
const MAX_OUTPUT_TOKENS = 6_000;
|
|
16
|
+
export class BugHuntAssessorService {
|
|
17
|
+
deps;
|
|
18
|
+
constructor(deps) {
|
|
19
|
+
this.deps = deps;
|
|
20
|
+
}
|
|
21
|
+
/** Whether a ranking can run (a provider AND a routing default are wired). */
|
|
22
|
+
get enabled() {
|
|
23
|
+
return (!!this.deps.modelProviderResolver || !!this.deps.modelProvider) && !!this.deps.modelRef;
|
|
24
|
+
}
|
|
25
|
+
async assess(subject) {
|
|
26
|
+
const { modelProvider, ref } = await this.resolveModel(subject.workspaceId);
|
|
27
|
+
const now = this.deps.now?.() ?? Date.now();
|
|
28
|
+
let text;
|
|
29
|
+
try {
|
|
30
|
+
const result = await generateText({
|
|
31
|
+
model: modelProvider.resolve(ref),
|
|
32
|
+
system: BUG_HUNT_SYSTEM_PROMPT,
|
|
33
|
+
prompt: renderBugHuntPrompt(subject.candidates, now),
|
|
34
|
+
temperature: TEMPERATURE,
|
|
35
|
+
maxOutputTokens: MAX_OUTPUT_TOKENS,
|
|
36
|
+
providerOptions: catFactoryObservability({
|
|
37
|
+
agentKind: BUG_HUNT_AGENT_KIND,
|
|
38
|
+
workspaceId: subject.workspaceId,
|
|
39
|
+
}),
|
|
40
|
+
});
|
|
41
|
+
text = result.text;
|
|
42
|
+
}
|
|
43
|
+
catch (e) {
|
|
44
|
+
throw this.fail(subject, ref, `generation failed: ${e instanceof Error ? e.message : String(e)}`);
|
|
45
|
+
}
|
|
46
|
+
const verdicts = extractJson(text);
|
|
47
|
+
if (verdicts === null || typeof verdicts !== 'object') {
|
|
48
|
+
// An empty visible reply means the model answered only into its private reasoning
|
|
49
|
+
// channel (seen on some reasoning models); a non-JSON reply means it ignored the
|
|
50
|
+
// contract. Either way there is no ranking, and the hunt must say so rather than
|
|
51
|
+
// present the board's own order as a recommendation.
|
|
52
|
+
throw this.fail(subject, ref, 'the reply contained no JSON ranking');
|
|
53
|
+
}
|
|
54
|
+
return { verdicts, model: `${ref.provider}:${ref.model}` };
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Build the error AND log it. The caller deliberately swallows a ranking failure (the scan is
|
|
58
|
+
* still useful), so this is the only place the cause is recorded — without it a revoked key
|
|
59
|
+
* would surface to an operator as nothing but a permanently "unranked" hunt.
|
|
60
|
+
*/
|
|
61
|
+
fail(subject, ref, reason) {
|
|
62
|
+
const message = `The bug-hunt ranking (${ref.provider}:${ref.model}) ${reason}`;
|
|
63
|
+
this.deps.logger?.warn(message, {
|
|
64
|
+
workspaceId: subject.workspaceId,
|
|
65
|
+
candidates: subject.candidates.length,
|
|
66
|
+
});
|
|
67
|
+
return new ValidationError(message);
|
|
68
|
+
}
|
|
69
|
+
async resolveModel(workspaceId) {
|
|
70
|
+
const modelProvider = await resolveScopedModelProvider({ workspaceId }, this.deps);
|
|
71
|
+
const ref = await this.modelFor(workspaceId);
|
|
72
|
+
if (!modelProvider || !ref) {
|
|
73
|
+
throw new ValidationError('No model is configured for the bug-hunt ranking');
|
|
74
|
+
}
|
|
75
|
+
return { modelProvider, ref };
|
|
76
|
+
}
|
|
77
|
+
/** Workspace per-kind default > routing default (subscription refs degrade inline). */
|
|
78
|
+
async modelFor(workspaceId) {
|
|
79
|
+
const fallback = this.deps.modelRef;
|
|
80
|
+
const runsInline = this.deps.runsInline;
|
|
81
|
+
const defaultId = await this.deps.resolveWorkspaceModelDefault?.(workspaceId, BUG_HUNT_AGENT_KIND);
|
|
82
|
+
const fromDefault = this.deps.resolveBlockModel?.(defaultId);
|
|
83
|
+
if (fromDefault) {
|
|
84
|
+
return inlineModelRef(fromDefault, fallback ?? fromDefault, runsInline ? { runsInline } : {});
|
|
85
|
+
}
|
|
86
|
+
return fallback;
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
//# sourceMappingURL=BugHuntAssessorService.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BugHuntAssessorService.js","sourceRoot":"","sources":["../../../src/modules/bugHunt/BugHuntAssessorService.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { Block, Clock, ConnectionTestResult, EnvironmentHandle, EnvironmentTestRun, ExecutionEventPublisher, IdGenerator, ResolveRunRepoContext, RunnerJobRef, RunnerJobView } from '@cat-factory/kernel';
|
|
1
|
+
import type { Block, Clock, ConnectionTestResult, EnvironmentHandle, EnvironmentTestRun, ExecutionEventPublisher, IdGenerator, Logger, ResolveRunRepoContext, RunnerJobRef, RunnerJobView } from '@cat-factory/kernel';
|
|
2
2
|
import type { BlockRepository, EnvironmentTestRunner, EnvironmentTestRunRepository, WorkspaceRepository } from '@cat-factory/kernel';
|
|
3
3
|
import type { ProvisionArgs, ProvisionDispatch } from '@cat-factory/integrations';
|
|
4
4
|
/** The poll's terminal-ness, returned to the durable driver so it knows when to stop. */
|
|
@@ -73,10 +73,7 @@ export interface EnvironmentTestServiceDependencies {
|
|
|
73
73
|
* `warn` per failure with the stage + message (+ stack when the cause is an `Error`). Absent ⇒
|
|
74
74
|
* no logging (the run record is still written).
|
|
75
75
|
*/
|
|
76
|
-
logger?:
|
|
77
|
-
info(obj: Record<string, unknown>, msg?: string): void;
|
|
78
|
-
warn(obj: Record<string, unknown>, msg?: string): void;
|
|
79
|
-
};
|
|
76
|
+
logger?: Logger;
|
|
80
77
|
}
|
|
81
78
|
export declare class EnvironmentTestService {
|
|
82
79
|
private readonly deps;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EnvironmentTestService.d.ts","sourceRoot":"","sources":["../../../src/modules/environments/EnvironmentTestService.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"EnvironmentTestService.d.ts","sourceRoot":"","sources":["../../../src/modules/environments/EnvironmentTestService.ts"],"names":[],"mappings":"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"}
|
|
@@ -374,13 +374,13 @@ export class EnvironmentTestService {
|
|
|
374
374
|
// record + SPA aside). Carries the stage + message (which now includes any provider
|
|
375
375
|
// field-level detail) and the stack when the cause is an `Error`, so an unexpected throw is
|
|
376
376
|
// debuggable from the logs rather than just the terminal run row.
|
|
377
|
-
this.deps.logger?.warn({
|
|
377
|
+
this.deps.logger?.warn('environment self-test failed', {
|
|
378
378
|
workspaceId: record.workspaceId,
|
|
379
379
|
runId: record.id,
|
|
380
380
|
failedStage,
|
|
381
381
|
err: message,
|
|
382
382
|
...(cause instanceof Error && cause.stack ? { stack: cause.stack } : {}),
|
|
383
|
-
}
|
|
383
|
+
});
|
|
384
384
|
// Release any in-flight deploy job when provisioning never settled (a stop
|
|
385
385
|
// mid-provision, a dispatch that threw or crashed before the stage patch landed):
|
|
386
386
|
// best-effort abort of the deploy runner so a stopped test doesn't keep a container
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EnvironmentTestService.js","sourceRoot":"","sources":["../../../src/modules/environments/EnvironmentTestService.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"EnvironmentTestService.js","sourceRoot":"","sources":["../../../src/modules/environments/EnvironmentTestService.ts"],"names":[],"mappings":"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"}
|
|
@@ -75,7 +75,14 @@ export declare class ExecutionService {
|
|
|
75
75
|
private readonly prMerger?;
|
|
76
76
|
private readonly notifications?;
|
|
77
77
|
private readonly mergePolicy;
|
|
78
|
+
/** The board-shaped follow-up a merged task triggers (module materialisation, dependents). */
|
|
79
|
+
private readonly postMergeBoard;
|
|
78
80
|
private readonly issueWriteback?;
|
|
81
|
+
/**
|
|
82
|
+
* The engine's structured logger, resolved once so the best-effort paths below can report
|
|
83
|
+
* their drops without a null-check. `noopLogger` when a facade wired none.
|
|
84
|
+
*/
|
|
85
|
+
private readonly log;
|
|
79
86
|
private readonly subscriptionActivations?;
|
|
80
87
|
private readonly pokeInitiativeLoop?;
|
|
81
88
|
private readonly resolveWorkspaceModelDefault?;
|
|
@@ -88,6 +95,12 @@ export declare class ExecutionService {
|
|
|
88
95
|
*/
|
|
89
96
|
private readonly runDispatcher;
|
|
90
97
|
constructor({ workspaceRepository, blockRepository, pipelineRepository, executionRepository, accountRepository, idGenerator, clock, agentExecutor, workRunner, executionEventPublisher, boardService, spendService, documentRepository, documentUrlResolver, taskRepository, requirementReviewRepository, docInterviewRepository, requirementReviewService, docInterviewService, forkChatService, testerQualityReviewer, kaizenScheduler, clarityReviewRepository, clarityReviewService, brainstormServices, brainstormSessionRepository, fragmentResolver, skillResolver, environmentProvisioning, resolveTestSecretRefs, resolveValidationChecks, environmentTeardown, branchUpdater, blueprintReconciler, initiativeService, initiativeRepository, initiativeInterviewService, notificationService, resolveBinaryArtifactStore, workspaceSettingsService, llmObservability, pullRequestMerger, riskPolicyRepository, mergeTrackRecord, riskPolicyCache, ticketTrackerProvider, issueWriteback, bugIntakeService, subscriptionActivationRepository, resolveWorkspaceModelDefault, resolveProviderCapabilities, inlineHarnessRef, resolveRunRepoContext, assertAgentBackendConfigured, runInitiatorScope, pokeInitiativeLoop, agentKindRegistry, gateRegistry, judgeRegistry, judgeAssessor, stepResolverRegistry, providerRegistry, initiativePresetRegistry, prVerificationReportPublisher, workspaceSettingsRepository, appBaseUrl, logger, }: ExecutionServiceDependencies);
|
|
98
|
+
/**
|
|
99
|
+
* Assemble the post-merge board controller. A method rather than a literal in the constructor
|
|
100
|
+
* because everything it reads is already a field by the time it runs, so it needs no destructured
|
|
101
|
+
* parameter threaded through — and the constructor is a god-function against its size budget.
|
|
102
|
+
*/
|
|
103
|
+
private buildPostMergeBoard;
|
|
91
104
|
/** Requirements-review window actions (run / incorporate / re-review / proceed / …). */
|
|
92
105
|
get requirementsReview(): RequirementReviewActions;
|
|
93
106
|
/** Clarity-review (bug-report triage) window actions. */
|
|
@@ -269,12 +282,8 @@ export declare class ExecutionService {
|
|
|
269
282
|
*/
|
|
270
283
|
private raisePartialMergeNotification;
|
|
271
284
|
/**
|
|
272
|
-
*
|
|
273
|
-
*
|
|
274
|
-
* present), so a dependent on an individual-usage model — which needs its owner to
|
|
275
|
-
* unlock a personal credential per run — is SKIPPED rather than started (it would fault
|
|
276
|
-
* at dispatch); the human starts it manually. Each dependent is started independently so
|
|
277
|
-
* one failure (already running, no provider, …) never blocks the rest.
|
|
285
|
+
* Start the dependents a merged task was blocking. Delegates to
|
|
286
|
+
* {@link PostMergeBoardController}; the skip rules live there.
|
|
278
287
|
*/
|
|
279
288
|
private autoStartDependents;
|
|
280
289
|
/**
|
|
@@ -283,8 +292,8 @@ export declare class ExecutionService {
|
|
|
283
292
|
*/
|
|
284
293
|
private resolveRiskPolicy;
|
|
285
294
|
/**
|
|
286
|
-
*
|
|
287
|
-
*
|
|
295
|
+
* Materialise the module a merged task was assigned to. Delegates to
|
|
296
|
+
* {@link PostMergeBoardController}.
|
|
288
297
|
*/
|
|
289
298
|
private applyModuleAssignment;
|
|
290
299
|
/** Resolve a pending decision; the run's next step lets the agent finish it. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ExecutionService.d.ts","sourceRoot":"","sources":["../../../src/modules/execution/ExecutionService.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,cAAc,EACd,iBAAiB,EACjB,gBAAgB,EAChB,KAAK,EACL,iBAAiB,EACjB,kBAAkB,EAClB,qBAAqB,EACrB,eAAe,EACf,oBAAoB,EACpB,iBAAiB,EACjB,oBAAoB,EACpB,6BAA6B,EAG7B,iBAAiB,
|
|
1
|
+
{"version":3,"file":"ExecutionService.d.ts","sourceRoot":"","sources":["../../../src/modules/execution/ExecutionService.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,7 +4,7 @@ import { assertPipelineLaunchable } from '../pipelines/pipelineShape.js';
|
|
|
4
4
|
import { shouldRunGatedStep } from './stepGating.logic.js';
|
|
5
5
|
import { resolveIndividualVendors, } from './individualVendors.logic.js';
|
|
6
6
|
import { assertFound, ConflictError, NotFoundError, RunContendedError, ReviewContendedError, ValidationError, } from '@cat-factory/kernel';
|
|
7
|
-
import { DEFAULT_RISK_POLICY } from '@cat-factory/kernel';
|
|
7
|
+
import { DEFAULT_RISK_POLICY, noopLogger, runBestEffort } from '@cat-factory/kernel';
|
|
8
8
|
import { REQUIREMENTS_REVIEW_AGENT_KIND, CLARITY_REVIEW_AGENT_KIND, REQUIREMENTS_BRAINSTORM_AGENT_KIND, ARCHITECTURE_BRAINSTORM_AGENT_KIND, isTesterKind, HUMAN_TEST_AGENT_KIND, VISUAL_CONFIRM_AGENT_KIND, HUMAN_REVIEW_AGENT_KIND, } from './ci.logic.js';
|
|
9
9
|
import { DEFAULT_FOLLOW_UP_MAX_LOOPS, FOLLOW_UP_PRODUCER_KIND } from './followUp.logic.js';
|
|
10
10
|
import { AgentContextBuilder } from './AgentContextBuilder.js';
|
|
@@ -15,6 +15,7 @@ import { RunDispatcher } from './RunDispatcher.js';
|
|
|
15
15
|
import { RunAdmission } from './RunAdmission.js';
|
|
16
16
|
import { inferTechnicalLabel } from './technical.logic.js';
|
|
17
17
|
import { MergeResolver } from './MergeResolver.js';
|
|
18
|
+
import { PostMergeBoardController } from './PostMergeBoardController.js';
|
|
18
19
|
import { orderPrsForMerge } from './mergeOrder.logic.js';
|
|
19
20
|
import {} from './ReviewGateController.js';
|
|
20
21
|
import { buildGateWindowControllers, buildReviewSubjects } from './gate-window-controllers.js';
|
|
@@ -32,7 +33,7 @@ import { DocInterviewController } from './DocInterviewController.js';
|
|
|
32
33
|
import { isReentrantDecisionResume } from './reentrancy.logic.js';
|
|
33
34
|
import { RunMergePolicy } from './RunMergePolicy.js';
|
|
34
35
|
import { isAsyncAgentExecutor } from '@cat-factory/kernel';
|
|
35
|
-
import {
|
|
36
|
+
import { descendantIds } from '../board/board.logic.js';
|
|
36
37
|
import { requireWorkspace } from '@cat-factory/kernel';
|
|
37
38
|
import { buildResumedInstance, planResumedSteps, planRestartFromStep } from './retry.logic.js';
|
|
38
39
|
import { PrVerificationReportController } from './PrVerificationReportController.js';
|
|
@@ -128,7 +129,14 @@ export class ExecutionService {
|
|
|
128
129
|
prMerger;
|
|
129
130
|
notifications;
|
|
130
131
|
mergePolicy;
|
|
132
|
+
/** The board-shaped follow-up a merged task triggers (module materialisation, dependents). */
|
|
133
|
+
postMergeBoard;
|
|
131
134
|
issueWriteback;
|
|
135
|
+
/**
|
|
136
|
+
* The engine's structured logger, resolved once so the best-effort paths below can report
|
|
137
|
+
* their drops without a null-check. `noopLogger` when a facade wired none.
|
|
138
|
+
*/
|
|
139
|
+
log;
|
|
132
140
|
subscriptionActivations;
|
|
133
141
|
pokeInitiativeLoop;
|
|
134
142
|
resolveWorkspaceModelDefault;
|
|
@@ -214,6 +222,7 @@ export class ExecutionService {
|
|
|
214
222
|
});
|
|
215
223
|
this.contextBuilder = runContext.contextBuilder;
|
|
216
224
|
this.admission = runContext.admission;
|
|
225
|
+
this.postMergeBoard = this.buildPostMergeBoard();
|
|
217
226
|
this.mergeResolver = new MergeResolver({
|
|
218
227
|
blockRepository,
|
|
219
228
|
notificationService,
|
|
@@ -362,10 +371,33 @@ export class ExecutionService {
|
|
|
362
371
|
this.prMerger = pullRequestMerger;
|
|
363
372
|
this.notifications = notificationService;
|
|
364
373
|
this.issueWriteback = issueWriteback;
|
|
374
|
+
this.log = logger ?? noopLogger;
|
|
365
375
|
this.subscriptionActivations = subscriptionActivationRepository;
|
|
366
376
|
this.pokeInitiativeLoop = pokeInitiativeLoop;
|
|
367
377
|
this.resolveWorkspaceModelDefault = resolveWorkspaceModelDefault;
|
|
368
378
|
}
|
|
379
|
+
/**
|
|
380
|
+
* Assemble the post-merge board controller. A method rather than a literal in the constructor
|
|
381
|
+
* because everything it reads is already a field by the time it runs, so it needs no destructured
|
|
382
|
+
* parameter threaded through — and the constructor is a god-function against its size budget.
|
|
383
|
+
*/
|
|
384
|
+
buildPostMergeBoard() {
|
|
385
|
+
// An explicit host literal, not `this`: the fields below are `private`, which makes the class
|
|
386
|
+
// structurally incompatible with the interface even from inside it.
|
|
387
|
+
const host = {
|
|
388
|
+
blockRepository: this.blockRepository,
|
|
389
|
+
pipelineRepository: this.pipelineRepository,
|
|
390
|
+
admission: this.admission,
|
|
391
|
+
board: this.board,
|
|
392
|
+
events: this.events,
|
|
393
|
+
};
|
|
394
|
+
return new PostMergeBoardController(host, {
|
|
395
|
+
// A system-initiated auto-start has no human present to unlock a personal credential, so it
|
|
396
|
+
// reports NO activation and any individual-usage dependent is skipped rather than started.
|
|
397
|
+
resolveIndividualVendors: (ws, modelId, presetId, kinds) => this.resolveIndividualVendors(ws, modelId, presetId, kinds, () => false),
|
|
398
|
+
start: (ws, blockId, pipelineId, opts) => this.start(ws, blockId, pipelineId, opts),
|
|
399
|
+
});
|
|
400
|
+
}
|
|
369
401
|
// ---- gate-window action sub-facades -------------------------------------
|
|
370
402
|
// Per-feature groupings of the dedicated review/test window actions, consumed by the
|
|
371
403
|
// matching server controllers. See {@link gate-window-facades}. The `executionService` is
|
|
@@ -869,7 +901,7 @@ export class ExecutionService {
|
|
|
869
901
|
const technical = inferTechnicalLabel(block.technical, producerStep.noBusinessSpecs === true, companionStep.technicalCorroborated);
|
|
870
902
|
if (technical === undefined)
|
|
871
903
|
return;
|
|
872
|
-
await this.blockRepository.update(workspaceId, block.id, { technical })
|
|
904
|
+
await runBestEffort(this.log, 'block.updateTechnicalSummary', () => this.blockRepository.update(workspaceId, block.id, { technical }), { workspaceId, blockId: block.id });
|
|
873
905
|
}
|
|
874
906
|
// ---- iterative review gates (requirements + clarity) --------------------
|
|
875
907
|
// The two gate flows live in {@link ReviewGateController}, parameterised by a
|
|
@@ -1163,9 +1195,7 @@ export class ExecutionService {
|
|
|
1163
1195
|
// setting + per-task override; fire-and-forget so a tracker outage never fails
|
|
1164
1196
|
// the run (the merge already happened).
|
|
1165
1197
|
if (this.issueWriteback && block.pullRequest) {
|
|
1166
|
-
await this.issueWriteback
|
|
1167
|
-
.onPullRequestMerged(workspaceId, block, block.pullRequest)
|
|
1168
|
-
.catch(() => { });
|
|
1198
|
+
await runBestEffort(this.log, 'issueWriteback.onPullRequestMerged', () => this.issueWriteback.onPullRequestMerged(workspaceId, block, block.pullRequest), { workspaceId, blockId });
|
|
1169
1199
|
}
|
|
1170
1200
|
if ((block.level ?? 'frame') === 'task') {
|
|
1171
1201
|
await this.applyModuleAssignment(workspaceId, blockId);
|
|
@@ -1173,7 +1203,9 @@ export class ExecutionService {
|
|
|
1173
1203
|
// that depends on it whose other dependencies are now also done. Best-effort — the
|
|
1174
1204
|
// merge already happened, so a dependent that fails to start must never roll it back.
|
|
1175
1205
|
if (block.autoStartDependents) {
|
|
1176
|
-
|
|
1206
|
+
// The consequential one: a swallow here means dependent tasks silently never start,
|
|
1207
|
+
// and "the board just stopped moving" is the only symptom a user ever sees.
|
|
1208
|
+
await runBestEffort(this.log, 'execution.autoStartDependents', () => this.autoStartDependents(workspaceId, blockId), { workspaceId, blockId });
|
|
1177
1209
|
}
|
|
1178
1210
|
// A spawned initiative task's PR merging pokes its owning initiative's loop so it
|
|
1179
1211
|
// reconciles the item + spawns the next wave immediately (the manual-merge path, which
|
|
@@ -1207,54 +1239,11 @@ export class ExecutionService {
|
|
|
1207
1239
|
});
|
|
1208
1240
|
}
|
|
1209
1241
|
/**
|
|
1210
|
-
*
|
|
1211
|
-
*
|
|
1212
|
-
* present), so a dependent on an individual-usage model — which needs its owner to
|
|
1213
|
-
* unlock a personal credential per run — is SKIPPED rather than started (it would fault
|
|
1214
|
-
* at dispatch); the human starts it manually. Each dependent is started independently so
|
|
1215
|
-
* one failure (already running, no provider, …) never blocks the rest.
|
|
1242
|
+
* Start the dependents a merged task was blocking. Delegates to
|
|
1243
|
+
* {@link PostMergeBoardController}; the skip rules live there.
|
|
1216
1244
|
*/
|
|
1217
|
-
|
|
1218
|
-
|
|
1219
|
-
const dependents = blocks.filter((b) => b.level === 'task' && b.dependsOn.includes(mergedBlockId));
|
|
1220
|
-
// Nothing depends on the merged block (the common case) — skip the cross-workspace
|
|
1221
|
-
// augment and the pipeline list entirely rather than paying reads with no dependent to act on.
|
|
1222
|
-
if (dependents.length === 0)
|
|
1223
|
-
return;
|
|
1224
|
-
// A dependent's OTHER blockers may live in another workspace (a shared service); resolve
|
|
1225
|
-
// them so `dependenciesMet` doesn't treat a cross-workspace blocker as missing-⇒-satisfied.
|
|
1226
|
-
await this.admission.augmentWithCrossWorkspaceDeps(blocks, dependents.flatMap((d) => d.dependsOn));
|
|
1227
|
-
// Resolve every dependent's pipeline from ONE workspace list, not a per-dependent
|
|
1228
|
-
// point-read in the loop (banned N+1): index the catalog by id, and take the board's
|
|
1229
|
-
// "Run" default (the first pipeline) for any dependent with no pinned pipeline.
|
|
1230
|
-
const pipelines = await this.pipelineRepository.listByWorkspace(workspaceId);
|
|
1231
|
-
const pipelinesById = new Map(pipelines.map((p) => [p.id, p]));
|
|
1232
|
-
const firstPipeline = pipelines[0] ?? null;
|
|
1233
|
-
for (const dependent of dependents) {
|
|
1234
|
-
// All of the dependent's blockers must now be satisfied (not just the one that merged).
|
|
1235
|
-
if (!dependenciesMet(blocks, dependent.id))
|
|
1236
|
-
continue;
|
|
1237
|
-
// Only auto-start a fresh task — never replace a run already in flight or a finished one.
|
|
1238
|
-
if (dependent.status !== 'planned' && dependent.status !== 'ready')
|
|
1239
|
-
continue;
|
|
1240
|
-
const pipeline = dependent.pipelineId
|
|
1241
|
-
? (pipelinesById.get(dependent.pipelineId) ?? null)
|
|
1242
|
-
: firstPipeline;
|
|
1243
|
-
if (!pipeline)
|
|
1244
|
-
continue;
|
|
1245
|
-
// Skip dependents that would lease an individual-usage credential (can't unlock
|
|
1246
|
-
// unattended) — resolved from the block + pipeline already in hand, no re-reads.
|
|
1247
|
-
const individual = await this.resolveIndividualVendors(workspaceId, dependent.modelId, dependent.modelPresetId, pipeline.agentKinds, () => false);
|
|
1248
|
-
if (individual.length > 0)
|
|
1249
|
-
continue;
|
|
1250
|
-
try {
|
|
1251
|
-
await this.start(workspaceId, dependent.id, pipeline.id, { initiatedBy: null });
|
|
1252
|
-
}
|
|
1253
|
-
catch {
|
|
1254
|
-
// Already running, no usable provider, still-unmet dep racing, etc. — leave this
|
|
1255
|
-
// dependent for a manual start; the others still get their chance.
|
|
1256
|
-
}
|
|
1257
|
-
}
|
|
1245
|
+
autoStartDependents(workspaceId, mergedBlockId) {
|
|
1246
|
+
return this.postMergeBoard.autoStartDependents(workspaceId, mergedBlockId);
|
|
1258
1247
|
}
|
|
1259
1248
|
/**
|
|
1260
1249
|
* Resolve the merge threshold preset that governs a task — delegated to {@link RunMergePolicy}
|
|
@@ -1264,34 +1253,11 @@ export class ExecutionService {
|
|
|
1264
1253
|
return this.mergePolicy.resolve(workspaceId, block);
|
|
1265
1254
|
}
|
|
1266
1255
|
/**
|
|
1267
|
-
*
|
|
1268
|
-
*
|
|
1256
|
+
* Materialise the module a merged task was assigned to. Delegates to
|
|
1257
|
+
* {@link PostMergeBoardController}.
|
|
1269
1258
|
*/
|
|
1270
|
-
|
|
1271
|
-
|
|
1272
|
-
if (!task || !task.moduleName)
|
|
1273
|
-
return;
|
|
1274
|
-
const blocks = await this.blockRepository.listByWorkspace(workspaceId);
|
|
1275
|
-
const service = serviceOf(blocks, task);
|
|
1276
|
-
if (!service)
|
|
1277
|
-
return;
|
|
1278
|
-
let module = blocks.find((b) => b.parentId === service.id && b.level === 'module' && b.title === task.moduleName);
|
|
1279
|
-
if (!module) {
|
|
1280
|
-
module = await this.board.addModule(workspaceId, service.id, {
|
|
1281
|
-
name: task.moduleName,
|
|
1282
|
-
});
|
|
1283
|
-
}
|
|
1284
|
-
if (module.id !== task.parentId) {
|
|
1285
|
-
const n = blocks.filter((b) => b.parentId === module.id && b.level === 'task').length;
|
|
1286
|
-
await this.board.reparent(workspaceId, taskId, {
|
|
1287
|
-
parentId: module.id,
|
|
1288
|
-
position: { x: 16 + (n % 2) * 190, y: 40 + Math.floor(n / 2) * 130 },
|
|
1289
|
-
});
|
|
1290
|
-
}
|
|
1291
|
-
// A module node appeared and/or a task changed parent — the per-block event
|
|
1292
|
-
// can't express that hierarchy change, so signal a coarse board refresh. Name the moved
|
|
1293
|
-
// task so the refresh fans out to every board mounting its shared service.
|
|
1294
|
-
await this.events.boardChanged(workspaceId, 'module', taskId);
|
|
1259
|
+
applyModuleAssignment(workspaceId, taskId) {
|
|
1260
|
+
return this.postMergeBoard.applyModuleAssignment(workspaceId, taskId);
|
|
1295
1261
|
}
|
|
1296
1262
|
/** Resolve a pending decision; the run's next step lets the agent finish it. */
|
|
1297
1263
|
async resolveDecision(workspaceId, executionId, decisionId, choice) {
|