@cat-factory/contracts 0.85.0 → 0.87.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 (54) hide show
  1. package/dist/agent-presentation.d.ts +2 -2
  2. package/dist/entities.d.ts +9 -1
  3. package/dist/entities.d.ts.map +1 -1
  4. package/dist/entities.js +8 -0
  5. package/dist/entities.js.map +1 -1
  6. package/dist/events.d.ts +11 -0
  7. package/dist/events.d.ts.map +1 -1
  8. package/dist/fragment-library.d.ts +13 -7
  9. package/dist/fragment-library.d.ts.map +1 -1
  10. package/dist/fragment-library.js +13 -7
  11. package/dist/fragment-library.js.map +1 -1
  12. package/dist/index.d.ts +1 -0
  13. package/dist/index.d.ts.map +1 -1
  14. package/dist/index.js +1 -0
  15. package/dist/index.js.map +1 -1
  16. package/dist/initiative.d.ts +408 -0
  17. package/dist/initiative.d.ts.map +1 -0
  18. package/dist/initiative.js +325 -0
  19. package/dist/initiative.js.map +1 -0
  20. package/dist/primitives.d.ts +5 -2
  21. package/dist/primitives.d.ts.map +1 -1
  22. package/dist/primitives.js +5 -2
  23. package/dist/primitives.js.map +1 -1
  24. package/dist/result-views.d.ts +1 -1
  25. package/dist/result-views.d.ts.map +1 -1
  26. package/dist/result-views.js +1 -0
  27. package/dist/result-views.js.map +1 -1
  28. package/dist/routes/board.d.ts +20 -10
  29. package/dist/routes/board.d.ts.map +1 -1
  30. package/dist/routes/execution.d.ts +4 -2
  31. package/dist/routes/execution.d.ts.map +1 -1
  32. package/dist/routes/fragment-library.d.ts +5 -6
  33. package/dist/routes/fragment-library.d.ts.map +1 -1
  34. package/dist/routes/index.d.ts +1 -0
  35. package/dist/routes/index.d.ts.map +1 -1
  36. package/dist/routes/index.js +1 -0
  37. package/dist/routes/index.js.map +1 -1
  38. package/dist/routes/initiative.d.ts +662 -0
  39. package/dist/routes/initiative.d.ts.map +1 -0
  40. package/dist/routes/initiative.js +45 -0
  41. package/dist/routes/initiative.js.map +1 -0
  42. package/dist/routes/tasks.d.ts +6 -3
  43. package/dist/routes/tasks.d.ts.map +1 -1
  44. package/dist/routes/workspaces.d.ts +176 -4
  45. package/dist/routes/workspaces.d.ts.map +1 -1
  46. package/dist/snapshot.d.ts +94 -2
  47. package/dist/snapshot.d.ts.map +1 -1
  48. package/dist/snapshot.js +8 -0
  49. package/dist/snapshot.js.map +1 -1
  50. package/dist/visual-pipeline.d.ts +12 -6
  51. package/dist/visual-pipeline.d.ts.map +1 -1
  52. package/dist/visual-pipeline.js +12 -6
  53. package/dist/visual-pipeline.js.map +1 -1
  54. package/package.json +1 -1
@@ -0,0 +1,325 @@
1
+ import * as v from 'valibot';
2
+ // ---------------------------------------------------------------------------
3
+ // Initiative wire contracts. An Initiative is the longer-running counterpart to
4
+ // a task: a multi-phase body of work (a cross-cutting refactor, a migration, a
5
+ // strangler conversion) planned once by the Initiative Planning pipeline and
6
+ // then executed as a loop of ordinary tasks until every item is resolved.
7
+ //
8
+ // The DB row (the `initiatives` table, one per initiative-level block) is the
9
+ // SOURCE OF TRUTH: the execution loop needs transactional state (a `rev` CAS
10
+ // token, item↔block mapping) that a Git file cannot provide. The committed
11
+ // in-repo tracker (`docs/initiatives/<slug>/…`) is a deterministic, rendered
12
+ // PROJECTION of this entity — the blueprint artifact pattern — so the plan
13
+ // travels with the code and stays human-readable.
14
+ //
15
+ // Items carry planner-authored estimates (the task-estimator axes) so the loop
16
+ // can pick each spawned task's pipeline by matching the estimate against the
17
+ // initiative's ordered pipeline rules (OR across axes — `StepGating` semantics).
18
+ // ---------------------------------------------------------------------------
19
+ // Field length/value bounds, exported as named constants so the lenient coercion in
20
+ // `@cat-factory/agents` (`coerceInitiativePlan`) clamps to the SAME limits this strict schema
21
+ // enforces — a single source of truth, so bumping a bound here can't leave the coercion
22
+ // silently truncating to a stale value (or emitting a plan the parser then rejects).
23
+ export const INITIATIVE_ID_MAX = 80;
24
+ export const INITIATIVE_TITLE_MAX = 200;
25
+ export const INITIATIVE_PROSE_MAX = 8000;
26
+ export const INITIATIVE_SHORT_MAX = 2000;
27
+ export const INITIATIVE_MAX_CONCURRENT = 20;
28
+ const score = v.pipe(v.number(), v.minValue(0), v.maxValue(1));
29
+ const idField = v.pipe(v.string(), v.trim(), v.minLength(1), v.maxLength(INITIATIVE_ID_MAX));
30
+ const titleField = v.pipe(v.string(), v.trim(), v.minLength(1), v.maxLength(INITIATIVE_TITLE_MAX));
31
+ const proseField = v.pipe(v.string(), v.maxLength(INITIATIVE_PROSE_MAX));
32
+ const shortProseField = v.pipe(v.string(), v.maxLength(INITIATIVE_SHORT_MAX));
33
+ /** Lifecycle of a single tracker item (one unit of work → one spawned task). */
34
+ export const initiativeItemStatusSchema = v.picklist([
35
+ 'pending',
36
+ 'in_progress',
37
+ 'pr_open',
38
+ 'done',
39
+ 'blocked',
40
+ 'skipped',
41
+ ]);
42
+ /** Lifecycle of the initiative as a whole. */
43
+ export const initiativeStatusSchema = v.picklist([
44
+ 'planning',
45
+ 'awaiting_approval',
46
+ 'executing',
47
+ 'paused',
48
+ 'done',
49
+ 'cancelled',
50
+ ]);
51
+ /**
52
+ * A planner-authored triage of one item on the task-estimator axes. Stamped onto
53
+ * the spawned block's `estimate` (with `createdAt`/`model` added) so downstream
54
+ * estimate-gated steps see it, and matched against the initiative's pipeline
55
+ * rules to pick the task's pipeline.
56
+ */
57
+ export const initiativeEstimateSchema = v.object({
58
+ complexity: score,
59
+ risk: score,
60
+ impact: score,
61
+ rationale: v.optional(shortProseField, ''),
62
+ });
63
+ /**
64
+ * One ordered pipeline-selection rule: the item's estimate matches when ANY
65
+ * supplied axis is met or exceeded (OR across axes — the `StepGating` semantics
66
+ * of `shouldRunGatedStep`). First matching rule wins; no match falls through to
67
+ * the policy's `defaultPipelineId`. A rule with no thresholds never matches.
68
+ */
69
+ export const initiativePipelineRuleSchema = v.object({
70
+ pipelineId: idField,
71
+ minComplexity: v.optional(score),
72
+ minRisk: v.optional(score),
73
+ minImpact: v.optional(score),
74
+ });
75
+ /**
76
+ * How the execution loop runs the plan: how many tasks may be in flight at once,
77
+ * and which pipeline each spawned task gets. Agreed during planning.
78
+ */
79
+ export const initiativeExecutionPolicySchema = v.object({
80
+ /** Max concurrently-running spawned tasks across the whole initiative. */
81
+ maxConcurrent: v.pipe(v.number(), v.integer(), v.minValue(1), v.maxValue(INITIATIVE_MAX_CONCURRENT)),
82
+ /** Ordered estimate→pipeline rules; first match wins. */
83
+ rules: v.optional(v.array(initiativePipelineRuleSchema), []),
84
+ /** Pipeline used when no rule matches (or the item carries no estimate). */
85
+ defaultPipelineId: idField,
86
+ /**
87
+ * What to do when an item has NO estimate: `default` uses `defaultPipelineId`;
88
+ * `strongest` uses the last rule's pipeline (rules are ordered weakest-first),
89
+ * fail-safe to thoroughness.
90
+ */
91
+ onMissingEstimate: v.optional(v.picklist(['default', 'strongest']), 'default'),
92
+ });
93
+ /** One phase of the plan. Array order IS the phase order; phases run sequentially. */
94
+ export const initiativePhaseSchema = v.object({
95
+ id: idField,
96
+ title: titleField,
97
+ /** What this phase achieves — shown on the tracker, not fed to agents. */
98
+ goal: v.optional(shortProseField, ''),
99
+ /** Optional tighter concurrency cap for this phase alone. */
100
+ maxConcurrent: v.optional(v.pipe(v.number(), v.integer(), v.minValue(1), v.maxValue(INITIATIVE_MAX_CONCURRENT))),
101
+ });
102
+ /** One unit of work in the tracker — spawned just-in-time as a task block. */
103
+ export const initiativeItemSchema = v.object({
104
+ id: idField,
105
+ /** The owning phase (must reference a `phases[].id`). */
106
+ phaseId: idField,
107
+ title: titleField,
108
+ /** The spawned task's description — written to be self-sufficient. */
109
+ description: proseField,
110
+ /** Intra-initiative item ids that must be `done` before this item may start. */
111
+ dependsOn: v.optional(v.array(idField), []),
112
+ /** Planner-authored estimate driving pipeline selection (absent ⇒ policy fallback). */
113
+ estimate: v.optional(initiativeEstimateSchema),
114
+ /** Explicit pipeline override; absent ⇒ the policy's rules decide. */
115
+ pipelineId: v.optional(idField),
116
+ status: initiativeItemStatusSchema,
117
+ /** Id of the task block the loop spawned for this item; null until spawned. */
118
+ blockId: v.optional(v.nullable(v.string())),
119
+ /** The item's pull request, copied from the spawned block at settlement. */
120
+ pr: v.optional(v.object({ url: v.string(), number: v.optional(v.number()) })),
121
+ /** Loop/human annotation — e.g. the failure detail that blocked the item. */
122
+ note: v.optional(shortProseField),
123
+ });
124
+ /** A decision recorded on the tracker (made during planning or mid-flight). */
125
+ export const initiativeDecisionSchema = v.object({
126
+ id: idField,
127
+ at: v.number(),
128
+ title: titleField,
129
+ detail: v.optional(shortProseField, ''),
130
+ source: v.picklist(['planning', 'human', 'agent']),
131
+ });
132
+ /** A deviation from the plan discovered mid-flight (e.g. a failed item's cause). */
133
+ export const initiativeDeviationSchema = v.object({
134
+ id: idField,
135
+ at: v.number(),
136
+ /** The item the deviation relates to; null for initiative-wide deviations. */
137
+ itemId: v.optional(v.nullable(idField)),
138
+ description: shortProseField,
139
+ resolution: v.optional(shortProseField),
140
+ });
141
+ /** A follow-up surfaced during execution, awaiting triage into a real item. */
142
+ export const initiativeFollowUpSchema = v.object({
143
+ id: idField,
144
+ at: v.number(),
145
+ /** The item whose run surfaced this follow-up; null when raised by a human. */
146
+ sourceItemId: v.optional(v.nullable(idField)),
147
+ title: titleField,
148
+ detail: v.optional(shortProseField, ''),
149
+ status: v.picklist(['open', 'promoted', 'dismissed']),
150
+ /** The item this follow-up was promoted into, once `promoted`. */
151
+ promotedItemId: v.optional(idField),
152
+ });
153
+ /** A single planning-interview exchange, kept as a bounded digest on the tracker. */
154
+ export const initiativeQaSchema = v.object({
155
+ question: shortProseField,
156
+ answer: shortProseField,
157
+ });
158
+ /**
159
+ * The persisted initiative entity — the DB source of truth the loop mutates and
160
+ * the snapshot carries. `rev` is the optimistic-concurrency token: every write
161
+ * goes through a compare-and-swap on it, making the execution loop a single
162
+ * writer by construction. The current phase is DERIVED (the first phase with a
163
+ * non-`done`/non-`skipped` item), never stored.
164
+ */
165
+ export const initiativeSchema = v.object({
166
+ id: v.string(),
167
+ /** The initiative-level board block this entity belongs to (1:1). */
168
+ blockId: v.string(),
169
+ /** Stable slug naming the in-repo tracker folder (`docs/initiatives/<slug>/`). */
170
+ slug: idField,
171
+ title: titleField,
172
+ /** The agreed goal statement (from planning). */
173
+ goal: v.optional(proseField, ''),
174
+ constraints: v.optional(v.array(shortProseField), []),
175
+ nonGoals: v.optional(v.array(shortProseField), []),
176
+ /** Bounded digest of the planning interview. */
177
+ qa: v.optional(v.array(initiativeQaSchema), []),
178
+ /** Bounded summary of the codebase analysis that informed the plan. */
179
+ analysisSummary: v.optional(proseField, ''),
180
+ phases: v.optional(v.array(initiativePhaseSchema), []),
181
+ items: v.optional(v.array(initiativeItemSchema), []),
182
+ policy: v.optional(v.nullable(initiativeExecutionPolicySchema)),
183
+ decisions: v.optional(v.array(initiativeDecisionSchema), []),
184
+ deviations: v.optional(v.array(initiativeDeviationSchema), []),
185
+ followUps: v.optional(v.array(initiativeFollowUpSchema), []),
186
+ caveats: v.optional(v.array(shortProseField), []),
187
+ status: initiativeStatusSchema,
188
+ /**
189
+ * Repo-mirror bookkeeping: the last committed tracker version + content hash
190
+ * (see {@link initiativeVersionSchema}). Absent until the first commit, or
191
+ * forever on a GitHub-unwired workspace — render from the entity, never assume
192
+ * the mirror exists.
193
+ */
194
+ doc: v.optional(v.object({ version: v.number(), hash: v.string(), committedAt: v.number() })),
195
+ /** Optimistic-concurrency token; bumped on every successful write. */
196
+ rev: v.number(),
197
+ createdAt: v.number(),
198
+ updatedAt: v.number(),
199
+ });
200
+ // ---- Planner output (the plan draft) ---------------------------------------
201
+ /** A draft item as the planner emits it — no runtime fields yet. */
202
+ export const initiativeDraftItemSchema = v.object({
203
+ id: v.optional(idField),
204
+ phaseId: idField,
205
+ title: titleField,
206
+ description: v.optional(proseField, ''),
207
+ dependsOn: v.optional(v.array(idField), []),
208
+ estimate: v.optional(initiativeEstimateSchema),
209
+ pipelineId: v.optional(idField),
210
+ });
211
+ /**
212
+ * The `initiative-planner` agent's structured output: the multi-phase plan minus
213
+ * all runtime state. Ingest turns it into the persisted entity (`applyPlanDraft`),
214
+ * assigning deterministic ids where the draft omitted them and stamping every
215
+ * item `pending`.
216
+ */
217
+ export const initiativePlanDraftSchema = v.object({
218
+ goal: v.optional(proseField, ''),
219
+ constraints: v.optional(v.array(shortProseField), []),
220
+ nonGoals: v.optional(v.array(shortProseField), []),
221
+ analysisSummary: v.optional(proseField, ''),
222
+ phases: v.array(v.object({
223
+ id: v.optional(idField),
224
+ title: titleField,
225
+ goal: v.optional(shortProseField, ''),
226
+ maxConcurrent: v.optional(v.pipe(v.number(), v.integer(), v.minValue(1), v.maxValue(INITIATIVE_MAX_CONCURRENT))),
227
+ })),
228
+ items: v.array(initiativeDraftItemSchema),
229
+ policy: initiativeExecutionPolicySchema,
230
+ decisions: v.optional(v.array(v.object({ title: titleField, detail: v.optional(shortProseField, '') })), []),
231
+ caveats: v.optional(v.array(shortProseField), []),
232
+ });
233
+ // ---- Request bodies ---------------------------------------------------------
234
+ /** Create an initiative block (+ its empty entity) under a service frame. */
235
+ export const createInitiativeSchema = v.object({
236
+ frameId: v.pipe(v.string(), v.trim(), v.minLength(1)),
237
+ title: titleField,
238
+ description: v.optional(proseField, ''),
239
+ });
240
+ // ---- In-repo tracker artifact ----------------------------------------------
241
+ // The loop mirrors the entity into the target repo so the plan travels with the
242
+ // code, following the blueprint artifact pattern: a canonical JSON file, a
243
+ // deterministic human-readable markdown rendering, and a tiny version manifest
244
+ // for cheap staleness checks.
245
+ /** Folder, relative to the repo root, that holds all initiative trackers. */
246
+ export const INITIATIVE_DOC_DIR = 'docs/initiatives';
247
+ /** Folder for one initiative's tracker files. */
248
+ export function initiativeDocDir(slug) {
249
+ return `${INITIATIVE_DOC_DIR}/${slug}`;
250
+ }
251
+ /**
252
+ * Canonical machine-readable tracker file. This is a CONTENT PROJECTION of the entity, NOT a
253
+ * full `Initiative`: the volatile bookkeeping (`rev`, `updatedAt`, `doc`) is deliberately
254
+ * excluded so its content hash stays stable across no-op DB writes (see
255
+ * `initiativeContentView`/`canonicalInitiativeJson` in `@cat-factory/agents`). Do NOT feed it
256
+ * back through `parseInitiative` — those required fields are absent by design; the DB row, not
257
+ * this file, is the source of truth for the runtime state.
258
+ */
259
+ export function initiativeJsonPath(slug) {
260
+ return `${initiativeDocDir(slug)}/initiative.json`;
261
+ }
262
+ /** Human-readable tracker rendering (the CLAUDE.md tracker-document convention). */
263
+ export function initiativeTrackerPath(slug) {
264
+ return `${initiativeDocDir(slug)}/tracker.md`;
265
+ }
266
+ /** Tiny manifest read for quick staleness checks without parsing the full entity. */
267
+ export function initiativeVersionPath(slug) {
268
+ return `${initiativeDocDir(slug)}/version.json`;
269
+ }
270
+ /** The lightweight `version.json` manifest committed alongside the tracker. */
271
+ export const initiativeVersionSchema = v.object({
272
+ version: v.pipe(v.number(), v.integer(), v.minValue(0)),
273
+ generatedAt: v.string(),
274
+ /** sha256 (hex) of the canonical `initiative.json` bytes. */
275
+ hash: v.string(),
276
+ items: v.pipe(v.number(), v.integer(), v.minValue(0)),
277
+ });
278
+ /**
279
+ * Strictly parse an arbitrary value into an {@link Initiative}, enforcing the
280
+ * exact schema shape. **Throws** on any violation — use at every trust boundary
281
+ * (reading `initiative.json`, ingesting a stored row).
282
+ */
283
+ export function parseInitiative(value) {
284
+ return v.parse(initiativeSchema, value);
285
+ }
286
+ /** Non-throwing variant: returns the parsed initiative or `undefined` when invalid. */
287
+ export function safeParseInitiative(value) {
288
+ const result = v.safeParse(initiativeSchema, value);
289
+ return result.success ? result.output : undefined;
290
+ }
291
+ /**
292
+ * Decode a stored row into the entity, re-imposing the column-lifted keys over the
293
+ * `doc` blob (a corrupt/unparseable row ⇒ null, so a list read can drop it rather than
294
+ * fail the whole board load). Shared by the D1 and Drizzle repositories so the
295
+ * column↔field contract lives in exactly one place and the runtimes can't drift.
296
+ */
297
+ export function decodeInitiativeRow(row) {
298
+ let parsed;
299
+ try {
300
+ parsed = JSON.parse(row.doc);
301
+ }
302
+ catch {
303
+ return null;
304
+ }
305
+ return (safeParseInitiative({
306
+ ...(typeof parsed === 'object' && parsed !== null ? parsed : {}),
307
+ id: row.id,
308
+ blockId: row.block_id,
309
+ slug: row.slug,
310
+ status: row.status,
311
+ rev: row.rev,
312
+ createdAt: row.created_at,
313
+ updatedAt: row.updated_at,
314
+ }) ?? null);
315
+ }
316
+ /** Strictly parse a planner plan draft. Throws on shape violations. */
317
+ export function parseInitiativePlanDraft(value) {
318
+ return v.parse(initiativePlanDraftSchema, value);
319
+ }
320
+ /** Item statuses that count as settled (nothing left for the loop to drive). */
321
+ export const INITIATIVE_ITEM_TERMINAL_STATUSES = new Set([
322
+ 'done',
323
+ 'skipped',
324
+ ]);
325
+ //# sourceMappingURL=initiative.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"initiative.js","sourceRoot":"","sources":["../src/initiative.ts"],"names":[],"mappings":"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"}
@@ -22,9 +22,12 @@ export type BlockStatus = v.InferOutput<typeof blockStatusSchema>;
22
22
  * structural containment tree (`parentId`); `epic` is a NON-structural grouping
23
23
  * node — it groups tasks (which may live under different modules/services) via
24
24
  * their `epicId` membership link, not via `parentId`, so deleting an epic never
25
- * deletes its member tasks.
25
+ * deletes its member tasks. `initiative` is a structural child of a frame (like
26
+ * a module) anchoring a long-running multi-task body of work: its plan lives in
27
+ * the `initiatives` entity, and the tasks its execution loop spawns link back
28
+ * via their `initiativeId` membership link (epic-style, not containment).
26
29
  */
27
- export declare const blockLevelSchema: v.PicklistSchema<["frame", "module", "task", "epic"], undefined>;
30
+ export declare const blockLevelSchema: v.PicklistSchema<["frame", "module", "task", "epic", "initiative"], undefined>;
28
31
  export type BlockLevel = v.InferOutput<typeof blockLevelSchema>;
29
32
  /**
30
33
  * The kind of work a task represents, chosen by the human at creation. Drives the
@@ -1 +1 @@
1
- {"version":3,"file":"primitives.d.ts","sourceRoot":"","sources":["../src/primitives.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAM5B,eAAO,MAAM,eAAe,mJAW1B,CAAA;AACF,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,eAAe,CAAC,CAAA;AAE7D;;;;;;;;;GASG;AACH,eAAO,MAAM,mBAAmB,6EAA6D,CAAA;AAC7F,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,mBAAmB,CAAC,CAAA;AAErE,gGAAgG;AAChG,eAAO,MAAM,gBAAgB,YAAI,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,CAAU,CAAA;AAEvF,eAAO,MAAM,iBAAiB,iGAO5B,CAAA;AACF,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,iBAAiB,CAAC,CAAA;AAEjE;;;;;;GAMG;AACH,eAAO,MAAM,gBAAgB,kEAAkD,CAAA;AAC/E,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,gBAAgB,CAAC,CAAA;AAE/D;;;;;;GAMG;AACH,eAAO,MAAM,cAAc,mFAAmE,CAAA;AAC9F,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,cAAc,CAAC,CAAA;AAE3D,qGAAqG;AACrG,eAAO,MAAM,oBAAoB,sEAAsD,CAAA;AACvF,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,oBAAoB,CAAC,CAAA;AAEvE;;;;;GAKG;AACH,eAAO,MAAM,SAAS,YACpB,KAAK,EACL,KAAK,EACL,KAAK,EACL,QAAQ,EACR,WAAW,EACX,KAAK,EACL,SAAS,EACT,UAAU,EACV,WAAW,EACX,OAAO,CACC,CAAA;AACV,MAAM,MAAM,OAAO,GAAG,CAAC,OAAO,SAAS,CAAC,CAAC,MAAM,CAAC,CAAA;AAEhD;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAOnD;AAED;;;;GAIG;AACH,eAAO,MAAM,oBAAoB;IAC/B,qCAAqC;;IAErC,sDAAsD;;IAEtD,mDAAmD;;IAEnD,0DAA0D;;IAE1D,2FAA2F;;IAE3F;;;;;OAKG;;IAWH,sFAAsF;;aAEtF,CAAA;AACF,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,oBAAoB,CAAC,CAAA;AAEvE,eAAO,MAAM,gBAAgB,iFAAiE,CAAA;AAC9F,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,gBAAgB,CAAC,CAAA;AAE/D,qEAAqE;AACrE,eAAO,MAAM,eAAe,iGAAqC,CAAA;AACjE,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,eAAe,CAAC,CAAA;AAE7D;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,gQASlE;AAED,eAAO,MAAM,cAAc;;;aAGzB,CAAA;AACF,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,cAAc,CAAC,CAAA;AAE3D;;;;;GAKG;AACH,eAAO,MAAM,UAAU;;;aAGrB,CAAA;AACF,MAAM,MAAM,IAAI,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,UAAU,CAAC,CAAA"}
1
+ {"version":3,"file":"primitives.d.ts","sourceRoot":"","sources":["../src/primitives.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAM5B,eAAO,MAAM,eAAe,mJAW1B,CAAA;AACF,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,eAAe,CAAC,CAAA;AAE7D;;;;;;;;;GASG;AACH,eAAO,MAAM,mBAAmB,6EAA6D,CAAA;AAC7F,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,mBAAmB,CAAC,CAAA;AAErE,gGAAgG;AAChG,eAAO,MAAM,gBAAgB,YAAI,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,CAAU,CAAA;AAEvF,eAAO,MAAM,iBAAiB,iGAO5B,CAAA;AACF,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,iBAAiB,CAAC,CAAA;AAEjE;;;;;;;;;GASG;AACH,eAAO,MAAM,gBAAgB,gFAAgE,CAAA;AAC7F,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,gBAAgB,CAAC,CAAA;AAE/D;;;;;;GAMG;AACH,eAAO,MAAM,cAAc,mFAAmE,CAAA;AAC9F,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,cAAc,CAAC,CAAA;AAE3D,qGAAqG;AACrG,eAAO,MAAM,oBAAoB,sEAAsD,CAAA;AACvF,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,oBAAoB,CAAC,CAAA;AAEvE;;;;;GAKG;AACH,eAAO,MAAM,SAAS,YACpB,KAAK,EACL,KAAK,EACL,KAAK,EACL,QAAQ,EACR,WAAW,EACX,KAAK,EACL,SAAS,EACT,UAAU,EACV,WAAW,EACX,OAAO,CACC,CAAA;AACV,MAAM,MAAM,OAAO,GAAG,CAAC,OAAO,SAAS,CAAC,CAAC,MAAM,CAAC,CAAA;AAEhD;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAOnD;AAED;;;;GAIG;AACH,eAAO,MAAM,oBAAoB;IAC/B,qCAAqC;;IAErC,sDAAsD;;IAEtD,mDAAmD;;IAEnD,0DAA0D;;IAE1D,2FAA2F;;IAE3F;;;;;OAKG;;IAWH,sFAAsF;;aAEtF,CAAA;AACF,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,oBAAoB,CAAC,CAAA;AAEvE,eAAO,MAAM,gBAAgB,iFAAiE,CAAA;AAC9F,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,gBAAgB,CAAC,CAAA;AAE/D,qEAAqE;AACrE,eAAO,MAAM,eAAe,iGAAqC,CAAA;AACjE,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,eAAe,CAAC,CAAA;AAE7D;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,gQASlE;AAED,eAAO,MAAM,cAAc;;;aAGzB,CAAA;AACF,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,cAAc,CAAC,CAAA;AAE3D;;;;;GAKG;AACH,eAAO,MAAM,UAAU;;;aAGrB,CAAA;AACF,MAAM,MAAM,IAAI,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,UAAU,CAAC,CAAA"}
@@ -40,9 +40,12 @@ export const blockStatusSchema = v.picklist([
40
40
  * structural containment tree (`parentId`); `epic` is a NON-structural grouping
41
41
  * node — it groups tasks (which may live under different modules/services) via
42
42
  * their `epicId` membership link, not via `parentId`, so deleting an epic never
43
- * deletes its member tasks.
43
+ * deletes its member tasks. `initiative` is a structural child of a frame (like
44
+ * a module) anchoring a long-running multi-task body of work: its plan lives in
45
+ * the `initiatives` entity, and the tasks its execution loop spawns link back
46
+ * via their `initiativeId` membership link (epic-style, not containment).
44
47
  */
45
- export const blockLevelSchema = v.picklist(['frame', 'module', 'task', 'epic']);
48
+ export const blockLevelSchema = v.picklist(['frame', 'module', 'task', 'epic', 'initiative']);
46
49
  /**
47
50
  * The kind of work a task represents, chosen by the human at creation. Drives the
48
51
  * task card's icon/badge, per-type creation fields, and (optionally) the per-service
@@ -1 +1 @@
1
- {"version":3,"file":"primitives.js","sourceRoot":"","sources":["../src/primitives.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"primitives.js","sourceRoot":"","sources":["../src/primitives.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- export declare const RESULT_VIEW_IDS: readonly ['requirements-review', 'clarity-review', 'brainstorm', 'tester', 'human-test', 'visual-confirm', 'gate', 'consensus-session', 'generic-structured', 'service-spec', 'follow-ups', 'merger'];
1
+ export declare const RESULT_VIEW_IDS: readonly ['requirements-review', 'clarity-review', 'brainstorm', 'tester', 'human-test', 'visual-confirm', 'gate', 'consensus-session', 'generic-structured', 'service-spec', 'follow-ups', 'merger', 'initiative-tracker'];
2
2
  export type ResultViewId = (typeof RESULT_VIEW_IDS)[number];
3
3
  /** Set form, for `O(1)` membership checks (e.g. boot-time registration validation). */
4
4
  export declare const RESULT_VIEW_ID_SET: ReadonlySet<string>;
@@ -1 +1 @@
1
- {"version":3,"file":"result-views.d.ts","sourceRoot":"","sources":["../src/result-views.ts"],"names":[],"mappings":"AAgBA,eAAO,MAAM,eAAe,YAC1B,qBAAqB,EACrB,gBAAgB,EAChB,YAAY,EACZ,QAAQ,EACR,YAAY,EACZ,gBAAgB,EAChB,MAAM,EACN,mBAAmB,EACnB,oBAAoB,EACpB,cAAc,EACd,YAAY,EACZ,QAAQ,CACA,CAAA;AAEV,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,CAAC,CAAA;AAE3D,uFAAuF;AACvF,eAAO,MAAM,kBAAkB,EAAE,WAAW,CAAC,MAAM,CAA4B,CAAA"}
1
+ {"version":3,"file":"result-views.d.ts","sourceRoot":"","sources":["../src/result-views.ts"],"names":[],"mappings":"AAgBA,eAAO,MAAM,eAAe,YAC1B,qBAAqB,EACrB,gBAAgB,EAChB,YAAY,EACZ,QAAQ,EACR,YAAY,EACZ,gBAAgB,EAChB,MAAM,EACN,mBAAmB,EACnB,oBAAoB,EACpB,cAAc,EACd,YAAY,EACZ,QAAQ,EACR,oBAAoB,CACZ,CAAA;AAEV,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,CAAC,CAAA;AAE3D,uFAAuF;AACvF,eAAO,MAAM,kBAAkB,EAAE,WAAW,CAAC,MAAM,CAA4B,CAAA"}
@@ -26,6 +26,7 @@ export const RESULT_VIEW_IDS = [
26
26
  'service-spec',
27
27
  'follow-ups',
28
28
  'merger',
29
+ 'initiative-tracker',
29
30
  ];
30
31
  /** Set form, for `O(1)` membership checks (e.g. boot-time registration validation). */
31
32
  export const RESULT_VIEW_ID_SET = new Set(RESULT_VIEW_IDS);
@@ -1 +1 @@
1
- {"version":3,"file":"result-views.js","sourceRoot":"","sources":["../src/result-views.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,4EAA4E;AAC5E,oFAAoF;AACpF,EAAE;AACF,8EAA8E;AAC9E,yFAAyF;AACzF,2FAA2F;AAC3F,0FAA0F;AAC1F,qFAAqF;AACrF,4BAA4B;AAC5B,mEAAmE;AACnE,EAAE;AACF,0FAA0F;AAC1F,0EAA0E;AAC1E,8EAA8E;AAE9E,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,qBAAqB;IACrB,gBAAgB;IAChB,YAAY;IACZ,QAAQ;IACR,YAAY;IACZ,gBAAgB;IAChB,MAAM;IACN,mBAAmB;IACnB,oBAAoB;IACpB,cAAc;IACd,YAAY;IACZ,QAAQ;CACA,CAAA;AAIV,uFAAuF;AACvF,MAAM,CAAC,MAAM,kBAAkB,GAAwB,IAAI,GAAG,CAAC,eAAe,CAAC,CAAA"}
1
+ {"version":3,"file":"result-views.js","sourceRoot":"","sources":["../src/result-views.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,4EAA4E;AAC5E,oFAAoF;AACpF,EAAE;AACF,8EAA8E;AAC9E,yFAAyF;AACzF,2FAA2F;AAC3F,0FAA0F;AAC1F,qFAAqF;AACrF,4BAA4B;AAC5B,mEAAmE;AACnE,EAAE;AACF,0FAA0F;AAC1F,0EAA0E;AAC1E,8EAA8E;AAE9E,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,qBAAqB;IACrB,gBAAgB;IAChB,YAAY;IACZ,QAAQ;IACR,YAAY;IACZ,gBAAgB;IAChB,MAAM;IACN,mBAAmB;IACnB,oBAAoB;IACpB,cAAc;IACd,YAAY;IACZ,QAAQ;IACR,oBAAoB;CACZ,CAAA;AAIV,uFAAuF;AACvF,MAAM,CAAC,MAAM,kBAAkB,GAAwB,IAAI,GAAG,CAAC,eAAe,CAAC,CAAA"}
@@ -49,9 +49,10 @@ export declare const addFrameContract: {
49
49
  readonly progress: import("valibot").NumberSchema<undefined>;
50
50
  readonly dependsOn: import("valibot").ArraySchema<import("valibot").StringSchema<undefined>, undefined>;
51
51
  readonly executionId: import("valibot").NullableSchema<import("valibot").StringSchema<undefined>, undefined>;
52
- readonly level: import("valibot").PicklistSchema<["frame", "module", "task", "epic"], undefined>;
52
+ readonly level: import("valibot").PicklistSchema<["frame", "module", "task", "epic", "initiative"], undefined>;
53
53
  readonly parentId: import("valibot").NullableSchema<import("valibot").StringSchema<undefined>, undefined>;
54
54
  readonly epicId: import("valibot").OptionalSchema<import("valibot").NullableSchema<import("valibot").StringSchema<undefined>, undefined>, undefined>;
55
+ readonly initiativeId: import("valibot").OptionalSchema<import("valibot").NullableSchema<import("valibot").StringSchema<undefined>, undefined>, undefined>;
55
56
  readonly autoStartDependents: import("valibot").OptionalSchema<import("valibot").BooleanSchema<undefined>, undefined>;
56
57
  readonly confidence: import("valibot").OptionalSchema<import("valibot").NumberSchema<undefined>, undefined>;
57
58
  readonly estimate: import("valibot").OptionalSchema<import("valibot").NullableSchema<import("valibot").ObjectSchema<{
@@ -271,9 +272,10 @@ export declare const addServiceFromRepoContract: {
271
272
  readonly progress: import("valibot").NumberSchema<undefined>;
272
273
  readonly dependsOn: import("valibot").ArraySchema<import("valibot").StringSchema<undefined>, undefined>;
273
274
  readonly executionId: import("valibot").NullableSchema<import("valibot").StringSchema<undefined>, undefined>;
274
- readonly level: import("valibot").PicklistSchema<["frame", "module", "task", "epic"], undefined>;
275
+ readonly level: import("valibot").PicklistSchema<["frame", "module", "task", "epic", "initiative"], undefined>;
275
276
  readonly parentId: import("valibot").NullableSchema<import("valibot").StringSchema<undefined>, undefined>;
276
277
  readonly epicId: import("valibot").OptionalSchema<import("valibot").NullableSchema<import("valibot").StringSchema<undefined>, undefined>, undefined>;
278
+ readonly initiativeId: import("valibot").OptionalSchema<import("valibot").NullableSchema<import("valibot").StringSchema<undefined>, undefined>, undefined>;
277
279
  readonly autoStartDependents: import("valibot").OptionalSchema<import("valibot").BooleanSchema<undefined>, undefined>;
278
280
  readonly confidence: import("valibot").OptionalSchema<import("valibot").NumberSchema<undefined>, undefined>;
279
281
  readonly estimate: import("valibot").OptionalSchema<import("valibot").NullableSchema<import("valibot").ObjectSchema<{
@@ -508,9 +510,10 @@ export declare const addTaskContract: {
508
510
  readonly progress: import("valibot").NumberSchema<undefined>;
509
511
  readonly dependsOn: import("valibot").ArraySchema<import("valibot").StringSchema<undefined>, undefined>;
510
512
  readonly executionId: import("valibot").NullableSchema<import("valibot").StringSchema<undefined>, undefined>;
511
- readonly level: import("valibot").PicklistSchema<["frame", "module", "task", "epic"], undefined>;
513
+ readonly level: import("valibot").PicklistSchema<["frame", "module", "task", "epic", "initiative"], undefined>;
512
514
  readonly parentId: import("valibot").NullableSchema<import("valibot").StringSchema<undefined>, undefined>;
513
515
  readonly epicId: import("valibot").OptionalSchema<import("valibot").NullableSchema<import("valibot").StringSchema<undefined>, undefined>, undefined>;
516
+ readonly initiativeId: import("valibot").OptionalSchema<import("valibot").NullableSchema<import("valibot").StringSchema<undefined>, undefined>, undefined>;
514
517
  readonly autoStartDependents: import("valibot").OptionalSchema<import("valibot").BooleanSchema<undefined>, undefined>;
515
518
  readonly confidence: import("valibot").OptionalSchema<import("valibot").NumberSchema<undefined>, undefined>;
516
519
  readonly estimate: import("valibot").OptionalSchema<import("valibot").NullableSchema<import("valibot").ObjectSchema<{
@@ -732,9 +735,10 @@ export declare const addModuleContract: {
732
735
  readonly progress: import("valibot").NumberSchema<undefined>;
733
736
  readonly dependsOn: import("valibot").ArraySchema<import("valibot").StringSchema<undefined>, undefined>;
734
737
  readonly executionId: import("valibot").NullableSchema<import("valibot").StringSchema<undefined>, undefined>;
735
- readonly level: import("valibot").PicklistSchema<["frame", "module", "task", "epic"], undefined>;
738
+ readonly level: import("valibot").PicklistSchema<["frame", "module", "task", "epic", "initiative"], undefined>;
736
739
  readonly parentId: import("valibot").NullableSchema<import("valibot").StringSchema<undefined>, undefined>;
737
740
  readonly epicId: import("valibot").OptionalSchema<import("valibot").NullableSchema<import("valibot").StringSchema<undefined>, undefined>, undefined>;
741
+ readonly initiativeId: import("valibot").OptionalSchema<import("valibot").NullableSchema<import("valibot").StringSchema<undefined>, undefined>, undefined>;
738
742
  readonly autoStartDependents: import("valibot").OptionalSchema<import("valibot").BooleanSchema<undefined>, undefined>;
739
743
  readonly confidence: import("valibot").OptionalSchema<import("valibot").NumberSchema<undefined>, undefined>;
740
744
  readonly estimate: import("valibot").OptionalSchema<import("valibot").NullableSchema<import("valibot").ObjectSchema<{
@@ -953,9 +957,10 @@ export declare const addEpicContract: {
953
957
  readonly progress: import("valibot").NumberSchema<undefined>;
954
958
  readonly dependsOn: import("valibot").ArraySchema<import("valibot").StringSchema<undefined>, undefined>;
955
959
  readonly executionId: import("valibot").NullableSchema<import("valibot").StringSchema<undefined>, undefined>;
956
- readonly level: import("valibot").PicklistSchema<["frame", "module", "task", "epic"], undefined>;
960
+ readonly level: import("valibot").PicklistSchema<["frame", "module", "task", "epic", "initiative"], undefined>;
957
961
  readonly parentId: import("valibot").NullableSchema<import("valibot").StringSchema<undefined>, undefined>;
958
962
  readonly epicId: import("valibot").OptionalSchema<import("valibot").NullableSchema<import("valibot").StringSchema<undefined>, undefined>, undefined>;
963
+ readonly initiativeId: import("valibot").OptionalSchema<import("valibot").NullableSchema<import("valibot").StringSchema<undefined>, undefined>, undefined>;
959
964
  readonly autoStartDependents: import("valibot").OptionalSchema<import("valibot").BooleanSchema<undefined>, undefined>;
960
965
  readonly confidence: import("valibot").OptionalSchema<import("valibot").NumberSchema<undefined>, undefined>;
961
966
  readonly estimate: import("valibot").OptionalSchema<import("valibot").NullableSchema<import("valibot").ObjectSchema<{
@@ -1173,9 +1178,10 @@ export declare const assignEpicContract: {
1173
1178
  readonly progress: import("valibot").NumberSchema<undefined>;
1174
1179
  readonly dependsOn: import("valibot").ArraySchema<import("valibot").StringSchema<undefined>, undefined>;
1175
1180
  readonly executionId: import("valibot").NullableSchema<import("valibot").StringSchema<undefined>, undefined>;
1176
- readonly level: import("valibot").PicklistSchema<["frame", "module", "task", "epic"], undefined>;
1181
+ readonly level: import("valibot").PicklistSchema<["frame", "module", "task", "epic", "initiative"], undefined>;
1177
1182
  readonly parentId: import("valibot").NullableSchema<import("valibot").StringSchema<undefined>, undefined>;
1178
1183
  readonly epicId: import("valibot").OptionalSchema<import("valibot").NullableSchema<import("valibot").StringSchema<undefined>, undefined>, undefined>;
1184
+ readonly initiativeId: import("valibot").OptionalSchema<import("valibot").NullableSchema<import("valibot").StringSchema<undefined>, undefined>, undefined>;
1179
1185
  readonly autoStartDependents: import("valibot").OptionalSchema<import("valibot").BooleanSchema<undefined>, undefined>;
1180
1186
  readonly confidence: import("valibot").OptionalSchema<import("valibot").NumberSchema<undefined>, undefined>;
1181
1187
  readonly estimate: import("valibot").OptionalSchema<import("valibot").NullableSchema<import("valibot").ObjectSchema<{
@@ -2373,9 +2379,10 @@ export declare const updateBlockContract: {
2373
2379
  readonly progress: import("valibot").NumberSchema<undefined>;
2374
2380
  readonly dependsOn: import("valibot").ArraySchema<import("valibot").StringSchema<undefined>, undefined>;
2375
2381
  readonly executionId: import("valibot").NullableSchema<import("valibot").StringSchema<undefined>, undefined>;
2376
- readonly level: import("valibot").PicklistSchema<["frame", "module", "task", "epic"], undefined>;
2382
+ readonly level: import("valibot").PicklistSchema<["frame", "module", "task", "epic", "initiative"], undefined>;
2377
2383
  readonly parentId: import("valibot").NullableSchema<import("valibot").StringSchema<undefined>, undefined>;
2378
2384
  readonly epicId: import("valibot").OptionalSchema<import("valibot").NullableSchema<import("valibot").StringSchema<undefined>, undefined>, undefined>;
2385
+ readonly initiativeId: import("valibot").OptionalSchema<import("valibot").NullableSchema<import("valibot").StringSchema<undefined>, undefined>, undefined>;
2379
2386
  readonly autoStartDependents: import("valibot").OptionalSchema<import("valibot").BooleanSchema<undefined>, undefined>;
2380
2387
  readonly confidence: import("valibot").OptionalSchema<import("valibot").NumberSchema<undefined>, undefined>;
2381
2388
  readonly estimate: import("valibot").OptionalSchema<import("valibot").NullableSchema<import("valibot").ObjectSchema<{
@@ -2596,9 +2603,10 @@ export declare const moveBlockContract: {
2596
2603
  readonly progress: import("valibot").NumberSchema<undefined>;
2597
2604
  readonly dependsOn: import("valibot").ArraySchema<import("valibot").StringSchema<undefined>, undefined>;
2598
2605
  readonly executionId: import("valibot").NullableSchema<import("valibot").StringSchema<undefined>, undefined>;
2599
- readonly level: import("valibot").PicklistSchema<["frame", "module", "task", "epic"], undefined>;
2606
+ readonly level: import("valibot").PicklistSchema<["frame", "module", "task", "epic", "initiative"], undefined>;
2600
2607
  readonly parentId: import("valibot").NullableSchema<import("valibot").StringSchema<undefined>, undefined>;
2601
2608
  readonly epicId: import("valibot").OptionalSchema<import("valibot").NullableSchema<import("valibot").StringSchema<undefined>, undefined>, undefined>;
2609
+ readonly initiativeId: import("valibot").OptionalSchema<import("valibot").NullableSchema<import("valibot").StringSchema<undefined>, undefined>, undefined>;
2602
2610
  readonly autoStartDependents: import("valibot").OptionalSchema<import("valibot").BooleanSchema<undefined>, undefined>;
2603
2611
  readonly confidence: import("valibot").OptionalSchema<import("valibot").NumberSchema<undefined>, undefined>;
2604
2612
  readonly estimate: import("valibot").OptionalSchema<import("valibot").NullableSchema<import("valibot").ObjectSchema<{
@@ -2820,9 +2828,10 @@ export declare const reparentBlockContract: {
2820
2828
  readonly progress: import("valibot").NumberSchema<undefined>;
2821
2829
  readonly dependsOn: import("valibot").ArraySchema<import("valibot").StringSchema<undefined>, undefined>;
2822
2830
  readonly executionId: import("valibot").NullableSchema<import("valibot").StringSchema<undefined>, undefined>;
2823
- readonly level: import("valibot").PicklistSchema<["frame", "module", "task", "epic"], undefined>;
2831
+ readonly level: import("valibot").PicklistSchema<["frame", "module", "task", "epic", "initiative"], undefined>;
2824
2832
  readonly parentId: import("valibot").NullableSchema<import("valibot").StringSchema<undefined>, undefined>;
2825
2833
  readonly epicId: import("valibot").OptionalSchema<import("valibot").NullableSchema<import("valibot").StringSchema<undefined>, undefined>, undefined>;
2834
+ readonly initiativeId: import("valibot").OptionalSchema<import("valibot").NullableSchema<import("valibot").StringSchema<undefined>, undefined>, undefined>;
2826
2835
  readonly autoStartDependents: import("valibot").OptionalSchema<import("valibot").BooleanSchema<undefined>, undefined>;
2827
2836
  readonly confidence: import("valibot").OptionalSchema<import("valibot").NumberSchema<undefined>, undefined>;
2828
2837
  readonly estimate: import("valibot").OptionalSchema<import("valibot").NullableSchema<import("valibot").ObjectSchema<{
@@ -3074,9 +3083,10 @@ export declare const toggleDependencyContract: {
3074
3083
  readonly progress: import("valibot").NumberSchema<undefined>;
3075
3084
  readonly dependsOn: import("valibot").ArraySchema<import("valibot").StringSchema<undefined>, undefined>;
3076
3085
  readonly executionId: import("valibot").NullableSchema<import("valibot").StringSchema<undefined>, undefined>;
3077
- readonly level: import("valibot").PicklistSchema<["frame", "module", "task", "epic"], undefined>;
3086
+ readonly level: import("valibot").PicklistSchema<["frame", "module", "task", "epic", "initiative"], undefined>;
3078
3087
  readonly parentId: import("valibot").NullableSchema<import("valibot").StringSchema<undefined>, undefined>;
3079
3088
  readonly epicId: import("valibot").OptionalSchema<import("valibot").NullableSchema<import("valibot").StringSchema<undefined>, undefined>, undefined>;
3089
+ readonly initiativeId: import("valibot").OptionalSchema<import("valibot").NullableSchema<import("valibot").StringSchema<undefined>, undefined>, undefined>;
3080
3090
  readonly autoStartDependents: import("valibot").OptionalSchema<import("valibot").BooleanSchema<undefined>, undefined>;
3081
3091
  readonly confidence: import("valibot").OptionalSchema<import("valibot").NumberSchema<undefined>, undefined>;
3082
3092
  readonly estimate: import("valibot").OptionalSchema<import("valibot").NullableSchema<import("valibot").ObjectSchema<{
@@ -1 +1 @@
1
- {"version":3,"file":"board.d.ts","sourceRoot":"","sources":["../../src/routes/board.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAqB,MAAM,yBAAyB,CAAA;AAwB3E,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAK3B,CAAA;AAEF,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAKrC,CAAA;AAEF,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAM1B,CAAA;AAEF,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAM5B,CAAA;AAEF,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAK1B,CAAA;AAEF,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAM7B,CAAA;AAEF,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAM9B,CAAA;AAEF,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAM5B,CAAA;AAEF,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAMhC,CAAA;AAEF,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAK9B,CAAA;AAEF,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAMnC,CAAA"}
1
+ {"version":3,"file":"board.d.ts","sourceRoot":"","sources":["../../src/routes/board.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAqB,MAAM,yBAAyB,CAAA;AAwB3E,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAK3B,CAAA;AAEF,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAKrC,CAAA;AAEF,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAM1B,CAAA;AAEF,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAM5B,CAAA;AAEF,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAK1B,CAAA;AAEF,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAM7B,CAAA;AAEF,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAM9B,CAAA;AAEF,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAM5B,CAAA;AAEF,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAMhC,CAAA;AAEF,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAK9B,CAAA;AAEF,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAMnC,CAAA"}
@@ -584,9 +584,10 @@ export declare const cancelExecutionContract: {
584
584
  readonly progress: v.NumberSchema<undefined>;
585
585
  readonly dependsOn: v.ArraySchema<v.StringSchema<undefined>, undefined>;
586
586
  readonly executionId: v.NullableSchema<v.StringSchema<undefined>, undefined>;
587
- readonly level: v.PicklistSchema<["frame", "module", "task", "epic"], undefined>;
587
+ readonly level: v.PicklistSchema<["frame", "module", "task", "epic", "initiative"], undefined>;
588
588
  readonly parentId: v.NullableSchema<v.StringSchema<undefined>, undefined>;
589
589
  readonly epicId: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
590
+ readonly initiativeId: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
590
591
  readonly autoStartDependents: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
591
592
  readonly confidence: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
592
593
  readonly estimate: v.OptionalSchema<v.NullableSchema<v.ObjectSchema<{
@@ -802,9 +803,10 @@ export declare const mergeBlockContract: {
802
803
  readonly progress: v.NumberSchema<undefined>;
803
804
  readonly dependsOn: v.ArraySchema<v.StringSchema<undefined>, undefined>;
804
805
  readonly executionId: v.NullableSchema<v.StringSchema<undefined>, undefined>;
805
- readonly level: v.PicklistSchema<["frame", "module", "task", "epic"], undefined>;
806
+ readonly level: v.PicklistSchema<["frame", "module", "task", "epic", "initiative"], undefined>;
806
807
  readonly parentId: v.NullableSchema<v.StringSchema<undefined>, undefined>;
807
808
  readonly epicId: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
809
+ readonly initiativeId: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
808
810
  readonly autoStartDependents: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
809
811
  readonly confidence: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
810
812
  readonly estimate: v.OptionalSchema<v.NullableSchema<v.ObjectSchema<{