@guyghost/swarm-dao-core 0.1.4 → 0.3.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 (103) hide show
  1. package/dist/config.d.ts.map +1 -1
  2. package/dist/config.js +3 -1
  3. package/dist/config.js.map +1 -1
  4. package/dist/control/gates.js +4 -4
  5. package/dist/control/gates.js.map +1 -1
  6. package/dist/delivery/artefacts.d.ts.map +1 -1
  7. package/dist/delivery/artefacts.js +4 -3
  8. package/dist/delivery/artefacts.js.map +1 -1
  9. package/dist/delivery/dry-run.d.ts.map +1 -1
  10. package/dist/delivery/dry-run.js +14 -17
  11. package/dist/delivery/dry-run.js.map +1 -1
  12. package/dist/delivery/plans.d.ts.map +1 -1
  13. package/dist/delivery/plans.js +19 -7
  14. package/dist/delivery/plans.js.map +1 -1
  15. package/dist/governance/agents.d.ts +4 -0
  16. package/dist/governance/agents.d.ts.map +1 -1
  17. package/dist/governance/agents.js +86 -1
  18. package/dist/governance/agents.js.map +1 -1
  19. package/dist/governance/index.d.ts +2 -0
  20. package/dist/governance/index.d.ts.map +1 -1
  21. package/dist/governance/index.js +2 -0
  22. package/dist/governance/index.js.map +1 -1
  23. package/dist/governance/lifecycle.js +5 -5
  24. package/dist/governance/lifecycle.js.map +1 -1
  25. package/dist/governance/proposal.machine.d.ts +131 -0
  26. package/dist/governance/proposal.machine.d.ts.map +1 -0
  27. package/dist/governance/proposal.machine.js +378 -0
  28. package/dist/governance/proposal.machine.js.map +1 -0
  29. package/dist/governance/proposal.utils.d.ts +166 -0
  30. package/dist/governance/proposal.utils.d.ts.map +1 -0
  31. package/dist/governance/proposal.utils.js +126 -0
  32. package/dist/governance/proposal.utils.js.map +1 -0
  33. package/dist/host-tools/github-config.d.ts +7 -0
  34. package/dist/host-tools/github-config.d.ts.map +1 -0
  35. package/dist/host-tools/github-config.js +33 -0
  36. package/dist/host-tools/github-config.js.map +1 -0
  37. package/dist/host-tools/handlers.d.ts +87 -0
  38. package/dist/host-tools/handlers.d.ts.map +1 -0
  39. package/dist/host-tools/handlers.js +548 -0
  40. package/dist/host-tools/handlers.js.map +1 -0
  41. package/dist/host-tools/index.d.ts +5 -0
  42. package/dist/host-tools/index.d.ts.map +1 -0
  43. package/dist/host-tools/index.js +5 -0
  44. package/dist/host-tools/index.js.map +1 -0
  45. package/dist/host-tools/messages.d.ts +6 -0
  46. package/dist/host-tools/messages.d.ts.map +1 -0
  47. package/dist/host-tools/messages.js +37 -0
  48. package/dist/host-tools/messages.js.map +1 -0
  49. package/dist/host-tools/utils.d.ts +3 -0
  50. package/dist/host-tools/utils.d.ts.map +1 -0
  51. package/dist/host-tools/utils.js +29 -0
  52. package/dist/host-tools/utils.js.map +1 -0
  53. package/dist/index.d.ts +2 -0
  54. package/dist/index.d.ts.map +1 -1
  55. package/dist/index.js +3 -0
  56. package/dist/index.js.map +1 -1
  57. package/dist/integrations/bitbucket.d.ts.map +1 -1
  58. package/dist/integrations/bitbucket.js +9 -2
  59. package/dist/integrations/bitbucket.js.map +1 -1
  60. package/dist/integrations/github.d.ts.map +1 -1
  61. package/dist/integrations/github.js +9 -2
  62. package/dist/integrations/github.js.map +1 -1
  63. package/dist/integrations/gitlab.d.ts.map +1 -1
  64. package/dist/integrations/gitlab.js +9 -2
  65. package/dist/integrations/gitlab.js.map +1 -1
  66. package/dist/intelligence/index.d.ts +1 -0
  67. package/dist/intelligence/index.d.ts.map +1 -1
  68. package/dist/intelligence/index.js +1 -0
  69. package/dist/intelligence/index.js.map +1 -1
  70. package/dist/intelligence/model.d.ts +17 -0
  71. package/dist/intelligence/model.d.ts.map +1 -0
  72. package/dist/intelligence/model.js +41 -0
  73. package/dist/intelligence/model.js.map +1 -0
  74. package/dist/intelligence/roundtable.d.ts +2 -1
  75. package/dist/intelligence/roundtable.d.ts.map +1 -1
  76. package/dist/intelligence/roundtable.js +5 -3
  77. package/dist/intelligence/roundtable.js.map +1 -1
  78. package/dist/intelligence/swarm.d.ts +9 -3
  79. package/dist/intelligence/swarm.d.ts.map +1 -1
  80. package/dist/intelligence/swarm.js +24 -12
  81. package/dist/intelligence/swarm.js.map +1 -1
  82. package/dist/observability/index.d.ts +1 -0
  83. package/dist/observability/index.d.ts.map +1 -1
  84. package/dist/observability/index.js +1 -0
  85. package/dist/observability/index.js.map +1 -1
  86. package/dist/observability/logging.d.ts +14 -0
  87. package/dist/observability/logging.d.ts.map +1 -0
  88. package/dist/observability/logging.js +38 -0
  89. package/dist/observability/logging.js.map +1 -0
  90. package/dist/persistence.d.ts.map +1 -1
  91. package/dist/persistence.js +70 -40
  92. package/dist/persistence.js.map +1 -1
  93. package/dist/types/index.d.ts +11 -1
  94. package/dist/types/index.d.ts.map +1 -1
  95. package/dist/types/index.js +24 -22
  96. package/dist/types/index.js.map +1 -1
  97. package/dist/utils/host.js +2 -2
  98. package/dist/utils/host.js.map +1 -1
  99. package/dist/utils/security.d.ts +7 -0
  100. package/dist/utils/security.d.ts.map +1 -0
  101. package/dist/utils/security.js +32 -0
  102. package/dist/utils/security.js.map +1 -0
  103. package/package.json +8 -3
@@ -1 +1 @@
1
- {"version":3,"file":"lifecycle.js","sourceRoot":"","sources":["../../src/governance/lifecycle.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lifecycle.js","sourceRoot":"","sources":["../../src/governance/lifecycle.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,131 @@
1
+ import type { PipelineStage, Proposal, ProposalStatus, RiskZone } from "../types/index.js";
2
+ export interface ProposalContext {
3
+ proposal: Proposal;
4
+ stage: PipelineStage;
5
+ status: ProposalStatus;
6
+ riskZone?: RiskZone;
7
+ deliberationCount: number;
8
+ retryCount: number;
9
+ errorMessage?: string;
10
+ lastTransitionTime: string;
11
+ }
12
+ export interface ProposalMachineInput {
13
+ proposal: Proposal;
14
+ stage?: PipelineStage;
15
+ status?: ProposalStatus;
16
+ riskZone?: RiskZone;
17
+ deliberationCount?: number;
18
+ retryCount?: number;
19
+ errorMessage?: string;
20
+ lastTransitionTime?: string;
21
+ }
22
+ export type ProposalEvent = {
23
+ type: "SUBMIT";
24
+ } | {
25
+ type: "QUALIFY";
26
+ } | {
27
+ type: "ANALYZE";
28
+ } | {
29
+ type: "CRITIQUE";
30
+ } | {
31
+ type: "SCORE";
32
+ } | {
33
+ type: "SEND_TO_COUNCIL";
34
+ } | {
35
+ type: "VOTE";
36
+ } | {
37
+ type: "APPROVE";
38
+ } | {
39
+ type: "REJECT";
40
+ } | {
41
+ type: "REQUEST_SPEC";
42
+ } | {
43
+ type: "REVIEW_SPEC";
44
+ } | {
45
+ type: "APPROVE_SPEC";
46
+ } | {
47
+ type: "EXECUTION_GATE_PASS";
48
+ } | {
49
+ type: "EXECUTION_GATE_FAIL";
50
+ } | {
51
+ type: "EXECUTE";
52
+ } | {
53
+ type: "EXECUTION_SUCCESS";
54
+ } | {
55
+ type: "EXECUTION_FAILED";
56
+ } | {
57
+ type: "POSTMORTEM";
58
+ } | {
59
+ type: "RETRY";
60
+ } | {
61
+ type: "DISCARD";
62
+ } | {
63
+ type: "ERROR";
64
+ message: string;
65
+ };
66
+ export declare const proposalMachine: import("xstate").StateMachine<ProposalContext, {
67
+ type: "SUBMIT";
68
+ } | {
69
+ type: "QUALIFY";
70
+ } | {
71
+ type: "ANALYZE";
72
+ } | {
73
+ type: "CRITIQUE";
74
+ } | {
75
+ type: "SCORE";
76
+ } | {
77
+ type: "SEND_TO_COUNCIL";
78
+ } | {
79
+ type: "VOTE";
80
+ } | {
81
+ type: "APPROVE";
82
+ } | {
83
+ type: "REJECT";
84
+ } | {
85
+ type: "REQUEST_SPEC";
86
+ } | {
87
+ type: "REVIEW_SPEC";
88
+ } | {
89
+ type: "APPROVE_SPEC";
90
+ } | {
91
+ type: "EXECUTION_GATE_PASS";
92
+ } | {
93
+ type: "EXECUTION_GATE_FAIL";
94
+ } | {
95
+ type: "EXECUTE";
96
+ } | {
97
+ type: "EXECUTION_SUCCESS";
98
+ } | {
99
+ type: "EXECUTION_FAILED";
100
+ } | {
101
+ type: "POSTMORTEM";
102
+ } | {
103
+ type: "RETRY";
104
+ } | {
105
+ type: "DISCARD";
106
+ } | {
107
+ type: "ERROR";
108
+ message: string;
109
+ }, {}, never, never, never, never, "intake" | "qualification" | "analysis" | "critique" | "scoring" | "council" | "postmortem" | "rejected" | "draft" | "voting" | "specDraft" | "specReview" | "executionGate" | "executing" | "executionError" | "completed", string, ProposalMachineInput, import("xstate").NonReducibleUnknown, import("xstate").EventObject, import("xstate").MetaObject, {
110
+ id: "proposalLifecycle";
111
+ states: {
112
+ readonly draft: {};
113
+ readonly intake: {};
114
+ readonly qualification: {};
115
+ readonly analysis: {};
116
+ readonly critique: {};
117
+ readonly scoring: {};
118
+ readonly council: {};
119
+ readonly voting: {};
120
+ readonly specDraft: {};
121
+ readonly specReview: {};
122
+ readonly executionGate: {};
123
+ readonly executing: {};
124
+ readonly executionError: {};
125
+ readonly postmortem: {};
126
+ readonly rejected: {};
127
+ readonly completed: {};
128
+ };
129
+ }>;
130
+ export type ProposalMachine = typeof proposalMachine;
131
+ //# sourceMappingURL=proposal.machine.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"proposal.machine.d.ts","sourceRoot":"","sources":["../../src/governance/proposal.machine.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAM3F,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,QAAQ,CAAC;IACnB,KAAK,EAAE,aAAa,CAAC;IACrB,MAAM,EAAE,cAAc,CAAC;IACvB,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kBAAkB,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,QAAQ,CAAC;IACnB,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,MAAM,CAAC,EAAE,cAAc,CAAC;IACxB,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,MAAM,aAAa,GACrB;IAAE,IAAI,EAAE,QAAQ,CAAA;CAAE,GAClB;IAAE,IAAI,EAAE,SAAS,CAAA;CAAE,GACnB;IAAE,IAAI,EAAE,SAAS,CAAA;CAAE,GACnB;IAAE,IAAI,EAAE,UAAU,CAAA;CAAE,GACpB;IAAE,IAAI,EAAE,OAAO,CAAA;CAAE,GACjB;IAAE,IAAI,EAAE,iBAAiB,CAAA;CAAE,GAC3B;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAChB;IAAE,IAAI,EAAE,SAAS,CAAA;CAAE,GACnB;IAAE,IAAI,EAAE,QAAQ,CAAA;CAAE,GAClB;IAAE,IAAI,EAAE,cAAc,CAAA;CAAE,GACxB;IAAE,IAAI,EAAE,aAAa,CAAA;CAAE,GACvB;IAAE,IAAI,EAAE,cAAc,CAAA;CAAE,GACxB;IAAE,IAAI,EAAE,qBAAqB,CAAA;CAAE,GAC/B;IAAE,IAAI,EAAE,qBAAqB,CAAA;CAAE,GAC/B;IAAE,IAAI,EAAE,SAAS,CAAA;CAAE,GACnB;IAAE,IAAI,EAAE,mBAAmB,CAAA;CAAE,GAC7B;IAAE,IAAI,EAAE,kBAAkB,CAAA;CAAE,GAC5B;IAAE,IAAI,EAAE,YAAY,CAAA;CAAE,GACtB;IAAE,IAAI,EAAE,OAAO,CAAA;CAAE,GACjB;IAAE,IAAI,EAAE,SAAS,CAAA;CAAE,GACnB;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAMvC,eAAO,MAAM,eAAe;UA1BhB,QAAQ;;UACR,SAAS;;UACT,SAAS;;UACT,UAAU;;UACV,OAAO;;UACP,iBAAiB;;UACjB,MAAM;;UACN,SAAS;;UACT,QAAQ;;UACR,cAAc;;UACd,aAAa;;UACb,cAAc;;UACd,qBAAqB;;UACrB,qBAAqB;;UACrB,SAAS;;UACT,mBAAmB;;UACnB,kBAAkB;;UAClB,YAAY;;UACZ,OAAO;;UACP,SAAS;;UACT,OAAO;aAAW,MAAM;;;;;;;;;;;;;;;;;;;;;EA2YlC,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG,OAAO,eAAe,CAAC"}
@@ -0,0 +1,378 @@
1
+ import { assign, setup } from "xstate";
2
+ // ============================================================
3
+ // XState Machine Definition
4
+ // ============================================================
5
+ export const proposalMachine = setup({
6
+ types: {
7
+ context: {},
8
+ input: {},
9
+ events: {},
10
+ },
11
+ }).createMachine({
12
+ id: "proposalLifecycle",
13
+ initial: "draft",
14
+ context: ({ input }) => ({
15
+ proposal: input.proposal,
16
+ stage: input.stage ?? "intake",
17
+ status: input.status ?? "open",
18
+ riskZone: input.riskZone,
19
+ deliberationCount: input.deliberationCount ?? 0,
20
+ retryCount: input.retryCount ?? 0,
21
+ errorMessage: input.errorMessage,
22
+ lastTransitionTime: input.lastTransitionTime ?? new Date().toISOString(),
23
+ }),
24
+ on: {
25
+ DISCARD: {
26
+ target: ".rejected",
27
+ actions: assign({
28
+ status: "rejected",
29
+ lastTransitionTime: () => new Date().toISOString(),
30
+ }),
31
+ },
32
+ ERROR: {
33
+ target: ".executionError",
34
+ actions: assign({
35
+ status: "failed",
36
+ errorMessage: ({ event }) => event.message,
37
+ lastTransitionTime: () => new Date().toISOString(),
38
+ }),
39
+ },
40
+ },
41
+ states: {
42
+ // ───────────────────────────────────────────────────────
43
+ // INTAKE PHASE
44
+ // ───────────────────────────────────────────────────────
45
+ draft: {
46
+ on: {
47
+ SUBMIT: {
48
+ target: "intake",
49
+ actions: assign({
50
+ status: "open",
51
+ stage: "intake",
52
+ lastTransitionTime: () => new Date().toISOString(),
53
+ }),
54
+ },
55
+ },
56
+ },
57
+ intake: {
58
+ on: {
59
+ QUALIFY: {
60
+ target: "qualification",
61
+ actions: assign({
62
+ status: "open",
63
+ stage: "qualification",
64
+ lastTransitionTime: () => new Date().toISOString(),
65
+ }),
66
+ },
67
+ REJECT: {
68
+ target: "rejected",
69
+ actions: assign({
70
+ status: "rejected",
71
+ stage: "council",
72
+ lastTransitionTime: () => new Date().toISOString(),
73
+ }),
74
+ },
75
+ },
76
+ },
77
+ // ───────────────────────────────────────────────────────
78
+ // QUALIFICATION PHASE
79
+ // ───────────────────────────────────────────────────────
80
+ qualification: {
81
+ on: {
82
+ ANALYZE: {
83
+ target: "analysis",
84
+ actions: assign({
85
+ status: "open",
86
+ stage: "analysis",
87
+ lastTransitionTime: () => new Date().toISOString(),
88
+ }),
89
+ },
90
+ REJECT: {
91
+ target: "rejected",
92
+ actions: assign({
93
+ status: "rejected",
94
+ stage: "council",
95
+ lastTransitionTime: () => new Date().toISOString(),
96
+ }),
97
+ },
98
+ },
99
+ },
100
+ // ───────────────────────────────────────────────────────
101
+ // ANALYSIS PHASE
102
+ // ───────────────────────────────────────────────────────
103
+ analysis: {
104
+ on: {
105
+ CRITIQUE: {
106
+ target: "critique",
107
+ actions: assign({
108
+ status: "deliberating",
109
+ stage: "critique",
110
+ deliberationCount: ({ context }) => context.deliberationCount + 1,
111
+ lastTransitionTime: () => new Date().toISOString(),
112
+ }),
113
+ },
114
+ REJECT: {
115
+ target: "rejected",
116
+ actions: assign({
117
+ status: "rejected",
118
+ stage: "council",
119
+ lastTransitionTime: () => new Date().toISOString(),
120
+ }),
121
+ },
122
+ },
123
+ },
124
+ // ───────────────────────────────────────────────────────
125
+ // CRITIQUE PHASE
126
+ // ───────────────────────────────────────────────────────
127
+ critique: {
128
+ on: {
129
+ SCORE: {
130
+ target: "scoring",
131
+ actions: assign({
132
+ status: "deliberating",
133
+ stage: "scoring",
134
+ deliberationCount: ({ context }) => context.deliberationCount + 1,
135
+ lastTransitionTime: () => new Date().toISOString(),
136
+ }),
137
+ },
138
+ REJECT: {
139
+ target: "rejected",
140
+ actions: assign({
141
+ status: "rejected",
142
+ stage: "council",
143
+ lastTransitionTime: () => new Date().toISOString(),
144
+ }),
145
+ },
146
+ },
147
+ },
148
+ // ───────────────────────────────────────────────────────
149
+ // SCORING PHASE
150
+ // ───────────────────────────────────────────────────────
151
+ scoring: {
152
+ on: {
153
+ SEND_TO_COUNCIL: {
154
+ target: "council",
155
+ actions: assign({
156
+ status: "deliberating",
157
+ stage: "council",
158
+ deliberationCount: ({ context }) => context.deliberationCount + 1,
159
+ lastTransitionTime: () => new Date().toISOString(),
160
+ }),
161
+ },
162
+ REJECT: {
163
+ target: "rejected",
164
+ actions: assign({
165
+ status: "rejected",
166
+ stage: "council",
167
+ lastTransitionTime: () => new Date().toISOString(),
168
+ }),
169
+ },
170
+ },
171
+ },
172
+ // ───────────────────────────────────────────────────────
173
+ // COUNCIL PHASE
174
+ // ───────────────────────────────────────────────────────
175
+ council: {
176
+ on: {
177
+ VOTE: {
178
+ target: "voting",
179
+ actions: assign({
180
+ status: "deliberating",
181
+ stage: "vote",
182
+ lastTransitionTime: () => new Date().toISOString(),
183
+ }),
184
+ },
185
+ REJECT: {
186
+ target: "rejected",
187
+ actions: assign({
188
+ status: "rejected",
189
+ stage: "council",
190
+ lastTransitionTime: () => new Date().toISOString(),
191
+ }),
192
+ },
193
+ },
194
+ },
195
+ // ───────────────────────────────────────────────────────
196
+ // VOTING PHASE
197
+ // ───────────────────────────────────────────────────────
198
+ voting: {
199
+ on: {
200
+ APPROVE: {
201
+ target: "specDraft",
202
+ actions: assign({
203
+ status: "approved",
204
+ stage: "spec",
205
+ retryCount: 0,
206
+ lastTransitionTime: () => new Date().toISOString(),
207
+ }),
208
+ },
209
+ REJECT: {
210
+ target: "rejected",
211
+ actions: assign({
212
+ status: "rejected",
213
+ stage: "council",
214
+ lastTransitionTime: () => new Date().toISOString(),
215
+ }),
216
+ },
217
+ },
218
+ },
219
+ // ───────────────────────────────────────────────────────
220
+ // SPECIFICATION PHASE
221
+ // ───────────────────────────────────────────────────────
222
+ specDraft: {
223
+ on: {
224
+ REQUEST_SPEC: {
225
+ target: "specReview",
226
+ actions: assign({
227
+ status: "approved",
228
+ stage: "spec",
229
+ lastTransitionTime: () => new Date().toISOString(),
230
+ }),
231
+ },
232
+ REVIEW_SPEC: {
233
+ target: "specReview",
234
+ actions: assign({
235
+ status: "approved",
236
+ stage: "spec",
237
+ lastTransitionTime: () => new Date().toISOString(),
238
+ }),
239
+ },
240
+ REJECT: {
241
+ target: "rejected",
242
+ actions: assign({
243
+ status: "rejected",
244
+ stage: "council",
245
+ lastTransitionTime: () => new Date().toISOString(),
246
+ }),
247
+ },
248
+ },
249
+ },
250
+ specReview: {
251
+ on: {
252
+ APPROVE_SPEC: {
253
+ target: "executionGate",
254
+ actions: assign({
255
+ status: "approved",
256
+ stage: "spec",
257
+ lastTransitionTime: () => new Date().toISOString(),
258
+ }),
259
+ },
260
+ REQUEST_SPEC: {
261
+ target: "specDraft",
262
+ actions: assign({
263
+ status: "approved",
264
+ stage: "spec",
265
+ lastTransitionTime: () => new Date().toISOString(),
266
+ }),
267
+ },
268
+ REJECT: {
269
+ target: "rejected",
270
+ actions: assign({
271
+ status: "rejected",
272
+ stage: "council",
273
+ lastTransitionTime: () => new Date().toISOString(),
274
+ }),
275
+ },
276
+ },
277
+ },
278
+ // ───────────────────────────────────────────────────────
279
+ // EXECUTION GATE PHASE
280
+ // ───────────────────────────────────────────────────────
281
+ executionGate: {
282
+ on: {
283
+ EXECUTION_GATE_PASS: {
284
+ target: "executing",
285
+ actions: assign({
286
+ status: "controlled",
287
+ stage: "execution-gate",
288
+ lastTransitionTime: () => new Date().toISOString(),
289
+ }),
290
+ },
291
+ EXECUTE: {
292
+ target: "executing",
293
+ actions: assign({
294
+ status: "controlled",
295
+ stage: "execution-gate",
296
+ lastTransitionTime: () => new Date().toISOString(),
297
+ }),
298
+ },
299
+ EXECUTION_GATE_FAIL: {
300
+ target: "rejected",
301
+ actions: assign({
302
+ status: "rejected",
303
+ stage: "execution-gate",
304
+ lastTransitionTime: () => new Date().toISOString(),
305
+ }),
306
+ },
307
+ },
308
+ },
309
+ // ───────────────────────────────────────────────────────
310
+ // EXECUTION PHASE
311
+ // ───────────────────────────────────────────────────────
312
+ executing: {
313
+ on: {
314
+ EXECUTION_SUCCESS: {
315
+ target: "postmortem",
316
+ actions: assign({
317
+ status: "executed",
318
+ stage: "postmortem",
319
+ retryCount: 0,
320
+ lastTransitionTime: () => new Date().toISOString(),
321
+ }),
322
+ },
323
+ EXECUTION_FAILED: {
324
+ target: "executionError",
325
+ actions: assign({
326
+ errorMessage: "Execution failed",
327
+ lastTransitionTime: () => new Date().toISOString(),
328
+ }),
329
+ },
330
+ },
331
+ },
332
+ executionError: {
333
+ on: {
334
+ RETRY: [
335
+ {
336
+ target: "executing",
337
+ guard: ({ context }) => context.retryCount < 3,
338
+ actions: assign({
339
+ retryCount: ({ context }) => context.retryCount + 1,
340
+ lastTransitionTime: () => new Date().toISOString(),
341
+ }),
342
+ },
343
+ ],
344
+ EXECUTION_FAILED: {
345
+ target: "postmortem",
346
+ actions: assign({
347
+ status: "failed",
348
+ stage: "postmortem",
349
+ lastTransitionTime: () => new Date().toISOString(),
350
+ }),
351
+ },
352
+ },
353
+ },
354
+ // ───────────────────────────────────────────────────────
355
+ // POSTMORTEM PHASE
356
+ // ───────────────────────────────────────────────────────
357
+ postmortem: {
358
+ on: {
359
+ POSTMORTEM: {
360
+ target: "completed",
361
+ actions: assign({
362
+ lastTransitionTime: () => new Date().toISOString(),
363
+ }),
364
+ },
365
+ },
366
+ },
367
+ // ───────────────────────────────────────────────────────
368
+ // TERMINAL STATES
369
+ // ───────────────────────────────────────────────────────
370
+ rejected: {
371
+ type: "final",
372
+ },
373
+ completed: {
374
+ type: "final",
375
+ },
376
+ },
377
+ });
378
+ //# sourceMappingURL=proposal.machine.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"proposal.machine.js","sourceRoot":"","sources":["../../src/governance/proposal.machine.ts"],"names":[],"mappings":"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"}