@devflow-tools/delivery-line 0.18.8

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 (259) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +50 -0
  3. package/dist/__tests__/artifact-generation.test.d.ts +2 -0
  4. package/dist/__tests__/artifact-generation.test.d.ts.map +1 -0
  5. package/dist/__tests__/artifact-generation.test.js +16 -0
  6. package/dist/__tests__/artifact-generation.test.js.map +1 -0
  7. package/dist/__tests__/backend-scenario.e2e.test.d.ts +2 -0
  8. package/dist/__tests__/backend-scenario.e2e.test.d.ts.map +1 -0
  9. package/dist/__tests__/backend-scenario.e2e.test.js +25 -0
  10. package/dist/__tests__/backend-scenario.e2e.test.js.map +1 -0
  11. package/dist/__tests__/claude-events.test.d.ts +2 -0
  12. package/dist/__tests__/claude-events.test.d.ts.map +1 -0
  13. package/dist/__tests__/claude-events.test.js +28 -0
  14. package/dist/__tests__/claude-events.test.js.map +1 -0
  15. package/dist/__tests__/facade-e2e.test.d.ts +2 -0
  16. package/dist/__tests__/facade-e2e.test.d.ts.map +1 -0
  17. package/dist/__tests__/facade-e2e.test.js +167 -0
  18. package/dist/__tests__/facade-e2e.test.js.map +1 -0
  19. package/dist/__tests__/frontend-scenario.e2e.test.d.ts +2 -0
  20. package/dist/__tests__/frontend-scenario.e2e.test.d.ts.map +1 -0
  21. package/dist/__tests__/frontend-scenario.e2e.test.js +35 -0
  22. package/dist/__tests__/frontend-scenario.e2e.test.js.map +1 -0
  23. package/dist/__tests__/git-artifact-store.test.d.ts +2 -0
  24. package/dist/__tests__/git-artifact-store.test.d.ts.map +1 -0
  25. package/dist/__tests__/git-artifact-store.test.js +44 -0
  26. package/dist/__tests__/git-artifact-store.test.js.map +1 -0
  27. package/dist/__tests__/governance-adapters.test.d.ts +2 -0
  28. package/dist/__tests__/governance-adapters.test.d.ts.map +1 -0
  29. package/dist/__tests__/governance-adapters.test.js +51 -0
  30. package/dist/__tests__/governance-adapters.test.js.map +1 -0
  31. package/dist/__tests__/handoff-validator.test.d.ts +2 -0
  32. package/dist/__tests__/handoff-validator.test.d.ts.map +1 -0
  33. package/dist/__tests__/handoff-validator.test.js +13 -0
  34. package/dist/__tests__/handoff-validator.test.js.map +1 -0
  35. package/dist/__tests__/interaction-session.test.d.ts +2 -0
  36. package/dist/__tests__/interaction-session.test.d.ts.map +1 -0
  37. package/dist/__tests__/interaction-session.test.js +13 -0
  38. package/dist/__tests__/interaction-session.test.js.map +1 -0
  39. package/dist/__tests__/interaction.test.d.ts +2 -0
  40. package/dist/__tests__/interaction.test.d.ts.map +1 -0
  41. package/dist/__tests__/interaction.test.js +27 -0
  42. package/dist/__tests__/interaction.test.js.map +1 -0
  43. package/dist/__tests__/persistence.test.d.ts +2 -0
  44. package/dist/__tests__/persistence.test.d.ts.map +1 -0
  45. package/dist/__tests__/persistence.test.js +41 -0
  46. package/dist/__tests__/persistence.test.js.map +1 -0
  47. package/dist/__tests__/recovery-spike.test.d.ts +2 -0
  48. package/dist/__tests__/recovery-spike.test.d.ts.map +1 -0
  49. package/dist/__tests__/recovery-spike.test.js +20 -0
  50. package/dist/__tests__/recovery-spike.test.js.map +1 -0
  51. package/dist/__tests__/sqlite-recovery.test.d.ts +2 -0
  52. package/dist/__tests__/sqlite-recovery.test.d.ts.map +1 -0
  53. package/dist/__tests__/sqlite-recovery.test.js +90 -0
  54. package/dist/__tests__/sqlite-recovery.test.js.map +1 -0
  55. package/dist/__tests__/state-machine.test.d.ts +2 -0
  56. package/dist/__tests__/state-machine.test.d.ts.map +1 -0
  57. package/dist/__tests__/state-machine.test.js +49 -0
  58. package/dist/__tests__/state-machine.test.js.map +1 -0
  59. package/dist/__tests__/subagent-orchestrator.test.d.ts +2 -0
  60. package/dist/__tests__/subagent-orchestrator.test.d.ts.map +1 -0
  61. package/dist/__tests__/subagent-orchestrator.test.js +33 -0
  62. package/dist/__tests__/subagent-orchestrator.test.js.map +1 -0
  63. package/dist/__tests__/subagent-recovery.e2e.test.d.ts +2 -0
  64. package/dist/__tests__/subagent-recovery.e2e.test.d.ts.map +1 -0
  65. package/dist/__tests__/subagent-recovery.e2e.test.js +35 -0
  66. package/dist/__tests__/subagent-recovery.e2e.test.js.map +1 -0
  67. package/dist/__tests__/task-dag.test.d.ts +2 -0
  68. package/dist/__tests__/task-dag.test.d.ts.map +1 -0
  69. package/dist/__tests__/task-dag.test.js +31 -0
  70. package/dist/__tests__/task-dag.test.js.map +1 -0
  71. package/dist/__tests__/worker-integration.test.d.ts +2 -0
  72. package/dist/__tests__/worker-integration.test.d.ts.map +1 -0
  73. package/dist/__tests__/worker-integration.test.js +217 -0
  74. package/dist/__tests__/worker-integration.test.js.map +1 -0
  75. package/dist/adapters/approval.d.ts +40 -0
  76. package/dist/adapters/approval.d.ts.map +1 -0
  77. package/dist/adapters/approval.js +100 -0
  78. package/dist/adapters/approval.js.map +1 -0
  79. package/dist/adapters/delivery-package.d.ts +23 -0
  80. package/dist/adapters/delivery-package.d.ts.map +1 -0
  81. package/dist/adapters/delivery-package.js +37 -0
  82. package/dist/adapters/delivery-package.js.map +1 -0
  83. package/dist/adapters/integration.d.ts +37 -0
  84. package/dist/adapters/integration.d.ts.map +1 -0
  85. package/dist/adapters/integration.js +84 -0
  86. package/dist/adapters/integration.js.map +1 -0
  87. package/dist/adapters/review.d.ts +12 -0
  88. package/dist/adapters/review.d.ts.map +1 -0
  89. package/dist/adapters/review.js +33 -0
  90. package/dist/adapters/review.js.map +1 -0
  91. package/dist/adapters/verification.d.ts +25 -0
  92. package/dist/adapters/verification.d.ts.map +1 -0
  93. package/dist/adapters/verification.js +57 -0
  94. package/dist/adapters/verification.js.map +1 -0
  95. package/dist/adapters/workflow-execution.d.ts +130 -0
  96. package/dist/adapters/workflow-execution.d.ts.map +1 -0
  97. package/dist/adapters/workflow-execution.js +135 -0
  98. package/dist/adapters/workflow-execution.js.map +1 -0
  99. package/dist/artifact-generation.test.d.ts +2 -0
  100. package/dist/artifact-generation.test.d.ts.map +1 -0
  101. package/dist/artifact-generation.test.js +11 -0
  102. package/dist/artifact-generation.test.js.map +1 -0
  103. package/dist/artifacts/context-manifest.d.ts +20 -0
  104. package/dist/artifacts/context-manifest.d.ts.map +1 -0
  105. package/dist/artifacts/context-manifest.js +24 -0
  106. package/dist/artifacts/context-manifest.js.map +1 -0
  107. package/dist/artifacts/generation-guard.d.ts +13 -0
  108. package/dist/artifacts/generation-guard.d.ts.map +1 -0
  109. package/dist/artifacts/generation-guard.js +16 -0
  110. package/dist/artifacts/generation-guard.js.map +1 -0
  111. package/dist/artifacts/git-artifact-store.d.ts +16 -0
  112. package/dist/artifacts/git-artifact-store.d.ts.map +1 -0
  113. package/dist/artifacts/git-artifact-store.js +47 -0
  114. package/dist/artifacts/git-artifact-store.js.map +1 -0
  115. package/dist/claude-events.test.d.ts +2 -0
  116. package/dist/claude-events.test.d.ts.map +1 -0
  117. package/dist/claude-events.test.js +14 -0
  118. package/dist/claude-events.test.js.map +1 -0
  119. package/dist/composition.d.ts +13 -0
  120. package/dist/composition.d.ts.map +1 -0
  121. package/dist/composition.js +47 -0
  122. package/dist/composition.js.map +1 -0
  123. package/dist/domain/interaction.d.ts +23 -0
  124. package/dist/domain/interaction.d.ts.map +1 -0
  125. package/dist/domain/interaction.js +60 -0
  126. package/dist/domain/interaction.js.map +1 -0
  127. package/dist/domain/state-machine.d.ts +26 -0
  128. package/dist/domain/state-machine.d.ts.map +1 -0
  129. package/dist/domain/state-machine.js +67 -0
  130. package/dist/domain/state-machine.js.map +1 -0
  131. package/dist/domain/task-dag.d.ts +5 -0
  132. package/dist/domain/task-dag.d.ts.map +1 -0
  133. package/dist/domain/task-dag.js +78 -0
  134. package/dist/domain/task-dag.js.map +1 -0
  135. package/dist/domain/types.d.ts +320 -0
  136. package/dist/domain/types.d.ts.map +1 -0
  137. package/dist/domain/types.js +9 -0
  138. package/dist/domain/types.js.map +1 -0
  139. package/dist/facade/delivery-line-facade.d.ts +77 -0
  140. package/dist/facade/delivery-line-facade.d.ts.map +1 -0
  141. package/dist/facade/delivery-line-facade.js +417 -0
  142. package/dist/facade/delivery-line-facade.js.map +1 -0
  143. package/dist/git-artifact-store.test.d.ts +2 -0
  144. package/dist/git-artifact-store.test.d.ts.map +1 -0
  145. package/dist/git-artifact-store.test.js +27 -0
  146. package/dist/git-artifact-store.test.js.map +1 -0
  147. package/dist/governance-adapters.test.d.ts +2 -0
  148. package/dist/governance-adapters.test.d.ts.map +1 -0
  149. package/dist/governance-adapters.test.js +14 -0
  150. package/dist/governance-adapters.test.js.map +1 -0
  151. package/dist/handoff-validator.test.d.ts +2 -0
  152. package/dist/handoff-validator.test.d.ts.map +1 -0
  153. package/dist/handoff-validator.test.js +10 -0
  154. package/dist/handoff-validator.test.js.map +1 -0
  155. package/dist/index.d.ts +37 -0
  156. package/dist/index.d.ts.map +1 -0
  157. package/dist/index.js +37 -0
  158. package/dist/index.js.map +1 -0
  159. package/dist/interaction-session.d.ts +12 -0
  160. package/dist/interaction-session.d.ts.map +1 -0
  161. package/dist/interaction-session.js +21 -0
  162. package/dist/interaction-session.js.map +1 -0
  163. package/dist/interaction-session.test.d.ts +2 -0
  164. package/dist/interaction-session.test.d.ts.map +1 -0
  165. package/dist/interaction-session.test.js +13 -0
  166. package/dist/interaction-session.test.js.map +1 -0
  167. package/dist/persistence/cas.d.ts +4 -0
  168. package/dist/persistence/cas.d.ts.map +1 -0
  169. package/dist/persistence/cas.js +7 -0
  170. package/dist/persistence/cas.js.map +1 -0
  171. package/dist/persistence/event-ledger.d.ts +10 -0
  172. package/dist/persistence/event-ledger.d.ts.map +1 -0
  173. package/dist/persistence/event-ledger.js +6 -0
  174. package/dist/persistence/event-ledger.js.map +1 -0
  175. package/dist/persistence/memory-store.d.ts +51 -0
  176. package/dist/persistence/memory-store.d.ts.map +1 -0
  177. package/dist/persistence/memory-store.js +99 -0
  178. package/dist/persistence/memory-store.js.map +1 -0
  179. package/dist/persistence/schema.d.ts +2 -0
  180. package/dist/persistence/schema.d.ts.map +1 -0
  181. package/dist/persistence/schema.js +107 -0
  182. package/dist/persistence/schema.js.map +1 -0
  183. package/dist/persistence/sqlite-store.d.ts +59 -0
  184. package/dist/persistence/sqlite-store.d.ts.map +1 -0
  185. package/dist/persistence/sqlite-store.js +133 -0
  186. package/dist/persistence/sqlite-store.js.map +1 -0
  187. package/dist/persistence.test.d.ts +2 -0
  188. package/dist/persistence.test.d.ts.map +1 -0
  189. package/dist/persistence.test.js +28 -0
  190. package/dist/persistence.test.js.map +1 -0
  191. package/dist/ports/index.d.ts +248 -0
  192. package/dist/ports/index.d.ts.map +1 -0
  193. package/dist/ports/index.js +2 -0
  194. package/dist/ports/index.js.map +1 -0
  195. package/dist/recovery-spike.d.ts +22 -0
  196. package/dist/recovery-spike.d.ts.map +1 -0
  197. package/dist/recovery-spike.js +28 -0
  198. package/dist/recovery-spike.js.map +1 -0
  199. package/dist/recovery-spike.test.d.ts +2 -0
  200. package/dist/recovery-spike.test.d.ts.map +1 -0
  201. package/dist/recovery-spike.test.js +20 -0
  202. package/dist/recovery-spike.test.js.map +1 -0
  203. package/dist/runtime/claude-host-adapter.d.ts +28 -0
  204. package/dist/runtime/claude-host-adapter.d.ts.map +1 -0
  205. package/dist/runtime/claude-host-adapter.js +43 -0
  206. package/dist/runtime/claude-host-adapter.js.map +1 -0
  207. package/dist/runtime/context-binder.d.ts +61 -0
  208. package/dist/runtime/context-binder.d.ts.map +1 -0
  209. package/dist/runtime/context-binder.js +26 -0
  210. package/dist/runtime/context-binder.js.map +1 -0
  211. package/dist/runtime/execution-coordinator.d.ts +32 -0
  212. package/dist/runtime/execution-coordinator.d.ts.map +1 -0
  213. package/dist/runtime/execution-coordinator.js +243 -0
  214. package/dist/runtime/execution-coordinator.js.map +1 -0
  215. package/dist/runtime/gate-queue.d.ts +17 -0
  216. package/dist/runtime/gate-queue.d.ts.map +1 -0
  217. package/dist/runtime/gate-queue.js +33 -0
  218. package/dist/runtime/gate-queue.js.map +1 -0
  219. package/dist/runtime/host-conformance.d.ts +47 -0
  220. package/dist/runtime/host-conformance.d.ts.map +1 -0
  221. package/dist/runtime/host-conformance.js +61 -0
  222. package/dist/runtime/host-conformance.js.map +1 -0
  223. package/dist/runtime/host-routing.d.ts +5 -0
  224. package/dist/runtime/host-routing.d.ts.map +1 -0
  225. package/dist/runtime/host-routing.js +42 -0
  226. package/dist/runtime/host-routing.js.map +1 -0
  227. package/dist/runtime/memory-writeback.d.ts +18 -0
  228. package/dist/runtime/memory-writeback.d.ts.map +1 -0
  229. package/dist/runtime/memory-writeback.js +23 -0
  230. package/dist/runtime/memory-writeback.js.map +1 -0
  231. package/dist/runtime/operation-journal.d.ts +13 -0
  232. package/dist/runtime/operation-journal.d.ts.map +1 -0
  233. package/dist/runtime/operation-journal.js +38 -0
  234. package/dist/runtime/operation-journal.js.map +1 -0
  235. package/dist/runtime/plan-compiler.d.ts +37 -0
  236. package/dist/runtime/plan-compiler.d.ts.map +1 -0
  237. package/dist/runtime/plan-compiler.js +62 -0
  238. package/dist/runtime/plan-compiler.js.map +1 -0
  239. package/dist/runtime/project-runtime-factory.d.ts +15 -0
  240. package/dist/runtime/project-runtime-factory.d.ts.map +1 -0
  241. package/dist/runtime/project-runtime-factory.js +11 -0
  242. package/dist/runtime/project-runtime-factory.js.map +1 -0
  243. package/dist/runtime/review-coordinator.d.ts +25 -0
  244. package/dist/runtime/review-coordinator.d.ts.map +1 -0
  245. package/dist/runtime/review-coordinator.js +22 -0
  246. package/dist/runtime/review-coordinator.js.map +1 -0
  247. package/dist/subagents/claude-events.d.ts +59 -0
  248. package/dist/subagents/claude-events.d.ts.map +1 -0
  249. package/dist/subagents/claude-events.js +60 -0
  250. package/dist/subagents/claude-events.js.map +1 -0
  251. package/dist/subagents/handoff-validator.d.ts +8 -0
  252. package/dist/subagents/handoff-validator.d.ts.map +1 -0
  253. package/dist/subagents/handoff-validator.js +20 -0
  254. package/dist/subagents/handoff-validator.js.map +1 -0
  255. package/dist/subagents/orchestrator.d.ts +47 -0
  256. package/dist/subagents/orchestrator.d.ts.map +1 -0
  257. package/dist/subagents/orchestrator.js +85 -0
  258. package/dist/subagents/orchestrator.js.map +1 -0
  259. package/package.json +45 -0
@@ -0,0 +1,320 @@
1
+ export type DeliveryStage = 'draft' | 'clarifying' | 'intent_approved' | 'designing' | 'spec_ready' | 'spec_approved' | 'plan_ready' | 'plan_approved' | 'executing' | 'verified' | 'reviewed' | 'release_pending' | 'delivered' | 'held' | 'blocked' | 'rejected' | 'failed' | 'needs_changes' | 'rolled_back' | 'cancelled';
2
+ export type TaskStatus = 'pending' | 'running' | 'merge_pending' | 'integrated' | 'blocked' | 'verified' | 'needs_changes' | 'failed' | 'cancelled';
3
+ export interface ActorRef {
4
+ id: string;
5
+ kind: 'human' | 'agent' | 'system';
6
+ role?: string;
7
+ }
8
+ export interface ArtifactRef {
9
+ id: string;
10
+ caseId: string;
11
+ type: 'intent' | 'spec' | 'plan' | 'interaction' | 'review' | 'delivery-package' | 'code';
12
+ repoId: string;
13
+ ref: string;
14
+ commit: string;
15
+ path: string;
16
+ blobHash: string;
17
+ parentBlobHashes: string[];
18
+ contentHash: string;
19
+ createdBy: ActorRef;
20
+ createdAt: number;
21
+ }
22
+ export interface EvidenceRef {
23
+ id: string;
24
+ kind: 'verification' | 'review' | 'approval' | 'interaction' | 'tool' | 'merge';
25
+ hash: string;
26
+ createdAt: number;
27
+ metadata: Record<string, unknown>;
28
+ }
29
+ export interface ApprovalRecord {
30
+ id: string;
31
+ stage: 'intent' | 'spec' | 'plan' | 'review' | 'release';
32
+ actor: ActorRef;
33
+ policyVersion: string;
34
+ artifactHash: string;
35
+ decision: 'approved' | 'rejected';
36
+ reason: string;
37
+ createdAt: number;
38
+ expiresAt?: number;
39
+ }
40
+ export interface DecisionRecord {
41
+ id: string;
42
+ kind: 'product' | 'technical' | 'risk' | 'execution_authority' | 'waiver';
43
+ question: string;
44
+ options: string[];
45
+ decision: string;
46
+ decidedBy: ActorRef;
47
+ artifactHash: string;
48
+ expiresAt?: number;
49
+ }
50
+ export interface InteractionState {
51
+ phase: 'clarification' | 'design' | 'execution' | 'review';
52
+ status: 'active' | 'awaiting_user' | 'awaiting_approval' | 'paused';
53
+ turn: number;
54
+ openQuestions: string[];
55
+ blockingUnknowns: string[];
56
+ summaryRefs: string[];
57
+ summaries?: InteractionSummary[];
58
+ nonBlockingUnknowns?: Array<{
59
+ question: string;
60
+ owner: ActorRef;
61
+ dueAt: number;
62
+ }>;
63
+ }
64
+ export interface InteractionSummary {
65
+ id: string;
66
+ phase: InteractionState['phase'];
67
+ turn: number;
68
+ userStatement?: string;
69
+ understanding?: string;
70
+ assumptions?: string[];
71
+ question?: string;
72
+ answer?: string;
73
+ options?: string[];
74
+ decision?: string;
75
+ unresolvedRisks?: string[];
76
+ contextReceipt?: string;
77
+ artifactHashes?: string[];
78
+ actor: ActorRef;
79
+ }
80
+ export interface WorktreeRef {
81
+ path: string;
82
+ baseRevision: string;
83
+ attempt: number;
84
+ }
85
+ export interface HostSelectionSnapshot {
86
+ hostId: string;
87
+ hostVersion: string;
88
+ protocolVersion: 'delivery-host.v1';
89
+ capabilityLevel: 'H1' | 'H2' | 'H3';
90
+ sessionMode: 'bounded-invocation' | 'recoverable-session';
91
+ probeSuiteVersion: string;
92
+ probeReceiptHash: string;
93
+ authenticationState: 'authenticated' | 'unauthenticated' | 'not-required';
94
+ scope: 'case-default' | 'role' | 'task';
95
+ scopeId: string;
96
+ capabilitySnapshotHash: string;
97
+ selectedAt: number;
98
+ selectionReason: string;
99
+ fallbackPolicy: 'none' | 'explicit-only';
100
+ }
101
+ export interface DeliveryTask {
102
+ id: string;
103
+ caseId: string;
104
+ title: string;
105
+ attempt: number;
106
+ version: number;
107
+ baseRevision: string;
108
+ dependsOn: string[];
109
+ allowedFiles: string[];
110
+ expectedChanges: string[];
111
+ verificationCommands: Array<{
112
+ command: string;
113
+ args: string[];
114
+ timeoutMs?: number;
115
+ }>;
116
+ inputArtifacts?: string[];
117
+ planHash?: string;
118
+ contextReceiptHash?: string;
119
+ hostSelectionSnapshotHash?: string;
120
+ executionAuthority?: string;
121
+ constraints?: TaskEnvelope['constraints'];
122
+ status: TaskStatus;
123
+ worktree?: WorktreeRef;
124
+ integratedRevision?: string;
125
+ handoff?: {
126
+ finalRevision: string;
127
+ changedFiles: string[];
128
+ durable: boolean;
129
+ };
130
+ mergeCommit?: string;
131
+ worktreeCleanup?: {
132
+ cleaned: boolean;
133
+ reason?: string;
134
+ };
135
+ leaseOwner?: string;
136
+ leaseExpiresAt?: number;
137
+ fencingToken?: number;
138
+ evidence: EvidenceRef[];
139
+ }
140
+ export interface DeliveryCase {
141
+ id: string;
142
+ projectRoot: string;
143
+ baseRef: string;
144
+ integrationRef: string;
145
+ integrationRevision?: string;
146
+ targetRef: string;
147
+ title: string;
148
+ source: 'human' | 'issue' | 'incident' | 'monitor';
149
+ riskTier: 'low' | 'medium' | 'high';
150
+ autonomy: 'manual' | 'assisted' | 'auto';
151
+ stage: DeliveryStage;
152
+ budgets: {
153
+ maxInteractionTurns: number;
154
+ maxTaskAttempts: number;
155
+ maxWallTimeMs: number;
156
+ maxToolCalls: number;
157
+ };
158
+ artifacts: ArtifactRef[];
159
+ tasks: DeliveryTask[];
160
+ approvals: ApprovalRecord[];
161
+ decisions: DecisionRecord[];
162
+ evidence: EvidenceRef[];
163
+ interaction: InteractionState;
164
+ createdBy: ActorRef;
165
+ sessionId?: string;
166
+ executionId?: string;
167
+ hostSelections?: HostSelectionSnapshot[];
168
+ createdAt?: number;
169
+ updatedAt: number;
170
+ version: number;
171
+ contextReceipt?: string;
172
+ }
173
+ export interface TaskEnvelope {
174
+ caseId: string;
175
+ taskId: string;
176
+ objective: string;
177
+ inputArtifacts: string[];
178
+ allowedFiles: string[];
179
+ dependencies: string[];
180
+ implementationSteps: string[];
181
+ verification: {
182
+ commands: Array<{
183
+ command: string;
184
+ args: string[];
185
+ }>;
186
+ acceptanceCriteria: string[];
187
+ };
188
+ constraints: {
189
+ testFirst: boolean;
190
+ cannotEditTests: boolean;
191
+ recursiveWorkers: false;
192
+ };
193
+ baseRevision?: string;
194
+ planHash?: string;
195
+ contextReceiptHash?: string;
196
+ hostSelectionSnapshotHash?: string;
197
+ executionAuthority?: string;
198
+ fencingToken?: number;
199
+ }
200
+ export interface DecisionRequest {
201
+ id: string;
202
+ kind: DecisionRecord['kind'];
203
+ question: string;
204
+ options: string[];
205
+ blocking: boolean;
206
+ turn: number;
207
+ }
208
+ export interface InteractionRequest {
209
+ id: string;
210
+ phase: InteractionState['phase'];
211
+ question: string;
212
+ blocking: true;
213
+ taskId?: string;
214
+ turn: number;
215
+ }
216
+ export interface AgentHandoff {
217
+ caseId: string;
218
+ taskId?: string;
219
+ from: {
220
+ role: string;
221
+ agentId: string;
222
+ version: string;
223
+ sessionId: string;
224
+ };
225
+ to: {
226
+ role: string;
227
+ agentId: string;
228
+ version: string;
229
+ };
230
+ inputRefs: string[];
231
+ contextReceipt: string;
232
+ claims: Array<{
233
+ statement: string;
234
+ evidenceRefs: string[];
235
+ confidence?: number;
236
+ }>;
237
+ requestedDecision?: {
238
+ kind: string;
239
+ question: string;
240
+ options: string[];
241
+ };
242
+ outputRefs: string[];
243
+ status: 'complete' | 'needs_user' | 'blocked' | 'failed';
244
+ idempotencyKey: string;
245
+ }
246
+ export interface DeliveryStatusView {
247
+ caseId: string;
248
+ contextReceipt?: string;
249
+ stage: DeliveryStage;
250
+ pendingDecisions: DecisionRequest[];
251
+ nextActions: Array<'answer_question' | 'revise' | 'compare_options' | 'approve' | 'resume' | 'retry_task' | 'review' | 'export' | 'cancel'>;
252
+ blockers: Array<{
253
+ code: string;
254
+ taskId?: string;
255
+ evidenceRefs: string[];
256
+ }>;
257
+ artifactRefs: ArtifactRef[];
258
+ evidenceRefs: EvidenceRef[];
259
+ taskSummaries: Array<{
260
+ taskId: string;
261
+ status: TaskStatus;
262
+ attempt: number;
263
+ }>;
264
+ budget: {
265
+ interactionsUsed: number;
266
+ taskAttemptsUsed: number;
267
+ wallTimeMs: number;
268
+ toolCalls: number;
269
+ };
270
+ }
271
+ export interface ReviewFinding {
272
+ id: string;
273
+ severity: 'blocker' | 'major' | 'minor' | 'informational';
274
+ file?: string;
275
+ line?: number;
276
+ evidenceRefs: string[];
277
+ ruleVersion: string;
278
+ action: 'fix' | 'accept' | 'inform';
279
+ }
280
+ export interface ReviewReceipt {
281
+ id: string;
282
+ kind: 'bugs' | 'security' | 'compliance';
283
+ artifactHash: string;
284
+ findings: ReviewFinding[];
285
+ passed: boolean;
286
+ createdAt: number;
287
+ }
288
+ export interface VerificationReceipt {
289
+ id: string;
290
+ taskId?: string;
291
+ commit: string;
292
+ lockfileHash: string;
293
+ runtime: string;
294
+ toolVersion: string;
295
+ environment: string;
296
+ commands: Array<{
297
+ command: string;
298
+ args: string[];
299
+ exitCode: number;
300
+ outputHash: string;
301
+ }>;
302
+ passed: boolean;
303
+ createdAt: number;
304
+ }
305
+ export type DeliveryEvent = {
306
+ id: string;
307
+ caseId: string;
308
+ type: string;
309
+ idempotencyKey: string;
310
+ actor: ActorRef;
311
+ payload: Record<string, unknown>;
312
+ createdAt: number;
313
+ processedAt?: number;
314
+ };
315
+ export type DeliveryErrorCode = 'INVALID_TRANSITION' | 'MISSING_PREREQUISITE' | 'STATE_VERSION_CONFLICT' | 'IDEMPOTENCY_CONFLICT' | 'BLOCKING_UNKNOWN' | 'STALE_INTERACTION_TURN' | 'SELF_APPROVAL' | 'ARTIFACT_HASH_MISMATCH' | 'UNAUTHORIZED_ROLE' | 'TARGET_REF_WRITE_FORBIDDEN' | 'CASE_CANCELLED' | 'BUDGET_EXCEEDED' | 'HOST_CONFORMANCE_FAILED' | 'HOST_AUTHENTICATION_REQUIRED' | 'HOST_CAPABILITY_MISSING' | 'OPERATION_NOT_FOUND' | 'PLAN_NOT_EXECUTABLE' | 'REQUIRED_CONTEXT_MISSING' | 'HOST_SWITCH_REQUIRES_AUTHORITY' | 'LEASE_FENCING_FAILED' | 'APPROVAL_OWNER_MISSING' | 'REVIEW_RECEIPT_MISSING';
316
+ export declare class DeliveryLineError extends Error {
317
+ readonly code: DeliveryErrorCode;
318
+ constructor(code: DeliveryErrorCode, message: string);
319
+ }
320
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/domain/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ export class DeliveryLineError extends Error {
2
+ code;
3
+ constructor(code, message) {
4
+ super(message);
5
+ this.code = code;
6
+ this.name = 'DeliveryLineError';
7
+ }
8
+ }
9
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/domain/types.ts"],"names":[],"mappings":"AAuRA,MAAM,OAAO,iBAAkB,SAAQ,KAAK;IACrB;IAArB,YAAqB,IAAuB,EAAE,OAAe;QAAI,KAAK,CAAC,OAAO,CAAC,CAAC;QAA3D,SAAI,GAAJ,IAAI,CAAmB;QAAqC,IAAI,CAAC,IAAI,GAAG,mBAAmB,CAAA;IAAC,CAAC;CACnH"}
@@ -0,0 +1,77 @@
1
+ import { type ActorRef, type DeliveryCase, type DeliveryStatusView, type HostSelectionSnapshot } from '../domain/types.js';
2
+ import type { DeliveryLinePorts } from '../ports/index.js';
3
+ import { type ExecutablePlanInput } from '../runtime/plan-compiler.js';
4
+ type Identity = {
5
+ actor: ActorRef;
6
+ sessionId: string;
7
+ executionId: string;
8
+ idempotencyKey: string;
9
+ contextReceipt: string;
10
+ };
11
+ type CreateInput = Omit<Identity, 'contextReceipt'> & {
12
+ contextReceipt?: string;
13
+ caseId?: string;
14
+ projectRoot: string;
15
+ baseRef: string;
16
+ targetRef: string;
17
+ title: string;
18
+ source?: DeliveryCase['source'];
19
+ riskTier?: DeliveryCase['riskTier'];
20
+ riskSignals?: string[];
21
+ autonomy?: DeliveryCase['autonomy'];
22
+ budgets?: Partial<DeliveryCase['budgets']>;
23
+ };
24
+ type StageApproval = 'intent' | 'spec' | 'plan' | 'release';
25
+ export declare class DeliveryLineFacade {
26
+ private readonly ports;
27
+ private readonly projectRoot?;
28
+ constructor(ports: DeliveryLinePorts, projectRoot?: string | undefined);
29
+ createCase(input: CreateInput): Promise<DeliveryStatusView>;
30
+ status(caseId: string): Promise<DeliveryStatusView>;
31
+ routeHost(caseId: string, input: Identity & {
32
+ snapshot: HostSelectionSnapshot;
33
+ executionAuthority: string;
34
+ }): Promise<DeliveryStatusView>;
35
+ advance(caseId: string, input: Identity): Promise<DeliveryStatusView>;
36
+ answer(caseId: string, input: Identity & {
37
+ turn: number;
38
+ value: string;
39
+ }): Promise<DeliveryStatusView>;
40
+ revise(caseId: string, input: Identity & {
41
+ phase: 'clarification' | 'design';
42
+ content: string;
43
+ }): Promise<DeliveryStatusView>;
44
+ compareOptions(caseId: string, input: Identity & {
45
+ turn: number;
46
+ option: string;
47
+ }): Promise<DeliveryStatusView>;
48
+ approve(caseId: string, input: Identity & {
49
+ turn: number;
50
+ stage: StageApproval;
51
+ artifactHash?: string;
52
+ reason?: string;
53
+ plan?: ExecutablePlanInput;
54
+ }): Promise<DeliveryStatusView>;
55
+ reject(caseId: string, input: Identity & {
56
+ turn: number;
57
+ stage: StageApproval;
58
+ reason: string;
59
+ }): Promise<DeliveryStatusView>;
60
+ resume(caseId: string, input: Identity): Promise<DeliveryStatusView>;
61
+ retryTask(caseId: string, input: Identity & {
62
+ taskId: string;
63
+ }): Promise<DeliveryStatusView>;
64
+ export(caseId: string, input: Identity & {
65
+ path: string;
66
+ }): Promise<DeliveryStatusView>;
67
+ cancel(caseId: string, input: Identity & {
68
+ reason: string;
69
+ }): Promise<DeliveryStatusView>;
70
+ private mutate;
71
+ private artifact;
72
+ private createArtifact;
73
+ private evidence;
74
+ private view;
75
+ }
76
+ export {};
77
+ //# sourceMappingURL=delivery-line-facade.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delivery-line-facade.d.ts","sourceRoot":"","sources":["../../src/facade/delivery-line-facade.ts"],"names":[],"mappings":"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"}