@agent-plan/core 0.2.25 → 0.2.27

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 (66) hide show
  1. package/dist/description-freshness.d.ts +37 -0
  2. package/dist/description-freshness.d.ts.map +1 -0
  3. package/dist/description-freshness.js +84 -0
  4. package/dist/display-status.d.ts +3 -3
  5. package/dist/display-status.d.ts.map +1 -1
  6. package/dist/display-status.js +5 -4
  7. package/dist/handoff-context.d.ts +222 -1
  8. package/dist/handoff-context.d.ts.map +1 -1
  9. package/dist/handoff-context.js +461 -11
  10. package/dist/index.d.ts +8 -1
  11. package/dist/index.d.ts.map +1 -1
  12. package/dist/index.js +8 -1
  13. package/dist/naming.d.ts +3 -0
  14. package/dist/naming.d.ts.map +1 -1
  15. package/dist/naming.js +7 -0
  16. package/dist/package-version.d.ts +2 -0
  17. package/dist/package-version.d.ts.map +1 -1
  18. package/dist/package-version.js +1 -1
  19. package/dist/payload-fallback.d.ts +38 -0
  20. package/dist/payload-fallback.d.ts.map +1 -0
  21. package/dist/payload-fallback.js +79 -0
  22. package/dist/plan-store.d.ts +192 -36
  23. package/dist/plan-store.d.ts.map +1 -1
  24. package/dist/plan-store.js +1048 -126
  25. package/dist/planner-rules.d.ts.map +1 -1
  26. package/dist/planner-rules.js +9 -3
  27. package/dist/planner-skill.d.ts +24 -0
  28. package/dist/planner-skill.d.ts.map +1 -0
  29. package/dist/planner-skill.js +113 -0
  30. package/dist/project-context-migration.d.ts +47 -0
  31. package/dist/project-context-migration.d.ts.map +1 -0
  32. package/dist/project-context-migration.js +168 -0
  33. package/dist/read-tracking.d.ts +47 -13
  34. package/dist/read-tracking.d.ts.map +1 -1
  35. package/dist/read-tracking.js +88 -33
  36. package/dist/recap.d.ts.map +1 -1
  37. package/dist/recap.js +34 -9
  38. package/dist/refs.d.ts +6 -1
  39. package/dist/refs.d.ts.map +1 -1
  40. package/dist/refs.js +25 -0
  41. package/dist/renderer.d.ts.map +1 -1
  42. package/dist/renderer.js +24 -2
  43. package/dist/requirement-macro-tasks.d.ts +18 -0
  44. package/dist/requirement-macro-tasks.d.ts.map +1 -0
  45. package/dist/requirement-macro-tasks.js +55 -0
  46. package/dist/runtime-diagnostics.d.ts +34 -0
  47. package/dist/runtime-diagnostics.d.ts.map +1 -0
  48. package/dist/runtime-diagnostics.js +39 -0
  49. package/dist/schema.d.ts +1575 -290
  50. package/dist/schema.d.ts.map +1 -1
  51. package/dist/schema.js +89 -4
  52. package/dist/task-context.d.ts +41 -2
  53. package/dist/task-context.d.ts.map +1 -1
  54. package/dist/task-context.js +102 -4
  55. package/dist/task-selection.d.ts +44 -1
  56. package/dist/task-selection.d.ts.map +1 -1
  57. package/dist/task-selection.js +158 -7
  58. package/dist/task-start-outcome.d.ts +1 -1
  59. package/dist/task-start-outcome.d.ts.map +1 -1
  60. package/dist/task-start-outcome.js +1 -0
  61. package/dist/write-coordination.d.ts +27 -0
  62. package/dist/write-coordination.d.ts.map +1 -0
  63. package/dist/write-coordination.js +223 -0
  64. package/package.json +3 -1
  65. package/planner-skill.md +226 -0
  66. package/skills/grill-me/SKILL.md +10 -0
package/dist/schema.d.ts CHANGED
@@ -1,6 +1,7 @@
1
1
  import { z } from "zod";
2
2
  export declare const TimestampSchema: z.ZodString;
3
3
  export declare const SlugSchema: z.ZodString;
4
+ export declare const DescriptionRefSchema: z.ZodEffects<z.ZodString, string, string>;
4
5
  export declare const CodebaseFileSchema: z.ZodObject<{
5
6
  path: z.ZodString;
6
7
  kind: z.ZodDefault<z.ZodString>;
@@ -169,14 +170,14 @@ export declare const ActivityEntrySchema: z.ZodObject<{
169
170
  ref: z.ZodDefault<z.ZodString>;
170
171
  summary: z.ZodDefault<z.ZodString>;
171
172
  }, "strip", z.ZodTypeAny, {
172
- type: string;
173
173
  at: string;
174
+ type: string;
174
175
  id: string;
175
176
  ref: string;
176
177
  summary: string;
177
178
  }, {
178
- type: string;
179
179
  at: string;
180
+ type: string;
180
181
  id: string;
181
182
  ref?: string | undefined;
182
183
  summary?: string | undefined;
@@ -189,30 +190,30 @@ export declare const ActivityLogSchema: z.ZodObject<{
189
190
  ref: z.ZodDefault<z.ZodString>;
190
191
  summary: z.ZodDefault<z.ZodString>;
191
192
  }, "strip", z.ZodTypeAny, {
192
- type: string;
193
193
  at: string;
194
+ type: string;
194
195
  id: string;
195
196
  ref: string;
196
197
  summary: string;
197
198
  }, {
198
- type: string;
199
199
  at: string;
200
+ type: string;
200
201
  id: string;
201
202
  ref?: string | undefined;
202
203
  summary?: string | undefined;
203
204
  }>, "many">>;
204
205
  }, "strip", z.ZodTypeAny, {
205
206
  entries: {
206
- type: string;
207
207
  at: string;
208
+ type: string;
208
209
  id: string;
209
210
  ref: string;
210
211
  summary: string;
211
212
  }[];
212
213
  }, {
213
214
  entries?: {
214
- type: string;
215
215
  at: string;
216
+ type: string;
216
217
  id: string;
217
218
  ref?: string | undefined;
218
219
  summary?: string | undefined;
@@ -408,10 +409,67 @@ export declare const WorkDeviationSchema: z.ZodObject<{
408
409
  resolvedAt?: string | undefined;
409
410
  resumedAt?: string | undefined;
410
411
  }>;
412
+ export declare const ProjectGuidelinesSchema: z.ZodObject<{
413
+ content: z.ZodDefault<z.ZodString>;
414
+ updatedAt: z.ZodDefault<z.ZodString>;
415
+ sessionInfo: z.ZodDefault<z.ZodArray<z.ZodObject<{
416
+ sessionId: z.ZodString;
417
+ createdAt: z.ZodString;
418
+ }, "strip", z.ZodTypeAny, {
419
+ createdAt: string;
420
+ sessionId: string;
421
+ }, {
422
+ createdAt: string;
423
+ sessionId: string;
424
+ }>, "many">>;
425
+ }, "strip", z.ZodTypeAny, {
426
+ updatedAt: string;
427
+ content: string;
428
+ sessionInfo: {
429
+ createdAt: string;
430
+ sessionId: string;
431
+ }[];
432
+ }, {
433
+ updatedAt?: string | undefined;
434
+ content?: string | undefined;
435
+ sessionInfo?: {
436
+ createdAt: string;
437
+ sessionId: string;
438
+ }[] | undefined;
439
+ }>;
411
440
  export declare const ProjectSchema: z.ZodObject<{
412
441
  name: z.ZodString;
413
442
  goal: z.ZodDefault<z.ZodString>;
414
443
  description: z.ZodDefault<z.ZodString>;
444
+ descriptionRef: z.ZodOptional<z.ZodEffects<z.ZodString, string, string>>;
445
+ projectGuidelines: z.ZodDefault<z.ZodObject<{
446
+ content: z.ZodDefault<z.ZodString>;
447
+ updatedAt: z.ZodDefault<z.ZodString>;
448
+ sessionInfo: z.ZodDefault<z.ZodArray<z.ZodObject<{
449
+ sessionId: z.ZodString;
450
+ createdAt: z.ZodString;
451
+ }, "strip", z.ZodTypeAny, {
452
+ createdAt: string;
453
+ sessionId: string;
454
+ }, {
455
+ createdAt: string;
456
+ sessionId: string;
457
+ }>, "many">>;
458
+ }, "strip", z.ZodTypeAny, {
459
+ updatedAt: string;
460
+ content: string;
461
+ sessionInfo: {
462
+ createdAt: string;
463
+ sessionId: string;
464
+ }[];
465
+ }, {
466
+ updatedAt?: string | undefined;
467
+ content?: string | undefined;
468
+ sessionInfo?: {
469
+ createdAt: string;
470
+ sessionId: string;
471
+ }[] | undefined;
472
+ }>>;
415
473
  webPort: z.ZodDefault<z.ZodNumber>;
416
474
  scope: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
417
475
  outOfScope: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
@@ -568,6 +626,14 @@ export declare const ProjectSchema: z.ZodObject<{
568
626
  name: string;
569
627
  goal: string;
570
628
  description: string;
629
+ projectGuidelines: {
630
+ updatedAt: string;
631
+ content: string;
632
+ sessionInfo: {
633
+ createdAt: string;
634
+ sessionId: string;
635
+ }[];
636
+ };
571
637
  webPort: number;
572
638
  scope: string[];
573
639
  outOfScope: string[];
@@ -618,6 +684,7 @@ export declare const ProjectSchema: z.ZodObject<{
618
684
  resolvedAt: string;
619
685
  resumedAt: string;
620
686
  }[];
687
+ descriptionRef?: string | undefined;
621
688
  }, {
622
689
  name: string;
623
690
  workflowRules: {
@@ -627,6 +694,15 @@ export declare const ProjectSchema: z.ZodObject<{
627
694
  };
628
695
  goal?: string | undefined;
629
696
  description?: string | undefined;
697
+ descriptionRef?: string | undefined;
698
+ projectGuidelines?: {
699
+ updatedAt?: string | undefined;
700
+ content?: string | undefined;
701
+ sessionInfo?: {
702
+ createdAt: string;
703
+ sessionId: string;
704
+ }[] | undefined;
705
+ } | undefined;
630
706
  webPort?: number | undefined;
631
707
  scope?: string[] | undefined;
632
708
  outOfScope?: string[] | undefined;
@@ -676,7 +752,7 @@ export declare const ProjectSchema: z.ZodObject<{
676
752
  export declare const SubtaskStatusSchema: z.ZodEnum<["planned", "in-progress", "done", "blocked", "canceled", "rejected", "deferred", "waiting"]>;
677
753
  export declare const TaskStatusSchema: z.ZodEnum<["planned", "in-progress", "done", "blocked", "canceled", "rejected", "deferred", "waiting"]>;
678
754
  export declare const PhaseStatusSchema: z.ZodEnum<["draft", "discovery", "planned", "in-progress", "done", "blocked", "canceled", "rejected", "deferred", "waiting"]>;
679
- export declare const RequirementStatusSchema: z.ZodEnum<["planned", "in-progress", "done", "blocked", "canceled", "rejected", "deferred", "waiting"]>;
755
+ export declare const MacroTaskStatusSchema: z.ZodEnum<["planned", "in-progress", "done", "blocked", "canceled", "rejected", "deferred", "waiting"]>;
680
756
  export declare const FeatureStatusSchema: z.ZodEnum<["planned", "in-progress", "done", "blocked", "canceled", "rejected", "deferred", "waiting"]>;
681
757
  export declare const SubtaskSchema: z.ZodObject<{
682
758
  id: z.ZodString;
@@ -797,6 +873,7 @@ export declare const TaskSchema: z.ZodEffects<z.ZodObject<{
797
873
  title: z.ZodString;
798
874
  status: z.ZodEnum<["planned", "in-progress", "done", "blocked", "canceled", "rejected", "deferred", "waiting"]>;
799
875
  description: z.ZodDefault<z.ZodString>;
876
+ descriptionRef: z.ZodOptional<z.ZodEffects<z.ZodString, string, string>>;
800
877
  /** Updated only when this task's description changes; distinct from entity updatedAt. */
801
878
  descriptionUpdatedAt: z.ZodDefault<z.ZodString>;
802
879
  notes: z.ZodDefault<z.ZodString>;
@@ -970,6 +1047,8 @@ export declare const TaskSchema: z.ZodEffects<z.ZodObject<{
970
1047
  createdAt: string;
971
1048
  sessionId: string;
972
1049
  }>, "many">>;
1050
+ /** Session currently owning this in-progress task ("" when not in-progress or legacy). Enables concurrent starts across agent sessions. */
1051
+ activeOwnerSession: z.ZodDefault<z.ZodString>;
973
1052
  }, "strip", z.ZodTypeAny, {
974
1053
  number: number;
975
1054
  status: "canceled" | "planned" | "in-progress" | "done" | "blocked" | "rejected" | "deferred" | "waiting";
@@ -978,6 +1057,10 @@ export declare const TaskSchema: z.ZodEffects<z.ZodObject<{
978
1057
  id: string;
979
1058
  createdAt: string;
980
1059
  title: string;
1060
+ sessionInfo: {
1061
+ createdAt: string;
1062
+ sessionId: string;
1063
+ }[];
981
1064
  description: string;
982
1065
  decisions: string[];
983
1066
  acceptedDecisions: {
@@ -1038,10 +1121,8 @@ export declare const TaskSchema: z.ZodEffects<z.ZodObject<{
1038
1121
  }[];
1039
1122
  startedAt: string;
1040
1123
  completedAt: string;
1041
- sessionInfo: {
1042
- createdAt: string;
1043
- sessionId: string;
1044
- }[];
1124
+ activeOwnerSession: string;
1125
+ descriptionRef?: string | undefined;
1045
1126
  }, {
1046
1127
  status: "canceled" | "planned" | "in-progress" | "done" | "blocked" | "rejected" | "deferred" | "waiting";
1047
1128
  updatedAt: string;
@@ -1052,7 +1133,12 @@ export declare const TaskSchema: z.ZodEffects<z.ZodObject<{
1052
1133
  shortName: string;
1053
1134
  number?: number | undefined;
1054
1135
  notes?: string | undefined;
1136
+ sessionInfo?: {
1137
+ createdAt: string;
1138
+ sessionId: string;
1139
+ }[] | undefined;
1055
1140
  description?: string | undefined;
1141
+ descriptionRef?: string | undefined;
1056
1142
  decisions?: string[] | undefined;
1057
1143
  acceptedDecisions?: {
1058
1144
  id: string;
@@ -1110,10 +1196,7 @@ export declare const TaskSchema: z.ZodEffects<z.ZodObject<{
1110
1196
  }[] | undefined;
1111
1197
  startedAt?: string | undefined;
1112
1198
  completedAt?: string | undefined;
1113
- sessionInfo?: {
1114
- createdAt: string;
1115
- sessionId: string;
1116
- }[] | undefined;
1199
+ activeOwnerSession?: string | undefined;
1117
1200
  }>, {
1118
1201
  checklist: {
1119
1202
  id: string;
@@ -1128,6 +1211,10 @@ export declare const TaskSchema: z.ZodEffects<z.ZodObject<{
1128
1211
  id: string;
1129
1212
  createdAt: string;
1130
1213
  title: string;
1214
+ sessionInfo: {
1215
+ createdAt: string;
1216
+ sessionId: string;
1217
+ }[];
1131
1218
  description: string;
1132
1219
  decisions: string[];
1133
1220
  acceptedDecisions: {
@@ -1182,10 +1269,8 @@ export declare const TaskSchema: z.ZodEffects<z.ZodObject<{
1182
1269
  }[];
1183
1270
  startedAt: string;
1184
1271
  completedAt: string;
1185
- sessionInfo: {
1186
- createdAt: string;
1187
- sessionId: string;
1188
- }[];
1272
+ activeOwnerSession: string;
1273
+ descriptionRef?: string | undefined;
1189
1274
  }, {
1190
1275
  status: "canceled" | "planned" | "in-progress" | "done" | "blocked" | "rejected" | "deferred" | "waiting";
1191
1276
  updatedAt: string;
@@ -1196,7 +1281,12 @@ export declare const TaskSchema: z.ZodEffects<z.ZodObject<{
1196
1281
  shortName: string;
1197
1282
  number?: number | undefined;
1198
1283
  notes?: string | undefined;
1284
+ sessionInfo?: {
1285
+ createdAt: string;
1286
+ sessionId: string;
1287
+ }[] | undefined;
1199
1288
  description?: string | undefined;
1289
+ descriptionRef?: string | undefined;
1200
1290
  decisions?: string[] | undefined;
1201
1291
  acceptedDecisions?: {
1202
1292
  id: string;
@@ -1254,10 +1344,7 @@ export declare const TaskSchema: z.ZodEffects<z.ZodObject<{
1254
1344
  }[] | undefined;
1255
1345
  startedAt?: string | undefined;
1256
1346
  completedAt?: string | undefined;
1257
- sessionInfo?: {
1258
- createdAt: string;
1259
- sessionId: string;
1260
- }[] | undefined;
1347
+ activeOwnerSession?: string | undefined;
1261
1348
  }>;
1262
1349
  export declare const HandoffHistoryEntrySchema: z.ZodObject<{
1263
1350
  /** Relative path under .planner/.local/handoff-archive/ (e.g. <phaseId>-<ISO>.md). */
@@ -1274,6 +1361,268 @@ export declare const HandoffHistoryEntrySchema: z.ZodObject<{
1274
1361
  file?: string | undefined;
1275
1362
  reason?: string | undefined;
1276
1363
  }>;
1364
+ export declare const HandoffCompletenessEntrySchema: z.ZodObject<{
1365
+ category: z.ZodString;
1366
+ status: z.ZodEnum<["captured", "not-applicable"]>;
1367
+ detail: z.ZodString;
1368
+ }, "strip", z.ZodTypeAny, {
1369
+ status: "captured" | "not-applicable";
1370
+ category: string;
1371
+ detail: string;
1372
+ }, {
1373
+ status: "captured" | "not-applicable";
1374
+ category: string;
1375
+ detail: string;
1376
+ }>;
1377
+ export declare const HandoffSupportingDocumentSchema: z.ZodObject<{
1378
+ path: z.ZodString;
1379
+ description: z.ZodString;
1380
+ contentHash: z.ZodString;
1381
+ contentLength: z.ZodNumber;
1382
+ }, "strip", z.ZodTypeAny, {
1383
+ path: string;
1384
+ description: string;
1385
+ contentHash: string;
1386
+ contentLength: number;
1387
+ }, {
1388
+ path: string;
1389
+ description: string;
1390
+ contentHash: string;
1391
+ contentLength: number;
1392
+ }>;
1393
+ export declare const HandoffColdStartInventoryEntrySchema: z.ZodObject<{
1394
+ category: z.ZodString;
1395
+ items: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
1396
+ notApplicableReason: z.ZodOptional<z.ZodString>;
1397
+ }, "strip", z.ZodTypeAny, {
1398
+ category: string;
1399
+ items: string[];
1400
+ notApplicableReason?: string | undefined;
1401
+ }, {
1402
+ category: string;
1403
+ items?: string[] | undefined;
1404
+ notApplicableReason?: string | undefined;
1405
+ }>;
1406
+ export declare const HandoffColdStartSourceReviewSchema: z.ZodObject<{
1407
+ source: z.ZodString;
1408
+ detail: z.ZodString;
1409
+ }, "strip", z.ZodTypeAny, {
1410
+ detail: string;
1411
+ source: string;
1412
+ }, {
1413
+ detail: string;
1414
+ source: string;
1415
+ }>;
1416
+ export declare const HandoffColdStartInventorySchema: z.ZodObject<{
1417
+ version: z.ZodNumber;
1418
+ sourceReviews: z.ZodArray<z.ZodObject<{
1419
+ source: z.ZodString;
1420
+ detail: z.ZodString;
1421
+ }, "strip", z.ZodTypeAny, {
1422
+ detail: string;
1423
+ source: string;
1424
+ }, {
1425
+ detail: string;
1426
+ source: string;
1427
+ }>, "many">;
1428
+ entries: z.ZodArray<z.ZodObject<{
1429
+ category: z.ZodString;
1430
+ items: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
1431
+ notApplicableReason: z.ZodOptional<z.ZodString>;
1432
+ }, "strip", z.ZodTypeAny, {
1433
+ category: string;
1434
+ items: string[];
1435
+ notApplicableReason?: string | undefined;
1436
+ }, {
1437
+ category: string;
1438
+ items?: string[] | undefined;
1439
+ notApplicableReason?: string | undefined;
1440
+ }>, "many">;
1441
+ }, "strip", z.ZodTypeAny, {
1442
+ entries: {
1443
+ category: string;
1444
+ items: string[];
1445
+ notApplicableReason?: string | undefined;
1446
+ }[];
1447
+ version: number;
1448
+ sourceReviews: {
1449
+ detail: string;
1450
+ source: string;
1451
+ }[];
1452
+ }, {
1453
+ entries: {
1454
+ category: string;
1455
+ items?: string[] | undefined;
1456
+ notApplicableReason?: string | undefined;
1457
+ }[];
1458
+ version: number;
1459
+ sourceReviews: {
1460
+ detail: string;
1461
+ source: string;
1462
+ }[];
1463
+ }>;
1464
+ export declare const HandoffCompletenessAuditSchema: z.ZodObject<{
1465
+ version: z.ZodNumber;
1466
+ entries: z.ZodArray<z.ZodObject<{
1467
+ category: z.ZodString;
1468
+ status: z.ZodEnum<["captured", "not-applicable"]>;
1469
+ detail: z.ZodString;
1470
+ }, "strip", z.ZodTypeAny, {
1471
+ status: "captured" | "not-applicable";
1472
+ category: string;
1473
+ detail: string;
1474
+ }, {
1475
+ status: "captured" | "not-applicable";
1476
+ category: string;
1477
+ detail: string;
1478
+ }>, "many">;
1479
+ coldStartInventory: z.ZodOptional<z.ZodObject<{
1480
+ version: z.ZodNumber;
1481
+ sourceReviews: z.ZodArray<z.ZodObject<{
1482
+ source: z.ZodString;
1483
+ detail: z.ZodString;
1484
+ }, "strip", z.ZodTypeAny, {
1485
+ detail: string;
1486
+ source: string;
1487
+ }, {
1488
+ detail: string;
1489
+ source: string;
1490
+ }>, "many">;
1491
+ entries: z.ZodArray<z.ZodObject<{
1492
+ category: z.ZodString;
1493
+ items: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
1494
+ notApplicableReason: z.ZodOptional<z.ZodString>;
1495
+ }, "strip", z.ZodTypeAny, {
1496
+ category: string;
1497
+ items: string[];
1498
+ notApplicableReason?: string | undefined;
1499
+ }, {
1500
+ category: string;
1501
+ items?: string[] | undefined;
1502
+ notApplicableReason?: string | undefined;
1503
+ }>, "many">;
1504
+ }, "strip", z.ZodTypeAny, {
1505
+ entries: {
1506
+ category: string;
1507
+ items: string[];
1508
+ notApplicableReason?: string | undefined;
1509
+ }[];
1510
+ version: number;
1511
+ sourceReviews: {
1512
+ detail: string;
1513
+ source: string;
1514
+ }[];
1515
+ }, {
1516
+ entries: {
1517
+ category: string;
1518
+ items?: string[] | undefined;
1519
+ notApplicableReason?: string | undefined;
1520
+ }[];
1521
+ version: number;
1522
+ sourceReviews: {
1523
+ detail: string;
1524
+ source: string;
1525
+ }[];
1526
+ }>>;
1527
+ supportingDocuments: z.ZodDefault<z.ZodArray<z.ZodObject<{
1528
+ path: z.ZodString;
1529
+ description: z.ZodString;
1530
+ contentHash: z.ZodString;
1531
+ contentLength: z.ZodNumber;
1532
+ }, "strip", z.ZodTypeAny, {
1533
+ path: string;
1534
+ description: string;
1535
+ contentHash: string;
1536
+ contentLength: number;
1537
+ }, {
1538
+ path: string;
1539
+ description: string;
1540
+ contentHash: string;
1541
+ contentLength: number;
1542
+ }>, "many">>;
1543
+ contentHash: z.ZodString;
1544
+ contentLength: z.ZodNumber;
1545
+ /** Structural validation timestamp written with the handoff candidate. */
1546
+ verifiedAt: z.ZodString;
1547
+ /** Set only after a separate persisted read-back and source reconciliation. */
1548
+ resumeReadyAt: z.ZodDefault<z.ZodUnion<[z.ZodString, z.ZodLiteral<"">]>>;
1549
+ readBackSourceReviews: z.ZodDefault<z.ZodArray<z.ZodObject<{
1550
+ source: z.ZodString;
1551
+ detail: z.ZodString;
1552
+ }, "strip", z.ZodTypeAny, {
1553
+ detail: string;
1554
+ source: string;
1555
+ }, {
1556
+ detail: string;
1557
+ source: string;
1558
+ }>, "many">>;
1559
+ }, "strip", z.ZodTypeAny, {
1560
+ entries: {
1561
+ status: "captured" | "not-applicable";
1562
+ category: string;
1563
+ detail: string;
1564
+ }[];
1565
+ contentHash: string;
1566
+ contentLength: number;
1567
+ version: number;
1568
+ supportingDocuments: {
1569
+ path: string;
1570
+ description: string;
1571
+ contentHash: string;
1572
+ contentLength: number;
1573
+ }[];
1574
+ verifiedAt: string;
1575
+ resumeReadyAt: string;
1576
+ readBackSourceReviews: {
1577
+ detail: string;
1578
+ source: string;
1579
+ }[];
1580
+ coldStartInventory?: {
1581
+ entries: {
1582
+ category: string;
1583
+ items: string[];
1584
+ notApplicableReason?: string | undefined;
1585
+ }[];
1586
+ version: number;
1587
+ sourceReviews: {
1588
+ detail: string;
1589
+ source: string;
1590
+ }[];
1591
+ } | undefined;
1592
+ }, {
1593
+ entries: {
1594
+ status: "captured" | "not-applicable";
1595
+ category: string;
1596
+ detail: string;
1597
+ }[];
1598
+ contentHash: string;
1599
+ contentLength: number;
1600
+ version: number;
1601
+ verifiedAt: string;
1602
+ coldStartInventory?: {
1603
+ entries: {
1604
+ category: string;
1605
+ items?: string[] | undefined;
1606
+ notApplicableReason?: string | undefined;
1607
+ }[];
1608
+ version: number;
1609
+ sourceReviews: {
1610
+ detail: string;
1611
+ source: string;
1612
+ }[];
1613
+ } | undefined;
1614
+ supportingDocuments?: {
1615
+ path: string;
1616
+ description: string;
1617
+ contentHash: string;
1618
+ contentLength: number;
1619
+ }[] | undefined;
1620
+ resumeReadyAt?: string | undefined;
1621
+ readBackSourceReviews?: {
1622
+ detail: string;
1623
+ source: string;
1624
+ }[] | undefined;
1625
+ }>;
1277
1626
  export declare const PhaseSchema: z.ZodObject<{
1278
1627
  id: z.ZodString;
1279
1628
  /** MUST be a feature UUID (not a ref like "F005"). Validated at the schema
@@ -1291,6 +1640,7 @@ export declare const PhaseSchema: z.ZodObject<{
1291
1640
  contextReadyReason: z.ZodDefault<z.ZodString>;
1292
1641
  summary: z.ZodDefault<z.ZodString>;
1293
1642
  description: z.ZodDefault<z.ZodString>;
1643
+ descriptionRef: z.ZodOptional<z.ZodEffects<z.ZodString, string, string>>;
1294
1644
  /** Updated only when this phase's description changes; distinct from entity updatedAt. */
1295
1645
  descriptionUpdatedAt: z.ZodDefault<z.ZodString>;
1296
1646
  notes: z.ZodDefault<z.ZodString>;
@@ -1338,6 +1688,7 @@ export declare const PhaseSchema: z.ZodObject<{
1338
1688
  title: z.ZodString;
1339
1689
  status: z.ZodEnum<["planned", "in-progress", "done", "blocked", "canceled", "rejected", "deferred", "waiting"]>;
1340
1690
  description: z.ZodDefault<z.ZodString>;
1691
+ descriptionRef: z.ZodOptional<z.ZodEffects<z.ZodString, string, string>>;
1341
1692
  /** Updated only when this task's description changes; distinct from entity updatedAt. */
1342
1693
  descriptionUpdatedAt: z.ZodDefault<z.ZodString>;
1343
1694
  notes: z.ZodDefault<z.ZodString>;
@@ -1511,6 +1862,8 @@ export declare const PhaseSchema: z.ZodObject<{
1511
1862
  createdAt: string;
1512
1863
  sessionId: string;
1513
1864
  }>, "many">>;
1865
+ /** Session currently owning this in-progress task ("" when not in-progress or legacy). Enables concurrent starts across agent sessions. */
1866
+ activeOwnerSession: z.ZodDefault<z.ZodString>;
1514
1867
  }, "strip", z.ZodTypeAny, {
1515
1868
  number: number;
1516
1869
  status: "canceled" | "planned" | "in-progress" | "done" | "blocked" | "rejected" | "deferred" | "waiting";
@@ -1519,6 +1872,10 @@ export declare const PhaseSchema: z.ZodObject<{
1519
1872
  id: string;
1520
1873
  createdAt: string;
1521
1874
  title: string;
1875
+ sessionInfo: {
1876
+ createdAt: string;
1877
+ sessionId: string;
1878
+ }[];
1522
1879
  description: string;
1523
1880
  decisions: string[];
1524
1881
  acceptedDecisions: {
@@ -1579,10 +1936,8 @@ export declare const PhaseSchema: z.ZodObject<{
1579
1936
  }[];
1580
1937
  startedAt: string;
1581
1938
  completedAt: string;
1582
- sessionInfo: {
1583
- createdAt: string;
1584
- sessionId: string;
1585
- }[];
1939
+ activeOwnerSession: string;
1940
+ descriptionRef?: string | undefined;
1586
1941
  }, {
1587
1942
  status: "canceled" | "planned" | "in-progress" | "done" | "blocked" | "rejected" | "deferred" | "waiting";
1588
1943
  updatedAt: string;
@@ -1593,7 +1948,12 @@ export declare const PhaseSchema: z.ZodObject<{
1593
1948
  shortName: string;
1594
1949
  number?: number | undefined;
1595
1950
  notes?: string | undefined;
1951
+ sessionInfo?: {
1952
+ createdAt: string;
1953
+ sessionId: string;
1954
+ }[] | undefined;
1596
1955
  description?: string | undefined;
1956
+ descriptionRef?: string | undefined;
1597
1957
  decisions?: string[] | undefined;
1598
1958
  acceptedDecisions?: {
1599
1959
  id: string;
@@ -1651,10 +2011,7 @@ export declare const PhaseSchema: z.ZodObject<{
1651
2011
  }[] | undefined;
1652
2012
  startedAt?: string | undefined;
1653
2013
  completedAt?: string | undefined;
1654
- sessionInfo?: {
1655
- createdAt: string;
1656
- sessionId: string;
1657
- }[] | undefined;
2014
+ activeOwnerSession?: string | undefined;
1658
2015
  }>, {
1659
2016
  checklist: {
1660
2017
  id: string;
@@ -1669,6 +2026,10 @@ export declare const PhaseSchema: z.ZodObject<{
1669
2026
  id: string;
1670
2027
  createdAt: string;
1671
2028
  title: string;
2029
+ sessionInfo: {
2030
+ createdAt: string;
2031
+ sessionId: string;
2032
+ }[];
1672
2033
  description: string;
1673
2034
  decisions: string[];
1674
2035
  acceptedDecisions: {
@@ -1723,10 +2084,8 @@ export declare const PhaseSchema: z.ZodObject<{
1723
2084
  }[];
1724
2085
  startedAt: string;
1725
2086
  completedAt: string;
1726
- sessionInfo: {
1727
- createdAt: string;
1728
- sessionId: string;
1729
- }[];
2087
+ activeOwnerSession: string;
2088
+ descriptionRef?: string | undefined;
1730
2089
  }, {
1731
2090
  status: "canceled" | "planned" | "in-progress" | "done" | "blocked" | "rejected" | "deferred" | "waiting";
1732
2091
  updatedAt: string;
@@ -1737,7 +2096,12 @@ export declare const PhaseSchema: z.ZodObject<{
1737
2096
  shortName: string;
1738
2097
  number?: number | undefined;
1739
2098
  notes?: string | undefined;
2099
+ sessionInfo?: {
2100
+ createdAt: string;
2101
+ sessionId: string;
2102
+ }[] | undefined;
1740
2103
  description?: string | undefined;
2104
+ descriptionRef?: string | undefined;
1741
2105
  decisions?: string[] | undefined;
1742
2106
  acceptedDecisions?: {
1743
2107
  id: string;
@@ -1795,15 +2159,175 @@ export declare const PhaseSchema: z.ZodObject<{
1795
2159
  }[] | undefined;
1796
2160
  startedAt?: string | undefined;
1797
2161
  completedAt?: string | undefined;
1798
- sessionInfo?: {
1799
- createdAt: string;
1800
- sessionId: string;
1801
- }[] | undefined;
2162
+ activeOwnerSession?: string | undefined;
1802
2163
  }>, "many">>;
1803
2164
  createdAt: z.ZodString;
1804
2165
  updatedAt: z.ZodString;
1805
2166
  handoff: z.ZodDefault<z.ZodString>;
1806
2167
  handoffUpdatedAt: z.ZodDefault<z.ZodString>;
2168
+ /** Durable proof that the active handoff passed the versioned completeness and read-back contract. */
2169
+ handoffAudit: z.ZodDefault<z.ZodNullable<z.ZodObject<{
2170
+ version: z.ZodNumber;
2171
+ entries: z.ZodArray<z.ZodObject<{
2172
+ category: z.ZodString;
2173
+ status: z.ZodEnum<["captured", "not-applicable"]>;
2174
+ detail: z.ZodString;
2175
+ }, "strip", z.ZodTypeAny, {
2176
+ status: "captured" | "not-applicable";
2177
+ category: string;
2178
+ detail: string;
2179
+ }, {
2180
+ status: "captured" | "not-applicable";
2181
+ category: string;
2182
+ detail: string;
2183
+ }>, "many">;
2184
+ coldStartInventory: z.ZodOptional<z.ZodObject<{
2185
+ version: z.ZodNumber;
2186
+ sourceReviews: z.ZodArray<z.ZodObject<{
2187
+ source: z.ZodString;
2188
+ detail: z.ZodString;
2189
+ }, "strip", z.ZodTypeAny, {
2190
+ detail: string;
2191
+ source: string;
2192
+ }, {
2193
+ detail: string;
2194
+ source: string;
2195
+ }>, "many">;
2196
+ entries: z.ZodArray<z.ZodObject<{
2197
+ category: z.ZodString;
2198
+ items: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
2199
+ notApplicableReason: z.ZodOptional<z.ZodString>;
2200
+ }, "strip", z.ZodTypeAny, {
2201
+ category: string;
2202
+ items: string[];
2203
+ notApplicableReason?: string | undefined;
2204
+ }, {
2205
+ category: string;
2206
+ items?: string[] | undefined;
2207
+ notApplicableReason?: string | undefined;
2208
+ }>, "many">;
2209
+ }, "strip", z.ZodTypeAny, {
2210
+ entries: {
2211
+ category: string;
2212
+ items: string[];
2213
+ notApplicableReason?: string | undefined;
2214
+ }[];
2215
+ version: number;
2216
+ sourceReviews: {
2217
+ detail: string;
2218
+ source: string;
2219
+ }[];
2220
+ }, {
2221
+ entries: {
2222
+ category: string;
2223
+ items?: string[] | undefined;
2224
+ notApplicableReason?: string | undefined;
2225
+ }[];
2226
+ version: number;
2227
+ sourceReviews: {
2228
+ detail: string;
2229
+ source: string;
2230
+ }[];
2231
+ }>>;
2232
+ supportingDocuments: z.ZodDefault<z.ZodArray<z.ZodObject<{
2233
+ path: z.ZodString;
2234
+ description: z.ZodString;
2235
+ contentHash: z.ZodString;
2236
+ contentLength: z.ZodNumber;
2237
+ }, "strip", z.ZodTypeAny, {
2238
+ path: string;
2239
+ description: string;
2240
+ contentHash: string;
2241
+ contentLength: number;
2242
+ }, {
2243
+ path: string;
2244
+ description: string;
2245
+ contentHash: string;
2246
+ contentLength: number;
2247
+ }>, "many">>;
2248
+ contentHash: z.ZodString;
2249
+ contentLength: z.ZodNumber;
2250
+ /** Structural validation timestamp written with the handoff candidate. */
2251
+ verifiedAt: z.ZodString;
2252
+ /** Set only after a separate persisted read-back and source reconciliation. */
2253
+ resumeReadyAt: z.ZodDefault<z.ZodUnion<[z.ZodString, z.ZodLiteral<"">]>>;
2254
+ readBackSourceReviews: z.ZodDefault<z.ZodArray<z.ZodObject<{
2255
+ source: z.ZodString;
2256
+ detail: z.ZodString;
2257
+ }, "strip", z.ZodTypeAny, {
2258
+ detail: string;
2259
+ source: string;
2260
+ }, {
2261
+ detail: string;
2262
+ source: string;
2263
+ }>, "many">>;
2264
+ }, "strip", z.ZodTypeAny, {
2265
+ entries: {
2266
+ status: "captured" | "not-applicable";
2267
+ category: string;
2268
+ detail: string;
2269
+ }[];
2270
+ contentHash: string;
2271
+ contentLength: number;
2272
+ version: number;
2273
+ supportingDocuments: {
2274
+ path: string;
2275
+ description: string;
2276
+ contentHash: string;
2277
+ contentLength: number;
2278
+ }[];
2279
+ verifiedAt: string;
2280
+ resumeReadyAt: string;
2281
+ readBackSourceReviews: {
2282
+ detail: string;
2283
+ source: string;
2284
+ }[];
2285
+ coldStartInventory?: {
2286
+ entries: {
2287
+ category: string;
2288
+ items: string[];
2289
+ notApplicableReason?: string | undefined;
2290
+ }[];
2291
+ version: number;
2292
+ sourceReviews: {
2293
+ detail: string;
2294
+ source: string;
2295
+ }[];
2296
+ } | undefined;
2297
+ }, {
2298
+ entries: {
2299
+ status: "captured" | "not-applicable";
2300
+ category: string;
2301
+ detail: string;
2302
+ }[];
2303
+ contentHash: string;
2304
+ contentLength: number;
2305
+ version: number;
2306
+ verifiedAt: string;
2307
+ coldStartInventory?: {
2308
+ entries: {
2309
+ category: string;
2310
+ items?: string[] | undefined;
2311
+ notApplicableReason?: string | undefined;
2312
+ }[];
2313
+ version: number;
2314
+ sourceReviews: {
2315
+ detail: string;
2316
+ source: string;
2317
+ }[];
2318
+ } | undefined;
2319
+ supportingDocuments?: {
2320
+ path: string;
2321
+ description: string;
2322
+ contentHash: string;
2323
+ contentLength: number;
2324
+ }[] | undefined;
2325
+ resumeReadyAt?: string | undefined;
2326
+ readBackSourceReviews?: {
2327
+ detail: string;
2328
+ source: string;
2329
+ }[] | undefined;
2330
+ }>>>;
1807
2331
  /** When the handoff was last read/acknowledged on recap (ISO). Non-empty means
1808
2332
  * the agent has seen it; the recap won't re-prompt every turn. Reading is
1809
2333
  * non-mutating: content remains until every task is done/canceled, a later
@@ -1871,6 +2395,10 @@ export declare const PhaseSchema: z.ZodObject<{
1871
2395
  summary: string;
1872
2396
  createdAt: string;
1873
2397
  title: string;
2398
+ sessionInfo: {
2399
+ createdAt: string;
2400
+ sessionId: string;
2401
+ }[];
1874
2402
  description: string;
1875
2403
  decisions: string[];
1876
2404
  acceptedDecisions: {
@@ -1893,10 +2421,6 @@ export declare const PhaseSchema: z.ZodObject<{
1893
2421
  toStatus: "canceled" | "planned" | "in-progress" | "done" | "blocked" | "rejected" | "deferred" | "waiting" | "draft" | "discovery";
1894
2422
  }[];
1895
2423
  dependsOn: string[];
1896
- sessionInfo: {
1897
- createdAt: string;
1898
- sessionId: string;
1899
- }[];
1900
2424
  slug: string;
1901
2425
  discussedAt: string;
1902
2426
  contextReady: boolean;
@@ -1921,7 +2445,11 @@ export declare const PhaseSchema: z.ZodObject<{
1921
2445
  id: string;
1922
2446
  createdAt: string;
1923
2447
  title: string;
1924
- description: string;
2448
+ sessionInfo: {
2449
+ createdAt: string;
2450
+ sessionId: string;
2451
+ }[];
2452
+ description: string;
1925
2453
  decisions: string[];
1926
2454
  acceptedDecisions: {
1927
2455
  id: string;
@@ -1975,19 +2503,52 @@ export declare const PhaseSchema: z.ZodObject<{
1975
2503
  }[];
1976
2504
  startedAt: string;
1977
2505
  completedAt: string;
1978
- sessionInfo: {
1979
- createdAt: string;
1980
- sessionId: string;
1981
- }[];
2506
+ activeOwnerSession: string;
2507
+ descriptionRef?: string | undefined;
1982
2508
  }[];
1983
2509
  handoff: string;
1984
2510
  handoffUpdatedAt: string;
2511
+ handoffAudit: {
2512
+ entries: {
2513
+ status: "captured" | "not-applicable";
2514
+ category: string;
2515
+ detail: string;
2516
+ }[];
2517
+ contentHash: string;
2518
+ contentLength: number;
2519
+ version: number;
2520
+ supportingDocuments: {
2521
+ path: string;
2522
+ description: string;
2523
+ contentHash: string;
2524
+ contentLength: number;
2525
+ }[];
2526
+ verifiedAt: string;
2527
+ resumeReadyAt: string;
2528
+ readBackSourceReviews: {
2529
+ detail: string;
2530
+ source: string;
2531
+ }[];
2532
+ coldStartInventory?: {
2533
+ entries: {
2534
+ category: string;
2535
+ items: string[];
2536
+ notApplicableReason?: string | undefined;
2537
+ }[];
2538
+ version: number;
2539
+ sourceReviews: {
2540
+ detail: string;
2541
+ source: string;
2542
+ }[];
2543
+ } | undefined;
2544
+ } | null;
1985
2545
  handoffReadAt: string;
1986
2546
  handoffHistory: {
1987
2547
  file: string;
1988
2548
  reason: string;
1989
2549
  clearedAt: string;
1990
2550
  }[];
2551
+ descriptionRef?: string | undefined;
1991
2552
  featureId?: string | undefined;
1992
2553
  }, {
1993
2554
  number: number;
@@ -1999,7 +2560,12 @@ export declare const PhaseSchema: z.ZodObject<{
1999
2560
  dependencies?: string[] | undefined;
2000
2561
  notes?: string | undefined;
2001
2562
  summary?: string | undefined;
2563
+ sessionInfo?: {
2564
+ createdAt: string;
2565
+ sessionId: string;
2566
+ }[] | undefined;
2002
2567
  description?: string | undefined;
2568
+ descriptionRef?: string | undefined;
2003
2569
  decisions?: string[] | undefined;
2004
2570
  acceptedDecisions?: {
2005
2571
  id: string;
@@ -2021,10 +2587,6 @@ export declare const PhaseSchema: z.ZodObject<{
2021
2587
  description?: string | undefined;
2022
2588
  }[] | undefined;
2023
2589
  dependsOn?: string[] | undefined;
2024
- sessionInfo?: {
2025
- createdAt: string;
2026
- sessionId: string;
2027
- }[] | undefined;
2028
2590
  featureId?: string | undefined;
2029
2591
  discussedAt?: string | undefined;
2030
2592
  contextReady?: boolean | undefined;
@@ -2045,7 +2607,12 @@ export declare const PhaseSchema: z.ZodObject<{
2045
2607
  shortName: string;
2046
2608
  number?: number | undefined;
2047
2609
  notes?: string | undefined;
2610
+ sessionInfo?: {
2611
+ createdAt: string;
2612
+ sessionId: string;
2613
+ }[] | undefined;
2048
2614
  description?: string | undefined;
2615
+ descriptionRef?: string | undefined;
2049
2616
  decisions?: string[] | undefined;
2050
2617
  acceptedDecisions?: {
2051
2618
  id: string;
@@ -2103,13 +2670,44 @@ export declare const PhaseSchema: z.ZodObject<{
2103
2670
  }[] | undefined;
2104
2671
  startedAt?: string | undefined;
2105
2672
  completedAt?: string | undefined;
2106
- sessionInfo?: {
2107
- createdAt: string;
2108
- sessionId: string;
2109
- }[] | undefined;
2673
+ activeOwnerSession?: string | undefined;
2110
2674
  }[] | undefined;
2111
2675
  handoff?: string | undefined;
2112
2676
  handoffUpdatedAt?: string | undefined;
2677
+ handoffAudit?: {
2678
+ entries: {
2679
+ status: "captured" | "not-applicable";
2680
+ category: string;
2681
+ detail: string;
2682
+ }[];
2683
+ contentHash: string;
2684
+ contentLength: number;
2685
+ version: number;
2686
+ verifiedAt: string;
2687
+ coldStartInventory?: {
2688
+ entries: {
2689
+ category: string;
2690
+ items?: string[] | undefined;
2691
+ notApplicableReason?: string | undefined;
2692
+ }[];
2693
+ version: number;
2694
+ sourceReviews: {
2695
+ detail: string;
2696
+ source: string;
2697
+ }[];
2698
+ } | undefined;
2699
+ supportingDocuments?: {
2700
+ path: string;
2701
+ description: string;
2702
+ contentHash: string;
2703
+ contentLength: number;
2704
+ }[] | undefined;
2705
+ resumeReadyAt?: string | undefined;
2706
+ readBackSourceReviews?: {
2707
+ detail: string;
2708
+ source: string;
2709
+ }[] | undefined;
2710
+ } | null | undefined;
2113
2711
  handoffReadAt?: string | undefined;
2114
2712
  handoffHistory?: {
2115
2713
  clearedAt: string;
@@ -2125,6 +2723,7 @@ export declare const FeatureSchema: z.ZodObject<{
2125
2723
  priority: z.ZodDefault<z.ZodNumber>;
2126
2724
  name: z.ZodString;
2127
2725
  description: z.ZodDefault<z.ZodString>;
2726
+ descriptionRef: z.ZodOptional<z.ZodEffects<z.ZodString, string, string>>;
2128
2727
  /** Updated only when this feature's description changes; distinct from entity updatedAt. */
2129
2728
  descriptionUpdatedAt: z.ZodDefault<z.ZodString>;
2130
2729
  discussedAt: z.ZodDefault<z.ZodString>;
@@ -2200,6 +2799,10 @@ export declare const FeatureSchema: z.ZodObject<{
2200
2799
  updatedAt: string;
2201
2800
  id: string;
2202
2801
  createdAt: string;
2802
+ sessionInfo: {
2803
+ createdAt: string;
2804
+ sessionId: string;
2805
+ }[];
2203
2806
  description: string;
2204
2807
  acceptedDecisions: {
2205
2808
  id: string;
@@ -2221,10 +2824,6 @@ export declare const FeatureSchema: z.ZodObject<{
2221
2824
  toStatus: "canceled" | "planned" | "in-progress" | "done" | "blocked" | "rejected" | "deferred" | "waiting";
2222
2825
  }[];
2223
2826
  dependsOn: string[];
2224
- sessionInfo: {
2225
- createdAt: string;
2226
- sessionId: string;
2227
- }[];
2228
2827
  discussedAt: string;
2229
2828
  contextReady: boolean;
2230
2829
  contextReadyReason: string;
@@ -2233,13 +2832,19 @@ export declare const FeatureSchema: z.ZodObject<{
2233
2832
  workDone: string;
2234
2833
  workRemaining: string;
2235
2834
  phaseIds: string[];
2835
+ descriptionRef?: string | undefined;
2236
2836
  }, {
2237
2837
  name: string;
2238
2838
  updatedAt: string;
2239
2839
  id: string;
2240
2840
  createdAt: string;
2241
2841
  number?: number | undefined;
2842
+ sessionInfo?: {
2843
+ createdAt: string;
2844
+ sessionId: string;
2845
+ }[] | undefined;
2242
2846
  description?: string | undefined;
2847
+ descriptionRef?: string | undefined;
2243
2848
  acceptedDecisions?: {
2244
2849
  id: string;
2245
2850
  title: string;
@@ -2260,10 +2865,6 @@ export declare const FeatureSchema: z.ZodObject<{
2260
2865
  description?: string | undefined;
2261
2866
  }[] | undefined;
2262
2867
  dependsOn?: string[] | undefined;
2263
- sessionInfo?: {
2264
- createdAt: string;
2265
- sessionId: string;
2266
- }[] | undefined;
2267
2868
  discussedAt?: string | undefined;
2268
2869
  contextReady?: boolean | undefined;
2269
2870
  contextReadyReason?: string | undefined;
@@ -2282,6 +2883,7 @@ export declare const FeaturesDocumentSchema: z.ZodObject<{
2282
2883
  priority: z.ZodDefault<z.ZodNumber>;
2283
2884
  name: z.ZodString;
2284
2885
  description: z.ZodDefault<z.ZodString>;
2886
+ descriptionRef: z.ZodOptional<z.ZodEffects<z.ZodString, string, string>>;
2285
2887
  /** Updated only when this feature's description changes; distinct from entity updatedAt. */
2286
2888
  descriptionUpdatedAt: z.ZodDefault<z.ZodString>;
2287
2889
  discussedAt: z.ZodDefault<z.ZodString>;
@@ -2357,6 +2959,10 @@ export declare const FeaturesDocumentSchema: z.ZodObject<{
2357
2959
  updatedAt: string;
2358
2960
  id: string;
2359
2961
  createdAt: string;
2962
+ sessionInfo: {
2963
+ createdAt: string;
2964
+ sessionId: string;
2965
+ }[];
2360
2966
  description: string;
2361
2967
  acceptedDecisions: {
2362
2968
  id: string;
@@ -2378,10 +2984,6 @@ export declare const FeaturesDocumentSchema: z.ZodObject<{
2378
2984
  toStatus: "canceled" | "planned" | "in-progress" | "done" | "blocked" | "rejected" | "deferred" | "waiting";
2379
2985
  }[];
2380
2986
  dependsOn: string[];
2381
- sessionInfo: {
2382
- createdAt: string;
2383
- sessionId: string;
2384
- }[];
2385
2987
  discussedAt: string;
2386
2988
  contextReady: boolean;
2387
2989
  contextReadyReason: string;
@@ -2390,13 +2992,19 @@ export declare const FeaturesDocumentSchema: z.ZodObject<{
2390
2992
  workDone: string;
2391
2993
  workRemaining: string;
2392
2994
  phaseIds: string[];
2995
+ descriptionRef?: string | undefined;
2393
2996
  }, {
2394
2997
  name: string;
2395
2998
  updatedAt: string;
2396
2999
  id: string;
2397
3000
  createdAt: string;
2398
3001
  number?: number | undefined;
3002
+ sessionInfo?: {
3003
+ createdAt: string;
3004
+ sessionId: string;
3005
+ }[] | undefined;
2399
3006
  description?: string | undefined;
3007
+ descriptionRef?: string | undefined;
2400
3008
  acceptedDecisions?: {
2401
3009
  id: string;
2402
3010
  title: string;
@@ -2417,10 +3025,6 @@ export declare const FeaturesDocumentSchema: z.ZodObject<{
2417
3025
  description?: string | undefined;
2418
3026
  }[] | undefined;
2419
3027
  dependsOn?: string[] | undefined;
2420
- sessionInfo?: {
2421
- createdAt: string;
2422
- sessionId: string;
2423
- }[] | undefined;
2424
3028
  discussedAt?: string | undefined;
2425
3029
  contextReady?: boolean | undefined;
2426
3030
  contextReadyReason?: string | undefined;
@@ -2437,6 +3041,10 @@ export declare const FeaturesDocumentSchema: z.ZodObject<{
2437
3041
  updatedAt: string;
2438
3042
  id: string;
2439
3043
  createdAt: string;
3044
+ sessionInfo: {
3045
+ createdAt: string;
3046
+ sessionId: string;
3047
+ }[];
2440
3048
  description: string;
2441
3049
  acceptedDecisions: {
2442
3050
  id: string;
@@ -2458,10 +3066,6 @@ export declare const FeaturesDocumentSchema: z.ZodObject<{
2458
3066
  toStatus: "canceled" | "planned" | "in-progress" | "done" | "blocked" | "rejected" | "deferred" | "waiting";
2459
3067
  }[];
2460
3068
  dependsOn: string[];
2461
- sessionInfo: {
2462
- createdAt: string;
2463
- sessionId: string;
2464
- }[];
2465
3069
  discussedAt: string;
2466
3070
  contextReady: boolean;
2467
3071
  contextReadyReason: string;
@@ -2470,6 +3074,7 @@ export declare const FeaturesDocumentSchema: z.ZodObject<{
2470
3074
  workDone: string;
2471
3075
  workRemaining: string;
2472
3076
  phaseIds: string[];
3077
+ descriptionRef?: string | undefined;
2473
3078
  }[];
2474
3079
  }, {
2475
3080
  features: {
@@ -2478,7 +3083,12 @@ export declare const FeaturesDocumentSchema: z.ZodObject<{
2478
3083
  id: string;
2479
3084
  createdAt: string;
2480
3085
  number?: number | undefined;
3086
+ sessionInfo?: {
3087
+ createdAt: string;
3088
+ sessionId: string;
3089
+ }[] | undefined;
2481
3090
  description?: string | undefined;
3091
+ descriptionRef?: string | undefined;
2482
3092
  acceptedDecisions?: {
2483
3093
  id: string;
2484
3094
  title: string;
@@ -2499,10 +3109,6 @@ export declare const FeaturesDocumentSchema: z.ZodObject<{
2499
3109
  description?: string | undefined;
2500
3110
  }[] | undefined;
2501
3111
  dependsOn?: string[] | undefined;
2502
- sessionInfo?: {
2503
- createdAt: string;
2504
- sessionId: string;
2505
- }[] | undefined;
2506
3112
  discussedAt?: string | undefined;
2507
3113
  contextReady?: boolean | undefined;
2508
3114
  contextReadyReason?: string | undefined;
@@ -2539,7 +3145,6 @@ export declare const RequirementSchema: z.ZodObject<{
2539
3145
  id: z.ZodString;
2540
3146
  title: z.ZodString;
2541
3147
  description: z.ZodDefault<z.ZodString>;
2542
- status: z.ZodEnum<["planned", "in-progress", "done", "blocked", "canceled", "rejected", "deferred", "waiting"]>;
2543
3148
  macroTasks: z.ZodDefault<z.ZodArray<z.ZodObject<{
2544
3149
  id: z.ZodString;
2545
3150
  title: z.ZodString;
@@ -2577,16 +3182,15 @@ export declare const RequirementSchema: z.ZodObject<{
2577
3182
  sessionId: string;
2578
3183
  }>, "many">>;
2579
3184
  }, "strip", z.ZodTypeAny, {
2580
- status: "canceled" | "planned" | "in-progress" | "done" | "blocked" | "rejected" | "deferred" | "waiting";
2581
3185
  updatedAt: string;
2582
3186
  id: string;
2583
3187
  createdAt: string;
2584
3188
  title: string;
2585
- description: string;
2586
3189
  sessionInfo: {
2587
3190
  createdAt: string;
2588
3191
  sessionId: string;
2589
3192
  }[];
3193
+ description: string;
2590
3194
  macroTasks: {
2591
3195
  status: "canceled" | "planned" | "in-progress" | "done" | "blocked" | "rejected" | "deferred" | "waiting";
2592
3196
  updatedAt: string;
@@ -2597,16 +3201,15 @@ export declare const RequirementSchema: z.ZodObject<{
2597
3201
  }[];
2598
3202
  linkedPhaseIds: string[];
2599
3203
  }, {
2600
- status: "canceled" | "planned" | "in-progress" | "done" | "blocked" | "rejected" | "deferred" | "waiting";
2601
3204
  updatedAt: string;
2602
3205
  id: string;
2603
3206
  createdAt: string;
2604
3207
  title: string;
2605
- description?: string | undefined;
2606
3208
  sessionInfo?: {
2607
3209
  createdAt: string;
2608
3210
  sessionId: string;
2609
3211
  }[] | undefined;
3212
+ description?: string | undefined;
2610
3213
  macroTasks?: {
2611
3214
  status: "canceled" | "planned" | "in-progress" | "done" | "blocked" | "rejected" | "deferred" | "waiting";
2612
3215
  updatedAt: string;
@@ -2622,7 +3225,6 @@ export declare const RequirementsDocumentSchema: z.ZodObject<{
2622
3225
  id: z.ZodString;
2623
3226
  title: z.ZodString;
2624
3227
  description: z.ZodDefault<z.ZodString>;
2625
- status: z.ZodEnum<["planned", "in-progress", "done", "blocked", "canceled", "rejected", "deferred", "waiting"]>;
2626
3228
  macroTasks: z.ZodDefault<z.ZodArray<z.ZodObject<{
2627
3229
  id: z.ZodString;
2628
3230
  title: z.ZodString;
@@ -2660,16 +3262,15 @@ export declare const RequirementsDocumentSchema: z.ZodObject<{
2660
3262
  sessionId: string;
2661
3263
  }>, "many">>;
2662
3264
  }, "strip", z.ZodTypeAny, {
2663
- status: "canceled" | "planned" | "in-progress" | "done" | "blocked" | "rejected" | "deferred" | "waiting";
2664
3265
  updatedAt: string;
2665
3266
  id: string;
2666
3267
  createdAt: string;
2667
3268
  title: string;
2668
- description: string;
2669
3269
  sessionInfo: {
2670
3270
  createdAt: string;
2671
3271
  sessionId: string;
2672
3272
  }[];
3273
+ description: string;
2673
3274
  macroTasks: {
2674
3275
  status: "canceled" | "planned" | "in-progress" | "done" | "blocked" | "rejected" | "deferred" | "waiting";
2675
3276
  updatedAt: string;
@@ -2680,16 +3281,15 @@ export declare const RequirementsDocumentSchema: z.ZodObject<{
2680
3281
  }[];
2681
3282
  linkedPhaseIds: string[];
2682
3283
  }, {
2683
- status: "canceled" | "planned" | "in-progress" | "done" | "blocked" | "rejected" | "deferred" | "waiting";
2684
3284
  updatedAt: string;
2685
3285
  id: string;
2686
3286
  createdAt: string;
2687
3287
  title: string;
2688
- description?: string | undefined;
2689
3288
  sessionInfo?: {
2690
3289
  createdAt: string;
2691
3290
  sessionId: string;
2692
3291
  }[] | undefined;
3292
+ description?: string | undefined;
2693
3293
  macroTasks?: {
2694
3294
  status: "canceled" | "planned" | "in-progress" | "done" | "blocked" | "rejected" | "deferred" | "waiting";
2695
3295
  updatedAt: string;
@@ -2702,16 +3302,15 @@ export declare const RequirementsDocumentSchema: z.ZodObject<{
2702
3302
  }>, "many">;
2703
3303
  }, "strip", z.ZodTypeAny, {
2704
3304
  requirements: {
2705
- status: "canceled" | "planned" | "in-progress" | "done" | "blocked" | "rejected" | "deferred" | "waiting";
2706
3305
  updatedAt: string;
2707
3306
  id: string;
2708
3307
  createdAt: string;
2709
3308
  title: string;
2710
- description: string;
2711
3309
  sessionInfo: {
2712
3310
  createdAt: string;
2713
3311
  sessionId: string;
2714
3312
  }[];
3313
+ description: string;
2715
3314
  macroTasks: {
2716
3315
  status: "canceled" | "planned" | "in-progress" | "done" | "blocked" | "rejected" | "deferred" | "waiting";
2717
3316
  updatedAt: string;
@@ -2724,16 +3323,15 @@ export declare const RequirementsDocumentSchema: z.ZodObject<{
2724
3323
  }[];
2725
3324
  }, {
2726
3325
  requirements: {
2727
- status: "canceled" | "planned" | "in-progress" | "done" | "blocked" | "rejected" | "deferred" | "waiting";
2728
3326
  updatedAt: string;
2729
3327
  id: string;
2730
3328
  createdAt: string;
2731
3329
  title: string;
2732
- description?: string | undefined;
2733
3330
  sessionInfo?: {
2734
3331
  createdAt: string;
2735
3332
  sessionId: string;
2736
3333
  }[] | undefined;
3334
+ description?: string | undefined;
2737
3335
  macroTasks?: {
2738
3336
  status: "canceled" | "planned" | "in-progress" | "done" | "blocked" | "rejected" | "deferred" | "waiting";
2739
3337
  updatedAt: string;
@@ -2745,6 +3343,168 @@ export declare const RequirementsDocumentSchema: z.ZodObject<{
2745
3343
  linkedPhaseIds?: string[] | undefined;
2746
3344
  }[];
2747
3345
  }>;
3346
+ export declare const IdeaPromotionTargetTypeSchema: z.ZodEnum<["feature", "phase", "task"]>;
3347
+ export declare const IdeaPromotionSchema: z.ZodObject<{
3348
+ targetType: z.ZodEnum<["feature", "phase", "task"]>;
3349
+ targetId: z.ZodString;
3350
+ targetRef: z.ZodString;
3351
+ promotedAt: z.ZodString;
3352
+ }, "strip", z.ZodTypeAny, {
3353
+ targetType: "feature" | "phase" | "task";
3354
+ targetId: string;
3355
+ targetRef: string;
3356
+ promotedAt: string;
3357
+ }, {
3358
+ targetType: "feature" | "phase" | "task";
3359
+ targetId: string;
3360
+ targetRef: string;
3361
+ promotedAt: string;
3362
+ }>;
3363
+ export declare const IdeaSchema: z.ZodObject<{
3364
+ id: z.ZodString;
3365
+ /** Global Ideas sequence, independent from feature/phase/task numbering. */
3366
+ number: z.ZodNumber;
3367
+ shortId: z.ZodString;
3368
+ title: z.ZodString;
3369
+ description: z.ZodDefault<z.ZodString>;
3370
+ promotion: z.ZodDefault<z.ZodNullable<z.ZodObject<{
3371
+ targetType: z.ZodEnum<["feature", "phase", "task"]>;
3372
+ targetId: z.ZodString;
3373
+ targetRef: z.ZodString;
3374
+ promotedAt: z.ZodString;
3375
+ }, "strip", z.ZodTypeAny, {
3376
+ targetType: "feature" | "phase" | "task";
3377
+ targetId: string;
3378
+ targetRef: string;
3379
+ promotedAt: string;
3380
+ }, {
3381
+ targetType: "feature" | "phase" | "task";
3382
+ targetId: string;
3383
+ targetRef: string;
3384
+ promotedAt: string;
3385
+ }>>>;
3386
+ createdAt: z.ZodString;
3387
+ updatedAt: z.ZodString;
3388
+ }, "strip", z.ZodTypeAny, {
3389
+ number: number;
3390
+ updatedAt: string;
3391
+ id: string;
3392
+ createdAt: string;
3393
+ title: string;
3394
+ description: string;
3395
+ shortId: string;
3396
+ promotion: {
3397
+ targetType: "feature" | "phase" | "task";
3398
+ targetId: string;
3399
+ targetRef: string;
3400
+ promotedAt: string;
3401
+ } | null;
3402
+ }, {
3403
+ number: number;
3404
+ updatedAt: string;
3405
+ id: string;
3406
+ createdAt: string;
3407
+ title: string;
3408
+ shortId: string;
3409
+ description?: string | undefined;
3410
+ promotion?: {
3411
+ targetType: "feature" | "phase" | "task";
3412
+ targetId: string;
3413
+ targetRef: string;
3414
+ promotedAt: string;
3415
+ } | null | undefined;
3416
+ }>;
3417
+ export declare const IdeasDocumentSchema: z.ZodObject<{
3418
+ nextIdeaNumber: z.ZodDefault<z.ZodNumber>;
3419
+ ideas: z.ZodDefault<z.ZodArray<z.ZodObject<{
3420
+ id: z.ZodString;
3421
+ /** Global Ideas sequence, independent from feature/phase/task numbering. */
3422
+ number: z.ZodNumber;
3423
+ shortId: z.ZodString;
3424
+ title: z.ZodString;
3425
+ description: z.ZodDefault<z.ZodString>;
3426
+ promotion: z.ZodDefault<z.ZodNullable<z.ZodObject<{
3427
+ targetType: z.ZodEnum<["feature", "phase", "task"]>;
3428
+ targetId: z.ZodString;
3429
+ targetRef: z.ZodString;
3430
+ promotedAt: z.ZodString;
3431
+ }, "strip", z.ZodTypeAny, {
3432
+ targetType: "feature" | "phase" | "task";
3433
+ targetId: string;
3434
+ targetRef: string;
3435
+ promotedAt: string;
3436
+ }, {
3437
+ targetType: "feature" | "phase" | "task";
3438
+ targetId: string;
3439
+ targetRef: string;
3440
+ promotedAt: string;
3441
+ }>>>;
3442
+ createdAt: z.ZodString;
3443
+ updatedAt: z.ZodString;
3444
+ }, "strip", z.ZodTypeAny, {
3445
+ number: number;
3446
+ updatedAt: string;
3447
+ id: string;
3448
+ createdAt: string;
3449
+ title: string;
3450
+ description: string;
3451
+ shortId: string;
3452
+ promotion: {
3453
+ targetType: "feature" | "phase" | "task";
3454
+ targetId: string;
3455
+ targetRef: string;
3456
+ promotedAt: string;
3457
+ } | null;
3458
+ }, {
3459
+ number: number;
3460
+ updatedAt: string;
3461
+ id: string;
3462
+ createdAt: string;
3463
+ title: string;
3464
+ shortId: string;
3465
+ description?: string | undefined;
3466
+ promotion?: {
3467
+ targetType: "feature" | "phase" | "task";
3468
+ targetId: string;
3469
+ targetRef: string;
3470
+ promotedAt: string;
3471
+ } | null | undefined;
3472
+ }>, "many">>;
3473
+ }, "strip", z.ZodTypeAny, {
3474
+ nextIdeaNumber: number;
3475
+ ideas: {
3476
+ number: number;
3477
+ updatedAt: string;
3478
+ id: string;
3479
+ createdAt: string;
3480
+ title: string;
3481
+ description: string;
3482
+ shortId: string;
3483
+ promotion: {
3484
+ targetType: "feature" | "phase" | "task";
3485
+ targetId: string;
3486
+ targetRef: string;
3487
+ promotedAt: string;
3488
+ } | null;
3489
+ }[];
3490
+ }, {
3491
+ nextIdeaNumber?: number | undefined;
3492
+ ideas?: {
3493
+ number: number;
3494
+ updatedAt: string;
3495
+ id: string;
3496
+ createdAt: string;
3497
+ title: string;
3498
+ shortId: string;
3499
+ description?: string | undefined;
3500
+ promotion?: {
3501
+ targetType: "feature" | "phase" | "task";
3502
+ targetId: string;
3503
+ targetRef: string;
3504
+ promotedAt: string;
3505
+ } | null | undefined;
3506
+ }[] | undefined;
3507
+ }>;
2748
3508
  export declare const PlanWorkspaceSchema: z.ZodObject<{
2749
3509
  manifest: z.ZodObject<{
2750
3510
  schemaVersion: z.ZodLiteral<1>;
@@ -2769,6 +3529,35 @@ export declare const PlanWorkspaceSchema: z.ZodObject<{
2769
3529
  name: z.ZodString;
2770
3530
  goal: z.ZodDefault<z.ZodString>;
2771
3531
  description: z.ZodDefault<z.ZodString>;
3532
+ descriptionRef: z.ZodOptional<z.ZodEffects<z.ZodString, string, string>>;
3533
+ projectGuidelines: z.ZodDefault<z.ZodObject<{
3534
+ content: z.ZodDefault<z.ZodString>;
3535
+ updatedAt: z.ZodDefault<z.ZodString>;
3536
+ sessionInfo: z.ZodDefault<z.ZodArray<z.ZodObject<{
3537
+ sessionId: z.ZodString;
3538
+ createdAt: z.ZodString;
3539
+ }, "strip", z.ZodTypeAny, {
3540
+ createdAt: string;
3541
+ sessionId: string;
3542
+ }, {
3543
+ createdAt: string;
3544
+ sessionId: string;
3545
+ }>, "many">>;
3546
+ }, "strip", z.ZodTypeAny, {
3547
+ updatedAt: string;
3548
+ content: string;
3549
+ sessionInfo: {
3550
+ createdAt: string;
3551
+ sessionId: string;
3552
+ }[];
3553
+ }, {
3554
+ updatedAt?: string | undefined;
3555
+ content?: string | undefined;
3556
+ sessionInfo?: {
3557
+ createdAt: string;
3558
+ sessionId: string;
3559
+ }[] | undefined;
3560
+ }>>;
2772
3561
  webPort: z.ZodDefault<z.ZodNumber>;
2773
3562
  scope: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
2774
3563
  outOfScope: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
@@ -2925,6 +3714,14 @@ export declare const PlanWorkspaceSchema: z.ZodObject<{
2925
3714
  name: string;
2926
3715
  goal: string;
2927
3716
  description: string;
3717
+ projectGuidelines: {
3718
+ updatedAt: string;
3719
+ content: string;
3720
+ sessionInfo: {
3721
+ createdAt: string;
3722
+ sessionId: string;
3723
+ }[];
3724
+ };
2928
3725
  webPort: number;
2929
3726
  scope: string[];
2930
3727
  outOfScope: string[];
@@ -2975,6 +3772,7 @@ export declare const PlanWorkspaceSchema: z.ZodObject<{
2975
3772
  resolvedAt: string;
2976
3773
  resumedAt: string;
2977
3774
  }[];
3775
+ descriptionRef?: string | undefined;
2978
3776
  }, {
2979
3777
  name: string;
2980
3778
  workflowRules: {
@@ -2984,6 +3782,15 @@ export declare const PlanWorkspaceSchema: z.ZodObject<{
2984
3782
  };
2985
3783
  goal?: string | undefined;
2986
3784
  description?: string | undefined;
3785
+ descriptionRef?: string | undefined;
3786
+ projectGuidelines?: {
3787
+ updatedAt?: string | undefined;
3788
+ content?: string | undefined;
3789
+ sessionInfo?: {
3790
+ createdAt: string;
3791
+ sessionId: string;
3792
+ }[] | undefined;
3793
+ } | undefined;
2987
3794
  webPort?: number | undefined;
2988
3795
  scope?: string[] | undefined;
2989
3796
  outOfScope?: string[] | undefined;
@@ -3039,6 +3846,7 @@ export declare const PlanWorkspaceSchema: z.ZodObject<{
3039
3846
  priority: z.ZodDefault<z.ZodNumber>;
3040
3847
  name: z.ZodString;
3041
3848
  description: z.ZodDefault<z.ZodString>;
3849
+ descriptionRef: z.ZodOptional<z.ZodEffects<z.ZodString, string, string>>;
3042
3850
  /** Updated only when this feature's description changes; distinct from entity updatedAt. */
3043
3851
  descriptionUpdatedAt: z.ZodDefault<z.ZodString>;
3044
3852
  discussedAt: z.ZodDefault<z.ZodString>;
@@ -3114,6 +3922,10 @@ export declare const PlanWorkspaceSchema: z.ZodObject<{
3114
3922
  updatedAt: string;
3115
3923
  id: string;
3116
3924
  createdAt: string;
3925
+ sessionInfo: {
3926
+ createdAt: string;
3927
+ sessionId: string;
3928
+ }[];
3117
3929
  description: string;
3118
3930
  acceptedDecisions: {
3119
3931
  id: string;
@@ -3135,10 +3947,6 @@ export declare const PlanWorkspaceSchema: z.ZodObject<{
3135
3947
  toStatus: "canceled" | "planned" | "in-progress" | "done" | "blocked" | "rejected" | "deferred" | "waiting";
3136
3948
  }[];
3137
3949
  dependsOn: string[];
3138
- sessionInfo: {
3139
- createdAt: string;
3140
- sessionId: string;
3141
- }[];
3142
3950
  discussedAt: string;
3143
3951
  contextReady: boolean;
3144
3952
  contextReadyReason: string;
@@ -3147,13 +3955,19 @@ export declare const PlanWorkspaceSchema: z.ZodObject<{
3147
3955
  workDone: string;
3148
3956
  workRemaining: string;
3149
3957
  phaseIds: string[];
3958
+ descriptionRef?: string | undefined;
3150
3959
  }, {
3151
3960
  name: string;
3152
3961
  updatedAt: string;
3153
3962
  id: string;
3154
3963
  createdAt: string;
3155
3964
  number?: number | undefined;
3965
+ sessionInfo?: {
3966
+ createdAt: string;
3967
+ sessionId: string;
3968
+ }[] | undefined;
3156
3969
  description?: string | undefined;
3970
+ descriptionRef?: string | undefined;
3157
3971
  acceptedDecisions?: {
3158
3972
  id: string;
3159
3973
  title: string;
@@ -3174,10 +3988,6 @@ export declare const PlanWorkspaceSchema: z.ZodObject<{
3174
3988
  description?: string | undefined;
3175
3989
  }[] | undefined;
3176
3990
  dependsOn?: string[] | undefined;
3177
- sessionInfo?: {
3178
- createdAt: string;
3179
- sessionId: string;
3180
- }[] | undefined;
3181
3991
  discussedAt?: string | undefined;
3182
3992
  contextReady?: boolean | undefined;
3183
3993
  contextReadyReason?: string | undefined;
@@ -3194,6 +4004,10 @@ export declare const PlanWorkspaceSchema: z.ZodObject<{
3194
4004
  updatedAt: string;
3195
4005
  id: string;
3196
4006
  createdAt: string;
4007
+ sessionInfo: {
4008
+ createdAt: string;
4009
+ sessionId: string;
4010
+ }[];
3197
4011
  description: string;
3198
4012
  acceptedDecisions: {
3199
4013
  id: string;
@@ -3215,10 +4029,6 @@ export declare const PlanWorkspaceSchema: z.ZodObject<{
3215
4029
  toStatus: "canceled" | "planned" | "in-progress" | "done" | "blocked" | "rejected" | "deferred" | "waiting";
3216
4030
  }[];
3217
4031
  dependsOn: string[];
3218
- sessionInfo: {
3219
- createdAt: string;
3220
- sessionId: string;
3221
- }[];
3222
4032
  discussedAt: string;
3223
4033
  contextReady: boolean;
3224
4034
  contextReadyReason: string;
@@ -3227,6 +4037,7 @@ export declare const PlanWorkspaceSchema: z.ZodObject<{
3227
4037
  workDone: string;
3228
4038
  workRemaining: string;
3229
4039
  phaseIds: string[];
4040
+ descriptionRef?: string | undefined;
3230
4041
  }[];
3231
4042
  }, {
3232
4043
  features: {
@@ -3235,7 +4046,12 @@ export declare const PlanWorkspaceSchema: z.ZodObject<{
3235
4046
  id: string;
3236
4047
  createdAt: string;
3237
4048
  number?: number | undefined;
4049
+ sessionInfo?: {
4050
+ createdAt: string;
4051
+ sessionId: string;
4052
+ }[] | undefined;
3238
4053
  description?: string | undefined;
4054
+ descriptionRef?: string | undefined;
3239
4055
  acceptedDecisions?: {
3240
4056
  id: string;
3241
4057
  title: string;
@@ -3256,10 +4072,6 @@ export declare const PlanWorkspaceSchema: z.ZodObject<{
3256
4072
  description?: string | undefined;
3257
4073
  }[] | undefined;
3258
4074
  dependsOn?: string[] | undefined;
3259
- sessionInfo?: {
3260
- createdAt: string;
3261
- sessionId: string;
3262
- }[] | undefined;
3263
4075
  discussedAt?: string | undefined;
3264
4076
  contextReady?: boolean | undefined;
3265
4077
  contextReadyReason?: string | undefined;
@@ -3275,7 +4087,6 @@ export declare const PlanWorkspaceSchema: z.ZodObject<{
3275
4087
  id: z.ZodString;
3276
4088
  title: z.ZodString;
3277
4089
  description: z.ZodDefault<z.ZodString>;
3278
- status: z.ZodEnum<["planned", "in-progress", "done", "blocked", "canceled", "rejected", "deferred", "waiting"]>;
3279
4090
  macroTasks: z.ZodDefault<z.ZodArray<z.ZodObject<{
3280
4091
  id: z.ZodString;
3281
4092
  title: z.ZodString;
@@ -3313,16 +4124,15 @@ export declare const PlanWorkspaceSchema: z.ZodObject<{
3313
4124
  sessionId: string;
3314
4125
  }>, "many">>;
3315
4126
  }, "strip", z.ZodTypeAny, {
3316
- status: "canceled" | "planned" | "in-progress" | "done" | "blocked" | "rejected" | "deferred" | "waiting";
3317
4127
  updatedAt: string;
3318
4128
  id: string;
3319
4129
  createdAt: string;
3320
4130
  title: string;
3321
- description: string;
3322
4131
  sessionInfo: {
3323
4132
  createdAt: string;
3324
4133
  sessionId: string;
3325
4134
  }[];
4135
+ description: string;
3326
4136
  macroTasks: {
3327
4137
  status: "canceled" | "planned" | "in-progress" | "done" | "blocked" | "rejected" | "deferred" | "waiting";
3328
4138
  updatedAt: string;
@@ -3333,16 +4143,15 @@ export declare const PlanWorkspaceSchema: z.ZodObject<{
3333
4143
  }[];
3334
4144
  linkedPhaseIds: string[];
3335
4145
  }, {
3336
- status: "canceled" | "planned" | "in-progress" | "done" | "blocked" | "rejected" | "deferred" | "waiting";
3337
4146
  updatedAt: string;
3338
4147
  id: string;
3339
4148
  createdAt: string;
3340
4149
  title: string;
3341
- description?: string | undefined;
3342
4150
  sessionInfo?: {
3343
4151
  createdAt: string;
3344
4152
  sessionId: string;
3345
4153
  }[] | undefined;
4154
+ description?: string | undefined;
3346
4155
  macroTasks?: {
3347
4156
  status: "canceled" | "planned" | "in-progress" | "done" | "blocked" | "rejected" | "deferred" | "waiting";
3348
4157
  updatedAt: string;
@@ -3355,16 +4164,15 @@ export declare const PlanWorkspaceSchema: z.ZodObject<{
3355
4164
  }>, "many">;
3356
4165
  }, "strip", z.ZodTypeAny, {
3357
4166
  requirements: {
3358
- status: "canceled" | "planned" | "in-progress" | "done" | "blocked" | "rejected" | "deferred" | "waiting";
3359
4167
  updatedAt: string;
3360
4168
  id: string;
3361
4169
  createdAt: string;
3362
4170
  title: string;
3363
- description: string;
3364
4171
  sessionInfo: {
3365
4172
  createdAt: string;
3366
4173
  sessionId: string;
3367
4174
  }[];
4175
+ description: string;
3368
4176
  macroTasks: {
3369
4177
  status: "canceled" | "planned" | "in-progress" | "done" | "blocked" | "rejected" | "deferred" | "waiting";
3370
4178
  updatedAt: string;
@@ -3377,16 +4185,15 @@ export declare const PlanWorkspaceSchema: z.ZodObject<{
3377
4185
  }[];
3378
4186
  }, {
3379
4187
  requirements: {
3380
- status: "canceled" | "planned" | "in-progress" | "done" | "blocked" | "rejected" | "deferred" | "waiting";
3381
4188
  updatedAt: string;
3382
4189
  id: string;
3383
4190
  createdAt: string;
3384
4191
  title: string;
3385
- description?: string | undefined;
3386
4192
  sessionInfo?: {
3387
4193
  createdAt: string;
3388
4194
  sessionId: string;
3389
4195
  }[] | undefined;
4196
+ description?: string | undefined;
3390
4197
  macroTasks?: {
3391
4198
  status: "canceled" | "planned" | "in-progress" | "done" | "blocked" | "rejected" | "deferred" | "waiting";
3392
4199
  updatedAt: string;
@@ -3398,6 +4205,97 @@ export declare const PlanWorkspaceSchema: z.ZodObject<{
3398
4205
  linkedPhaseIds?: string[] | undefined;
3399
4206
  }[];
3400
4207
  }>;
4208
+ ideas: z.ZodDefault<z.ZodObject<{
4209
+ nextIdeaNumber: z.ZodDefault<z.ZodNumber>;
4210
+ ideas: z.ZodDefault<z.ZodArray<z.ZodObject<{
4211
+ id: z.ZodString;
4212
+ /** Global Ideas sequence, independent from feature/phase/task numbering. */
4213
+ number: z.ZodNumber;
4214
+ shortId: z.ZodString;
4215
+ title: z.ZodString;
4216
+ description: z.ZodDefault<z.ZodString>;
4217
+ promotion: z.ZodDefault<z.ZodNullable<z.ZodObject<{
4218
+ targetType: z.ZodEnum<["feature", "phase", "task"]>;
4219
+ targetId: z.ZodString;
4220
+ targetRef: z.ZodString;
4221
+ promotedAt: z.ZodString;
4222
+ }, "strip", z.ZodTypeAny, {
4223
+ targetType: "feature" | "phase" | "task";
4224
+ targetId: string;
4225
+ targetRef: string;
4226
+ promotedAt: string;
4227
+ }, {
4228
+ targetType: "feature" | "phase" | "task";
4229
+ targetId: string;
4230
+ targetRef: string;
4231
+ promotedAt: string;
4232
+ }>>>;
4233
+ createdAt: z.ZodString;
4234
+ updatedAt: z.ZodString;
4235
+ }, "strip", z.ZodTypeAny, {
4236
+ number: number;
4237
+ updatedAt: string;
4238
+ id: string;
4239
+ createdAt: string;
4240
+ title: string;
4241
+ description: string;
4242
+ shortId: string;
4243
+ promotion: {
4244
+ targetType: "feature" | "phase" | "task";
4245
+ targetId: string;
4246
+ targetRef: string;
4247
+ promotedAt: string;
4248
+ } | null;
4249
+ }, {
4250
+ number: number;
4251
+ updatedAt: string;
4252
+ id: string;
4253
+ createdAt: string;
4254
+ title: string;
4255
+ shortId: string;
4256
+ description?: string | undefined;
4257
+ promotion?: {
4258
+ targetType: "feature" | "phase" | "task";
4259
+ targetId: string;
4260
+ targetRef: string;
4261
+ promotedAt: string;
4262
+ } | null | undefined;
4263
+ }>, "many">>;
4264
+ }, "strip", z.ZodTypeAny, {
4265
+ nextIdeaNumber: number;
4266
+ ideas: {
4267
+ number: number;
4268
+ updatedAt: string;
4269
+ id: string;
4270
+ createdAt: string;
4271
+ title: string;
4272
+ description: string;
4273
+ shortId: string;
4274
+ promotion: {
4275
+ targetType: "feature" | "phase" | "task";
4276
+ targetId: string;
4277
+ targetRef: string;
4278
+ promotedAt: string;
4279
+ } | null;
4280
+ }[];
4281
+ }, {
4282
+ nextIdeaNumber?: number | undefined;
4283
+ ideas?: {
4284
+ number: number;
4285
+ updatedAt: string;
4286
+ id: string;
4287
+ createdAt: string;
4288
+ title: string;
4289
+ shortId: string;
4290
+ description?: string | undefined;
4291
+ promotion?: {
4292
+ targetType: "feature" | "phase" | "task";
4293
+ targetId: string;
4294
+ targetRef: string;
4295
+ promotedAt: string;
4296
+ } | null | undefined;
4297
+ }[] | undefined;
4298
+ }>>;
3401
4299
  phases: z.ZodArray<z.ZodObject<{
3402
4300
  id: z.ZodString;
3403
4301
  /** MUST be a feature UUID (not a ref like "F005"). Validated at the schema
@@ -3415,6 +4313,7 @@ export declare const PlanWorkspaceSchema: z.ZodObject<{
3415
4313
  contextReadyReason: z.ZodDefault<z.ZodString>;
3416
4314
  summary: z.ZodDefault<z.ZodString>;
3417
4315
  description: z.ZodDefault<z.ZodString>;
4316
+ descriptionRef: z.ZodOptional<z.ZodEffects<z.ZodString, string, string>>;
3418
4317
  /** Updated only when this phase's description changes; distinct from entity updatedAt. */
3419
4318
  descriptionUpdatedAt: z.ZodDefault<z.ZodString>;
3420
4319
  notes: z.ZodDefault<z.ZodString>;
@@ -3462,6 +4361,7 @@ export declare const PlanWorkspaceSchema: z.ZodObject<{
3462
4361
  title: z.ZodString;
3463
4362
  status: z.ZodEnum<["planned", "in-progress", "done", "blocked", "canceled", "rejected", "deferred", "waiting"]>;
3464
4363
  description: z.ZodDefault<z.ZodString>;
4364
+ descriptionRef: z.ZodOptional<z.ZodEffects<z.ZodString, string, string>>;
3465
4365
  /** Updated only when this task's description changes; distinct from entity updatedAt. */
3466
4366
  descriptionUpdatedAt: z.ZodDefault<z.ZodString>;
3467
4367
  notes: z.ZodDefault<z.ZodString>;
@@ -3635,6 +4535,8 @@ export declare const PlanWorkspaceSchema: z.ZodObject<{
3635
4535
  createdAt: string;
3636
4536
  sessionId: string;
3637
4537
  }>, "many">>;
4538
+ /** Session currently owning this in-progress task ("" when not in-progress or legacy). Enables concurrent starts across agent sessions. */
4539
+ activeOwnerSession: z.ZodDefault<z.ZodString>;
3638
4540
  }, "strip", z.ZodTypeAny, {
3639
4541
  number: number;
3640
4542
  status: "canceled" | "planned" | "in-progress" | "done" | "blocked" | "rejected" | "deferred" | "waiting";
@@ -3643,6 +4545,10 @@ export declare const PlanWorkspaceSchema: z.ZodObject<{
3643
4545
  id: string;
3644
4546
  createdAt: string;
3645
4547
  title: string;
4548
+ sessionInfo: {
4549
+ createdAt: string;
4550
+ sessionId: string;
4551
+ }[];
3646
4552
  description: string;
3647
4553
  decisions: string[];
3648
4554
  acceptedDecisions: {
@@ -3703,10 +4609,8 @@ export declare const PlanWorkspaceSchema: z.ZodObject<{
3703
4609
  }[];
3704
4610
  startedAt: string;
3705
4611
  completedAt: string;
3706
- sessionInfo: {
3707
- createdAt: string;
3708
- sessionId: string;
3709
- }[];
4612
+ activeOwnerSession: string;
4613
+ descriptionRef?: string | undefined;
3710
4614
  }, {
3711
4615
  status: "canceled" | "planned" | "in-progress" | "done" | "blocked" | "rejected" | "deferred" | "waiting";
3712
4616
  updatedAt: string;
@@ -3717,7 +4621,12 @@ export declare const PlanWorkspaceSchema: z.ZodObject<{
3717
4621
  shortName: string;
3718
4622
  number?: number | undefined;
3719
4623
  notes?: string | undefined;
4624
+ sessionInfo?: {
4625
+ createdAt: string;
4626
+ sessionId: string;
4627
+ }[] | undefined;
3720
4628
  description?: string | undefined;
4629
+ descriptionRef?: string | undefined;
3721
4630
  decisions?: string[] | undefined;
3722
4631
  acceptedDecisions?: {
3723
4632
  id: string;
@@ -3775,10 +4684,7 @@ export declare const PlanWorkspaceSchema: z.ZodObject<{
3775
4684
  }[] | undefined;
3776
4685
  startedAt?: string | undefined;
3777
4686
  completedAt?: string | undefined;
3778
- sessionInfo?: {
3779
- createdAt: string;
3780
- sessionId: string;
3781
- }[] | undefined;
4687
+ activeOwnerSession?: string | undefined;
3782
4688
  }>, {
3783
4689
  checklist: {
3784
4690
  id: string;
@@ -3793,6 +4699,10 @@ export declare const PlanWorkspaceSchema: z.ZodObject<{
3793
4699
  id: string;
3794
4700
  createdAt: string;
3795
4701
  title: string;
4702
+ sessionInfo: {
4703
+ createdAt: string;
4704
+ sessionId: string;
4705
+ }[];
3796
4706
  description: string;
3797
4707
  decisions: string[];
3798
4708
  acceptedDecisions: {
@@ -3847,10 +4757,8 @@ export declare const PlanWorkspaceSchema: z.ZodObject<{
3847
4757
  }[];
3848
4758
  startedAt: string;
3849
4759
  completedAt: string;
3850
- sessionInfo: {
3851
- createdAt: string;
3852
- sessionId: string;
3853
- }[];
4760
+ activeOwnerSession: string;
4761
+ descriptionRef?: string | undefined;
3854
4762
  }, {
3855
4763
  status: "canceled" | "planned" | "in-progress" | "done" | "blocked" | "rejected" | "deferred" | "waiting";
3856
4764
  updatedAt: string;
@@ -3861,7 +4769,12 @@ export declare const PlanWorkspaceSchema: z.ZodObject<{
3861
4769
  shortName: string;
3862
4770
  number?: number | undefined;
3863
4771
  notes?: string | undefined;
4772
+ sessionInfo?: {
4773
+ createdAt: string;
4774
+ sessionId: string;
4775
+ }[] | undefined;
3864
4776
  description?: string | undefined;
4777
+ descriptionRef?: string | undefined;
3865
4778
  decisions?: string[] | undefined;
3866
4779
  acceptedDecisions?: {
3867
4780
  id: string;
@@ -3919,15 +4832,175 @@ export declare const PlanWorkspaceSchema: z.ZodObject<{
3919
4832
  }[] | undefined;
3920
4833
  startedAt?: string | undefined;
3921
4834
  completedAt?: string | undefined;
3922
- sessionInfo?: {
3923
- createdAt: string;
3924
- sessionId: string;
3925
- }[] | undefined;
4835
+ activeOwnerSession?: string | undefined;
3926
4836
  }>, "many">>;
3927
4837
  createdAt: z.ZodString;
3928
4838
  updatedAt: z.ZodString;
3929
4839
  handoff: z.ZodDefault<z.ZodString>;
3930
4840
  handoffUpdatedAt: z.ZodDefault<z.ZodString>;
4841
+ /** Durable proof that the active handoff passed the versioned completeness and read-back contract. */
4842
+ handoffAudit: z.ZodDefault<z.ZodNullable<z.ZodObject<{
4843
+ version: z.ZodNumber;
4844
+ entries: z.ZodArray<z.ZodObject<{
4845
+ category: z.ZodString;
4846
+ status: z.ZodEnum<["captured", "not-applicable"]>;
4847
+ detail: z.ZodString;
4848
+ }, "strip", z.ZodTypeAny, {
4849
+ status: "captured" | "not-applicable";
4850
+ category: string;
4851
+ detail: string;
4852
+ }, {
4853
+ status: "captured" | "not-applicable";
4854
+ category: string;
4855
+ detail: string;
4856
+ }>, "many">;
4857
+ coldStartInventory: z.ZodOptional<z.ZodObject<{
4858
+ version: z.ZodNumber;
4859
+ sourceReviews: z.ZodArray<z.ZodObject<{
4860
+ source: z.ZodString;
4861
+ detail: z.ZodString;
4862
+ }, "strip", z.ZodTypeAny, {
4863
+ detail: string;
4864
+ source: string;
4865
+ }, {
4866
+ detail: string;
4867
+ source: string;
4868
+ }>, "many">;
4869
+ entries: z.ZodArray<z.ZodObject<{
4870
+ category: z.ZodString;
4871
+ items: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
4872
+ notApplicableReason: z.ZodOptional<z.ZodString>;
4873
+ }, "strip", z.ZodTypeAny, {
4874
+ category: string;
4875
+ items: string[];
4876
+ notApplicableReason?: string | undefined;
4877
+ }, {
4878
+ category: string;
4879
+ items?: string[] | undefined;
4880
+ notApplicableReason?: string | undefined;
4881
+ }>, "many">;
4882
+ }, "strip", z.ZodTypeAny, {
4883
+ entries: {
4884
+ category: string;
4885
+ items: string[];
4886
+ notApplicableReason?: string | undefined;
4887
+ }[];
4888
+ version: number;
4889
+ sourceReviews: {
4890
+ detail: string;
4891
+ source: string;
4892
+ }[];
4893
+ }, {
4894
+ entries: {
4895
+ category: string;
4896
+ items?: string[] | undefined;
4897
+ notApplicableReason?: string | undefined;
4898
+ }[];
4899
+ version: number;
4900
+ sourceReviews: {
4901
+ detail: string;
4902
+ source: string;
4903
+ }[];
4904
+ }>>;
4905
+ supportingDocuments: z.ZodDefault<z.ZodArray<z.ZodObject<{
4906
+ path: z.ZodString;
4907
+ description: z.ZodString;
4908
+ contentHash: z.ZodString;
4909
+ contentLength: z.ZodNumber;
4910
+ }, "strip", z.ZodTypeAny, {
4911
+ path: string;
4912
+ description: string;
4913
+ contentHash: string;
4914
+ contentLength: number;
4915
+ }, {
4916
+ path: string;
4917
+ description: string;
4918
+ contentHash: string;
4919
+ contentLength: number;
4920
+ }>, "many">>;
4921
+ contentHash: z.ZodString;
4922
+ contentLength: z.ZodNumber;
4923
+ /** Structural validation timestamp written with the handoff candidate. */
4924
+ verifiedAt: z.ZodString;
4925
+ /** Set only after a separate persisted read-back and source reconciliation. */
4926
+ resumeReadyAt: z.ZodDefault<z.ZodUnion<[z.ZodString, z.ZodLiteral<"">]>>;
4927
+ readBackSourceReviews: z.ZodDefault<z.ZodArray<z.ZodObject<{
4928
+ source: z.ZodString;
4929
+ detail: z.ZodString;
4930
+ }, "strip", z.ZodTypeAny, {
4931
+ detail: string;
4932
+ source: string;
4933
+ }, {
4934
+ detail: string;
4935
+ source: string;
4936
+ }>, "many">>;
4937
+ }, "strip", z.ZodTypeAny, {
4938
+ entries: {
4939
+ status: "captured" | "not-applicable";
4940
+ category: string;
4941
+ detail: string;
4942
+ }[];
4943
+ contentHash: string;
4944
+ contentLength: number;
4945
+ version: number;
4946
+ supportingDocuments: {
4947
+ path: string;
4948
+ description: string;
4949
+ contentHash: string;
4950
+ contentLength: number;
4951
+ }[];
4952
+ verifiedAt: string;
4953
+ resumeReadyAt: string;
4954
+ readBackSourceReviews: {
4955
+ detail: string;
4956
+ source: string;
4957
+ }[];
4958
+ coldStartInventory?: {
4959
+ entries: {
4960
+ category: string;
4961
+ items: string[];
4962
+ notApplicableReason?: string | undefined;
4963
+ }[];
4964
+ version: number;
4965
+ sourceReviews: {
4966
+ detail: string;
4967
+ source: string;
4968
+ }[];
4969
+ } | undefined;
4970
+ }, {
4971
+ entries: {
4972
+ status: "captured" | "not-applicable";
4973
+ category: string;
4974
+ detail: string;
4975
+ }[];
4976
+ contentHash: string;
4977
+ contentLength: number;
4978
+ version: number;
4979
+ verifiedAt: string;
4980
+ coldStartInventory?: {
4981
+ entries: {
4982
+ category: string;
4983
+ items?: string[] | undefined;
4984
+ notApplicableReason?: string | undefined;
4985
+ }[];
4986
+ version: number;
4987
+ sourceReviews: {
4988
+ detail: string;
4989
+ source: string;
4990
+ }[];
4991
+ } | undefined;
4992
+ supportingDocuments?: {
4993
+ path: string;
4994
+ description: string;
4995
+ contentHash: string;
4996
+ contentLength: number;
4997
+ }[] | undefined;
4998
+ resumeReadyAt?: string | undefined;
4999
+ readBackSourceReviews?: {
5000
+ detail: string;
5001
+ source: string;
5002
+ }[] | undefined;
5003
+ }>>>;
3931
5004
  /** When the handoff was last read/acknowledged on recap (ISO). Non-empty means
3932
5005
  * the agent has seen it; the recap won't re-prompt every turn. Reading is
3933
5006
  * non-mutating: content remains until every task is done/canceled, a later
@@ -3995,6 +5068,10 @@ export declare const PlanWorkspaceSchema: z.ZodObject<{
3995
5068
  summary: string;
3996
5069
  createdAt: string;
3997
5070
  title: string;
5071
+ sessionInfo: {
5072
+ createdAt: string;
5073
+ sessionId: string;
5074
+ }[];
3998
5075
  description: string;
3999
5076
  decisions: string[];
4000
5077
  acceptedDecisions: {
@@ -4017,10 +5094,6 @@ export declare const PlanWorkspaceSchema: z.ZodObject<{
4017
5094
  toStatus: "canceled" | "planned" | "in-progress" | "done" | "blocked" | "rejected" | "deferred" | "waiting" | "draft" | "discovery";
4018
5095
  }[];
4019
5096
  dependsOn: string[];
4020
- sessionInfo: {
4021
- createdAt: string;
4022
- sessionId: string;
4023
- }[];
4024
5097
  slug: string;
4025
5098
  discussedAt: string;
4026
5099
  contextReady: boolean;
@@ -4045,6 +5118,10 @@ export declare const PlanWorkspaceSchema: z.ZodObject<{
4045
5118
  id: string;
4046
5119
  createdAt: string;
4047
5120
  title: string;
5121
+ sessionInfo: {
5122
+ createdAt: string;
5123
+ sessionId: string;
5124
+ }[];
4048
5125
  description: string;
4049
5126
  decisions: string[];
4050
5127
  acceptedDecisions: {
@@ -4099,19 +5176,52 @@ export declare const PlanWorkspaceSchema: z.ZodObject<{
4099
5176
  }[];
4100
5177
  startedAt: string;
4101
5178
  completedAt: string;
4102
- sessionInfo: {
4103
- createdAt: string;
4104
- sessionId: string;
4105
- }[];
5179
+ activeOwnerSession: string;
5180
+ descriptionRef?: string | undefined;
4106
5181
  }[];
4107
5182
  handoff: string;
4108
5183
  handoffUpdatedAt: string;
5184
+ handoffAudit: {
5185
+ entries: {
5186
+ status: "captured" | "not-applicable";
5187
+ category: string;
5188
+ detail: string;
5189
+ }[];
5190
+ contentHash: string;
5191
+ contentLength: number;
5192
+ version: number;
5193
+ supportingDocuments: {
5194
+ path: string;
5195
+ description: string;
5196
+ contentHash: string;
5197
+ contentLength: number;
5198
+ }[];
5199
+ verifiedAt: string;
5200
+ resumeReadyAt: string;
5201
+ readBackSourceReviews: {
5202
+ detail: string;
5203
+ source: string;
5204
+ }[];
5205
+ coldStartInventory?: {
5206
+ entries: {
5207
+ category: string;
5208
+ items: string[];
5209
+ notApplicableReason?: string | undefined;
5210
+ }[];
5211
+ version: number;
5212
+ sourceReviews: {
5213
+ detail: string;
5214
+ source: string;
5215
+ }[];
5216
+ } | undefined;
5217
+ } | null;
4109
5218
  handoffReadAt: string;
4110
5219
  handoffHistory: {
4111
5220
  file: string;
4112
5221
  reason: string;
4113
5222
  clearedAt: string;
4114
5223
  }[];
5224
+ descriptionRef?: string | undefined;
4115
5225
  featureId?: string | undefined;
4116
5226
  }, {
4117
5227
  number: number;
@@ -4123,7 +5233,12 @@ export declare const PlanWorkspaceSchema: z.ZodObject<{
4123
5233
  dependencies?: string[] | undefined;
4124
5234
  notes?: string | undefined;
4125
5235
  summary?: string | undefined;
5236
+ sessionInfo?: {
5237
+ createdAt: string;
5238
+ sessionId: string;
5239
+ }[] | undefined;
4126
5240
  description?: string | undefined;
5241
+ descriptionRef?: string | undefined;
4127
5242
  decisions?: string[] | undefined;
4128
5243
  acceptedDecisions?: {
4129
5244
  id: string;
@@ -4145,10 +5260,6 @@ export declare const PlanWorkspaceSchema: z.ZodObject<{
4145
5260
  description?: string | undefined;
4146
5261
  }[] | undefined;
4147
5262
  dependsOn?: string[] | undefined;
4148
- sessionInfo?: {
4149
- createdAt: string;
4150
- sessionId: string;
4151
- }[] | undefined;
4152
5263
  featureId?: string | undefined;
4153
5264
  discussedAt?: string | undefined;
4154
5265
  contextReady?: boolean | undefined;
@@ -4169,7 +5280,12 @@ export declare const PlanWorkspaceSchema: z.ZodObject<{
4169
5280
  shortName: string;
4170
5281
  number?: number | undefined;
4171
5282
  notes?: string | undefined;
5283
+ sessionInfo?: {
5284
+ createdAt: string;
5285
+ sessionId: string;
5286
+ }[] | undefined;
4172
5287
  description?: string | undefined;
5288
+ descriptionRef?: string | undefined;
4173
5289
  decisions?: string[] | undefined;
4174
5290
  acceptedDecisions?: {
4175
5291
  id: string;
@@ -4227,13 +5343,44 @@ export declare const PlanWorkspaceSchema: z.ZodObject<{
4227
5343
  }[] | undefined;
4228
5344
  startedAt?: string | undefined;
4229
5345
  completedAt?: string | undefined;
4230
- sessionInfo?: {
4231
- createdAt: string;
4232
- sessionId: string;
4233
- }[] | undefined;
5346
+ activeOwnerSession?: string | undefined;
4234
5347
  }[] | undefined;
4235
5348
  handoff?: string | undefined;
4236
5349
  handoffUpdatedAt?: string | undefined;
5350
+ handoffAudit?: {
5351
+ entries: {
5352
+ status: "captured" | "not-applicable";
5353
+ category: string;
5354
+ detail: string;
5355
+ }[];
5356
+ contentHash: string;
5357
+ contentLength: number;
5358
+ version: number;
5359
+ verifiedAt: string;
5360
+ coldStartInventory?: {
5361
+ entries: {
5362
+ category: string;
5363
+ items?: string[] | undefined;
5364
+ notApplicableReason?: string | undefined;
5365
+ }[];
5366
+ version: number;
5367
+ sourceReviews: {
5368
+ detail: string;
5369
+ source: string;
5370
+ }[];
5371
+ } | undefined;
5372
+ supportingDocuments?: {
5373
+ path: string;
5374
+ description: string;
5375
+ contentHash: string;
5376
+ contentLength: number;
5377
+ }[] | undefined;
5378
+ resumeReadyAt?: string | undefined;
5379
+ readBackSourceReviews?: {
5380
+ detail: string;
5381
+ source: string;
5382
+ }[] | undefined;
5383
+ } | null | undefined;
4237
5384
  handoffReadAt?: string | undefined;
4238
5385
  handoffHistory?: {
4239
5386
  clearedAt: string;
@@ -4242,6 +5389,70 @@ export declare const PlanWorkspaceSchema: z.ZodObject<{
4242
5389
  }[] | undefined;
4243
5390
  }>, "many">;
4244
5391
  }, "strip", z.ZodTypeAny, {
5392
+ project: {
5393
+ name: string;
5394
+ goal: string;
5395
+ description: string;
5396
+ projectGuidelines: {
5397
+ updatedAt: string;
5398
+ content: string;
5399
+ sessionInfo: {
5400
+ createdAt: string;
5401
+ sessionId: string;
5402
+ }[];
5403
+ };
5404
+ webPort: number;
5405
+ scope: string[];
5406
+ outOfScope: string[];
5407
+ decisions: string[];
5408
+ globalRules: string[];
5409
+ technologies: string[];
5410
+ tools: string[];
5411
+ contentLanguage: string;
5412
+ chatLanguage: string;
5413
+ workflowRules: {
5414
+ beforePhaseStart: string[];
5415
+ beforeTaskStart: string[];
5416
+ afterPhaseComplete: string[];
5417
+ };
5418
+ acceptedDecisions: {
5419
+ id: string;
5420
+ title: string;
5421
+ decision: string;
5422
+ rationale: string;
5423
+ implementationNotes: string;
5424
+ acceptedAt: string;
5425
+ }[];
5426
+ nextFeatureNumber: number;
5427
+ nextPhaseNumber: number;
5428
+ nextTaskNumber: number;
5429
+ workDeviations: {
5430
+ id: string;
5431
+ createdAt: string;
5432
+ reason: string;
5433
+ recommendedTaskId: string;
5434
+ temporaryTaskId: string;
5435
+ resumeTaskId: string;
5436
+ snapshot: {
5437
+ id: string;
5438
+ reason: string;
5439
+ whatWasBeingDone: string;
5440
+ resumeLocation: string;
5441
+ howToResume: string;
5442
+ relatedTaskId: string;
5443
+ pausedAt: string;
5444
+ pausedBy: string;
5445
+ } | null;
5446
+ requestedBy: "agent" | "user";
5447
+ approvedBy: string;
5448
+ state: "approved" | "active" | "resume-required" | "resolved" | "resumed" | "canceled";
5449
+ activatedAt: string;
5450
+ resumeRequiredAt: string;
5451
+ resolvedAt: string;
5452
+ resumedAt: string;
5453
+ }[];
5454
+ descriptionRef?: string | undefined;
5455
+ };
4245
5456
  features: {
4246
5457
  features: {
4247
5458
  number: number;
@@ -4249,6 +5460,10 @@ export declare const PlanWorkspaceSchema: z.ZodObject<{
4249
5460
  updatedAt: string;
4250
5461
  id: string;
4251
5462
  createdAt: string;
5463
+ sessionInfo: {
5464
+ createdAt: string;
5465
+ sessionId: string;
5466
+ }[];
4252
5467
  description: string;
4253
5468
  acceptedDecisions: {
4254
5469
  id: string;
@@ -4270,10 +5485,6 @@ export declare const PlanWorkspaceSchema: z.ZodObject<{
4270
5485
  toStatus: "canceled" | "planned" | "in-progress" | "done" | "blocked" | "rejected" | "deferred" | "waiting";
4271
5486
  }[];
4272
5487
  dependsOn: string[];
4273
- sessionInfo: {
4274
- createdAt: string;
4275
- sessionId: string;
4276
- }[];
4277
5488
  discussedAt: string;
4278
5489
  contextReady: boolean;
4279
5490
  contextReadyReason: string;
@@ -4282,20 +5493,20 @@ export declare const PlanWorkspaceSchema: z.ZodObject<{
4282
5493
  workDone: string;
4283
5494
  workRemaining: string;
4284
5495
  phaseIds: string[];
5496
+ descriptionRef?: string | undefined;
4285
5497
  }[];
4286
5498
  };
4287
5499
  requirements: {
4288
5500
  requirements: {
4289
- status: "canceled" | "planned" | "in-progress" | "done" | "blocked" | "rejected" | "deferred" | "waiting";
4290
5501
  updatedAt: string;
4291
5502
  id: string;
4292
5503
  createdAt: string;
4293
5504
  title: string;
4294
- description: string;
4295
5505
  sessionInfo: {
4296
5506
  createdAt: string;
4297
5507
  sessionId: string;
4298
5508
  }[];
5509
+ description: string;
4299
5510
  macroTasks: {
4300
5511
  status: "canceled" | "planned" | "in-progress" | "done" | "blocked" | "rejected" | "deferred" | "waiting";
4301
5512
  updatedAt: string;
@@ -4307,6 +5518,24 @@ export declare const PlanWorkspaceSchema: z.ZodObject<{
4307
5518
  linkedPhaseIds: string[];
4308
5519
  }[];
4309
5520
  };
5521
+ ideas: {
5522
+ nextIdeaNumber: number;
5523
+ ideas: {
5524
+ number: number;
5525
+ updatedAt: string;
5526
+ id: string;
5527
+ createdAt: string;
5528
+ title: string;
5529
+ description: string;
5530
+ shortId: string;
5531
+ promotion: {
5532
+ targetType: "feature" | "phase" | "task";
5533
+ targetId: string;
5534
+ targetRef: string;
5535
+ promotedAt: string;
5536
+ } | null;
5537
+ }[];
5538
+ };
4310
5539
  manifest: {
4311
5540
  updatedAt: string;
4312
5541
  schemaVersion: 1;
@@ -4314,61 +5543,6 @@ export declare const PlanWorkspaceSchema: z.ZodObject<{
4314
5543
  projectName: string;
4315
5544
  createdAt: string;
4316
5545
  };
4317
- project: {
4318
- name: string;
4319
- goal: string;
4320
- description: string;
4321
- webPort: number;
4322
- scope: string[];
4323
- outOfScope: string[];
4324
- decisions: string[];
4325
- globalRules: string[];
4326
- technologies: string[];
4327
- tools: string[];
4328
- contentLanguage: string;
4329
- chatLanguage: string;
4330
- workflowRules: {
4331
- beforePhaseStart: string[];
4332
- beforeTaskStart: string[];
4333
- afterPhaseComplete: string[];
4334
- };
4335
- acceptedDecisions: {
4336
- id: string;
4337
- title: string;
4338
- decision: string;
4339
- rationale: string;
4340
- implementationNotes: string;
4341
- acceptedAt: string;
4342
- }[];
4343
- nextFeatureNumber: number;
4344
- nextPhaseNumber: number;
4345
- nextTaskNumber: number;
4346
- workDeviations: {
4347
- id: string;
4348
- createdAt: string;
4349
- reason: string;
4350
- recommendedTaskId: string;
4351
- temporaryTaskId: string;
4352
- resumeTaskId: string;
4353
- snapshot: {
4354
- id: string;
4355
- reason: string;
4356
- whatWasBeingDone: string;
4357
- resumeLocation: string;
4358
- howToResume: string;
4359
- relatedTaskId: string;
4360
- pausedAt: string;
4361
- pausedBy: string;
4362
- } | null;
4363
- requestedBy: "agent" | "user";
4364
- approvedBy: string;
4365
- state: "approved" | "active" | "resume-required" | "resolved" | "resumed" | "canceled";
4366
- activatedAt: string;
4367
- resumeRequiredAt: string;
4368
- resolvedAt: string;
4369
- resumedAt: string;
4370
- }[];
4371
- };
4372
5546
  phases: {
4373
5547
  number: number;
4374
5548
  dependencies: string[];
@@ -4378,6 +5552,10 @@ export declare const PlanWorkspaceSchema: z.ZodObject<{
4378
5552
  summary: string;
4379
5553
  createdAt: string;
4380
5554
  title: string;
5555
+ sessionInfo: {
5556
+ createdAt: string;
5557
+ sessionId: string;
5558
+ }[];
4381
5559
  description: string;
4382
5560
  decisions: string[];
4383
5561
  acceptedDecisions: {
@@ -4400,10 +5578,6 @@ export declare const PlanWorkspaceSchema: z.ZodObject<{
4400
5578
  toStatus: "canceled" | "planned" | "in-progress" | "done" | "blocked" | "rejected" | "deferred" | "waiting" | "draft" | "discovery";
4401
5579
  }[];
4402
5580
  dependsOn: string[];
4403
- sessionInfo: {
4404
- createdAt: string;
4405
- sessionId: string;
4406
- }[];
4407
5581
  slug: string;
4408
5582
  discussedAt: string;
4409
5583
  contextReady: boolean;
@@ -4428,6 +5602,10 @@ export declare const PlanWorkspaceSchema: z.ZodObject<{
4428
5602
  id: string;
4429
5603
  createdAt: string;
4430
5604
  title: string;
5605
+ sessionInfo: {
5606
+ createdAt: string;
5607
+ sessionId: string;
5608
+ }[];
4431
5609
  description: string;
4432
5610
  decisions: string[];
4433
5611
  acceptedDecisions: {
@@ -4482,22 +5660,119 @@ export declare const PlanWorkspaceSchema: z.ZodObject<{
4482
5660
  }[];
4483
5661
  startedAt: string;
4484
5662
  completedAt: string;
4485
- sessionInfo: {
4486
- createdAt: string;
4487
- sessionId: string;
4488
- }[];
5663
+ activeOwnerSession: string;
5664
+ descriptionRef?: string | undefined;
4489
5665
  }[];
4490
5666
  handoff: string;
4491
5667
  handoffUpdatedAt: string;
5668
+ handoffAudit: {
5669
+ entries: {
5670
+ status: "captured" | "not-applicable";
5671
+ category: string;
5672
+ detail: string;
5673
+ }[];
5674
+ contentHash: string;
5675
+ contentLength: number;
5676
+ version: number;
5677
+ supportingDocuments: {
5678
+ path: string;
5679
+ description: string;
5680
+ contentHash: string;
5681
+ contentLength: number;
5682
+ }[];
5683
+ verifiedAt: string;
5684
+ resumeReadyAt: string;
5685
+ readBackSourceReviews: {
5686
+ detail: string;
5687
+ source: string;
5688
+ }[];
5689
+ coldStartInventory?: {
5690
+ entries: {
5691
+ category: string;
5692
+ items: string[];
5693
+ notApplicableReason?: string | undefined;
5694
+ }[];
5695
+ version: number;
5696
+ sourceReviews: {
5697
+ detail: string;
5698
+ source: string;
5699
+ }[];
5700
+ } | undefined;
5701
+ } | null;
4492
5702
  handoffReadAt: string;
4493
5703
  handoffHistory: {
4494
5704
  file: string;
4495
5705
  reason: string;
4496
5706
  clearedAt: string;
4497
5707
  }[];
5708
+ descriptionRef?: string | undefined;
4498
5709
  featureId?: string | undefined;
4499
5710
  }[];
4500
5711
  }, {
5712
+ project: {
5713
+ name: string;
5714
+ workflowRules: {
5715
+ beforePhaseStart?: string[] | undefined;
5716
+ beforeTaskStart?: string[] | undefined;
5717
+ afterPhaseComplete?: string[] | undefined;
5718
+ };
5719
+ goal?: string | undefined;
5720
+ description?: string | undefined;
5721
+ descriptionRef?: string | undefined;
5722
+ projectGuidelines?: {
5723
+ updatedAt?: string | undefined;
5724
+ content?: string | undefined;
5725
+ sessionInfo?: {
5726
+ createdAt: string;
5727
+ sessionId: string;
5728
+ }[] | undefined;
5729
+ } | undefined;
5730
+ webPort?: number | undefined;
5731
+ scope?: string[] | undefined;
5732
+ outOfScope?: string[] | undefined;
5733
+ decisions?: string[] | undefined;
5734
+ globalRules?: string[] | undefined;
5735
+ technologies?: string[] | undefined;
5736
+ tools?: string[] | undefined;
5737
+ contentLanguage?: string | undefined;
5738
+ chatLanguage?: string | undefined;
5739
+ acceptedDecisions?: {
5740
+ id: string;
5741
+ title: string;
5742
+ acceptedAt: string;
5743
+ decision?: string | undefined;
5744
+ rationale?: string | undefined;
5745
+ implementationNotes?: string | undefined;
5746
+ }[] | undefined;
5747
+ nextFeatureNumber?: number | undefined;
5748
+ nextPhaseNumber?: number | undefined;
5749
+ nextTaskNumber?: number | undefined;
5750
+ workDeviations?: {
5751
+ id: string;
5752
+ createdAt: string;
5753
+ recommendedTaskId: string;
5754
+ temporaryTaskId: string;
5755
+ resumeTaskId: string;
5756
+ reason?: string | undefined;
5757
+ snapshot?: {
5758
+ id: string;
5759
+ reason: string;
5760
+ whatWasBeingDone: string;
5761
+ resumeLocation: string;
5762
+ howToResume: string;
5763
+ pausedAt: string;
5764
+ relatedTaskId?: string | undefined;
5765
+ pausedBy?: string | undefined;
5766
+ } | null | undefined;
5767
+ requestedBy?: "agent" | "user" | undefined;
5768
+ approvedBy?: string | undefined;
5769
+ state?: "approved" | "active" | "resume-required" | "resolved" | "resumed" | "canceled" | undefined;
5770
+ activatedAt?: string | undefined;
5771
+ resumeRequiredAt?: string | undefined;
5772
+ resolvedAt?: string | undefined;
5773
+ resumedAt?: string | undefined;
5774
+ }[] | undefined;
5775
+ };
4501
5776
  features: {
4502
5777
  features: {
4503
5778
  name: string;
@@ -4505,7 +5780,12 @@ export declare const PlanWorkspaceSchema: z.ZodObject<{
4505
5780
  id: string;
4506
5781
  createdAt: string;
4507
5782
  number?: number | undefined;
5783
+ sessionInfo?: {
5784
+ createdAt: string;
5785
+ sessionId: string;
5786
+ }[] | undefined;
4508
5787
  description?: string | undefined;
5788
+ descriptionRef?: string | undefined;
4509
5789
  acceptedDecisions?: {
4510
5790
  id: string;
4511
5791
  title: string;
@@ -4526,10 +5806,6 @@ export declare const PlanWorkspaceSchema: z.ZodObject<{
4526
5806
  description?: string | undefined;
4527
5807
  }[] | undefined;
4528
5808
  dependsOn?: string[] | undefined;
4529
- sessionInfo?: {
4530
- createdAt: string;
4531
- sessionId: string;
4532
- }[] | undefined;
4533
5809
  discussedAt?: string | undefined;
4534
5810
  contextReady?: boolean | undefined;
4535
5811
  contextReadyReason?: string | undefined;
@@ -4542,16 +5818,15 @@ export declare const PlanWorkspaceSchema: z.ZodObject<{
4542
5818
  };
4543
5819
  requirements: {
4544
5820
  requirements: {
4545
- status: "canceled" | "planned" | "in-progress" | "done" | "blocked" | "rejected" | "deferred" | "waiting";
4546
5821
  updatedAt: string;
4547
5822
  id: string;
4548
5823
  createdAt: string;
4549
5824
  title: string;
4550
- description?: string | undefined;
4551
5825
  sessionInfo?: {
4552
5826
  createdAt: string;
4553
5827
  sessionId: string;
4554
5828
  }[] | undefined;
5829
+ description?: string | undefined;
4555
5830
  macroTasks?: {
4556
5831
  status: "canceled" | "planned" | "in-progress" | "done" | "blocked" | "rejected" | "deferred" | "waiting";
4557
5832
  updatedAt: string;
@@ -4570,61 +5845,6 @@ export declare const PlanWorkspaceSchema: z.ZodObject<{
4570
5845
  projectName: string;
4571
5846
  createdAt: string;
4572
5847
  };
4573
- project: {
4574
- name: string;
4575
- workflowRules: {
4576
- beforePhaseStart?: string[] | undefined;
4577
- beforeTaskStart?: string[] | undefined;
4578
- afterPhaseComplete?: string[] | undefined;
4579
- };
4580
- goal?: string | undefined;
4581
- description?: string | undefined;
4582
- webPort?: number | undefined;
4583
- scope?: string[] | undefined;
4584
- outOfScope?: string[] | undefined;
4585
- decisions?: string[] | undefined;
4586
- globalRules?: string[] | undefined;
4587
- technologies?: string[] | undefined;
4588
- tools?: string[] | undefined;
4589
- contentLanguage?: string | undefined;
4590
- chatLanguage?: string | undefined;
4591
- acceptedDecisions?: {
4592
- id: string;
4593
- title: string;
4594
- acceptedAt: string;
4595
- decision?: string | undefined;
4596
- rationale?: string | undefined;
4597
- implementationNotes?: string | undefined;
4598
- }[] | undefined;
4599
- nextFeatureNumber?: number | undefined;
4600
- nextPhaseNumber?: number | undefined;
4601
- nextTaskNumber?: number | undefined;
4602
- workDeviations?: {
4603
- id: string;
4604
- createdAt: string;
4605
- recommendedTaskId: string;
4606
- temporaryTaskId: string;
4607
- resumeTaskId: string;
4608
- reason?: string | undefined;
4609
- snapshot?: {
4610
- id: string;
4611
- reason: string;
4612
- whatWasBeingDone: string;
4613
- resumeLocation: string;
4614
- howToResume: string;
4615
- pausedAt: string;
4616
- relatedTaskId?: string | undefined;
4617
- pausedBy?: string | undefined;
4618
- } | null | undefined;
4619
- requestedBy?: "agent" | "user" | undefined;
4620
- approvedBy?: string | undefined;
4621
- state?: "approved" | "active" | "resume-required" | "resolved" | "resumed" | "canceled" | undefined;
4622
- activatedAt?: string | undefined;
4623
- resumeRequiredAt?: string | undefined;
4624
- resolvedAt?: string | undefined;
4625
- resumedAt?: string | undefined;
4626
- }[] | undefined;
4627
- };
4628
5848
  phases: {
4629
5849
  number: number;
4630
5850
  updatedAt: string;
@@ -4635,7 +5855,12 @@ export declare const PlanWorkspaceSchema: z.ZodObject<{
4635
5855
  dependencies?: string[] | undefined;
4636
5856
  notes?: string | undefined;
4637
5857
  summary?: string | undefined;
5858
+ sessionInfo?: {
5859
+ createdAt: string;
5860
+ sessionId: string;
5861
+ }[] | undefined;
4638
5862
  description?: string | undefined;
5863
+ descriptionRef?: string | undefined;
4639
5864
  decisions?: string[] | undefined;
4640
5865
  acceptedDecisions?: {
4641
5866
  id: string;
@@ -4657,10 +5882,6 @@ export declare const PlanWorkspaceSchema: z.ZodObject<{
4657
5882
  description?: string | undefined;
4658
5883
  }[] | undefined;
4659
5884
  dependsOn?: string[] | undefined;
4660
- sessionInfo?: {
4661
- createdAt: string;
4662
- sessionId: string;
4663
- }[] | undefined;
4664
5885
  featureId?: string | undefined;
4665
5886
  discussedAt?: string | undefined;
4666
5887
  contextReady?: boolean | undefined;
@@ -4681,7 +5902,12 @@ export declare const PlanWorkspaceSchema: z.ZodObject<{
4681
5902
  shortName: string;
4682
5903
  number?: number | undefined;
4683
5904
  notes?: string | undefined;
5905
+ sessionInfo?: {
5906
+ createdAt: string;
5907
+ sessionId: string;
5908
+ }[] | undefined;
4684
5909
  description?: string | undefined;
5910
+ descriptionRef?: string | undefined;
4685
5911
  decisions?: string[] | undefined;
4686
5912
  acceptedDecisions?: {
4687
5913
  id: string;
@@ -4739,13 +5965,44 @@ export declare const PlanWorkspaceSchema: z.ZodObject<{
4739
5965
  }[] | undefined;
4740
5966
  startedAt?: string | undefined;
4741
5967
  completedAt?: string | undefined;
4742
- sessionInfo?: {
4743
- createdAt: string;
4744
- sessionId: string;
4745
- }[] | undefined;
5968
+ activeOwnerSession?: string | undefined;
4746
5969
  }[] | undefined;
4747
5970
  handoff?: string | undefined;
4748
5971
  handoffUpdatedAt?: string | undefined;
5972
+ handoffAudit?: {
5973
+ entries: {
5974
+ status: "captured" | "not-applicable";
5975
+ category: string;
5976
+ detail: string;
5977
+ }[];
5978
+ contentHash: string;
5979
+ contentLength: number;
5980
+ version: number;
5981
+ verifiedAt: string;
5982
+ coldStartInventory?: {
5983
+ entries: {
5984
+ category: string;
5985
+ items?: string[] | undefined;
5986
+ notApplicableReason?: string | undefined;
5987
+ }[];
5988
+ version: number;
5989
+ sourceReviews: {
5990
+ detail: string;
5991
+ source: string;
5992
+ }[];
5993
+ } | undefined;
5994
+ supportingDocuments?: {
5995
+ path: string;
5996
+ description: string;
5997
+ contentHash: string;
5998
+ contentLength: number;
5999
+ }[] | undefined;
6000
+ resumeReadyAt?: string | undefined;
6001
+ readBackSourceReviews?: {
6002
+ detail: string;
6003
+ source: string;
6004
+ }[] | undefined;
6005
+ } | null | undefined;
4749
6006
  handoffReadAt?: string | undefined;
4750
6007
  handoffHistory?: {
4751
6008
  clearedAt: string;
@@ -4753,6 +6010,24 @@ export declare const PlanWorkspaceSchema: z.ZodObject<{
4753
6010
  reason?: string | undefined;
4754
6011
  }[] | undefined;
4755
6012
  }[];
6013
+ ideas?: {
6014
+ nextIdeaNumber?: number | undefined;
6015
+ ideas?: {
6016
+ number: number;
6017
+ updatedAt: string;
6018
+ id: string;
6019
+ createdAt: string;
6020
+ title: string;
6021
+ shortId: string;
6022
+ description?: string | undefined;
6023
+ promotion?: {
6024
+ targetType: "feature" | "phase" | "task";
6025
+ targetId: string;
6026
+ targetRef: string;
6027
+ promotedAt: string;
6028
+ } | null | undefined;
6029
+ }[] | undefined;
6030
+ } | undefined;
4756
6031
  }>;
4757
6032
  export type Timestamp = z.infer<typeof TimestampSchema>;
4758
6033
  export type SessionInfo = z.infer<typeof SessionInfoSchema>;
@@ -4771,11 +6046,17 @@ export type FeaturesDocument = {
4771
6046
  };
4772
6047
  export type PhaseStatus = z.infer<typeof PhaseStatusSchema>;
4773
6048
  export type TaskStatus = z.infer<typeof TaskStatusSchema>;
4774
- export type RequirementStatus = z.infer<typeof RequirementStatusSchema>;
6049
+ export type MacroTaskStatus = z.infer<typeof MacroTaskStatusSchema>;
4775
6050
  export type SubtaskStatus = z.infer<typeof SubtaskStatusSchema>;
4776
6051
  export type Manifest = z.infer<typeof ManifestSchema>;
4777
6052
  export type WorkflowRules = z.infer<typeof WorkflowRulesSchema>;
4778
6053
  export type AcceptedDecision = z.infer<typeof AcceptedDecisionSchema>;
6054
+ export type HandoffCompletenessEntry = z.infer<typeof HandoffCompletenessEntrySchema>;
6055
+ export type HandoffSupportingDocument = z.infer<typeof HandoffSupportingDocumentSchema>;
6056
+ export type HandoffColdStartInventoryEntry = z.infer<typeof HandoffColdStartInventoryEntrySchema>;
6057
+ export type HandoffColdStartSourceReview = z.infer<typeof HandoffColdStartSourceReviewSchema>;
6058
+ export type HandoffColdStartInventory = z.infer<typeof HandoffColdStartInventorySchema>;
6059
+ export type HandoffCompletenessAudit = z.infer<typeof HandoffCompletenessAuditSchema>;
4779
6060
  export type Project = z.infer<typeof ProjectSchema>;
4780
6061
  export type WorkDeviation = z.infer<typeof WorkDeviationSchema>;
4781
6062
  export type TaskPauseSnapshot = z.infer<typeof TaskPauseSnapshotSchema>;
@@ -4790,6 +6071,10 @@ export type Phase = z.infer<typeof PhaseSchema> & {
4790
6071
  export type MacroTask = z.infer<typeof MacroTaskSchema>;
4791
6072
  export type Requirement = z.infer<typeof RequirementSchema>;
4792
6073
  export type RequirementsDocument = z.infer<typeof RequirementsDocumentSchema>;
6074
+ export type IdeaPromotionTargetType = z.infer<typeof IdeaPromotionTargetTypeSchema>;
6075
+ export type IdeaPromotion = z.infer<typeof IdeaPromotionSchema>;
6076
+ export type Idea = z.infer<typeof IdeaSchema>;
6077
+ export type IdeasDocument = z.infer<typeof IdeasDocumentSchema>;
4793
6078
  export type PlanWorkspace = Omit<z.infer<typeof PlanWorkspaceSchema>, "phases" | "features"> & {
4794
6079
  phases: Phase[];
4795
6080
  features: FeaturesDocument;