popeye-cli 1.10.0 → 2.0.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 (253) hide show
  1. package/CHANGELOG.md +59 -0
  2. package/CONTRIBUTING.md +15 -1
  3. package/README.md +57 -0
  4. package/dist/pipeline/artifact-manager.d.ts +47 -0
  5. package/dist/pipeline/artifact-manager.d.ts.map +1 -0
  6. package/dist/pipeline/artifact-manager.js +251 -0
  7. package/dist/pipeline/artifact-manager.js.map +1 -0
  8. package/dist/pipeline/artifact-validators.d.ts +29 -0
  9. package/dist/pipeline/artifact-validators.d.ts.map +1 -0
  10. package/dist/pipeline/artifact-validators.js +173 -0
  11. package/dist/pipeline/artifact-validators.js.map +1 -0
  12. package/dist/pipeline/change-request.d.ts +47 -0
  13. package/dist/pipeline/change-request.d.ts.map +1 -0
  14. package/dist/pipeline/change-request.js +91 -0
  15. package/dist/pipeline/change-request.js.map +1 -0
  16. package/dist/pipeline/check-runner.d.ts +47 -0
  17. package/dist/pipeline/check-runner.d.ts.map +1 -0
  18. package/dist/pipeline/check-runner.js +417 -0
  19. package/dist/pipeline/check-runner.js.map +1 -0
  20. package/dist/pipeline/command-resolver.d.ts +9 -0
  21. package/dist/pipeline/command-resolver.d.ts.map +1 -0
  22. package/dist/pipeline/command-resolver.js +140 -0
  23. package/dist/pipeline/command-resolver.js.map +1 -0
  24. package/dist/pipeline/consensus/consensus-runner.d.ts +44 -0
  25. package/dist/pipeline/consensus/consensus-runner.d.ts.map +1 -0
  26. package/dist/pipeline/consensus/consensus-runner.js +212 -0
  27. package/dist/pipeline/consensus/consensus-runner.js.map +1 -0
  28. package/dist/pipeline/constitution.d.ts +45 -0
  29. package/dist/pipeline/constitution.d.ts.map +1 -0
  30. package/dist/pipeline/constitution.js +82 -0
  31. package/dist/pipeline/constitution.js.map +1 -0
  32. package/dist/pipeline/gate-engine.d.ts +55 -0
  33. package/dist/pipeline/gate-engine.d.ts.map +1 -0
  34. package/dist/pipeline/gate-engine.js +270 -0
  35. package/dist/pipeline/gate-engine.js.map +1 -0
  36. package/dist/pipeline/index.d.ts +26 -0
  37. package/dist/pipeline/index.d.ts.map +1 -0
  38. package/dist/pipeline/index.js +35 -0
  39. package/dist/pipeline/index.js.map +1 -0
  40. package/dist/pipeline/migration.d.ts +15 -0
  41. package/dist/pipeline/migration.d.ts.map +1 -0
  42. package/dist/pipeline/migration.js +76 -0
  43. package/dist/pipeline/migration.js.map +1 -0
  44. package/dist/pipeline/orchestrator.d.ts +28 -0
  45. package/dist/pipeline/orchestrator.d.ts.map +1 -0
  46. package/dist/pipeline/orchestrator.js +238 -0
  47. package/dist/pipeline/orchestrator.js.map +1 -0
  48. package/dist/pipeline/packets/audit-report-builder.d.ts +11 -0
  49. package/dist/pipeline/packets/audit-report-builder.d.ts.map +1 -0
  50. package/dist/pipeline/packets/audit-report-builder.js +32 -0
  51. package/dist/pipeline/packets/audit-report-builder.js.map +1 -0
  52. package/dist/pipeline/packets/consensus-packet-builder.d.ts +35 -0
  53. package/dist/pipeline/packets/consensus-packet-builder.d.ts.map +1 -0
  54. package/dist/pipeline/packets/consensus-packet-builder.js +80 -0
  55. package/dist/pipeline/packets/consensus-packet-builder.js.map +1 -0
  56. package/dist/pipeline/packets/index.d.ts +12 -0
  57. package/dist/pipeline/packets/index.d.ts.map +1 -0
  58. package/dist/pipeline/packets/index.js +8 -0
  59. package/dist/pipeline/packets/index.js.map +1 -0
  60. package/dist/pipeline/packets/plan-packet-builder.d.ts +21 -0
  61. package/dist/pipeline/packets/plan-packet-builder.d.ts.map +1 -0
  62. package/dist/pipeline/packets/plan-packet-builder.js +27 -0
  63. package/dist/pipeline/packets/plan-packet-builder.js.map +1 -0
  64. package/dist/pipeline/packets/rca-packet-builder.d.ts +19 -0
  65. package/dist/pipeline/packets/rca-packet-builder.d.ts.map +1 -0
  66. package/dist/pipeline/packets/rca-packet-builder.js +22 -0
  67. package/dist/pipeline/packets/rca-packet-builder.js.map +1 -0
  68. package/dist/pipeline/phases/architecture.d.ts +7 -0
  69. package/dist/pipeline/phases/architecture.d.ts.map +1 -0
  70. package/dist/pipeline/phases/architecture.js +60 -0
  71. package/dist/pipeline/phases/architecture.js.map +1 -0
  72. package/dist/pipeline/phases/audit.d.ts +8 -0
  73. package/dist/pipeline/phases/audit.d.ts.map +1 -0
  74. package/dist/pipeline/phases/audit.js +144 -0
  75. package/dist/pipeline/phases/audit.js.map +1 -0
  76. package/dist/pipeline/phases/consensus-architecture.d.ts +7 -0
  77. package/dist/pipeline/phases/consensus-architecture.d.ts.map +1 -0
  78. package/dist/pipeline/phases/consensus-architecture.js +84 -0
  79. package/dist/pipeline/phases/consensus-architecture.js.map +1 -0
  80. package/dist/pipeline/phases/consensus-master-plan.d.ts +7 -0
  81. package/dist/pipeline/phases/consensus-master-plan.d.ts.map +1 -0
  82. package/dist/pipeline/phases/consensus-master-plan.js +81 -0
  83. package/dist/pipeline/phases/consensus-master-plan.js.map +1 -0
  84. package/dist/pipeline/phases/consensus-role-plans.d.ts +7 -0
  85. package/dist/pipeline/phases/consensus-role-plans.d.ts.map +1 -0
  86. package/dist/pipeline/phases/consensus-role-plans.js +85 -0
  87. package/dist/pipeline/phases/consensus-role-plans.js.map +1 -0
  88. package/dist/pipeline/phases/done.d.ts +7 -0
  89. package/dist/pipeline/phases/done.d.ts.map +1 -0
  90. package/dist/pipeline/phases/done.js +45 -0
  91. package/dist/pipeline/phases/done.js.map +1 -0
  92. package/dist/pipeline/phases/implementation.d.ts +8 -0
  93. package/dist/pipeline/phases/implementation.d.ts.map +1 -0
  94. package/dist/pipeline/phases/implementation.js +42 -0
  95. package/dist/pipeline/phases/implementation.js.map +1 -0
  96. package/dist/pipeline/phases/index.d.ts +20 -0
  97. package/dist/pipeline/phases/index.d.ts.map +1 -0
  98. package/dist/pipeline/phases/index.js +19 -0
  99. package/dist/pipeline/phases/index.js.map +1 -0
  100. package/dist/pipeline/phases/intake.d.ts +8 -0
  101. package/dist/pipeline/phases/intake.d.ts.map +1 -0
  102. package/dist/pipeline/phases/intake.js +40 -0
  103. package/dist/pipeline/phases/intake.js.map +1 -0
  104. package/dist/pipeline/phases/phase-context.d.ts +30 -0
  105. package/dist/pipeline/phases/phase-context.d.ts.map +1 -0
  106. package/dist/pipeline/phases/phase-context.js +33 -0
  107. package/dist/pipeline/phases/phase-context.js.map +1 -0
  108. package/dist/pipeline/phases/production-gate.d.ts +8 -0
  109. package/dist/pipeline/phases/production-gate.d.ts.map +1 -0
  110. package/dist/pipeline/phases/production-gate.js +84 -0
  111. package/dist/pipeline/phases/production-gate.js.map +1 -0
  112. package/dist/pipeline/phases/qa-validation.d.ts +7 -0
  113. package/dist/pipeline/phases/qa-validation.d.ts.map +1 -0
  114. package/dist/pipeline/phases/qa-validation.js +50 -0
  115. package/dist/pipeline/phases/qa-validation.js.map +1 -0
  116. package/dist/pipeline/phases/recovery-loop.d.ts +7 -0
  117. package/dist/pipeline/phases/recovery-loop.d.ts.map +1 -0
  118. package/dist/pipeline/phases/recovery-loop.js +91 -0
  119. package/dist/pipeline/phases/recovery-loop.js.map +1 -0
  120. package/dist/pipeline/phases/review.d.ts +8 -0
  121. package/dist/pipeline/phases/review.d.ts.map +1 -0
  122. package/dist/pipeline/phases/review.js +127 -0
  123. package/dist/pipeline/phases/review.js.map +1 -0
  124. package/dist/pipeline/phases/role-planning.d.ts +7 -0
  125. package/dist/pipeline/phases/role-planning.d.ts.map +1 -0
  126. package/dist/pipeline/phases/role-planning.js +75 -0
  127. package/dist/pipeline/phases/role-planning.js.map +1 -0
  128. package/dist/pipeline/phases/stuck.d.ts +7 -0
  129. package/dist/pipeline/phases/stuck.d.ts.map +1 -0
  130. package/dist/pipeline/phases/stuck.js +51 -0
  131. package/dist/pipeline/phases/stuck.js.map +1 -0
  132. package/dist/pipeline/repo-snapshot.d.ts +24 -0
  133. package/dist/pipeline/repo-snapshot.d.ts.map +1 -0
  134. package/dist/pipeline/repo-snapshot.js +343 -0
  135. package/dist/pipeline/repo-snapshot.js.map +1 -0
  136. package/dist/pipeline/role-execution-adapter.d.ts +59 -0
  137. package/dist/pipeline/role-execution-adapter.d.ts.map +1 -0
  138. package/dist/pipeline/role-execution-adapter.js +159 -0
  139. package/dist/pipeline/role-execution-adapter.js.map +1 -0
  140. package/dist/pipeline/skill-loader.d.ts +34 -0
  141. package/dist/pipeline/skill-loader.d.ts.map +1 -0
  142. package/dist/pipeline/skill-loader.js +156 -0
  143. package/dist/pipeline/skill-loader.js.map +1 -0
  144. package/dist/pipeline/skills/defaults.d.ts +16 -0
  145. package/dist/pipeline/skills/defaults.d.ts.map +1 -0
  146. package/dist/pipeline/skills/defaults.js +189 -0
  147. package/dist/pipeline/skills/defaults.js.map +1 -0
  148. package/dist/pipeline/type-defs/artifacts.d.ts +202 -0
  149. package/dist/pipeline/type-defs/artifacts.d.ts.map +1 -0
  150. package/dist/pipeline/type-defs/artifacts.js +66 -0
  151. package/dist/pipeline/type-defs/artifacts.js.map +1 -0
  152. package/dist/pipeline/type-defs/audit.d.ts +256 -0
  153. package/dist/pipeline/type-defs/audit.d.ts.map +1 -0
  154. package/dist/pipeline/type-defs/audit.js +54 -0
  155. package/dist/pipeline/type-defs/audit.js.map +1 -0
  156. package/dist/pipeline/type-defs/checks.d.ts +81 -0
  157. package/dist/pipeline/type-defs/checks.d.ts.map +1 -0
  158. package/dist/pipeline/type-defs/checks.js +38 -0
  159. package/dist/pipeline/type-defs/checks.js.map +1 -0
  160. package/dist/pipeline/type-defs/enums.d.ts +43 -0
  161. package/dist/pipeline/type-defs/enums.d.ts.map +1 -0
  162. package/dist/pipeline/type-defs/enums.js +55 -0
  163. package/dist/pipeline/type-defs/enums.js.map +1 -0
  164. package/dist/pipeline/type-defs/index.d.ts +12 -0
  165. package/dist/pipeline/type-defs/index.d.ts.map +1 -0
  166. package/dist/pipeline/type-defs/index.js +12 -0
  167. package/dist/pipeline/type-defs/index.js.map +1 -0
  168. package/dist/pipeline/type-defs/packets.d.ts +806 -0
  169. package/dist/pipeline/type-defs/packets.d.ts.map +1 -0
  170. package/dist/pipeline/type-defs/packets.js +109 -0
  171. package/dist/pipeline/type-defs/packets.js.map +1 -0
  172. package/dist/pipeline/type-defs/snapshot.d.ts +52 -0
  173. package/dist/pipeline/type-defs/snapshot.d.ts.map +1 -0
  174. package/dist/pipeline/type-defs/snapshot.js +35 -0
  175. package/dist/pipeline/type-defs/snapshot.js.map +1 -0
  176. package/dist/pipeline/type-defs/state.d.ts +449 -0
  177. package/dist/pipeline/type-defs/state.d.ts.map +1 -0
  178. package/dist/pipeline/type-defs/state.js +88 -0
  179. package/dist/pipeline/type-defs/state.js.map +1 -0
  180. package/dist/pipeline/types.d.ts +16 -0
  181. package/dist/pipeline/types.d.ts.map +1 -0
  182. package/dist/pipeline/types.js +16 -0
  183. package/dist/pipeline/types.js.map +1 -0
  184. package/dist/types/audit.d.ts +6 -6
  185. package/dist/workflow/index.d.ts.map +1 -1
  186. package/dist/workflow/index.js +48 -0
  187. package/dist/workflow/index.js.map +1 -1
  188. package/package.json +1 -1
  189. package/skills/PHASE_GATE_ENGINE_SPEC.md +113 -20
  190. package/skills/POPEYE_FULL_AUTONOMY_PIPELINE.md +66 -13
  191. package/src/pipeline/artifact-manager.ts +339 -0
  192. package/src/pipeline/artifact-validators.ts +224 -0
  193. package/src/pipeline/change-request.ts +119 -0
  194. package/src/pipeline/check-runner.ts +504 -0
  195. package/src/pipeline/command-resolver.ts +168 -0
  196. package/src/pipeline/consensus/consensus-runner.ts +317 -0
  197. package/src/pipeline/constitution.ts +109 -0
  198. package/src/pipeline/gate-engine.ts +347 -0
  199. package/src/pipeline/index.ts +82 -0
  200. package/src/pipeline/migration.ts +91 -0
  201. package/src/pipeline/orchestrator.ts +314 -0
  202. package/src/pipeline/packets/audit-report-builder.ts +47 -0
  203. package/src/pipeline/packets/consensus-packet-builder.ts +112 -0
  204. package/src/pipeline/packets/index.ts +15 -0
  205. package/src/pipeline/packets/plan-packet-builder.ts +52 -0
  206. package/src/pipeline/packets/rca-packet-builder.ts +38 -0
  207. package/src/pipeline/phases/architecture.ts +73 -0
  208. package/src/pipeline/phases/audit.ts +193 -0
  209. package/src/pipeline/phases/consensus-architecture.ts +104 -0
  210. package/src/pipeline/phases/consensus-master-plan.ts +100 -0
  211. package/src/pipeline/phases/consensus-role-plans.ts +105 -0
  212. package/src/pipeline/phases/done.ts +68 -0
  213. package/src/pipeline/phases/implementation.ts +48 -0
  214. package/src/pipeline/phases/index.ts +21 -0
  215. package/src/pipeline/phases/intake.ts +54 -0
  216. package/src/pipeline/phases/phase-context.ts +86 -0
  217. package/src/pipeline/phases/production-gate.ts +113 -0
  218. package/src/pipeline/phases/qa-validation.ts +63 -0
  219. package/src/pipeline/phases/recovery-loop.ts +118 -0
  220. package/src/pipeline/phases/review.ts +149 -0
  221. package/src/pipeline/phases/role-planning.ts +92 -0
  222. package/src/pipeline/phases/stuck.ts +62 -0
  223. package/src/pipeline/repo-snapshot.ts +395 -0
  224. package/src/pipeline/role-execution-adapter.ts +238 -0
  225. package/src/pipeline/skill-loader.ts +192 -0
  226. package/src/pipeline/skills/defaults.ts +215 -0
  227. package/src/pipeline/type-defs/artifacts.ts +81 -0
  228. package/src/pipeline/type-defs/audit.ts +67 -0
  229. package/src/pipeline/type-defs/checks.ts +47 -0
  230. package/src/pipeline/type-defs/enums.ts +62 -0
  231. package/src/pipeline/type-defs/index.ts +12 -0
  232. package/src/pipeline/type-defs/packets.ts +131 -0
  233. package/src/pipeline/type-defs/snapshot.ts +55 -0
  234. package/src/pipeline/type-defs/state.ts +165 -0
  235. package/src/pipeline/types.ts +16 -0
  236. package/src/workflow/index.ts +48 -0
  237. package/tests/pipeline/artifact-manager.test.ts +183 -0
  238. package/tests/pipeline/artifact-validators.test.ts +207 -0
  239. package/tests/pipeline/change-request.test.ts +180 -0
  240. package/tests/pipeline/check-runner.test.ts +157 -0
  241. package/tests/pipeline/command-resolver.test.ts +159 -0
  242. package/tests/pipeline/consensus-runner.test.ts +206 -0
  243. package/tests/pipeline/consensus-scoring.test.ts +163 -0
  244. package/tests/pipeline/constitution.test.ts +122 -0
  245. package/tests/pipeline/gate-engine.test.ts +195 -0
  246. package/tests/pipeline/migration.test.ts +133 -0
  247. package/tests/pipeline/orchestrator.test.ts +614 -0
  248. package/tests/pipeline/packets/builders.test.ts +347 -0
  249. package/tests/pipeline/repo-snapshot.test.ts +189 -0
  250. package/tests/pipeline/role-execution-adapter.test.ts +299 -0
  251. package/tests/pipeline/skill-loader.test.ts +186 -0
  252. package/tests/pipeline/start-env-checks.test.ts +123 -0
  253. package/tests/pipeline/types.test.ts +156 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"packets.d.ts","sourceRoot":"","sources":["../../../src/pipeline/type-defs/packets.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAI3B,CAAC;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAI1D,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAMnC,CAAC;AAEH,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAY3B,CAAC;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAI1D,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAW7B,CAAC;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAI9D,eAAO,MAAM,oBAAoB;;;;iBAI/B,CAAC;AAEH,eAAO,MAAM,qBAAqB;;;;;iBAKhC,CAAC;AAEH,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAIjC,CAAC;AAEH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAYhC,CAAC;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAIpE,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAa1B,CAAC;AACH,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAIxD,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAe9B,CAAC;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC"}
@@ -0,0 +1,109 @@
1
+ /**
2
+ * Structured packet types — plans, consensus, RCA, constraints, change requests.
3
+ */
4
+ import { z } from 'zod';
5
+ import { PipelinePhaseSchema, PipelineRoleSchema } from './enums.js';
6
+ import { ArtifactRefSchema, DependencyEdgeSchema } from './artifacts.js';
7
+ // ─── Constraint ──────────────────────────────────────────
8
+ export const ConstraintSchema = z.object({
9
+ type: z.enum(['technical', 'business', 'timeline', 'compliance']),
10
+ description: z.string(),
11
+ source: ArtifactRefSchema,
12
+ });
13
+ // ─── Plan Packet ─────────────────────────────────────────
14
+ export const PlanPacketMetadataSchema = z.object({
15
+ packet_id: z.string(),
16
+ timestamp: z.string(),
17
+ phase: PipelinePhaseSchema,
18
+ submitted_by: PipelineRoleSchema,
19
+ version: z.number().int().positive(),
20
+ });
21
+ export const PlanPacketSchema = z.object({
22
+ metadata: PlanPacketMetadataSchema,
23
+ references: z.object({
24
+ master_plan: ArtifactRefSchema,
25
+ constitution: ArtifactRefSchema,
26
+ repo_snapshot: ArtifactRefSchema,
27
+ }),
28
+ proposed_artifacts: z.array(ArtifactRefSchema),
29
+ acceptance_criteria: z.array(z.string()),
30
+ artifact_dependencies: z.array(DependencyEdgeSchema),
31
+ constraints: z.array(ConstraintSchema),
32
+ open_questions: z.array(z.string()).optional(),
33
+ });
34
+ // ─── Reviewer Vote ───────────────────────────────────────
35
+ export const ReviewerVoteSchema = z.object({
36
+ reviewer_id: z.string(),
37
+ provider: z.string(),
38
+ model: z.string(),
39
+ temperature: z.number(),
40
+ prompt_hash: z.string(),
41
+ vote: z.enum(['APPROVE', 'REJECT', 'CONDITIONAL']),
42
+ confidence: z.number().min(0).max(1),
43
+ blocking_issues: z.array(z.string()),
44
+ suggestions: z.array(z.string()),
45
+ evidence_refs: z.array(ArtifactRefSchema),
46
+ });
47
+ // ─── Consensus Packet ────────────────────────────────────
48
+ export const ConsensusRulesSchema = z.object({
49
+ threshold: z.number().min(0).max(1),
50
+ quorum: z.number().int().positive(),
51
+ min_reviewers: z.number().int().positive(),
52
+ });
53
+ export const ConsensusResultSchema = z.object({
54
+ approved: z.boolean(),
55
+ score: z.number().min(0).max(1),
56
+ weighted_score: z.number().min(0).max(1),
57
+ participating_reviewers: z.number().int(),
58
+ });
59
+ export const ArbitratorResultSchema = z.object({
60
+ decision: z.string(),
61
+ merged_patch: z.string().optional(),
62
+ artifact_ref: ArtifactRefSchema.optional(),
63
+ });
64
+ export const ConsensusPacketSchema = z.object({
65
+ metadata: z.object({
66
+ packet_id: z.string(),
67
+ timestamp: z.string(),
68
+ plan_packet_id: z.string(),
69
+ }),
70
+ plan_packet_reference: ArtifactRefSchema,
71
+ reviewer_votes: z.array(ReviewerVoteSchema),
72
+ consensus_rules: ConsensusRulesSchema,
73
+ consensus_result: ConsensusResultSchema,
74
+ arbitrator_result: ArbitratorResultSchema.optional(),
75
+ final_status: z.enum(['APPROVED', 'REJECTED', 'ARBITRATED']),
76
+ });
77
+ // ─── RCA Packet ──────────────────────────────────────────
78
+ export const RCAPacketSchema = z.object({
79
+ rca_id: z.string(),
80
+ timestamp: z.string(),
81
+ incident_summary: z.string(),
82
+ symptoms: z.array(z.string()),
83
+ root_cause: z.string(),
84
+ responsible_layer: z.string(),
85
+ origin_phase: PipelinePhaseSchema,
86
+ governance_gap: z.string(),
87
+ corrective_actions: z.array(z.string()),
88
+ prevention: z.string(),
89
+ requires_phase_rewind_to: PipelinePhaseSchema.optional(),
90
+ requires_consensus_on: z.array(PipelinePhaseSchema).optional(),
91
+ });
92
+ // ─── Change Request ──────────────────────────────────────
93
+ export const ChangeRequestSchema = z.object({
94
+ cr_id: z.string(),
95
+ timestamp: z.string(),
96
+ origin_phase: PipelinePhaseSchema,
97
+ requested_by: PipelineRoleSchema,
98
+ change_type: z.enum(['scope', 'architecture', 'dependency', 'config', 'requirement']),
99
+ description: z.string(),
100
+ justification: z.string(),
101
+ impact_analysis: z.object({
102
+ affected_artifacts: z.array(ArtifactRefSchema),
103
+ affected_phases: z.array(PipelinePhaseSchema),
104
+ risk_level: z.enum(['low', 'medium', 'high']),
105
+ }),
106
+ status: z.enum(['proposed', 'approved', 'rejected']),
107
+ approval_artifact: ArtifactRefSchema.optional(),
108
+ });
109
+ //# sourceMappingURL=packets.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"packets.js","sourceRoot":"","sources":["../../../src/pipeline/type-defs/packets.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,52 @@
1
+ /**
2
+ * Repo snapshot types — project state capture for drift detection.
3
+ */
4
+ import { z } from 'zod';
5
+ export declare const ConfigFileEntrySchema: z.ZodObject<{
6
+ path: z.ZodString;
7
+ type: z.ZodString;
8
+ content_hash: z.ZodString;
9
+ key_fields: z.ZodRecord<z.ZodString, z.ZodUnknown>;
10
+ }, z.core.$strip>;
11
+ export type ConfigFileEntry = z.infer<typeof ConfigFileEntrySchema>;
12
+ export declare const PortEntrySchema: z.ZodObject<{
13
+ port: z.ZodNumber;
14
+ service: z.ZodString;
15
+ source: z.ZodString;
16
+ }, z.core.$strip>;
17
+ export type PortEntry = z.infer<typeof PortEntrySchema>;
18
+ export declare const RepoSnapshotSchema: z.ZodObject<{
19
+ snapshot_id: z.ZodString;
20
+ timestamp: z.ZodString;
21
+ tree_summary: z.ZodString;
22
+ config_files: z.ZodArray<z.ZodObject<{
23
+ path: z.ZodString;
24
+ type: z.ZodString;
25
+ content_hash: z.ZodString;
26
+ key_fields: z.ZodRecord<z.ZodString, z.ZodUnknown>;
27
+ }, z.core.$strip>>;
28
+ languages_detected: z.ZodArray<z.ZodString>;
29
+ package_manager: z.ZodOptional<z.ZodString>;
30
+ scripts: z.ZodRecord<z.ZodString, z.ZodString>;
31
+ test_framework: z.ZodOptional<z.ZodString>;
32
+ build_tool: z.ZodOptional<z.ZodString>;
33
+ env_files: z.ZodArray<z.ZodString>;
34
+ migrations_present: z.ZodBoolean;
35
+ ports_entrypoints: z.ZodArray<z.ZodObject<{
36
+ port: z.ZodNumber;
37
+ service: z.ZodString;
38
+ source: z.ZodString;
39
+ }, z.core.$strip>>;
40
+ total_files: z.ZodNumber;
41
+ total_lines: z.ZodNumber;
42
+ }, z.core.$strip>;
43
+ export type RepoSnapshot = z.infer<typeof RepoSnapshotSchema>;
44
+ /** Diff between two snapshots for drift detection */
45
+ export interface SnapshotDiff {
46
+ files_added: string[];
47
+ files_removed: string[];
48
+ configs_changed: string[];
49
+ lines_delta: number;
50
+ has_drift: boolean;
51
+ }
52
+ //# sourceMappingURL=snapshot.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"snapshot.d.ts","sourceRoot":"","sources":["../../../src/pipeline/type-defs/snapshot.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,qBAAqB;;;;;iBAKhC,CAAC;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAIpE,eAAO,MAAM,eAAe;;;;iBAI1B,CAAC;AACH,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAIxD,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;iBAe7B,CAAC;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAI9D,qDAAqD;AACrD,MAAM,WAAW,YAAY;IAC3B,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,OAAO,CAAC;CACpB"}
@@ -0,0 +1,35 @@
1
+ /**
2
+ * Repo snapshot types — project state capture for drift detection.
3
+ */
4
+ import { z } from 'zod';
5
+ // ─── Config File Entry ───────────────────────────────────
6
+ export const ConfigFileEntrySchema = z.object({
7
+ path: z.string(),
8
+ type: z.string(),
9
+ content_hash: z.string(),
10
+ key_fields: z.record(z.string(), z.unknown()),
11
+ });
12
+ // ─── Port Entry ──────────────────────────────────────────
13
+ export const PortEntrySchema = z.object({
14
+ port: z.number().int(),
15
+ service: z.string(),
16
+ source: z.string(),
17
+ });
18
+ // ─── Repo Snapshot ───────────────────────────────────────
19
+ export const RepoSnapshotSchema = z.object({
20
+ snapshot_id: z.string(),
21
+ timestamp: z.string(),
22
+ tree_summary: z.string(),
23
+ config_files: z.array(ConfigFileEntrySchema),
24
+ languages_detected: z.array(z.string()),
25
+ package_manager: z.string().optional(),
26
+ scripts: z.record(z.string(), z.string()),
27
+ test_framework: z.string().optional(),
28
+ build_tool: z.string().optional(),
29
+ env_files: z.array(z.string()),
30
+ migrations_present: z.boolean(),
31
+ ports_entrypoints: z.array(PortEntrySchema),
32
+ total_files: z.number().int(),
33
+ total_lines: z.number().int(),
34
+ });
35
+ //# sourceMappingURL=snapshot.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"snapshot.js","sourceRoot":"","sources":["../../../src/pipeline/type-defs/snapshot.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,4DAA4D;AAE5D,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5C,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE;IACxB,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;CAC9C,CAAC,CAAC;AAGH,4DAA4D;AAE5D,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAC,MAAM,CAAC;IACtC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE;IACtB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;IACnB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;CACnB,CAAC,CAAC;AAGH,4DAA4D;AAE5D,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;IACvB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IACrB,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE;IACxB,YAAY,EAAE,CAAC,CAAC,KAAK,CAAC,qBAAqB,CAAC;IAC5C,kBAAkB,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IACvC,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACtC,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;IACzC,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACrC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACjC,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IAC9B,kBAAkB,EAAE,CAAC,CAAC,OAAO,EAAE;IAC/B,iBAAiB,EAAE,CAAC,CAAC,KAAK,CAAC,eAAe,CAAC;IAC3C,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE;IAC7B,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE;CAC9B,CAAC,CAAC"}
@@ -0,0 +1,449 @@
1
+ /**
2
+ * Pipeline state types — the core mutable state, gate definitions, gate results.
3
+ */
4
+ import { z } from 'zod';
5
+ import { type PipelinePhase, type PipelineRole } from './enums.js';
6
+ import { type ArtifactEntry } from './artifacts.js';
7
+ import { type GateCheckType } from './checks.js';
8
+ import type { ArtifactType } from './artifacts.js';
9
+ import type { ConsensusPacket } from './packets.js';
10
+ import type { RCAPacket } from './packets.js';
11
+ export declare const GateDefinitionSchema: z.ZodObject<{
12
+ phase: z.ZodEnum<{
13
+ INTAKE: "INTAKE";
14
+ CONSENSUS_MASTER_PLAN: "CONSENSUS_MASTER_PLAN";
15
+ ARCHITECTURE: "ARCHITECTURE";
16
+ CONSENSUS_ARCHITECTURE: "CONSENSUS_ARCHITECTURE";
17
+ ROLE_PLANNING: "ROLE_PLANNING";
18
+ CONSENSUS_ROLE_PLANS: "CONSENSUS_ROLE_PLANS";
19
+ IMPLEMENTATION: "IMPLEMENTATION";
20
+ QA_VALIDATION: "QA_VALIDATION";
21
+ REVIEW: "REVIEW";
22
+ AUDIT: "AUDIT";
23
+ PRODUCTION_GATE: "PRODUCTION_GATE";
24
+ RECOVERY_LOOP: "RECOVERY_LOOP";
25
+ DONE: "DONE";
26
+ STUCK: "STUCK";
27
+ }>;
28
+ requiredArtifacts: z.ZodArray<z.ZodEnum<{
29
+ consensus: "consensus";
30
+ arbitration: "arbitration";
31
+ master_plan: "master_plan";
32
+ architecture: "architecture";
33
+ role_plan: "role_plan";
34
+ audit_report: "audit_report";
35
+ rca_report: "rca_report";
36
+ production_readiness: "production_readiness";
37
+ release_notes: "release_notes";
38
+ deployment: "deployment";
39
+ rollback: "rollback";
40
+ repo_snapshot: "repo_snapshot";
41
+ build_check: "build_check";
42
+ test_check: "test_check";
43
+ lint_check: "lint_check";
44
+ typecheck_check: "typecheck_check";
45
+ placeholder_scan: "placeholder_scan";
46
+ qa_validation: "qa_validation";
47
+ review_decision: "review_decision";
48
+ stuck_report: "stuck_report";
49
+ journalist_trace: "journalist_trace";
50
+ resolved_commands: "resolved_commands";
51
+ constitution: "constitution";
52
+ change_request: "change_request";
53
+ }>>;
54
+ requiredChecks: z.ZodArray<z.ZodEnum<{
55
+ test: "test";
56
+ build: "build";
57
+ migration: "migration";
58
+ placeholder_scan: "placeholder_scan";
59
+ lint: "lint";
60
+ typecheck: "typecheck";
61
+ start: "start";
62
+ env_check: "env_check";
63
+ }>>;
64
+ consensusThreshold: z.ZodOptional<z.ZodNumber>;
65
+ minReviewers: z.ZodOptional<z.ZodNumber>;
66
+ allowedTransitions: z.ZodArray<z.ZodEnum<{
67
+ INTAKE: "INTAKE";
68
+ CONSENSUS_MASTER_PLAN: "CONSENSUS_MASTER_PLAN";
69
+ ARCHITECTURE: "ARCHITECTURE";
70
+ CONSENSUS_ARCHITECTURE: "CONSENSUS_ARCHITECTURE";
71
+ ROLE_PLANNING: "ROLE_PLANNING";
72
+ CONSENSUS_ROLE_PLANS: "CONSENSUS_ROLE_PLANS";
73
+ IMPLEMENTATION: "IMPLEMENTATION";
74
+ QA_VALIDATION: "QA_VALIDATION";
75
+ REVIEW: "REVIEW";
76
+ AUDIT: "AUDIT";
77
+ PRODUCTION_GATE: "PRODUCTION_GATE";
78
+ RECOVERY_LOOP: "RECOVERY_LOOP";
79
+ DONE: "DONE";
80
+ STUCK: "STUCK";
81
+ }>>;
82
+ failTransition: z.ZodEnum<{
83
+ INTAKE: "INTAKE";
84
+ CONSENSUS_MASTER_PLAN: "CONSENSUS_MASTER_PLAN";
85
+ ARCHITECTURE: "ARCHITECTURE";
86
+ CONSENSUS_ARCHITECTURE: "CONSENSUS_ARCHITECTURE";
87
+ ROLE_PLANNING: "ROLE_PLANNING";
88
+ CONSENSUS_ROLE_PLANS: "CONSENSUS_ROLE_PLANS";
89
+ IMPLEMENTATION: "IMPLEMENTATION";
90
+ QA_VALIDATION: "QA_VALIDATION";
91
+ REVIEW: "REVIEW";
92
+ AUDIT: "AUDIT";
93
+ PRODUCTION_GATE: "PRODUCTION_GATE";
94
+ RECOVERY_LOOP: "RECOVERY_LOOP";
95
+ DONE: "DONE";
96
+ STUCK: "STUCK";
97
+ }>;
98
+ }, z.core.$strip>;
99
+ export type GateDefinition = z.infer<typeof GateDefinitionSchema>;
100
+ /** Result of evaluating a gate */
101
+ export interface GateResult {
102
+ phase: PipelinePhase;
103
+ pass: boolean;
104
+ score?: number;
105
+ blockers: string[];
106
+ missingArtifacts: ArtifactType[];
107
+ failedChecks: GateCheckType[];
108
+ consensusScore?: number;
109
+ timestamp: string;
110
+ }
111
+ export interface SkillDefinition {
112
+ role: PipelineRole;
113
+ systemPrompt: string;
114
+ constraints: string[];
115
+ outputContract: string[];
116
+ requiredSections: string[];
117
+ }
118
+ export interface PhaseResult {
119
+ success: boolean;
120
+ phase: PipelinePhase;
121
+ artifacts: ArtifactEntry[];
122
+ errors?: string[];
123
+ /** For consensus phases: the consensus packet produced */
124
+ consensusPacket?: ConsensusPacket;
125
+ /** For recovery: the RCA packet produced */
126
+ rcaPacket?: RCAPacket;
127
+ }
128
+ /**
129
+ * Context passed to every phase handler.
130
+ * Defined as an interface so phase implementations can import it.
131
+ * The orchestrator constructs this before entering the phase loop.
132
+ */
133
+ export interface PhaseContext {
134
+ projectDir: string;
135
+ pipeline: PipelineState;
136
+ skillsDir?: string;
137
+ }
138
+ export declare const PipelineStateSchema: z.ZodObject<{
139
+ pipelinePhase: z.ZodEnum<{
140
+ INTAKE: "INTAKE";
141
+ CONSENSUS_MASTER_PLAN: "CONSENSUS_MASTER_PLAN";
142
+ ARCHITECTURE: "ARCHITECTURE";
143
+ CONSENSUS_ARCHITECTURE: "CONSENSUS_ARCHITECTURE";
144
+ ROLE_PLANNING: "ROLE_PLANNING";
145
+ CONSENSUS_ROLE_PLANS: "CONSENSUS_ROLE_PLANS";
146
+ IMPLEMENTATION: "IMPLEMENTATION";
147
+ QA_VALIDATION: "QA_VALIDATION";
148
+ REVIEW: "REVIEW";
149
+ AUDIT: "AUDIT";
150
+ PRODUCTION_GATE: "PRODUCTION_GATE";
151
+ RECOVERY_LOOP: "RECOVERY_LOOP";
152
+ DONE: "DONE";
153
+ STUCK: "STUCK";
154
+ }>;
155
+ artifacts: z.ZodArray<z.ZodObject<{
156
+ id: z.ZodString;
157
+ type: z.ZodEnum<{
158
+ consensus: "consensus";
159
+ arbitration: "arbitration";
160
+ master_plan: "master_plan";
161
+ architecture: "architecture";
162
+ role_plan: "role_plan";
163
+ audit_report: "audit_report";
164
+ rca_report: "rca_report";
165
+ production_readiness: "production_readiness";
166
+ release_notes: "release_notes";
167
+ deployment: "deployment";
168
+ rollback: "rollback";
169
+ repo_snapshot: "repo_snapshot";
170
+ build_check: "build_check";
171
+ test_check: "test_check";
172
+ lint_check: "lint_check";
173
+ typecheck_check: "typecheck_check";
174
+ placeholder_scan: "placeholder_scan";
175
+ qa_validation: "qa_validation";
176
+ review_decision: "review_decision";
177
+ stuck_report: "stuck_report";
178
+ journalist_trace: "journalist_trace";
179
+ resolved_commands: "resolved_commands";
180
+ constitution: "constitution";
181
+ change_request: "change_request";
182
+ }>;
183
+ phase: z.ZodEnum<{
184
+ INTAKE: "INTAKE";
185
+ CONSENSUS_MASTER_PLAN: "CONSENSUS_MASTER_PLAN";
186
+ ARCHITECTURE: "ARCHITECTURE";
187
+ CONSENSUS_ARCHITECTURE: "CONSENSUS_ARCHITECTURE";
188
+ ROLE_PLANNING: "ROLE_PLANNING";
189
+ CONSENSUS_ROLE_PLANS: "CONSENSUS_ROLE_PLANS";
190
+ IMPLEMENTATION: "IMPLEMENTATION";
191
+ QA_VALIDATION: "QA_VALIDATION";
192
+ REVIEW: "REVIEW";
193
+ AUDIT: "AUDIT";
194
+ PRODUCTION_GATE: "PRODUCTION_GATE";
195
+ RECOVERY_LOOP: "RECOVERY_LOOP";
196
+ DONE: "DONE";
197
+ STUCK: "STUCK";
198
+ }>;
199
+ version: z.ZodNumber;
200
+ path: z.ZodString;
201
+ sha256: z.ZodString;
202
+ timestamp: z.ZodString;
203
+ immutable: z.ZodLiteral<true>;
204
+ content_type: z.ZodEnum<{
205
+ markdown: "markdown";
206
+ json: "json";
207
+ }>;
208
+ group_id: z.ZodString;
209
+ previous_id: z.ZodOptional<z.ZodString>;
210
+ }, z.core.$strip>>;
211
+ recoveryCount: z.ZodNumber;
212
+ maxRecoveryIterations: z.ZodNumber;
213
+ gateResults: z.ZodRecord<z.ZodString, z.ZodObject<{
214
+ phase: z.ZodEnum<{
215
+ INTAKE: "INTAKE";
216
+ CONSENSUS_MASTER_PLAN: "CONSENSUS_MASTER_PLAN";
217
+ ARCHITECTURE: "ARCHITECTURE";
218
+ CONSENSUS_ARCHITECTURE: "CONSENSUS_ARCHITECTURE";
219
+ ROLE_PLANNING: "ROLE_PLANNING";
220
+ CONSENSUS_ROLE_PLANS: "CONSENSUS_ROLE_PLANS";
221
+ IMPLEMENTATION: "IMPLEMENTATION";
222
+ QA_VALIDATION: "QA_VALIDATION";
223
+ REVIEW: "REVIEW";
224
+ AUDIT: "AUDIT";
225
+ PRODUCTION_GATE: "PRODUCTION_GATE";
226
+ RECOVERY_LOOP: "RECOVERY_LOOP";
227
+ DONE: "DONE";
228
+ STUCK: "STUCK";
229
+ }>;
230
+ pass: z.ZodBoolean;
231
+ score: z.ZodOptional<z.ZodNumber>;
232
+ blockers: z.ZodArray<z.ZodString>;
233
+ missingArtifacts: z.ZodArray<z.ZodEnum<{
234
+ consensus: "consensus";
235
+ arbitration: "arbitration";
236
+ master_plan: "master_plan";
237
+ architecture: "architecture";
238
+ role_plan: "role_plan";
239
+ audit_report: "audit_report";
240
+ rca_report: "rca_report";
241
+ production_readiness: "production_readiness";
242
+ release_notes: "release_notes";
243
+ deployment: "deployment";
244
+ rollback: "rollback";
245
+ repo_snapshot: "repo_snapshot";
246
+ build_check: "build_check";
247
+ test_check: "test_check";
248
+ lint_check: "lint_check";
249
+ typecheck_check: "typecheck_check";
250
+ placeholder_scan: "placeholder_scan";
251
+ qa_validation: "qa_validation";
252
+ review_decision: "review_decision";
253
+ stuck_report: "stuck_report";
254
+ journalist_trace: "journalist_trace";
255
+ resolved_commands: "resolved_commands";
256
+ constitution: "constitution";
257
+ change_request: "change_request";
258
+ }>>;
259
+ failedChecks: z.ZodArray<z.ZodEnum<{
260
+ test: "test";
261
+ build: "build";
262
+ migration: "migration";
263
+ placeholder_scan: "placeholder_scan";
264
+ lint: "lint";
265
+ typecheck: "typecheck";
266
+ start: "start";
267
+ env_check: "env_check";
268
+ }>>;
269
+ consensusScore: z.ZodOptional<z.ZodNumber>;
270
+ timestamp: z.ZodString;
271
+ }, z.core.$strip>>;
272
+ gateChecks: z.ZodRecord<z.ZodString, z.ZodArray<z.ZodObject<{
273
+ check_type: z.ZodEnum<{
274
+ test: "test";
275
+ build: "build";
276
+ migration: "migration";
277
+ placeholder_scan: "placeholder_scan";
278
+ lint: "lint";
279
+ typecheck: "typecheck";
280
+ start: "start";
281
+ env_check: "env_check";
282
+ }>;
283
+ status: z.ZodEnum<{
284
+ fail: "fail";
285
+ pass: "pass";
286
+ skip: "skip";
287
+ }>;
288
+ command: z.ZodString;
289
+ exit_code: z.ZodNumber;
290
+ stdout_artifact: z.ZodOptional<z.ZodObject<{
291
+ artifact_id: z.ZodString;
292
+ path: z.ZodString;
293
+ sha256: z.ZodString;
294
+ version: z.ZodNumber;
295
+ type: z.ZodEnum<{
296
+ consensus: "consensus";
297
+ arbitration: "arbitration";
298
+ master_plan: "master_plan";
299
+ architecture: "architecture";
300
+ role_plan: "role_plan";
301
+ audit_report: "audit_report";
302
+ rca_report: "rca_report";
303
+ production_readiness: "production_readiness";
304
+ release_notes: "release_notes";
305
+ deployment: "deployment";
306
+ rollback: "rollback";
307
+ repo_snapshot: "repo_snapshot";
308
+ build_check: "build_check";
309
+ test_check: "test_check";
310
+ lint_check: "lint_check";
311
+ typecheck_check: "typecheck_check";
312
+ placeholder_scan: "placeholder_scan";
313
+ qa_validation: "qa_validation";
314
+ review_decision: "review_decision";
315
+ stuck_report: "stuck_report";
316
+ journalist_trace: "journalist_trace";
317
+ resolved_commands: "resolved_commands";
318
+ constitution: "constitution";
319
+ change_request: "change_request";
320
+ }>;
321
+ }, z.core.$strip>>;
322
+ stderr_summary: z.ZodOptional<z.ZodString>;
323
+ duration_ms: z.ZodNumber;
324
+ timestamp: z.ZodString;
325
+ }, z.core.$strip>>>;
326
+ activeRoles: z.ZodArray<z.ZodEnum<{
327
+ DISPATCHER: "DISPATCHER";
328
+ ARCHITECT: "ARCHITECT";
329
+ DB_EXPERT: "DB_EXPERT";
330
+ BACKEND_PROGRAMMER: "BACKEND_PROGRAMMER";
331
+ FRONTEND_PROGRAMMER: "FRONTEND_PROGRAMMER";
332
+ WEBSITE_PROGRAMMER: "WEBSITE_PROGRAMMER";
333
+ QA_TESTER: "QA_TESTER";
334
+ REVIEWER: "REVIEWER";
335
+ ARBITRATOR: "ARBITRATOR";
336
+ DEBUGGER: "DEBUGGER";
337
+ AUDITOR: "AUDITOR";
338
+ JOURNALIST: "JOURNALIST";
339
+ RELEASE_MANAGER: "RELEASE_MANAGER";
340
+ MARKETING_EXPERT: "MARKETING_EXPERT";
341
+ SOCIAL_EXPERT: "SOCIAL_EXPERT";
342
+ UI_UX_SPECIALIST: "UI_UX_SPECIALIST";
343
+ }>>;
344
+ constitutionHash: z.ZodString;
345
+ latestRepoSnapshot: z.ZodOptional<z.ZodObject<{
346
+ artifact_id: z.ZodString;
347
+ path: z.ZodString;
348
+ sha256: z.ZodString;
349
+ version: z.ZodNumber;
350
+ type: z.ZodEnum<{
351
+ consensus: "consensus";
352
+ arbitration: "arbitration";
353
+ master_plan: "master_plan";
354
+ architecture: "architecture";
355
+ role_plan: "role_plan";
356
+ audit_report: "audit_report";
357
+ rca_report: "rca_report";
358
+ production_readiness: "production_readiness";
359
+ release_notes: "release_notes";
360
+ deployment: "deployment";
361
+ rollback: "rollback";
362
+ repo_snapshot: "repo_snapshot";
363
+ build_check: "build_check";
364
+ test_check: "test_check";
365
+ lint_check: "lint_check";
366
+ typecheck_check: "typecheck_check";
367
+ placeholder_scan: "placeholder_scan";
368
+ qa_validation: "qa_validation";
369
+ review_decision: "review_decision";
370
+ stuck_report: "stuck_report";
371
+ journalist_trace: "journalist_trace";
372
+ resolved_commands: "resolved_commands";
373
+ constitution: "constitution";
374
+ change_request: "change_request";
375
+ }>;
376
+ }, z.core.$strip>>;
377
+ resolvedCommands: z.ZodOptional<z.ZodObject<{
378
+ build: z.ZodOptional<z.ZodString>;
379
+ test: z.ZodOptional<z.ZodString>;
380
+ lint: z.ZodOptional<z.ZodString>;
381
+ typecheck: z.ZodOptional<z.ZodString>;
382
+ migrations: z.ZodOptional<z.ZodString>;
383
+ start: z.ZodOptional<z.ZodString>;
384
+ resolved_from: z.ZodString;
385
+ }, z.core.$strip>>;
386
+ failedPhase: z.ZodOptional<z.ZodEnum<{
387
+ INTAKE: "INTAKE";
388
+ CONSENSUS_MASTER_PLAN: "CONSENSUS_MASTER_PLAN";
389
+ ARCHITECTURE: "ARCHITECTURE";
390
+ CONSENSUS_ARCHITECTURE: "CONSENSUS_ARCHITECTURE";
391
+ ROLE_PLANNING: "ROLE_PLANNING";
392
+ CONSENSUS_ROLE_PLANS: "CONSENSUS_ROLE_PLANS";
393
+ IMPLEMENTATION: "IMPLEMENTATION";
394
+ QA_VALIDATION: "QA_VALIDATION";
395
+ REVIEW: "REVIEW";
396
+ AUDIT: "AUDIT";
397
+ PRODUCTION_GATE: "PRODUCTION_GATE";
398
+ RECOVERY_LOOP: "RECOVERY_LOOP";
399
+ DONE: "DONE";
400
+ STUCK: "STUCK";
401
+ }>>;
402
+ pendingChangeRequests: z.ZodOptional<z.ZodArray<z.ZodObject<{
403
+ cr_id: z.ZodString;
404
+ change_type: z.ZodEnum<{
405
+ scope: "scope";
406
+ config: "config";
407
+ architecture: "architecture";
408
+ dependency: "dependency";
409
+ requirement: "requirement";
410
+ }>;
411
+ target_phase: z.ZodEnum<{
412
+ INTAKE: "INTAKE";
413
+ CONSENSUS_MASTER_PLAN: "CONSENSUS_MASTER_PLAN";
414
+ ARCHITECTURE: "ARCHITECTURE";
415
+ CONSENSUS_ARCHITECTURE: "CONSENSUS_ARCHITECTURE";
416
+ ROLE_PLANNING: "ROLE_PLANNING";
417
+ CONSENSUS_ROLE_PLANS: "CONSENSUS_ROLE_PLANS";
418
+ IMPLEMENTATION: "IMPLEMENTATION";
419
+ QA_VALIDATION: "QA_VALIDATION";
420
+ REVIEW: "REVIEW";
421
+ AUDIT: "AUDIT";
422
+ PRODUCTION_GATE: "PRODUCTION_GATE";
423
+ RECOVERY_LOOP: "RECOVERY_LOOP";
424
+ DONE: "DONE";
425
+ STUCK: "STUCK";
426
+ }>;
427
+ status: z.ZodEnum<{
428
+ approved: "approved";
429
+ proposed: "proposed";
430
+ rejected: "rejected";
431
+ }>;
432
+ }, z.core.$strip>>>;
433
+ }, z.core.$strip>;
434
+ export type PipelineState = z.infer<typeof PipelineStateSchema>;
435
+ export interface PipelineResult {
436
+ finalPhase: PipelinePhase;
437
+ success: boolean;
438
+ artifacts: ArtifactEntry[];
439
+ recoveryIterations: number;
440
+ error?: string;
441
+ }
442
+ export type ConsensusMode = 'independent' | 'iterative';
443
+ /**
444
+ * Maps pipeline phases to the legacy 3-phase WorkflowPhase.
445
+ * Used for backward compatibility with existing state/UI code.
446
+ */
447
+ export declare function toLegacyPhase(phase: PipelinePhase): 'plan' | 'execution' | 'complete';
448
+ export declare function createDefaultPipelineState(): PipelineState;
449
+ //# sourceMappingURL=state.d.ts.map