@cat-factory/orchestration 0.264.1 → 0.266.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (66) hide show
  1. package/dist/container/dependencies.d.ts +15 -2
  2. package/dist/container/dependencies.d.ts.map +1 -1
  3. package/dist/container/execution-service.d.ts.map +1 -1
  4. package/dist/container/execution-service.js +8 -0
  5. package/dist/container/execution-service.js.map +1 -1
  6. package/dist/container/module-shapes.d.ts +12 -1
  7. package/dist/container/module-shapes.d.ts.map +1 -1
  8. package/dist/container/modules.d.ts +8 -1
  9. package/dist/container/modules.d.ts.map +1 -1
  10. package/dist/container/modules.js +29 -4
  11. package/dist/container/modules.js.map +1 -1
  12. package/dist/index.d.ts +2 -0
  13. package/dist/index.d.ts.map +1 -1
  14. package/dist/index.js +3 -0
  15. package/dist/index.js.map +1 -1
  16. package/dist/modules/board/BoardService.d.ts +23 -8
  17. package/dist/modules/board/BoardService.d.ts.map +1 -1
  18. package/dist/modules/board/BoardService.js +45 -72
  19. package/dist/modules/board/BoardService.js.map +1 -1
  20. package/dist/modules/board/blockRemoval.d.ts +39 -0
  21. package/dist/modules/board/blockRemoval.d.ts.map +1 -0
  22. package/dist/modules/board/blockRemoval.js +113 -0
  23. package/dist/modules/board/blockRemoval.js.map +1 -0
  24. package/dist/modules/board/boardPolicyGuards.d.ts +34 -0
  25. package/dist/modules/board/boardPolicyGuards.d.ts.map +1 -0
  26. package/dist/modules/board/boardPolicyGuards.js +31 -0
  27. package/dist/modules/board/boardPolicyGuards.js.map +1 -0
  28. package/dist/modules/board/presetPinGuard.d.ts +17 -1
  29. package/dist/modules/board/presetPinGuard.d.ts.map +1 -1
  30. package/dist/modules/board/presetPinGuard.js +9 -3
  31. package/dist/modules/board/presetPinGuard.js.map +1 -1
  32. package/dist/modules/board/riskPolicySelectionGuard.d.ts +7 -2
  33. package/dist/modules/board/riskPolicySelectionGuard.d.ts.map +1 -1
  34. package/dist/modules/board/riskPolicySelectionGuard.js +2 -2
  35. package/dist/modules/board/riskPolicySelectionGuard.js.map +1 -1
  36. package/dist/modules/execution/ExecutionService.d.ts +3 -1
  37. package/dist/modules/execution/ExecutionService.d.ts.map +1 -1
  38. package/dist/modules/execution/ExecutionService.js +4 -4
  39. package/dist/modules/execution/ExecutionService.js.map +1 -1
  40. package/dist/modules/execution/ExecutionServiceDependencies.d.ts +6 -2
  41. package/dist/modules/execution/ExecutionServiceDependencies.d.ts.map +1 -1
  42. package/dist/modules/execution/RunLifecycleController.d.ts +9 -2
  43. package/dist/modules/execution/RunLifecycleController.d.ts.map +1 -1
  44. package/dist/modules/execution/RunLifecycleController.js +10 -3
  45. package/dist/modules/execution/RunLifecycleController.js.map +1 -1
  46. package/dist/modules/execution/RunMergePolicy.d.ts +6 -2
  47. package/dist/modules/execution/RunMergePolicy.d.ts.map +1 -1
  48. package/dist/modules/execution/RunMergePolicy.js +1 -1
  49. package/dist/modules/execution/RunMergePolicy.js.map +1 -1
  50. package/dist/modules/merge/AccountRiskPolicyService.d.ts +57 -0
  51. package/dist/modules/merge/AccountRiskPolicyService.d.ts.map +1 -0
  52. package/dist/modules/merge/AccountRiskPolicyService.js +148 -0
  53. package/dist/modules/merge/AccountRiskPolicyService.js.map +1 -0
  54. package/dist/modules/merge/RiskPolicyService.d.ts +116 -10
  55. package/dist/modules/merge/RiskPolicyService.d.ts.map +1 -1
  56. package/dist/modules/merge/RiskPolicyService.js +208 -15
  57. package/dist/modules/merge/RiskPolicyService.js.map +1 -1
  58. package/dist/modules/merge/WorkspaceRiskPolicyLibrary.d.ts +100 -0
  59. package/dist/modules/merge/WorkspaceRiskPolicyLibrary.d.ts.map +1 -0
  60. package/dist/modules/merge/WorkspaceRiskPolicyLibrary.js +156 -0
  61. package/dist/modules/merge/WorkspaceRiskPolicyLibrary.js.map +1 -0
  62. package/dist/modules/merge/riskPolicyResolution.d.ts +8 -4
  63. package/dist/modules/merge/riskPolicyResolution.d.ts.map +1 -1
  64. package/dist/modules/merge/riskPolicyResolution.js +6 -2
  65. package/dist/modules/merge/riskPolicyResolution.js.map +1 -1
  66. package/package.json +11 -11
@@ -1,6 +1,6 @@
1
1
  import type { AddEpicInput, AddFrameInput, AddModuleInput, AddServiceFromRepoInput, AddTaskInput, BlockEditAuthority, ReparentInput, ResizeBlockInput, UpdateBlockInput } from '@cat-factory/contracts';
2
2
  import type { Block, BlockStatus, Position, PreloadedBlocks } from '@cat-factory/kernel';
3
- import type { BlockRepository, Clock, ExecutionEventPublisher, ExecutionRepository, GitHubRepo, GroupCacheHandle, InitiativeRepository, DocumentRepository, Logger, ModelPresetRepository, RepoProjectionRepository, ResolveRunRepoContext, RiskPolicyRepository, ServiceFragmentDefaultsRepository, ServiceRepository, TaskRepository, TaskTypeRegistry, TaskTypeSuppressionRepository, PromptFragmentSource, WorkspaceMountRepository, WorkspaceRepository } from '@cat-factory/kernel';
3
+ import type { BlockRepository, Clock, ExecutionEventPublisher, ExecutionRepository, GitHubRepo, GroupCacheHandle, InitiativeRepository, DocumentRepository, Logger, ModelPresetRepository, RepoProjectionRepository, ResolveRunRepoContext, AccountRiskPolicyRepository, RiskPolicyRepository, RiskPolicySuppressionRepository, ServiceFragmentDefaultsRepository, ServiceRepository, TaskRepository, TaskTypeRegistry, TaskTypeSuppressionRepository, PromptFragmentSource, WorkspaceMountRepository, WorkspaceRepository } from '@cat-factory/kernel';
4
4
  import type { IdGenerator } from '@cat-factory/kernel';
5
5
  import type { ReviewFrictionNotificationReader } from './reviewFrictionGuard.js';
6
6
  import type { WorkspaceSettingsReader } from './workspaceSettingsReader.js';
@@ -141,6 +141,13 @@ export interface BoardServiceDependencies {
141
141
  * {@link PresetPinGuard}.
142
142
  */
143
143
  riskPolicyRepository?: RiskPolicyRepository;
144
+ /**
145
+ * The ACCOUNT tier of that same library (ADR 0055) and what this board hides from it, so both
146
+ * guards judge a task against every policy it can actually be filed against. Absent ⇒ nothing is
147
+ * inherited, and both read exactly the board's own rows as they did before the tier existed.
148
+ */
149
+ accountRiskPolicyRepository?: AccountRiskPolicyRepository;
150
+ riskPolicySuppressionRepository?: RiskPolicySuppressionRepository;
144
151
  /**
145
152
  * The workspace's model-preset library, read only by the preset-PIN guard: a task's
146
153
  * `modelPresetId` decides which model every one of its agent steps runs on, and a dangling id
@@ -188,6 +195,12 @@ export declare class BoardService {
188
195
  * (see layoutWrites.ts). Both split their write between a frame's per-board mount override and
189
196
  * the shared block row, and `resizeBlock` layers the child translation on top of that.
190
197
  */
198
+ /**
199
+ * The block DELETE sequence (see blockRemoval.ts): the unfinished-work refusal, the home
200
+ * resolution, the side-table cascade and the per-board fan-out, which share one board list and
201
+ * one ORDER.
202
+ */
203
+ private readonly removal;
191
204
  private readonly layout;
192
205
  /**
193
206
  * The reparent write (see reparentWrite.ts): containment rules, the cross-home subtree
@@ -225,7 +238,7 @@ export declare class BoardService {
225
238
  * check at either door alone is a check a caller reaches around by using the other.
226
239
  */
227
240
  private readonly presetPins;
228
- constructor({ workspaceRepository, blockRepository, executionRepository, idGenerator, clock, repoProjectionRepository, repoProjectionCache, serviceRepository, workspaceMountRepository, serviceFragmentDefaultsRepository, initiativeRepository, documentRepository, taskRepository, executionEventPublisher, taskTypeRegistry, taskTypeSuppressionRepository, promptFragmentSource, workspaceSettings, reviewFrictionNotifications, resolveRunRepoContext, riskPolicyRepository, modelPresetRepository, logger, }: BoardServiceDependencies);
241
+ constructor({ workspaceRepository, blockRepository, executionRepository, idGenerator, clock, repoProjectionRepository, repoProjectionCache, serviceRepository, workspaceMountRepository, serviceFragmentDefaultsRepository, initiativeRepository, documentRepository, taskRepository, executionEventPublisher, taskTypeRegistry, taskTypeSuppressionRepository, promptFragmentSource, workspaceSettings, reviewFrictionNotifications, resolveRunRepoContext, riskPolicyRepository, accountRiskPolicyRepository, riskPolicySuppressionRepository, modelPresetRepository, logger, }: BoardServiceDependencies);
229
242
  /**
230
243
  * Push a board-changed signal for a successful mutation. `originWorkspaceId` MUST be
231
244
  * the workspace that physically HOMES the affected block (its `homeWorkspaceId`), not
@@ -433,12 +446,14 @@ export declare class BoardService {
433
446
  */
434
447
  reparent(workspaceId: string, id: string, input: ReparentInput, editor: BlockEditAuthority, originConnectionId?: string | null): Promise<Block>;
435
448
  /**
436
- * Delete a block and all its descendants, dropping dangling dependencies.
437
- *
438
- * `opts.preloaded` lets the caller hand in a block list it already loaded (the delete
439
- * path's teardown lists the board immediately before this) so a locally-owned delete
440
- * doesn't re-list the whole board; it is reused ONLY when it was loaded for the same
441
- * workspace this block homes to (a mounted shared service homed elsewhere re-lists).
449
+ * Refuse a delete that would discard work in flight, and hand back the board list the refusal
450
+ * was decided on, for the teardown and the remove to reuse (see blockRemoval.ts). A DELETE is
451
+ * three calls and the middle one is irreversible, so this is what makes a 422 change nothing.
452
+ */
453
+ assertRemovable(workspaceId: string, id: string): Promise<PreloadedBlocks>;
454
+ /**
455
+ * Delete a block and all its descendants, dropping dangling dependencies. Thin delegate to the
456
+ * collaborator that owns the delete sequence (see blockRemoval.ts).
442
457
  */
443
458
  removeBlock(workspaceId: string, id: string, opts?: {
444
459
  preloaded?: PreloadedBlocks;
@@ -1 +1 @@
1
- {"version":3,"file":"BoardService.d.ts","sourceRoot":"","sources":["../../../src/modules/board/BoardService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BoardService.d.ts","sourceRoot":"","sources":["../../../src/modules/board/BoardService.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,11 @@
1
1
  import { assertFound, ValidationError } from '@cat-factory/kernel';
2
2
  import { BLOCK_TYPE_LABEL } from '@cat-factory/kernel';
3
3
  import { noopLogger, registerServiceForFrame, requireWorkspace } from '@cat-factory/kernel';
4
+ import { createBlockRemoval } from './blockRemoval.js';
4
5
  import { createBoardLayoutWrites } from './layoutWrites.js';
5
6
  import { createBoardReparentWrite } from './reparentWrite.js';
6
7
  import { createMountProjection } from './mountProjection.js';
7
- import { pruneDanglingEdges, reclaimDoomedEntities } from './removal-cascade.js';
8
- import { canReparent, descendantIds, gridSlot, serviceOf, tasksOf, unfinishedTasksUnder, wouldCreateCycle, } from './board.logic.js';
8
+ import { canReparent, gridSlot, serviceOf, tasksOf, wouldCreateCycle } from './board.logic.js';
9
9
  import { ReviewFrictionGuard } from './reviewFrictionGuard.js';
10
10
  import { nextFrameSlot, resolveNewServiceFrameDefaults } from './newServiceFrameDefaults.js';
11
11
  import { createInternalAnchors } from './internalAnchors.js';
@@ -14,8 +14,7 @@ import { buildReviewDescription, resolveReviewTaskTarget } from './reviewTaskTar
14
14
  import { createBlockPatchNarrowing } from './blockPatchNarrowing.js';
15
15
  import { applyTaskTypeFieldsPatch } from './taskTypeFieldsPatch.js';
16
16
  import { createTaskTypeCreationDefaults } from './taskTypeCreationDefaults.js';
17
- import { createPresetPinGuard } from './presetPinGuard.js';
18
- import { createRiskPolicySelectionGuard } from './riskPolicySelectionGuard.js';
17
+ import { createBoardPolicyGuards } from './boardPolicyGuards.js';
19
18
  import { createSharedServiceMount } from './sharedServiceMount.js';
20
19
  import { resolveServiceRepoLinkage } from './serviceRepoLinkage.js';
21
20
  /**
@@ -56,6 +55,12 @@ export class BoardService {
56
55
  * (see layoutWrites.ts). Both split their write between a frame's per-board mount override and
57
56
  * the shared block row, and `resizeBlock` layers the child translation on top of that.
58
57
  */
58
+ /**
59
+ * The block DELETE sequence (see blockRemoval.ts): the unfinished-work refusal, the home
60
+ * resolution, the side-table cascade and the per-board fan-out, which share one board list and
61
+ * one ORDER.
62
+ */
63
+ removal;
59
64
  layout;
60
65
  /**
61
66
  * The reparent write (see reparentWrite.ts): containment rules, the cross-home subtree
@@ -93,7 +98,7 @@ export class BoardService {
93
98
  * check at either door alone is a check a caller reaches around by using the other.
94
99
  */
95
100
  presetPins;
96
- constructor({ workspaceRepository, blockRepository, executionRepository, idGenerator, clock, repoProjectionRepository, repoProjectionCache, serviceRepository, workspaceMountRepository, serviceFragmentDefaultsRepository, initiativeRepository, documentRepository, taskRepository, executionEventPublisher, taskTypeRegistry, taskTypeSuppressionRepository, promptFragmentSource, workspaceSettings, reviewFrictionNotifications, resolveRunRepoContext, riskPolicyRepository, modelPresetRepository, logger, }) {
101
+ constructor({ workspaceRepository, blockRepository, executionRepository, idGenerator, clock, repoProjectionRepository, repoProjectionCache, serviceRepository, workspaceMountRepository, serviceFragmentDefaultsRepository, initiativeRepository, documentRepository, taskRepository, executionEventPublisher, taskTypeRegistry, taskTypeSuppressionRepository, promptFragmentSource, workspaceSettings, reviewFrictionNotifications, resolveRunRepoContext, riskPolicyRepository, accountRiskPolicyRepository, riskPolicySuppressionRepository, modelPresetRepository, logger, }) {
97
102
  this.workspaceRepository = workspaceRepository;
98
103
  this.blockRepository = blockRepository;
99
104
  this.executionRepository = executionRepository;
@@ -137,8 +142,17 @@ export class BoardService {
137
142
  taskTypeSuppressionRepository,
138
143
  logger: this.log,
139
144
  });
140
- this.riskPolicySelection = createRiskPolicySelectionGuard({ riskPolicyRepository });
141
- this.presetPins = createPresetPinGuard({ riskPolicyRepository, modelPresetRepository });
145
+ // Both guards judge a task against the policies actually available to its board, which since
146
+ // ADR 0055 means the merged library (its own rows plus the account's).
147
+ const policyGuards = createBoardPolicyGuards({
148
+ riskPolicyRepository,
149
+ accountRiskPolicyRepository,
150
+ riskPolicySuppressionRepository,
151
+ workspaceRepository,
152
+ modelPresetRepository,
153
+ });
154
+ this.riskPolicySelection = policyGuards.riskPolicySelection;
155
+ this.presetPins = policyGuards.presetPins;
142
156
  // Bound callbacks rather than the service, so the narrowing depends on the two reads it
143
157
  // actually uses instead of on everything `BoardService` can do.
144
158
  this.patchNarrowing = createBlockPatchNarrowing({
@@ -155,6 +169,18 @@ export class BoardService {
155
169
  validatedFields: (taskType, fields) => this.taskTypeDefaults.validatedFields(taskType, fields),
156
170
  resolveReviewTarget: (workspaceId, blockId, taskType, fields) => resolveReviewTaskTarget({ resolveRunRepoContext: this.resolveRunRepoContext, logger: this.log }, workspaceId, blockId, taskType, fields),
157
171
  };
172
+ this.removal = createBlockRemoval({
173
+ blockRepository,
174
+ executionRepository,
175
+ serviceRepository,
176
+ workspaceMountRepository,
177
+ initiativeRepository,
178
+ documentRepository,
179
+ taskRepository,
180
+ requireWorkspace: (workspaceId) => this.requireWorkspace(workspaceId),
181
+ resolveBlockHomeForRemoval: (workspaceId, id) => this.resolveBlockHomeForRemoval(workspaceId, id),
182
+ emitBoardChanged: (originWorkspaceId, change) => this.emitBoardChanged(originWorkspaceId, change),
183
+ });
158
184
  this.layout = createBoardLayoutWrites({
159
185
  blockRepository,
160
186
  workspaceMountRepository,
@@ -868,72 +894,19 @@ export class BoardService {
868
894
  return this.reparentWrite.reparent(workspaceId, id, input, editor, originConnectionId);
869
895
  }
870
896
  /**
871
- * Delete a block and all its descendants, dropping dangling dependencies.
872
- *
873
- * `opts.preloaded` lets the caller hand in a block list it already loaded (the delete
874
- * path's teardown lists the board immediately before this) so a locally-owned delete
875
- * doesn't re-list the whole board; it is reused ONLY when it was loaded for the same
876
- * workspace this block homes to (a mounted shared service homed elsewhere re-lists).
897
+ * Refuse a delete that would discard work in flight, and hand back the board list the refusal
898
+ * was decided on, for the teardown and the remove to reuse (see blockRemoval.ts). A DELETE is
899
+ * three calls and the middle one is irreversible, so this is what makes a 422 change nothing.
877
900
  */
878
- async removeBlock(workspaceId, id, opts = {}) {
879
- await this.requireWorkspace(workspaceId);
880
- // Resolve the block at its home so a shared service's block can be deleted from any board
881
- // that mounts it (the delete then applies to the one shared copy everywhere). Deletion is
882
- // best-effort and idempotent: if the block row is already GONE (e.g. a half-deleted service
883
- // that left a dangling mount/repo-link/execution), we must NOT 404 — a thing not existing
884
- // can't be allowed to block cleanup of the related entities that do still exist. The resolve
885
- // never throws; it falls back to this workspace, and every cleanup below is scoped to that
886
- // home, so we tear down whatever references the id (+ its surviving descendants) without ever
887
- // touching another workspace's data.
888
- const homeWorkspaceId = await this.resolveBlockHomeForRemoval(workspaceId, id);
889
- // Capture the boards this removal must reach BEFORE we delete the block + drop its service's
890
- // mounts (after which the block→service→mounts join can't resolve anything). The union of the
891
- // acting workspace and every workspace mounting the doomed service is then notified post-delete.
892
- const fanoutTargets = new Set([workspaceId]);
893
- if (this.workspaceMountRepository) {
894
- for (const ws of await this.workspaceMountRepository.listWorkspaceIdsMountingBlock(homeWorkspaceId, id)) {
895
- fanoutTargets.add(ws);
896
- }
897
- }
898
- // Reuse the caller's list only when it was loaded for this block's home (the common
899
- // locally-owned delete); a mounted service homed elsewhere re-lists against its home.
900
- const blocks = opts.preloaded && opts.preloaded.workspaceId === homeWorkspaceId
901
- ? opts.preloaded.blocks
902
- : await this.blockRepository.listByWorkspace(homeWorkspaceId);
903
- const doomed = descendantIds(blocks, id);
904
- // A service frame that still has unfinished work must NOT be deleted (that would discard
905
- // in-flight tasks + their history) — it is archived instead (hidden, restorable with no
906
- // expiry). Only guard a real, still-present top-level frame: a dangling/already-gone id
907
- // (idempotent re-delete, a leaf task, a module) falls through to the normal cleanup below.
908
- const target = blocks.find((b) => b.id === id);
909
- if (target?.level === 'frame' && target.parentId === null) {
910
- const unfinished = unfinishedTasksUnder(blocks, id);
911
- if (unfinished.length > 0) {
912
- throw new ValidationError(`This service has ${unfinished.length} unfinished task(s); archive it instead of deleting.`);
913
- }
914
- }
915
- await this.executionRepository.deleteByBlock(homeWorkspaceId, id);
916
- // Every SIDE-TABLE row keyed by a doomed block id — the account-owned service + its mounts,
917
- // and the initiative entity. Extracted to its own module (see `removal-cascade.ts`): each is
918
- // an optional, batched reclaim, and this is where the delete path grows, so a future
919
- // block-keyed table gets a section there rather than another branch in this method.
920
- await reclaimDoomedEntities({
921
- ...(this.serviceRepository ? { serviceRepository: this.serviceRepository } : {}),
922
- ...(this.workspaceMountRepository
923
- ? { workspaceMountRepository: this.workspaceMountRepository }
924
- : {}),
925
- ...(this.initiativeRepository ? { initiativeRepository: this.initiativeRepository } : {}),
926
- ...(this.documentRepository ? { documentRepository: this.documentRepository } : {}),
927
- ...(this.taskRepository ? { taskRepository: this.taskRepository } : {}),
928
- }, { homeWorkspaceId, deletedId: id, blocks, doomed });
929
- await this.blockRepository.deleteMany(homeWorkspaceId, [...doomed]);
930
- await pruneDanglingEdges(this.blockRepository, homeWorkspaceId, blocks, doomed);
931
- // The block + any shared service are now gone, so fan out per captured target (blockId is
932
- // unresolvable post-delete): every board that showed the block refreshes it away. There is
933
- // nothing to carry, and a delete CASCADES, so the refresh is the point.
934
- for (const ws of fanoutTargets) {
935
- await this.emitBoardChanged(ws, { reason: 'block-removed' });
936
- }
901
+ assertRemovable(workspaceId, id) {
902
+ return this.removal.assertRemovable(workspaceId, id);
903
+ }
904
+ /**
905
+ * Delete a block and all its descendants, dropping dangling dependencies. Thin delegate to the
906
+ * collaborator that owns the delete sequence (see blockRemoval.ts).
907
+ */
908
+ removeBlock(workspaceId, id, opts = {}) {
909
+ return this.removal.removeBlock(workspaceId, id, opts);
937
910
  }
938
911
  /**
939
912
  * Archive a service frame: hide it (and its whole subtree) from the board projection while
@@ -1 +1 @@
1
- {"version":3,"file":"BoardService.js","sourceRoot":"","sources":["../../../src/modules/board/BoardService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BoardService.js","sourceRoot":"","sources":["../../../src/modules/board/BoardService.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,39 @@
1
+ import type { BlockRepository, BoardChange, DocumentRepository, ExecutionRepository, InitiativeRepository, PreloadedBlocks, ServiceRepository, TaskRepository, WorkspaceMountRepository } from '@cat-factory/kernel';
2
+ import type { BoardChangeReason } from './board.logic.js';
3
+ /**
4
+ * The block DELETE path, extracted from `BoardService` following the established
5
+ * controller-extraction pattern: one small deps object of bound callbacks, and the service keeps
6
+ * thin delegates. Behaviour-neutral for `removeBlock`.
7
+ *
8
+ * It is a cohesive unit because a delete is not one call. A caller has to REFUSE first, then tear
9
+ * every run under the subtree down (containers, durable drivers, run rows), then remove the blocks
10
+ * and the side-table rows they key: three steps sharing one board list and one home-workspace
11
+ * resolution, whose ORDER is the whole correctness story. `removal-cascade.ts` next door owns the
12
+ * side-table half of the last step; this owns the sequence around it.
13
+ */
14
+ export interface BlockRemovalDeps {
15
+ blockRepository: BlockRepository;
16
+ executionRepository: ExecutionRepository;
17
+ serviceRepository?: ServiceRepository;
18
+ workspaceMountRepository?: WorkspaceMountRepository;
19
+ initiativeRepository?: InitiativeRepository;
20
+ documentRepository?: DocumentRepository;
21
+ taskRepository?: TaskRepository;
22
+ /** 404s an unknown board before anything is read. */
23
+ requireWorkspace: (workspaceId: string) => Promise<unknown>;
24
+ /**
25
+ * The workspace that HOMES the id, falling back to the acting one. Never throws: a dangling id
26
+ * must not block the cleanup of the rows that DO still exist.
27
+ */
28
+ resolveBlockHomeForRemoval: (workspaceId: string, id: string) => Promise<string>;
29
+ emitBoardChanged: (originWorkspaceId: string, change: BoardChange & {
30
+ reason: BoardChangeReason;
31
+ }) => Promise<void>;
32
+ }
33
+ export declare function createBlockRemoval(deps: BlockRemovalDeps): {
34
+ assertRemovable: (workspaceId: string, id: string) => Promise<PreloadedBlocks>;
35
+ removeBlock: (workspaceId: string, id: string, opts?: {
36
+ preloaded?: PreloadedBlocks;
37
+ }) => Promise<void>;
38
+ };
39
+ //# sourceMappingURL=blockRemoval.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"blockRemoval.d.ts","sourceRoot":"","sources":["../../../src/modules/board/blockRemoval.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,eAAe,EACf,WAAW,EACX,kBAAkB,EAClB,mBAAmB,EACnB,oBAAoB,EACpB,eAAe,EACf,iBAAiB,EACjB,cAAc,EACd,wBAAwB,EACzB,MAAM,qBAAqB,CAAA;AAG5B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AAGzD;;;;;;;;;;GAUG;AACH,MAAM,WAAW,gBAAgB;IAC/B,eAAe,EAAE,eAAe,CAAA;IAChC,mBAAmB,EAAE,mBAAmB,CAAA;IACxC,iBAAiB,CAAC,EAAE,iBAAiB,CAAA;IACrC,wBAAwB,CAAC,EAAE,wBAAwB,CAAA;IACnD,oBAAoB,CAAC,EAAE,oBAAoB,CAAA;IAC3C,kBAAkB,CAAC,EAAE,kBAAkB,CAAA;IACvC,cAAc,CAAC,EAAE,cAAc,CAAA;IAC/B,qDAAqD;IACrD,gBAAgB,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAA;IAC3D;;;OAGG;IACH,0BAA0B,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAA;IAChF,gBAAgB,EAAE,CAChB,iBAAiB,EAAE,MAAM,EACzB,MAAM,EAAE,WAAW,GAAG;QAAE,MAAM,EAAE,iBAAiB,CAAA;KAAE,KAChD,OAAO,CAAC,IAAI,CAAC,CAAA;CACnB;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,gBAAgB;mCAmBX,MAAM,MAAM,MAAM,KAAG,OAAO,CAAC,eAAe,CAAC;+BAiB1E,MAAM,MACf,MAAM,SACJ;QAAE,SAAS,CAAC,EAAE,eAAe,CAAA;KAAE,KACpC,OAAO,CAAC,IAAI,CAAC;EA+DjB"}
@@ -0,0 +1,113 @@
1
+ import { ValidationError } from '@cat-factory/kernel';
2
+ import { descendantIds, unfinishedTasksUnder } from './board.logic.js';
3
+ import { pruneDanglingEdges, reclaimDoomedEntities } from './removal-cascade.js';
4
+ export function createBlockRemoval(deps) {
5
+ /**
6
+ * Refuse a delete that would discard work in flight, and hand back the board list the refusal
7
+ * was decided on.
8
+ *
9
+ * Its own entry point because a DELETE is three calls rather than one: the caller tears every run
10
+ * under the subtree down FIRST (killing containers, cancelling durable drivers, deleting the run
11
+ * rows), so a guard that fires only inside {@link removeBlock} fires after the history it exists
12
+ * to protect is already gone, and the 422 then describes a board that no longer matches it.
13
+ * Running the same judgement here is what makes a refused delete change NOTHING.
14
+ *
15
+ * The list comes back so the whole sequence still costs ONE board read: the teardown and the
16
+ * remove both take it as `preloaded` (this loads it for the block's HOME, which is the workspace
17
+ * `removeBlock` reuses it for). Neither step deletes a block, so it is still current when they
18
+ * run.
19
+ *
20
+ * {@link removeBlock} keeps the same guard, and that is not a duplicated rule: it is the layer
21
+ * that can see the subtree it judges, and it is reachable without this preflight.
22
+ */
23
+ async function assertRemovable(workspaceId, id) {
24
+ await deps.requireWorkspace(workspaceId);
25
+ const homeWorkspaceId = await deps.resolveBlockHomeForRemoval(workspaceId, id);
26
+ const blocks = await deps.blockRepository.listByWorkspace(homeWorkspaceId);
27
+ assertNoUnfinishedWork(blocks, id);
28
+ return { workspaceId: homeWorkspaceId, blocks };
29
+ }
30
+ /**
31
+ * Delete a block and all its descendants, dropping dangling dependencies.
32
+ *
33
+ * `opts.preloaded` lets the caller hand in a block list it already loaded (the delete path's
34
+ * preflight lists the board immediately before this) so a locally-owned delete doesn't re-list
35
+ * the whole board; it is reused ONLY when it was loaded for the same workspace this block homes
36
+ * to (a mounted shared service homed elsewhere re-lists).
37
+ */
38
+ async function removeBlock(workspaceId, id, opts = {}) {
39
+ await deps.requireWorkspace(workspaceId);
40
+ // Resolve the block at its home so a shared service's block can be deleted from any board
41
+ // that mounts it (the delete then applies to the one shared copy everywhere). Deletion is
42
+ // best-effort and idempotent: if the block row is already GONE (e.g. a half-deleted service
43
+ // that left a dangling mount/repo-link/execution), we must NOT 404 — a thing not existing
44
+ // can't be allowed to block cleanup of the related entities that do still exist. The resolve
45
+ // never throws; it falls back to this workspace, and every cleanup below is scoped to that
46
+ // home, so we tear down whatever references the id (+ its surviving descendants) without ever
47
+ // touching another workspace's data.
48
+ const homeWorkspaceId = await deps.resolveBlockHomeForRemoval(workspaceId, id);
49
+ // Capture the boards this removal must reach BEFORE we delete the block + drop its service's
50
+ // mounts (after which the block→service→mounts join can't resolve anything). The union of the
51
+ // acting workspace and every workspace mounting the doomed service is then notified post-delete.
52
+ const fanoutTargets = new Set([workspaceId]);
53
+ if (deps.workspaceMountRepository) {
54
+ for (const ws of await deps.workspaceMountRepository.listWorkspaceIdsMountingBlock(homeWorkspaceId, id)) {
55
+ fanoutTargets.add(ws);
56
+ }
57
+ }
58
+ // Reuse the caller's list only when it was loaded for this block's home (the common
59
+ // locally-owned delete); a mounted service homed elsewhere re-lists against its home.
60
+ const blocks = opts.preloaded && opts.preloaded.workspaceId === homeWorkspaceId
61
+ ? opts.preloaded.blocks
62
+ : await deps.blockRepository.listByWorkspace(homeWorkspaceId);
63
+ const doomed = descendantIds(blocks, id);
64
+ assertNoUnfinishedWork(blocks, id);
65
+ await deps.executionRepository.deleteByBlock(homeWorkspaceId, id);
66
+ // Every SIDE-TABLE row keyed by a doomed block id — the account-owned service + its mounts,
67
+ // and the initiative entity. Its own module (see `removal-cascade.ts`): each is an optional,
68
+ // batched reclaim, and that is where the delete path grows, so a future block-keyed table
69
+ // gets a section there rather than another branch in this function.
70
+ await reclaimDoomedEntities({
71
+ ...(deps.serviceRepository ? { serviceRepository: deps.serviceRepository } : {}),
72
+ ...(deps.workspaceMountRepository
73
+ ? { workspaceMountRepository: deps.workspaceMountRepository }
74
+ : {}),
75
+ ...(deps.initiativeRepository ? { initiativeRepository: deps.initiativeRepository } : {}),
76
+ ...(deps.documentRepository ? { documentRepository: deps.documentRepository } : {}),
77
+ ...(deps.taskRepository ? { taskRepository: deps.taskRepository } : {}),
78
+ }, { homeWorkspaceId, deletedId: id, blocks, doomed });
79
+ await deps.blockRepository.deleteMany(homeWorkspaceId, [...doomed]);
80
+ await pruneDanglingEdges(deps.blockRepository, homeWorkspaceId, blocks, doomed);
81
+ // The block + any shared service are now gone, so fan out per captured target (blockId is
82
+ // unresolvable post-delete): every board that showed the block refreshes it away. There is
83
+ // nothing to carry, and a delete CASCADES, so the refresh is the point.
84
+ for (const ws of fanoutTargets) {
85
+ await deps.emitBoardChanged(ws, { reason: 'block-removed' });
86
+ }
87
+ }
88
+ return { assertRemovable, removeBlock };
89
+ }
90
+ /**
91
+ * Refuse to DELETE a service frame that still has unfinished work: that would discard in-flight
92
+ * tasks and their history, so the frame is archived instead (hidden, restorable with no expiry).
93
+ *
94
+ * Only a real, still-present top-level frame is guarded: a dangling / already-gone id (an
95
+ * idempotent re-delete, a leaf task, a module) falls through to the ordinary cleanup.
96
+ *
97
+ * A free function because it runs TWICE on the delete path and must be the same rule both times:
98
+ * once as the preflight that refuses before anything is torn down, and once inside the remove,
99
+ * which is the layer that can see the subtree it judges.
100
+ */
101
+ function assertNoUnfinishedWork(blocks, id) {
102
+ const target = blocks.find((b) => b.id === id);
103
+ if (target?.level !== 'frame' || target.parentId !== null)
104
+ return;
105
+ const unfinished = unfinishedTasksUnder(blocks, id);
106
+ if (unfinished.length === 0)
107
+ return;
108
+ // The `reason` is what makes this refusal actionable through a door with no prose to read:
109
+ // `DELETE /api/v1/services/{serviceId}` answers it as a 422, and the caller's next move is to
110
+ // delete those tasks (or archive instead), which it can only choose from the code.
111
+ throw new ValidationError(`This service has ${unfinished.length} unfinished task(s); archive it instead of deleting.`, { reason: 'service_has_unfinished_tasks', unfinishedTasks: unfinished.length });
112
+ }
113
+ //# sourceMappingURL=blockRemoval.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"blockRemoval.js","sourceRoot":"","sources":["../../../src/modules/board/blockRemoval.ts"],"names":[],"mappings":"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"}