@cat-factory/orchestration 0.11.1 → 0.13.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.d.ts +16 -2
- package/dist/container.d.ts.map +1 -1
- package/dist/container.js +9 -0
- package/dist/container.js.map +1 -1
- package/dist/modules/board/BoardService.d.ts +23 -1
- package/dist/modules/board/BoardService.d.ts.map +1 -1
- package/dist/modules/board/BoardService.js +108 -18
- package/dist/modules/board/BoardService.js.map +1 -1
- package/dist/modules/board/board.logic.d.ts +19 -0
- package/dist/modules/board/board.logic.d.ts.map +1 -1
- package/dist/modules/board/board.logic.js +60 -0
- package/dist/modules/board/board.logic.js.map +1 -1
- package/dist/modules/execution/ExecutionService.d.ts +41 -1
- package/dist/modules/execution/ExecutionService.d.ts.map +1 -1
- package/dist/modules/execution/ExecutionService.js +107 -4
- package/dist/modules/execution/ExecutionService.js.map +1 -1
- package/package.json +8 -8
|
@@ -46,6 +46,66 @@ export function canReparent(childLevel, parent) {
|
|
|
46
46
|
return parent.level === 'frame' || parent.level === 'module';
|
|
47
47
|
if (childLevel === 'module')
|
|
48
48
|
return parent.level === 'frame';
|
|
49
|
+
// An epic may optionally be placed under a service/module (or live top-level); it is a
|
|
50
|
+
// grouping node, never a container, so nothing reparents INTO it.
|
|
51
|
+
if (childLevel === 'epic')
|
|
52
|
+
return parent.level === 'frame' || parent.level === 'module';
|
|
49
53
|
return false; // frames are not nested
|
|
50
54
|
}
|
|
55
|
+
/** Tasks that belong to an epic via their `epicId` membership link. */
|
|
56
|
+
export function epicMembers(blocks, epicId) {
|
|
57
|
+
return blocks.filter((b) => b.epicId === epicId);
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Whether adding the edge "`targetId` dependsOn `sourceId`" would close a cycle in the
|
|
61
|
+
* dependency graph — i.e. `sourceId` already (transitively) depends on `targetId`. A DFS
|
|
62
|
+
* from the source over existing `dependsOn` edges that reaches the target means the new
|
|
63
|
+
* edge would make the graph cyclic, so the caller must reject it. Returns false for a
|
|
64
|
+
* self-edge (the caller rejects that separately with a clearer message).
|
|
65
|
+
*/
|
|
66
|
+
export function wouldCreateCycle(blocks, targetId, sourceId) {
|
|
67
|
+
if (targetId === sourceId)
|
|
68
|
+
return false;
|
|
69
|
+
const byId = new Map(blocks.map((b) => [b.id, b]));
|
|
70
|
+
const seen = new Set();
|
|
71
|
+
const stack = [sourceId];
|
|
72
|
+
while (stack.length) {
|
|
73
|
+
const id = stack.pop();
|
|
74
|
+
if (id === targetId)
|
|
75
|
+
return true;
|
|
76
|
+
if (seen.has(id))
|
|
77
|
+
continue;
|
|
78
|
+
seen.add(id);
|
|
79
|
+
const node = byId.get(id);
|
|
80
|
+
if (node)
|
|
81
|
+
stack.push(...node.dependsOn);
|
|
82
|
+
}
|
|
83
|
+
return false;
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* Whether every dependency of `taskId` is satisfied (each `dependsOn` block is `done`).
|
|
87
|
+
* A missing dependency block (e.g. deleted out of band) is treated as satisfied — the
|
|
88
|
+
* engine never blocks forever on an edge it can't resolve. The block's own status is
|
|
89
|
+
* irrelevant; this asks only about its blockers.
|
|
90
|
+
*/
|
|
91
|
+
export function dependenciesMet(blocks, taskId) {
|
|
92
|
+
const byId = new Map(blocks.map((b) => [b.id, b]));
|
|
93
|
+
const task = byId.get(taskId);
|
|
94
|
+
if (!task)
|
|
95
|
+
return true;
|
|
96
|
+
return task.dependsOn.every((depId) => {
|
|
97
|
+
const dep = byId.get(depId);
|
|
98
|
+
return !dep || dep.status === 'done';
|
|
99
|
+
});
|
|
100
|
+
}
|
|
101
|
+
/** The unfinished blockers of `taskId` (dependencies not yet `done`), for error messages. */
|
|
102
|
+
export function unmetDependencies(blocks, taskId) {
|
|
103
|
+
const byId = new Map(blocks.map((b) => [b.id, b]));
|
|
104
|
+
const task = byId.get(taskId);
|
|
105
|
+
if (!task)
|
|
106
|
+
return [];
|
|
107
|
+
return task.dependsOn
|
|
108
|
+
.map((depId) => byId.get(depId))
|
|
109
|
+
.filter((b) => !!b && b.status !== 'done');
|
|
110
|
+
}
|
|
51
111
|
//# sourceMappingURL=board.logic.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"board.logic.js","sourceRoot":"","sources":["../../../src/modules/board/board.logic.ts"],"names":[],"mappings":"AAEA,6EAA6E;AAC7E,+EAA+E;AAC/E,gDAAgD;AAEhD,+DAA+D;AAC/D,MAAM,UAAU,QAAQ,CAAC,CAAS,EAAE,IAAI,GAAG,CAAC,EAAE,EAAE,GAAG,GAAG,EAAE,EAAE,GAAG,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE;IAChF,OAAO,EAAE,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE,EAAE,CAAA;AACvE,CAAC;AAED,iEAAiE;AACjE,MAAM,UAAU,OAAO,CAAC,MAAe,EAAE,WAAmB;IAC1D,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,WAAW,IAAI,CAAC,CAAC,KAAK,KAAK,MAAM,CAAC,CAAA;AAC/E,CAAC;AAED,6CAA6C;AAC7C,MAAM,UAAU,SAAS,CAAC,MAAe,EAAE,SAAiB;IAC1D,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,SAAS,IAAI,CAAC,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAA;AAC/E,CAAC;AAED,2DAA2D;AAC3D,MAAM,UAAU,SAAS,CAAC,MAAe,EAAE,KAAY;IACrD,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;IAClD,IAAI,GAAG,GAAsB,KAAK,CAAA;IAClC,OAAO,GAAG,IAAI,GAAG,CAAC,KAAK,KAAK,OAAO,EAAE,CAAC;QACpC,GAAG,GAAG,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IACzD,CAAC;IACD,OAAO,GAAG,CAAA;AACZ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,aAAa,CAAC,MAAe,EAAE,MAAc;IAC3D,MAAM,MAAM,GAAG,IAAI,GAAG,CAAS,CAAC,MAAM,CAAC,CAAC,CAAA;IACxC,IAAI,IAAI,GAAG,IAAI,CAAA;IACf,OAAO,IAAI,EAAE,CAAC;QACZ,IAAI,GAAG,KAAK,CAAA;QACZ,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;YACvB,IAAI,CAAC,CAAC,QAAQ,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;gBAC9D,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;gBAChB,IAAI,GAAG,IAAI,CAAA;YACb,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAA;AACf,CAAC;AAED,yEAAyE;AACzE,MAAM,UAAU,WAAW,CAAC,UAAsB,EAAE,MAAa;IAC/D,IAAI,UAAU,KAAK,MAAM;QAAE,OAAO,MAAM,CAAC,KAAK,KAAK,OAAO,IAAI,MAAM,CAAC,KAAK,KAAK,QAAQ,CAAA;IACvF,IAAI,UAAU,KAAK,QAAQ;QAAE,OAAO,MAAM,CAAC,KAAK,KAAK,OAAO,CAAA;IAC5D,OAAO,KAAK,CAAA,CAAC,wBAAwB;AACvC,CAAC"}
|
|
1
|
+
{"version":3,"file":"board.logic.js","sourceRoot":"","sources":["../../../src/modules/board/board.logic.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { AgentFailureKind, Block, BlueprintService, CiStatusProvider, ExecutionInstance, MergePresetRepository, PullRequestMerger, PullRequestMergeabilityProvider, ReleaseHealthProvider, IncidentEnrichmentProvider, StepReviewComment, SubscriptionActivationRepository, TicketTrackerProvider, IssueWritebackProvider } from '@cat-factory/kernel';
|
|
2
|
+
import type { RunInitiatorScope } from '@cat-factory/kernel';
|
|
2
3
|
import { type HasPersonalSubscription } from './individualVendors.logic.js';
|
|
3
4
|
import { type ProviderCapabilities, type SubscriptionVendor } from '@cat-factory/kernel';
|
|
4
5
|
import type { NotificationService } from '../notifications/NotificationService.js';
|
|
@@ -159,6 +160,13 @@ export interface ExecutionServiceDependencies {
|
|
|
159
160
|
* CI-fixer attempt budget). Absent → the built-in {@link DEFAULT_MERGE_PRESET}.
|
|
160
161
|
*/
|
|
161
162
|
mergePresetRepository?: MergePresetRepository;
|
|
163
|
+
/**
|
|
164
|
+
* Optional: runs the gate-probe / merge GitHub reads under the run initiator's
|
|
165
|
+
* ambient context, so a per-user PAT (when set) is preferred over the deployment's
|
|
166
|
+
* App/env token (see `PatPreferringAppRegistry`). Absent → a pass-through
|
|
167
|
+
* (`(_, fn) => fn()`), so tests/conformance run unchanged.
|
|
168
|
+
*/
|
|
169
|
+
runInitiatorScope?: RunInitiatorScope;
|
|
162
170
|
/**
|
|
163
171
|
* Optional: files a GitHub issue / Jira ticket for the `tracker` step (the
|
|
164
172
|
* tech-debt recurring pipeline). Absent → the `tracker` step passes through
|
|
@@ -211,6 +219,7 @@ export interface BlueprintReconciler {
|
|
|
211
219
|
* deterministic fake and no timing/delays.
|
|
212
220
|
*/
|
|
213
221
|
export declare class ExecutionService {
|
|
222
|
+
private readonly runInitiatorScope;
|
|
214
223
|
private readonly workspaceRepository;
|
|
215
224
|
private readonly blockRepository;
|
|
216
225
|
private readonly pipelineRepository;
|
|
@@ -270,7 +279,7 @@ export declare class ExecutionService {
|
|
|
270
279
|
* {@link stepResolverFor} and {@link StepCompletionResolver}.
|
|
271
280
|
*/
|
|
272
281
|
private stepResolverCache?;
|
|
273
|
-
constructor({ workspaceRepository, blockRepository, pipelineRepository, executionRepository, accountRepository, idGenerator, clock, agentExecutor, workRunner, executionEventPublisher, boardService, spendService, documentRepository, taskRepository, requirementReviewRepository, requirementReviewService, clarityReviewRepository, clarityReviewService, environmentProvisioning, blueprintReconciler, notificationService, workspaceSettingsService, llmObservability, ciStatusProvider, mergeabilityProvider, releaseHealthProvider, incidentEnrichment, pullRequestMerger, mergePresetRepository, ticketTrackerProvider, issueWriteback, subscriptionActivationRepository, resolveWorkspaceModelDefault, resolveProviderCapabilities, localTestInfraSupported, resolveRunRepoContext, }: ExecutionServiceDependencies);
|
|
282
|
+
constructor({ workspaceRepository, blockRepository, pipelineRepository, executionRepository, accountRepository, idGenerator, clock, agentExecutor, workRunner, executionEventPublisher, boardService, spendService, documentRepository, taskRepository, requirementReviewRepository, requirementReviewService, clarityReviewRepository, clarityReviewService, environmentProvisioning, blueprintReconciler, notificationService, workspaceSettingsService, llmObservability, ciStatusProvider, mergeabilityProvider, releaseHealthProvider, incidentEnrichment, pullRequestMerger, mergePresetRepository, ticketTrackerProvider, issueWriteback, subscriptionActivationRepository, resolveWorkspaceModelDefault, resolveProviderCapabilities, localTestInfraSupported, resolveRunRepoContext, runInitiatorScope, }: ExecutionServiceDependencies);
|
|
274
283
|
private requireWorkspace;
|
|
275
284
|
private requireBlock;
|
|
276
285
|
/**
|
|
@@ -338,6 +347,22 @@ export declare class ExecutionService {
|
|
|
338
347
|
* shown as a toast) when the cap is reached. The starting block is excluded from the
|
|
339
348
|
* count (its prior run is about to be replaced).
|
|
340
349
|
*/
|
|
350
|
+
/**
|
|
351
|
+
* Refuse a task start while any of its dependencies is unfinished. A task may only run
|
|
352
|
+
* once every block it `dependsOn` has reached `done` (its PR merged). No-ops for
|
|
353
|
+
* non-task blocks and for tasks with no dependencies. Throws a {@link ConflictError}
|
|
354
|
+
* (→ 409, shown as a toast) naming the unfinished blockers so the human knows why.
|
|
355
|
+
*/
|
|
356
|
+
private assertDependenciesMet;
|
|
357
|
+
/**
|
|
358
|
+
* Augment a workspace's block list (in place) with any dependency blocks referenced by
|
|
359
|
+
* `depIds` that aren't already present — a `dependsOn` edge can point at a task homed in a
|
|
360
|
+
* DIFFERENT workspace (a shared/mounted service). Resolved via the cross-workspace
|
|
361
|
+
* {@link BlockRepository.findById}, so a shared-service blocker is evaluated by its real
|
|
362
|
+
* status instead of being silently treated as satisfied (missing ⇒ done). Returns the same
|
|
363
|
+
* (now-augmented) array for chaining.
|
|
364
|
+
*/
|
|
365
|
+
private augmentWithCrossWorkspaceDeps;
|
|
341
366
|
private assertWithinTaskLimit;
|
|
342
367
|
/**
|
|
343
368
|
* Advance a single run by exactly one step and report what happened. This is
|
|
@@ -813,6 +838,21 @@ export declare class ExecutionService {
|
|
|
813
838
|
* merge / review notification.
|
|
814
839
|
*/
|
|
815
840
|
private finalizeMerge;
|
|
841
|
+
/**
|
|
842
|
+
* After a task with `autoStartDependents` merges, start every task that `dependsOn` it
|
|
843
|
+
* and whose remaining dependencies are all now `done`. System-initiated (no human
|
|
844
|
+
* present), so a dependent on an individual-usage model — which needs its owner to
|
|
845
|
+
* unlock a personal credential per run — is SKIPPED rather than started (it would fault
|
|
846
|
+
* at dispatch); the human starts it manually. Each dependent is started independently so
|
|
847
|
+
* one failure (already running, no provider, …) never blocks the rest.
|
|
848
|
+
*/
|
|
849
|
+
private autoStartDependents;
|
|
850
|
+
/**
|
|
851
|
+
* The pipeline id a dependent task should auto-start with: its pinned `pipelineId` when
|
|
852
|
+
* set, else the workspace's first pipeline (mirrors the board's "Run" default). Null
|
|
853
|
+
* when no pipeline exists at all.
|
|
854
|
+
*/
|
|
855
|
+
private resolveDefaultPipelineId;
|
|
816
856
|
/**
|
|
817
857
|
* Resolve the merge threshold preset that governs a task: its explicitly-picked
|
|
818
858
|
* preset, else the workspace default, else the built-in {@link DEFAULT_MERGE_PRESET}.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ExecutionService.d.ts","sourceRoot":"","sources":["../../../src/modules/execution/ExecutionService.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ExecutionService.d.ts","sourceRoot":"","sources":["../../../src/modules/execution/ExecutionService.ts"],"names":[],"mappings":"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"}
|
|
@@ -17,7 +17,7 @@ import { TesterController } from './TesterController.js';
|
|
|
17
17
|
import { recordGateAttempt } from './gates.js';
|
|
18
18
|
import { isAsyncAgentExecutor } from '@cat-factory/kernel';
|
|
19
19
|
import { isDeployStep } from '@cat-factory/integrations';
|
|
20
|
-
import { descendantIds, serviceOf } from '../board/board.logic.js';
|
|
20
|
+
import { dependenciesMet, descendantIds, serviceOf, unmetDependencies, } from '../board/board.logic.js';
|
|
21
21
|
import { requireWorkspace } from '@cat-factory/kernel';
|
|
22
22
|
import { planResumedSteps, planRestartFromStep } from './retry.logic.js';
|
|
23
23
|
import { isContainerEvictionError, isTransientEviction, MAX_EVICTION_RECOVERIES, MAX_TRANSIENT_EVICTION_RECOVERIES, } from './job.logic.js';
|
|
@@ -99,6 +99,7 @@ function renderReleaseEvidence(evidence) {
|
|
|
99
99
|
* deterministic fake and no timing/delays.
|
|
100
100
|
*/
|
|
101
101
|
export class ExecutionService {
|
|
102
|
+
runInitiatorScope;
|
|
102
103
|
workspaceRepository;
|
|
103
104
|
blockRepository;
|
|
104
105
|
pipelineRepository;
|
|
@@ -158,7 +159,8 @@ export class ExecutionService {
|
|
|
158
159
|
* {@link stepResolverFor} and {@link StepCompletionResolver}.
|
|
159
160
|
*/
|
|
160
161
|
stepResolverCache;
|
|
161
|
-
constructor({ workspaceRepository, blockRepository, pipelineRepository, executionRepository, accountRepository, idGenerator, clock, agentExecutor, workRunner, executionEventPublisher, boardService, spendService, documentRepository, taskRepository, requirementReviewRepository, requirementReviewService, clarityReviewRepository, clarityReviewService, environmentProvisioning, blueprintReconciler, notificationService, workspaceSettingsService, llmObservability, ciStatusProvider, mergeabilityProvider, releaseHealthProvider, incidentEnrichment, pullRequestMerger, mergePresetRepository, ticketTrackerProvider, issueWriteback, subscriptionActivationRepository, resolveWorkspaceModelDefault, resolveProviderCapabilities, localTestInfraSupported, resolveRunRepoContext, }) {
|
|
162
|
+
constructor({ workspaceRepository, blockRepository, pipelineRepository, executionRepository, accountRepository, idGenerator, clock, agentExecutor, workRunner, executionEventPublisher, boardService, spendService, documentRepository, taskRepository, requirementReviewRepository, requirementReviewService, clarityReviewRepository, clarityReviewService, environmentProvisioning, blueprintReconciler, notificationService, workspaceSettingsService, llmObservability, ciStatusProvider, mergeabilityProvider, releaseHealthProvider, incidentEnrichment, pullRequestMerger, mergePresetRepository, ticketTrackerProvider, issueWriteback, subscriptionActivationRepository, resolveWorkspaceModelDefault, resolveProviderCapabilities, localTestInfraSupported, resolveRunRepoContext, runInitiatorScope, }) {
|
|
163
|
+
this.runInitiatorScope = runInitiatorScope ?? ((_initiatedBy, fn) => fn());
|
|
162
164
|
this.workspaceRepository = workspaceRepository;
|
|
163
165
|
this.blockRepository = blockRepository;
|
|
164
166
|
this.pipelineRepository = pipelineRepository;
|
|
@@ -392,6 +394,11 @@ export class ExecutionService {
|
|
|
392
394
|
// Enforce the workspace's per-service running-task limit (off by default) — a clear,
|
|
393
395
|
// actionable error before any side effects, so the human knows why the start was refused.
|
|
394
396
|
await this.assertWithinTaskLimit(workspaceId, block);
|
|
397
|
+
// Hard dependency gate: a task cannot start while any block it `dependsOn` is unfinished
|
|
398
|
+
// (not yet `done`/merged). Enforced server-side so it holds for manual starts, recurring
|
|
399
|
+
// fires, auto-start propagation and direct API calls alike — the frontend's runnable
|
|
400
|
+
// check is only a hint. Before any side effects so nothing is torn down on a refusal.
|
|
401
|
+
await this.assertDependenciesMet(workspaceId, block);
|
|
395
402
|
// Mint the activation next: if the credential can't be unlocked, fail before
|
|
396
403
|
// tearing down the block's prior run or creating a new one.
|
|
397
404
|
const executionId = this.idGenerator.next('exec');
|
|
@@ -481,6 +488,42 @@ export class ExecutionService {
|
|
|
481
488
|
* shown as a toast) when the cap is reached. The starting block is excluded from the
|
|
482
489
|
* count (its prior run is about to be replaced).
|
|
483
490
|
*/
|
|
491
|
+
/**
|
|
492
|
+
* Refuse a task start while any of its dependencies is unfinished. A task may only run
|
|
493
|
+
* once every block it `dependsOn` has reached `done` (its PR merged). No-ops for
|
|
494
|
+
* non-task blocks and for tasks with no dependencies. Throws a {@link ConflictError}
|
|
495
|
+
* (→ 409, shown as a toast) naming the unfinished blockers so the human knows why.
|
|
496
|
+
*/
|
|
497
|
+
async assertDependenciesMet(workspaceId, block) {
|
|
498
|
+
if (block.level !== 'task' || block.dependsOn.length === 0)
|
|
499
|
+
return;
|
|
500
|
+
const blocks = await this.augmentWithCrossWorkspaceDeps(await this.blockRepository.listByWorkspace(workspaceId), block.dependsOn);
|
|
501
|
+
if (dependenciesMet(blocks, block.id))
|
|
502
|
+
return;
|
|
503
|
+
const blockers = unmetDependencies(blocks, block.id);
|
|
504
|
+
const names = blockers.map((b) => `"${b.title}"`).join(', ');
|
|
505
|
+
throw new ConflictError(`This task is blocked by ${blockers.length} unfinished dependenc${blockers.length === 1 ? 'y' : 'ies'}${names ? ` (${names})` : ''}. Finish them before starting this task.`);
|
|
506
|
+
}
|
|
507
|
+
/**
|
|
508
|
+
* Augment a workspace's block list (in place) with any dependency blocks referenced by
|
|
509
|
+
* `depIds` that aren't already present — a `dependsOn` edge can point at a task homed in a
|
|
510
|
+
* DIFFERENT workspace (a shared/mounted service). Resolved via the cross-workspace
|
|
511
|
+
* {@link BlockRepository.findById}, so a shared-service blocker is evaluated by its real
|
|
512
|
+
* status instead of being silently treated as satisfied (missing ⇒ done). Returns the same
|
|
513
|
+
* (now-augmented) array for chaining.
|
|
514
|
+
*/
|
|
515
|
+
async augmentWithCrossWorkspaceDeps(blocks, depIds) {
|
|
516
|
+
const have = new Set(blocks.map((b) => b.id));
|
|
517
|
+
for (const id of depIds) {
|
|
518
|
+
if (have.has(id))
|
|
519
|
+
continue;
|
|
520
|
+
have.add(id);
|
|
521
|
+
const found = await this.blockRepository.findById(id);
|
|
522
|
+
if (found)
|
|
523
|
+
blocks.push(found.block);
|
|
524
|
+
}
|
|
525
|
+
return blocks;
|
|
526
|
+
}
|
|
484
527
|
async assertWithinTaskLimit(workspaceId, block) {
|
|
485
528
|
const settingsService = this.workspaceSettingsService;
|
|
486
529
|
if (!settingsService || block.level !== 'task')
|
|
@@ -1619,7 +1662,9 @@ export class ExecutionService {
|
|
|
1619
1662
|
kind: MERGER_AGENT_KIND,
|
|
1620
1663
|
applies: (result) => result.mergeAssessment !== undefined,
|
|
1621
1664
|
resolve: async ({ workspaceId, instance, result }) => {
|
|
1622
|
-
|
|
1665
|
+
// The real merge runs the engine GitHub client under the run initiator's
|
|
1666
|
+
// ambient context, so a per-user PAT (when set) authors the merge.
|
|
1667
|
+
await this.runInitiatorScope(instance.initiatedBy, () => this.mergeResolver.resolveMergerStep(workspaceId, instance, result.mergeAssessment));
|
|
1623
1668
|
return { ownsTerminalStatus: true };
|
|
1624
1669
|
},
|
|
1625
1670
|
},
|
|
@@ -1829,7 +1874,11 @@ export class ExecutionService {
|
|
|
1829
1874
|
// the CI/conflicts gates, which ignore it.
|
|
1830
1875
|
if (step.gate.watchSince == null)
|
|
1831
1876
|
step.gate.watchSince = this.clock.now();
|
|
1832
|
-
|
|
1877
|
+
// Resolve the gate's GitHub reads (CI checks / mergeability) under the run
|
|
1878
|
+
// initiator's ambient context, so a per-user PAT (when set) is preferred over the
|
|
1879
|
+
// deployment's App/env token — see PatPreferringAppRegistry.
|
|
1880
|
+
const gateState = step.gate;
|
|
1881
|
+
const probe = await this.runInitiatorScope(instance.initiatedBy, () => gate.probe(workspaceId, block.id, gateState));
|
|
1833
1882
|
step.gate.headSha = probe.headSha;
|
|
1834
1883
|
// Persist the precheck outcome so the run-detail UI can surface why the gate is
|
|
1835
1884
|
// looping (the failing checks / conflict reason) — detail that was previously fed
|
|
@@ -2553,8 +2602,62 @@ export class ExecutionService {
|
|
|
2553
2602
|
}
|
|
2554
2603
|
if ((block.level ?? 'frame') === 'task') {
|
|
2555
2604
|
await this.applyModuleAssignment(workspaceId, blockId);
|
|
2605
|
+
// Propagate to dependents: if this task opted into auto-start, launch every task
|
|
2606
|
+
// that depends on it whose other dependencies are now also done. Best-effort — the
|
|
2607
|
+
// merge already happened, so a dependent that fails to start must never roll it back.
|
|
2608
|
+
if (block.autoStartDependents) {
|
|
2609
|
+
await this.autoStartDependents(workspaceId, blockId).catch(() => { });
|
|
2610
|
+
}
|
|
2611
|
+
}
|
|
2612
|
+
}
|
|
2613
|
+
/**
|
|
2614
|
+
* After a task with `autoStartDependents` merges, start every task that `dependsOn` it
|
|
2615
|
+
* and whose remaining dependencies are all now `done`. System-initiated (no human
|
|
2616
|
+
* present), so a dependent on an individual-usage model — which needs its owner to
|
|
2617
|
+
* unlock a personal credential per run — is SKIPPED rather than started (it would fault
|
|
2618
|
+
* at dispatch); the human starts it manually. Each dependent is started independently so
|
|
2619
|
+
* one failure (already running, no provider, …) never blocks the rest.
|
|
2620
|
+
*/
|
|
2621
|
+
async autoStartDependents(workspaceId, mergedBlockId) {
|
|
2622
|
+
const blocks = await this.blockRepository.listByWorkspace(workspaceId);
|
|
2623
|
+
const dependents = blocks.filter((b) => b.level === 'task' && b.dependsOn.includes(mergedBlockId));
|
|
2624
|
+
// A dependent's OTHER blockers may live in another workspace (a shared service); resolve
|
|
2625
|
+
// them so `dependenciesMet` doesn't treat a cross-workspace blocker as missing-⇒-satisfied.
|
|
2626
|
+
await this.augmentWithCrossWorkspaceDeps(blocks, dependents.flatMap((d) => d.dependsOn));
|
|
2627
|
+
for (const dependent of dependents) {
|
|
2628
|
+
// All of the dependent's blockers must now be satisfied (not just the one that merged).
|
|
2629
|
+
if (!dependenciesMet(blocks, dependent.id))
|
|
2630
|
+
continue;
|
|
2631
|
+
// Only auto-start a fresh task — never replace a run already in flight or a finished one.
|
|
2632
|
+
if (dependent.status !== 'planned' && dependent.status !== 'ready')
|
|
2633
|
+
continue;
|
|
2634
|
+
const pipelineId = await this.resolveDefaultPipelineId(workspaceId, dependent);
|
|
2635
|
+
if (!pipelineId)
|
|
2636
|
+
continue;
|
|
2637
|
+
// Skip dependents that would lease an individual-usage credential (can't unlock unattended).
|
|
2638
|
+
const individual = await this.individualVendorsForBlock(workspaceId, dependent.id, pipelineId);
|
|
2639
|
+
if (individual.length > 0)
|
|
2640
|
+
continue;
|
|
2641
|
+
try {
|
|
2642
|
+
await this.start(workspaceId, dependent.id, pipelineId, null);
|
|
2643
|
+
}
|
|
2644
|
+
catch {
|
|
2645
|
+
// Already running, no usable provider, still-unmet dep racing, etc. — leave this
|
|
2646
|
+
// dependent for a manual start; the others still get their chance.
|
|
2647
|
+
}
|
|
2556
2648
|
}
|
|
2557
2649
|
}
|
|
2650
|
+
/**
|
|
2651
|
+
* The pipeline id a dependent task should auto-start with: its pinned `pipelineId` when
|
|
2652
|
+
* set, else the workspace's first pipeline (mirrors the board's "Run" default). Null
|
|
2653
|
+
* when no pipeline exists at all.
|
|
2654
|
+
*/
|
|
2655
|
+
async resolveDefaultPipelineId(workspaceId, block) {
|
|
2656
|
+
if (block.pipelineId)
|
|
2657
|
+
return block.pipelineId;
|
|
2658
|
+
const pipelines = await this.pipelineRepository.listByWorkspace(workspaceId);
|
|
2659
|
+
return pipelines[0]?.id ?? null;
|
|
2660
|
+
}
|
|
2558
2661
|
/**
|
|
2559
2662
|
* Resolve the merge threshold preset that governs a task: its explicitly-picked
|
|
2560
2663
|
* preset, else the workspace default, else the built-in {@link DEFAULT_MERGE_PRESET}.
|