@slowcook-ai/cli 0.9.1 → 0.11.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.
@@ -34,16 +34,16 @@ export declare const schemas: {
34
34
  supersedes: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
35
35
  superseded_by: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNull]>>;
36
36
  }, "strip", z.ZodTypeAny, {
37
- title: string;
38
37
  status: "draft" | "active" | "superseded";
38
+ title: string;
39
39
  source_issue?: string | undefined;
40
40
  tags?: string[] | undefined;
41
41
  summary?: string | undefined;
42
42
  supersedes?: string[] | undefined;
43
43
  superseded_by?: string | null | undefined;
44
44
  }, {
45
- title: string;
46
45
  status: "draft" | "active" | "superseded";
46
+ title: string;
47
47
  source_issue?: string | undefined;
48
48
  tags?: string[] | undefined;
49
49
  summary?: string | undefined;
@@ -53,8 +53,8 @@ export declare const schemas: {
53
53
  }, "strip", z.ZodTypeAny, {
54
54
  schema_version: 1;
55
55
  stories: Record<string, {
56
- title: string;
57
56
  status: "draft" | "active" | "superseded";
57
+ title: string;
58
58
  source_issue?: string | undefined;
59
59
  tags?: string[] | undefined;
60
60
  summary?: string | undefined;
@@ -65,8 +65,8 @@ export declare const schemas: {
65
65
  }, {
66
66
  schema_version: 1;
67
67
  stories: Record<string, {
68
- title: string;
69
68
  status: "draft" | "active" | "superseded";
69
+ title: string;
70
70
  source_issue?: string | undefined;
71
71
  tags?: string[] | undefined;
72
72
  summary?: string | undefined;
@@ -116,9 +116,432 @@ export declare const schemas: {
116
116
  relationship: "superseded" | "overlap" | "related";
117
117
  note?: string | undefined;
118
118
  }>, "many">>;
119
+ proposals: z.ZodOptional<z.ZodObject<{
120
+ schema: z.ZodOptional<z.ZodObject<{
121
+ status: z.ZodEnum<["pending", "approved", "rejected", "deferred", "blocked_on_clarification"]>;
122
+ proposed_by: z.ZodString;
123
+ approved_by: z.ZodOptional<z.ZodString>;
124
+ approved_at: z.ZodOptional<z.ZodString>;
125
+ rationale: z.ZodOptional<z.ZodString>;
126
+ } & {
127
+ sql: z.ZodString;
128
+ }, "strip", z.ZodTypeAny, {
129
+ status: "pending" | "approved" | "rejected" | "deferred" | "blocked_on_clarification";
130
+ proposed_by: string;
131
+ sql: string;
132
+ approved_by?: string | undefined;
133
+ approved_at?: string | undefined;
134
+ rationale?: string | undefined;
135
+ }, {
136
+ status: "pending" | "approved" | "rejected" | "deferred" | "blocked_on_clarification";
137
+ proposed_by: string;
138
+ sql: string;
139
+ approved_by?: string | undefined;
140
+ approved_at?: string | undefined;
141
+ rationale?: string | undefined;
142
+ }>>;
143
+ ui_layout: z.ZodOptional<z.ZodObject<{
144
+ status: z.ZodEnum<["pending", "approved", "rejected", "deferred", "blocked_on_clarification"]>;
145
+ proposed_by: z.ZodString;
146
+ approved_by: z.ZodOptional<z.ZodString>;
147
+ approved_at: z.ZodOptional<z.ZodString>;
148
+ rationale: z.ZodOptional<z.ZodString>;
149
+ } & {
150
+ viewport_coverage: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
151
+ components_to_reuse: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
152
+ tokens_to_reuse: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
153
+ tokens_to_add: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
154
+ }, "strip", z.ZodTypeAny, {
155
+ status: "pending" | "approved" | "rejected" | "deferred" | "blocked_on_clarification";
156
+ proposed_by: string;
157
+ approved_by?: string | undefined;
158
+ approved_at?: string | undefined;
159
+ rationale?: string | undefined;
160
+ viewport_coverage?: string[] | undefined;
161
+ components_to_reuse?: string[] | undefined;
162
+ tokens_to_reuse?: string[] | undefined;
163
+ tokens_to_add?: string[] | undefined;
164
+ }, {
165
+ status: "pending" | "approved" | "rejected" | "deferred" | "blocked_on_clarification";
166
+ proposed_by: string;
167
+ approved_by?: string | undefined;
168
+ approved_at?: string | undefined;
169
+ rationale?: string | undefined;
170
+ viewport_coverage?: string[] | undefined;
171
+ components_to_reuse?: string[] | undefined;
172
+ tokens_to_reuse?: string[] | undefined;
173
+ tokens_to_add?: string[] | undefined;
174
+ }>>;
175
+ routes: z.ZodOptional<z.ZodObject<{
176
+ status: z.ZodEnum<["pending", "approved", "rejected", "deferred", "blocked_on_clarification"]>;
177
+ proposed_by: z.ZodString;
178
+ approved_by: z.ZodOptional<z.ZodString>;
179
+ approved_at: z.ZodOptional<z.ZodString>;
180
+ rationale: z.ZodOptional<z.ZodString>;
181
+ } & {
182
+ paths: z.ZodArray<z.ZodObject<{
183
+ path: z.ZodString;
184
+ file: z.ZodString;
185
+ }, "strip", z.ZodTypeAny, {
186
+ path: string;
187
+ file: string;
188
+ }, {
189
+ path: string;
190
+ file: string;
191
+ }>, "many">;
192
+ }, "strip", z.ZodTypeAny, {
193
+ status: "pending" | "approved" | "rejected" | "deferred" | "blocked_on_clarification";
194
+ proposed_by: string;
195
+ paths: {
196
+ path: string;
197
+ file: string;
198
+ }[];
199
+ approved_by?: string | undefined;
200
+ approved_at?: string | undefined;
201
+ rationale?: string | undefined;
202
+ }, {
203
+ status: "pending" | "approved" | "rejected" | "deferred" | "blocked_on_clarification";
204
+ proposed_by: string;
205
+ paths: {
206
+ path: string;
207
+ file: string;
208
+ }[];
209
+ approved_by?: string | undefined;
210
+ approved_at?: string | undefined;
211
+ rationale?: string | undefined;
212
+ }>>;
213
+ auth: z.ZodOptional<z.ZodObject<{
214
+ status: z.ZodEnum<["pending", "approved", "rejected", "deferred", "blocked_on_clarification"]>;
215
+ proposed_by: z.ZodString;
216
+ approved_by: z.ZodOptional<z.ZodString>;
217
+ approved_at: z.ZodOptional<z.ZodString>;
218
+ rationale: z.ZodOptional<z.ZodString>;
219
+ } & {
220
+ requirements: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
221
+ }, "strip", z.ZodTypeAny, {
222
+ status: "pending" | "approved" | "rejected" | "deferred" | "blocked_on_clarification";
223
+ proposed_by: string;
224
+ approved_by?: string | undefined;
225
+ approved_at?: string | undefined;
226
+ rationale?: string | undefined;
227
+ requirements?: string[] | undefined;
228
+ }, {
229
+ status: "pending" | "approved" | "rejected" | "deferred" | "blocked_on_clarification";
230
+ proposed_by: string;
231
+ approved_by?: string | undefined;
232
+ approved_at?: string | undefined;
233
+ rationale?: string | undefined;
234
+ requirements?: string[] | undefined;
235
+ }>>;
236
+ perf_budget: z.ZodOptional<z.ZodObject<{
237
+ status: z.ZodEnum<["pending", "approved", "rejected", "deferred", "blocked_on_clarification"]>;
238
+ proposed_by: z.ZodString;
239
+ approved_by: z.ZodOptional<z.ZodString>;
240
+ approved_at: z.ZodOptional<z.ZodString>;
241
+ rationale: z.ZodOptional<z.ZodString>;
242
+ } & {
243
+ budgets: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodNumber>>;
244
+ }, "strip", z.ZodTypeAny, {
245
+ status: "pending" | "approved" | "rejected" | "deferred" | "blocked_on_clarification";
246
+ proposed_by: string;
247
+ approved_by?: string | undefined;
248
+ approved_at?: string | undefined;
249
+ rationale?: string | undefined;
250
+ budgets?: Record<string, number> | undefined;
251
+ }, {
252
+ status: "pending" | "approved" | "rejected" | "deferred" | "blocked_on_clarification";
253
+ proposed_by: string;
254
+ approved_by?: string | undefined;
255
+ approved_at?: string | undefined;
256
+ rationale?: string | undefined;
257
+ budgets?: Record<string, number> | undefined;
258
+ }>>;
259
+ observability: z.ZodOptional<z.ZodObject<{
260
+ status: z.ZodEnum<["pending", "approved", "rejected", "deferred", "blocked_on_clarification"]>;
261
+ proposed_by: z.ZodString;
262
+ approved_by: z.ZodOptional<z.ZodString>;
263
+ approved_at: z.ZodOptional<z.ZodString>;
264
+ rationale: z.ZodOptional<z.ZodString>;
265
+ } & {
266
+ log_events: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
267
+ metrics: z.ZodOptional<z.ZodArray<z.ZodObject<{
268
+ name: z.ZodString;
269
+ type: z.ZodString;
270
+ }, "strip", z.ZodTypeAny, {
271
+ type: string;
272
+ name: string;
273
+ }, {
274
+ type: string;
275
+ name: string;
276
+ }>, "many">>;
277
+ }, "strip", z.ZodTypeAny, {
278
+ status: "pending" | "approved" | "rejected" | "deferred" | "blocked_on_clarification";
279
+ proposed_by: string;
280
+ approved_by?: string | undefined;
281
+ approved_at?: string | undefined;
282
+ rationale?: string | undefined;
283
+ log_events?: string[] | undefined;
284
+ metrics?: {
285
+ type: string;
286
+ name: string;
287
+ }[] | undefined;
288
+ }, {
289
+ status: "pending" | "approved" | "rejected" | "deferred" | "blocked_on_clarification";
290
+ proposed_by: string;
291
+ approved_by?: string | undefined;
292
+ approved_at?: string | undefined;
293
+ rationale?: string | undefined;
294
+ log_events?: string[] | undefined;
295
+ metrics?: {
296
+ type: string;
297
+ name: string;
298
+ }[] | undefined;
299
+ }>>;
300
+ infra: z.ZodOptional<z.ZodObject<{
301
+ status: z.ZodEnum<["pending", "approved", "rejected", "deferred", "blocked_on_clarification"]>;
302
+ proposed_by: z.ZodString;
303
+ approved_by: z.ZodOptional<z.ZodString>;
304
+ approved_at: z.ZodOptional<z.ZodString>;
305
+ rationale: z.ZodOptional<z.ZodString>;
306
+ } & {
307
+ runtime: z.ZodOptional<z.ZodString>;
308
+ deploy_target: z.ZodOptional<z.ZodString>;
309
+ notes: z.ZodOptional<z.ZodString>;
310
+ }, "strip", z.ZodTypeAny, {
311
+ status: "pending" | "approved" | "rejected" | "deferred" | "blocked_on_clarification";
312
+ proposed_by: string;
313
+ notes?: string | undefined;
314
+ approved_by?: string | undefined;
315
+ approved_at?: string | undefined;
316
+ rationale?: string | undefined;
317
+ runtime?: string | undefined;
318
+ deploy_target?: string | undefined;
319
+ }, {
320
+ status: "pending" | "approved" | "rejected" | "deferred" | "blocked_on_clarification";
321
+ proposed_by: string;
322
+ notes?: string | undefined;
323
+ approved_by?: string | undefined;
324
+ approved_at?: string | undefined;
325
+ rationale?: string | undefined;
326
+ runtime?: string | undefined;
327
+ deploy_target?: string | undefined;
328
+ }>>;
329
+ api_shape: z.ZodOptional<z.ZodObject<{
330
+ status: z.ZodEnum<["pending", "approved", "rejected", "deferred", "blocked_on_clarification"]>;
331
+ proposed_by: z.ZodString;
332
+ approved_by: z.ZodOptional<z.ZodString>;
333
+ approved_at: z.ZodOptional<z.ZodString>;
334
+ rationale: z.ZodOptional<z.ZodString>;
335
+ } & {
336
+ endpoints: z.ZodOptional<z.ZodArray<z.ZodObject<{
337
+ method: z.ZodString;
338
+ path: z.ZodString;
339
+ request_schema: z.ZodOptional<z.ZodUnknown>;
340
+ responses: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
341
+ }, "strip", z.ZodTypeAny, {
342
+ path: string;
343
+ method: string;
344
+ request_schema?: unknown;
345
+ responses?: Record<string, unknown> | undefined;
346
+ }, {
347
+ path: string;
348
+ method: string;
349
+ request_schema?: unknown;
350
+ responses?: Record<string, unknown> | undefined;
351
+ }>, "many">>;
352
+ }, "strip", z.ZodTypeAny, {
353
+ status: "pending" | "approved" | "rejected" | "deferred" | "blocked_on_clarification";
354
+ proposed_by: string;
355
+ approved_by?: string | undefined;
356
+ approved_at?: string | undefined;
357
+ rationale?: string | undefined;
358
+ endpoints?: {
359
+ path: string;
360
+ method: string;
361
+ request_schema?: unknown;
362
+ responses?: Record<string, unknown> | undefined;
363
+ }[] | undefined;
364
+ }, {
365
+ status: "pending" | "approved" | "rejected" | "deferred" | "blocked_on_clarification";
366
+ proposed_by: string;
367
+ approved_by?: string | undefined;
368
+ approved_at?: string | undefined;
369
+ rationale?: string | undefined;
370
+ endpoints?: {
371
+ path: string;
372
+ method: string;
373
+ request_schema?: unknown;
374
+ responses?: Record<string, unknown> | undefined;
375
+ }[] | undefined;
376
+ }>>;
377
+ }, "strip", z.ZodTypeAny, {
378
+ schema?: {
379
+ status: "pending" | "approved" | "rejected" | "deferred" | "blocked_on_clarification";
380
+ proposed_by: string;
381
+ sql: string;
382
+ approved_by?: string | undefined;
383
+ approved_at?: string | undefined;
384
+ rationale?: string | undefined;
385
+ } | undefined;
386
+ ui_layout?: {
387
+ status: "pending" | "approved" | "rejected" | "deferred" | "blocked_on_clarification";
388
+ proposed_by: string;
389
+ approved_by?: string | undefined;
390
+ approved_at?: string | undefined;
391
+ rationale?: string | undefined;
392
+ viewport_coverage?: string[] | undefined;
393
+ components_to_reuse?: string[] | undefined;
394
+ tokens_to_reuse?: string[] | undefined;
395
+ tokens_to_add?: string[] | undefined;
396
+ } | undefined;
397
+ routes?: {
398
+ status: "pending" | "approved" | "rejected" | "deferred" | "blocked_on_clarification";
399
+ proposed_by: string;
400
+ paths: {
401
+ path: string;
402
+ file: string;
403
+ }[];
404
+ approved_by?: string | undefined;
405
+ approved_at?: string | undefined;
406
+ rationale?: string | undefined;
407
+ } | undefined;
408
+ auth?: {
409
+ status: "pending" | "approved" | "rejected" | "deferred" | "blocked_on_clarification";
410
+ proposed_by: string;
411
+ approved_by?: string | undefined;
412
+ approved_at?: string | undefined;
413
+ rationale?: string | undefined;
414
+ requirements?: string[] | undefined;
415
+ } | undefined;
416
+ perf_budget?: {
417
+ status: "pending" | "approved" | "rejected" | "deferred" | "blocked_on_clarification";
418
+ proposed_by: string;
419
+ approved_by?: string | undefined;
420
+ approved_at?: string | undefined;
421
+ rationale?: string | undefined;
422
+ budgets?: Record<string, number> | undefined;
423
+ } | undefined;
424
+ observability?: {
425
+ status: "pending" | "approved" | "rejected" | "deferred" | "blocked_on_clarification";
426
+ proposed_by: string;
427
+ approved_by?: string | undefined;
428
+ approved_at?: string | undefined;
429
+ rationale?: string | undefined;
430
+ log_events?: string[] | undefined;
431
+ metrics?: {
432
+ type: string;
433
+ name: string;
434
+ }[] | undefined;
435
+ } | undefined;
436
+ infra?: {
437
+ status: "pending" | "approved" | "rejected" | "deferred" | "blocked_on_clarification";
438
+ proposed_by: string;
439
+ notes?: string | undefined;
440
+ approved_by?: string | undefined;
441
+ approved_at?: string | undefined;
442
+ rationale?: string | undefined;
443
+ runtime?: string | undefined;
444
+ deploy_target?: string | undefined;
445
+ } | undefined;
446
+ api_shape?: {
447
+ status: "pending" | "approved" | "rejected" | "deferred" | "blocked_on_clarification";
448
+ proposed_by: string;
449
+ approved_by?: string | undefined;
450
+ approved_at?: string | undefined;
451
+ rationale?: string | undefined;
452
+ endpoints?: {
453
+ path: string;
454
+ method: string;
455
+ request_schema?: unknown;
456
+ responses?: Record<string, unknown> | undefined;
457
+ }[] | undefined;
458
+ } | undefined;
459
+ }, {
460
+ schema?: {
461
+ status: "pending" | "approved" | "rejected" | "deferred" | "blocked_on_clarification";
462
+ proposed_by: string;
463
+ sql: string;
464
+ approved_by?: string | undefined;
465
+ approved_at?: string | undefined;
466
+ rationale?: string | undefined;
467
+ } | undefined;
468
+ ui_layout?: {
469
+ status: "pending" | "approved" | "rejected" | "deferred" | "blocked_on_clarification";
470
+ proposed_by: string;
471
+ approved_by?: string | undefined;
472
+ approved_at?: string | undefined;
473
+ rationale?: string | undefined;
474
+ viewport_coverage?: string[] | undefined;
475
+ components_to_reuse?: string[] | undefined;
476
+ tokens_to_reuse?: string[] | undefined;
477
+ tokens_to_add?: string[] | undefined;
478
+ } | undefined;
479
+ routes?: {
480
+ status: "pending" | "approved" | "rejected" | "deferred" | "blocked_on_clarification";
481
+ proposed_by: string;
482
+ paths: {
483
+ path: string;
484
+ file: string;
485
+ }[];
486
+ approved_by?: string | undefined;
487
+ approved_at?: string | undefined;
488
+ rationale?: string | undefined;
489
+ } | undefined;
490
+ auth?: {
491
+ status: "pending" | "approved" | "rejected" | "deferred" | "blocked_on_clarification";
492
+ proposed_by: string;
493
+ approved_by?: string | undefined;
494
+ approved_at?: string | undefined;
495
+ rationale?: string | undefined;
496
+ requirements?: string[] | undefined;
497
+ } | undefined;
498
+ perf_budget?: {
499
+ status: "pending" | "approved" | "rejected" | "deferred" | "blocked_on_clarification";
500
+ proposed_by: string;
501
+ approved_by?: string | undefined;
502
+ approved_at?: string | undefined;
503
+ rationale?: string | undefined;
504
+ budgets?: Record<string, number> | undefined;
505
+ } | undefined;
506
+ observability?: {
507
+ status: "pending" | "approved" | "rejected" | "deferred" | "blocked_on_clarification";
508
+ proposed_by: string;
509
+ approved_by?: string | undefined;
510
+ approved_at?: string | undefined;
511
+ rationale?: string | undefined;
512
+ log_events?: string[] | undefined;
513
+ metrics?: {
514
+ type: string;
515
+ name: string;
516
+ }[] | undefined;
517
+ } | undefined;
518
+ infra?: {
519
+ status: "pending" | "approved" | "rejected" | "deferred" | "blocked_on_clarification";
520
+ proposed_by: string;
521
+ notes?: string | undefined;
522
+ approved_by?: string | undefined;
523
+ approved_at?: string | undefined;
524
+ rationale?: string | undefined;
525
+ runtime?: string | undefined;
526
+ deploy_target?: string | undefined;
527
+ } | undefined;
528
+ api_shape?: {
529
+ status: "pending" | "approved" | "rejected" | "deferred" | "blocked_on_clarification";
530
+ proposed_by: string;
531
+ approved_by?: string | undefined;
532
+ approved_at?: string | undefined;
533
+ rationale?: string | undefined;
534
+ endpoints?: {
535
+ path: string;
536
+ method: string;
537
+ request_schema?: unknown;
538
+ responses?: Record<string, unknown> | undefined;
539
+ }[] | undefined;
540
+ } | undefined;
541
+ }>>;
119
542
  }, "strip", z.ZodTypeAny, {
120
- title: string;
121
543
  status: "draft" | "active" | "superseded";
544
+ title: string;
122
545
  supersedes: string[];
123
546
  superseded_by: string | null;
124
547
  story_id: string;
@@ -131,8 +554,8 @@ export declare const schemas: {
131
554
  invariants: string[];
132
555
  acceptance_scenarios: string[];
133
556
  non_goals: string[];
134
- source_issue?: string | undefined;
135
557
  $schema?: string | undefined;
558
+ source_issue?: string | undefined;
136
559
  token_budget_usd?: number | undefined;
137
560
  estimate?: "small" | "medium" | "large" | undefined;
138
561
  refined_by?: string | undefined;
@@ -143,9 +566,92 @@ export declare const schemas: {
143
566
  relationship: "superseded" | "overlap" | "related";
144
567
  note?: string | undefined;
145
568
  }[] | undefined;
569
+ proposals?: {
570
+ schema?: {
571
+ status: "pending" | "approved" | "rejected" | "deferred" | "blocked_on_clarification";
572
+ proposed_by: string;
573
+ sql: string;
574
+ approved_by?: string | undefined;
575
+ approved_at?: string | undefined;
576
+ rationale?: string | undefined;
577
+ } | undefined;
578
+ ui_layout?: {
579
+ status: "pending" | "approved" | "rejected" | "deferred" | "blocked_on_clarification";
580
+ proposed_by: string;
581
+ approved_by?: string | undefined;
582
+ approved_at?: string | undefined;
583
+ rationale?: string | undefined;
584
+ viewport_coverage?: string[] | undefined;
585
+ components_to_reuse?: string[] | undefined;
586
+ tokens_to_reuse?: string[] | undefined;
587
+ tokens_to_add?: string[] | undefined;
588
+ } | undefined;
589
+ routes?: {
590
+ status: "pending" | "approved" | "rejected" | "deferred" | "blocked_on_clarification";
591
+ proposed_by: string;
592
+ paths: {
593
+ path: string;
594
+ file: string;
595
+ }[];
596
+ approved_by?: string | undefined;
597
+ approved_at?: string | undefined;
598
+ rationale?: string | undefined;
599
+ } | undefined;
600
+ auth?: {
601
+ status: "pending" | "approved" | "rejected" | "deferred" | "blocked_on_clarification";
602
+ proposed_by: string;
603
+ approved_by?: string | undefined;
604
+ approved_at?: string | undefined;
605
+ rationale?: string | undefined;
606
+ requirements?: string[] | undefined;
607
+ } | undefined;
608
+ perf_budget?: {
609
+ status: "pending" | "approved" | "rejected" | "deferred" | "blocked_on_clarification";
610
+ proposed_by: string;
611
+ approved_by?: string | undefined;
612
+ approved_at?: string | undefined;
613
+ rationale?: string | undefined;
614
+ budgets?: Record<string, number> | undefined;
615
+ } | undefined;
616
+ observability?: {
617
+ status: "pending" | "approved" | "rejected" | "deferred" | "blocked_on_clarification";
618
+ proposed_by: string;
619
+ approved_by?: string | undefined;
620
+ approved_at?: string | undefined;
621
+ rationale?: string | undefined;
622
+ log_events?: string[] | undefined;
623
+ metrics?: {
624
+ type: string;
625
+ name: string;
626
+ }[] | undefined;
627
+ } | undefined;
628
+ infra?: {
629
+ status: "pending" | "approved" | "rejected" | "deferred" | "blocked_on_clarification";
630
+ proposed_by: string;
631
+ notes?: string | undefined;
632
+ approved_by?: string | undefined;
633
+ approved_at?: string | undefined;
634
+ rationale?: string | undefined;
635
+ runtime?: string | undefined;
636
+ deploy_target?: string | undefined;
637
+ } | undefined;
638
+ api_shape?: {
639
+ status: "pending" | "approved" | "rejected" | "deferred" | "blocked_on_clarification";
640
+ proposed_by: string;
641
+ approved_by?: string | undefined;
642
+ approved_at?: string | undefined;
643
+ rationale?: string | undefined;
644
+ endpoints?: {
645
+ path: string;
646
+ method: string;
647
+ request_schema?: unknown;
648
+ responses?: Record<string, unknown> | undefined;
649
+ }[] | undefined;
650
+ } | undefined;
651
+ } | undefined;
146
652
  }, {
147
- title: string;
148
653
  status: "draft" | "active" | "superseded";
654
+ title: string;
149
655
  supersedes: string[];
150
656
  superseded_by: string | null;
151
657
  story_id: string;
@@ -158,8 +664,8 @@ export declare const schemas: {
158
664
  invariants: string[];
159
665
  acceptance_scenarios: string[];
160
666
  non_goals: string[];
161
- source_issue?: string | undefined;
162
667
  $schema?: string | undefined;
668
+ source_issue?: string | undefined;
163
669
  token_budget_usd?: number | undefined;
164
670
  estimate?: "small" | "medium" | "large" | undefined;
165
671
  refined_by?: string | undefined;
@@ -170,6 +676,89 @@ export declare const schemas: {
170
676
  relationship: "superseded" | "overlap" | "related";
171
677
  note?: string | undefined;
172
678
  }[] | undefined;
679
+ proposals?: {
680
+ schema?: {
681
+ status: "pending" | "approved" | "rejected" | "deferred" | "blocked_on_clarification";
682
+ proposed_by: string;
683
+ sql: string;
684
+ approved_by?: string | undefined;
685
+ approved_at?: string | undefined;
686
+ rationale?: string | undefined;
687
+ } | undefined;
688
+ ui_layout?: {
689
+ status: "pending" | "approved" | "rejected" | "deferred" | "blocked_on_clarification";
690
+ proposed_by: string;
691
+ approved_by?: string | undefined;
692
+ approved_at?: string | undefined;
693
+ rationale?: string | undefined;
694
+ viewport_coverage?: string[] | undefined;
695
+ components_to_reuse?: string[] | undefined;
696
+ tokens_to_reuse?: string[] | undefined;
697
+ tokens_to_add?: string[] | undefined;
698
+ } | undefined;
699
+ routes?: {
700
+ status: "pending" | "approved" | "rejected" | "deferred" | "blocked_on_clarification";
701
+ proposed_by: string;
702
+ paths: {
703
+ path: string;
704
+ file: string;
705
+ }[];
706
+ approved_by?: string | undefined;
707
+ approved_at?: string | undefined;
708
+ rationale?: string | undefined;
709
+ } | undefined;
710
+ auth?: {
711
+ status: "pending" | "approved" | "rejected" | "deferred" | "blocked_on_clarification";
712
+ proposed_by: string;
713
+ approved_by?: string | undefined;
714
+ approved_at?: string | undefined;
715
+ rationale?: string | undefined;
716
+ requirements?: string[] | undefined;
717
+ } | undefined;
718
+ perf_budget?: {
719
+ status: "pending" | "approved" | "rejected" | "deferred" | "blocked_on_clarification";
720
+ proposed_by: string;
721
+ approved_by?: string | undefined;
722
+ approved_at?: string | undefined;
723
+ rationale?: string | undefined;
724
+ budgets?: Record<string, number> | undefined;
725
+ } | undefined;
726
+ observability?: {
727
+ status: "pending" | "approved" | "rejected" | "deferred" | "blocked_on_clarification";
728
+ proposed_by: string;
729
+ approved_by?: string | undefined;
730
+ approved_at?: string | undefined;
731
+ rationale?: string | undefined;
732
+ log_events?: string[] | undefined;
733
+ metrics?: {
734
+ type: string;
735
+ name: string;
736
+ }[] | undefined;
737
+ } | undefined;
738
+ infra?: {
739
+ status: "pending" | "approved" | "rejected" | "deferred" | "blocked_on_clarification";
740
+ proposed_by: string;
741
+ notes?: string | undefined;
742
+ approved_by?: string | undefined;
743
+ approved_at?: string | undefined;
744
+ rationale?: string | undefined;
745
+ runtime?: string | undefined;
746
+ deploy_target?: string | undefined;
747
+ } | undefined;
748
+ api_shape?: {
749
+ status: "pending" | "approved" | "rejected" | "deferred" | "blocked_on_clarification";
750
+ proposed_by: string;
751
+ approved_by?: string | undefined;
752
+ approved_at?: string | undefined;
753
+ rationale?: string | undefined;
754
+ endpoints?: {
755
+ path: string;
756
+ method: string;
757
+ request_schema?: unknown;
758
+ responses?: Record<string, unknown> | undefined;
759
+ }[] | undefined;
760
+ } | undefined;
761
+ } | undefined;
173
762
  }>;
174
763
  SpecIndexEntry: z.ZodObject<{
175
764
  title: z.ZodString;
@@ -180,16 +769,16 @@ export declare const schemas: {
180
769
  supersedes: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
181
770
  superseded_by: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNull]>>;
182
771
  }, "strip", z.ZodTypeAny, {
183
- title: string;
184
772
  status: "draft" | "active" | "superseded";
773
+ title: string;
185
774
  source_issue?: string | undefined;
186
775
  tags?: string[] | undefined;
187
776
  summary?: string | undefined;
188
777
  supersedes?: string[] | undefined;
189
778
  superseded_by?: string | null | undefined;
190
779
  }, {
191
- title: string;
192
780
  status: "draft" | "active" | "superseded";
781
+ title: string;
193
782
  source_issue?: string | undefined;
194
783
  tags?: string[] | undefined;
195
784
  summary?: string | undefined;