@cat-factory/contracts 0.88.0 → 0.90.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (36) hide show
  1. package/dist/agent-presentation.d.ts +2 -2
  2. package/dist/entities.d.ts +109 -0
  3. package/dist/entities.d.ts.map +1 -1
  4. package/dist/entities.js +51 -0
  5. package/dist/entities.js.map +1 -1
  6. package/dist/initiative.d.ts +37 -4
  7. package/dist/initiative.d.ts.map +1 -1
  8. package/dist/initiative.js +29 -3
  9. package/dist/initiative.js.map +1 -1
  10. package/dist/result-views.d.ts +1 -1
  11. package/dist/result-views.d.ts.map +1 -1
  12. package/dist/result-views.js +1 -0
  13. package/dist/result-views.js.map +1 -1
  14. package/dist/routes/agent-runs.d.ts +20 -0
  15. package/dist/routes/agent-runs.d.ts.map +1 -1
  16. package/dist/routes/execution.d.ts +80 -0
  17. package/dist/routes/execution.d.ts.map +1 -1
  18. package/dist/routes/human-review.d.ts +10 -0
  19. package/dist/routes/human-review.d.ts.map +1 -1
  20. package/dist/routes/human-test.d.ts +50 -0
  21. package/dist/routes/human-test.d.ts.map +1 -1
  22. package/dist/routes/initiative.d.ts +410 -4
  23. package/dist/routes/initiative.d.ts.map +1 -1
  24. package/dist/routes/initiative.js +30 -2
  25. package/dist/routes/initiative.js.map +1 -1
  26. package/dist/routes/visual-confirm.d.ts +30 -0
  27. package/dist/routes/visual-confirm.d.ts.map +1 -1
  28. package/dist/routes/workspaces.d.ts +36 -4
  29. package/dist/routes/workspaces.d.ts.map +1 -1
  30. package/dist/service-connections.d.ts +13 -0
  31. package/dist/service-connections.d.ts.map +1 -1
  32. package/dist/service-connections.js +18 -0
  33. package/dist/service-connections.js.map +1 -1
  34. package/dist/snapshot.d.ts +18 -2
  35. package/dist/snapshot.d.ts.map +1 -1
  36. package/package.json +1 -1
@@ -1,3 +1,4 @@
1
+ import { ContractNoBody } from '@toad-contracts/valibot';
1
2
  import * as v from 'valibot';
2
3
  /**
3
4
  * Create an initiative: materialises the initiative-level board block AND its
@@ -45,9 +46,15 @@ export declare const createInitiativeContract: {
45
46
  readonly constraints: v.OptionalSchema<v.ArraySchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 2000, undefined>]>, undefined>, readonly []>;
46
47
  readonly nonGoals: v.OptionalSchema<v.ArraySchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 2000, undefined>]>, undefined>, readonly []>;
47
48
  readonly qa: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
49
+ readonly id: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 80, undefined>]>, undefined>;
48
50
  readonly question: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 2000, undefined>]>;
49
- readonly answer: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 2000, undefined>]>;
51
+ readonly answer: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 2000, undefined>]>, "">;
50
52
  }, undefined>, undefined>, readonly []>;
53
+ readonly interview: v.OptionalSchema<v.NullableSchema<v.ObjectSchema<{
54
+ readonly round: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
55
+ readonly maxRounds: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 1, undefined>]>;
56
+ readonly status: v.PicklistSchema<["awaiting", "done"], undefined>;
57
+ }, undefined>, undefined>, undefined>;
51
58
  readonly analysisSummary: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 8000, undefined>]>, "">;
52
59
  readonly phases: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
53
60
  readonly id: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 80, undefined>]>;
@@ -345,9 +352,15 @@ export declare const listInitiativesContract: {
345
352
  readonly constraints: v.OptionalSchema<v.ArraySchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 2000, undefined>]>, undefined>, readonly []>;
346
353
  readonly nonGoals: v.OptionalSchema<v.ArraySchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 2000, undefined>]>, undefined>, readonly []>;
347
354
  readonly qa: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
355
+ readonly id: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 80, undefined>]>, undefined>;
348
356
  readonly question: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 2000, undefined>]>;
349
- readonly answer: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 2000, undefined>]>;
357
+ readonly answer: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 2000, undefined>]>, "">;
350
358
  }, undefined>, undefined>, readonly []>;
359
+ readonly interview: v.OptionalSchema<v.NullableSchema<v.ObjectSchema<{
360
+ readonly round: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
361
+ readonly maxRounds: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 1, undefined>]>;
362
+ readonly status: v.PicklistSchema<["awaiting", "done"], undefined>;
363
+ }, undefined>, undefined>, undefined>;
351
364
  readonly analysisSummary: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 8000, undefined>]>, "">;
352
365
  readonly phases: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
353
366
  readonly id: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 80, undefined>]>;
@@ -463,9 +476,15 @@ export declare const getInitiativeContract: {
463
476
  readonly constraints: v.OptionalSchema<v.ArraySchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 2000, undefined>]>, undefined>, readonly []>;
464
477
  readonly nonGoals: v.OptionalSchema<v.ArraySchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 2000, undefined>]>, undefined>, readonly []>;
465
478
  readonly qa: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
479
+ readonly id: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 80, undefined>]>, undefined>;
466
480
  readonly question: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 2000, undefined>]>;
467
- readonly answer: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 2000, undefined>]>;
481
+ readonly answer: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 2000, undefined>]>, "">;
468
482
  }, undefined>, undefined>, readonly []>;
483
+ readonly interview: v.OptionalSchema<v.NullableSchema<v.ObjectSchema<{
484
+ readonly round: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
485
+ readonly maxRounds: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 1, undefined>]>;
486
+ readonly status: v.PicklistSchema<["awaiting", "done"], undefined>;
487
+ }, undefined>, undefined>, undefined>;
469
488
  readonly analysisSummary: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 8000, undefined>]>, "">;
470
489
  readonly phases: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
471
490
  readonly id: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 80, undefined>]>;
@@ -582,9 +601,15 @@ export declare const getInitiativeByBlockContract: {
582
601
  readonly constraints: v.OptionalSchema<v.ArraySchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 2000, undefined>]>, undefined>, readonly []>;
583
602
  readonly nonGoals: v.OptionalSchema<v.ArraySchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 2000, undefined>]>, undefined>, readonly []>;
584
603
  readonly qa: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
604
+ readonly id: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 80, undefined>]>, undefined>;
585
605
  readonly question: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 2000, undefined>]>;
586
- readonly answer: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 2000, undefined>]>;
606
+ readonly answer: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 2000, undefined>]>, "">;
587
607
  }, undefined>, undefined>, readonly []>;
608
+ readonly interview: v.OptionalSchema<v.NullableSchema<v.ObjectSchema<{
609
+ readonly round: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
610
+ readonly maxRounds: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 1, undefined>]>;
611
+ readonly status: v.PicklistSchema<["awaiting", "done"], undefined>;
612
+ }, undefined>, undefined>, undefined>;
588
613
  readonly analysisSummary: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 8000, undefined>]>, "">;
589
614
  readonly phases: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
590
615
  readonly id: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 80, undefined>]>;
@@ -660,4 +685,385 @@ export declare const getInitiativeByBlockContract: {
660
685
  }, undefined>, undefined>;
661
686
  };
662
687
  };
688
+ /** Record the human's answer to one pending planning-interview question (no run resume). */
689
+ export declare const answerInitiativeQuestionContract: {
690
+ readonly method: "post";
691
+ readonly requestPathParamsSchema: v.ObjectSchema<{
692
+ blockId: v.StringSchema<undefined>;
693
+ }, undefined> & import("@toad-contracts/core").StandardObjectKeysV1<unknown, unknown>;
694
+ readonly pathResolver: ({ blockId }: {
695
+ blockId: string;
696
+ }) => string;
697
+ readonly requestBodySchema: v.ObjectSchema<{
698
+ readonly questionId: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>]>;
699
+ readonly answer: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 2000, undefined>]>;
700
+ }, undefined>;
701
+ readonly responsesByStatusCode: {
702
+ readonly '4xx': v.ObjectSchema<{
703
+ readonly error: v.ObjectSchema<{
704
+ readonly code: v.StringSchema<undefined>;
705
+ readonly message: v.StringSchema<undefined>;
706
+ readonly details: v.OptionalSchema<v.UnknownSchema, undefined>;
707
+ readonly issues: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
708
+ readonly path: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
709
+ readonly message: v.StringSchema<undefined>;
710
+ }, undefined>, undefined>, undefined>;
711
+ }, undefined>;
712
+ }, undefined>;
713
+ readonly '5xx': v.ObjectSchema<{
714
+ readonly error: v.ObjectSchema<{
715
+ readonly code: v.StringSchema<undefined>;
716
+ readonly message: v.StringSchema<undefined>;
717
+ readonly details: v.OptionalSchema<v.UnknownSchema, undefined>;
718
+ readonly issues: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
719
+ readonly path: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
720
+ readonly message: v.StringSchema<undefined>;
721
+ }, undefined>, undefined>, undefined>;
722
+ }, undefined>;
723
+ }, undefined>;
724
+ readonly 200: v.ObjectSchema<{
725
+ readonly id: v.StringSchema<undefined>;
726
+ readonly blockId: v.StringSchema<undefined>;
727
+ readonly slug: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 80, undefined>]>;
728
+ readonly title: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 200, undefined>]>;
729
+ readonly goal: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 8000, undefined>]>, "">;
730
+ readonly constraints: v.OptionalSchema<v.ArraySchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 2000, undefined>]>, undefined>, readonly []>;
731
+ readonly nonGoals: v.OptionalSchema<v.ArraySchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 2000, undefined>]>, undefined>, readonly []>;
732
+ readonly qa: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
733
+ readonly id: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 80, undefined>]>, undefined>;
734
+ readonly question: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 2000, undefined>]>;
735
+ readonly answer: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 2000, undefined>]>, "">;
736
+ }, undefined>, undefined>, readonly []>;
737
+ readonly interview: v.OptionalSchema<v.NullableSchema<v.ObjectSchema<{
738
+ readonly round: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
739
+ readonly maxRounds: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 1, undefined>]>;
740
+ readonly status: v.PicklistSchema<["awaiting", "done"], undefined>;
741
+ }, undefined>, undefined>, undefined>;
742
+ readonly analysisSummary: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 8000, undefined>]>, "">;
743
+ readonly phases: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
744
+ readonly id: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 80, undefined>]>;
745
+ readonly title: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 200, undefined>]>;
746
+ readonly goal: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 2000, undefined>]>, "">;
747
+ readonly maxConcurrent: v.OptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 1, undefined>, v.MaxValueAction<number, 20, undefined>]>, undefined>;
748
+ }, undefined>, undefined>, readonly []>;
749
+ readonly items: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
750
+ readonly id: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 80, undefined>]>;
751
+ readonly phaseId: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 80, undefined>]>;
752
+ readonly title: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 200, undefined>]>;
753
+ readonly description: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 8000, undefined>]>;
754
+ readonly dependsOn: v.OptionalSchema<v.ArraySchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 80, undefined>]>, undefined>, readonly []>;
755
+ readonly estimate: v.OptionalSchema<v.ObjectSchema<{
756
+ readonly complexity: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.MinValueAction<number, 0, undefined>, v.MaxValueAction<number, 1, undefined>]>;
757
+ readonly risk: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.MinValueAction<number, 0, undefined>, v.MaxValueAction<number, 1, undefined>]>;
758
+ readonly impact: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.MinValueAction<number, 0, undefined>, v.MaxValueAction<number, 1, undefined>]>;
759
+ readonly rationale: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 2000, undefined>]>, "">;
760
+ }, undefined>, undefined>;
761
+ readonly pipelineId: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 80, undefined>]>, undefined>;
762
+ readonly status: v.PicklistSchema<["pending", "in_progress", "pr_open", "done", "blocked", "skipped"], undefined>;
763
+ readonly blockId: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
764
+ readonly pr: v.OptionalSchema<v.ObjectSchema<{
765
+ readonly url: v.StringSchema<undefined>;
766
+ readonly number: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
767
+ }, undefined>, undefined>;
768
+ readonly note: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 2000, undefined>]>, undefined>;
769
+ }, undefined>, undefined>, readonly []>;
770
+ readonly policy: v.OptionalSchema<v.NullableSchema<v.ObjectSchema<{
771
+ readonly maxConcurrent: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 1, undefined>, v.MaxValueAction<number, 20, undefined>]>;
772
+ readonly rules: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
773
+ readonly pipelineId: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 80, undefined>]>;
774
+ readonly minComplexity: v.OptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.MinValueAction<number, 0, undefined>, v.MaxValueAction<number, 1, undefined>]>, undefined>;
775
+ readonly minRisk: v.OptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.MinValueAction<number, 0, undefined>, v.MaxValueAction<number, 1, undefined>]>, undefined>;
776
+ readonly minImpact: v.OptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.MinValueAction<number, 0, undefined>, v.MaxValueAction<number, 1, undefined>]>, undefined>;
777
+ }, undefined>, undefined>, readonly []>;
778
+ readonly defaultPipelineId: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 80, undefined>]>;
779
+ readonly onMissingEstimate: v.OptionalSchema<v.PicklistSchema<["default", "strongest"], undefined>, "default">;
780
+ }, undefined>, undefined>, undefined>;
781
+ readonly decisions: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
782
+ readonly id: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 80, undefined>]>;
783
+ readonly at: v.NumberSchema<undefined>;
784
+ readonly title: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 200, undefined>]>;
785
+ readonly detail: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 2000, undefined>]>, "">;
786
+ readonly source: v.PicklistSchema<["planning", "human", "agent"], undefined>;
787
+ }, undefined>, undefined>, readonly []>;
788
+ readonly deviations: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
789
+ readonly id: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 80, undefined>]>;
790
+ readonly at: v.NumberSchema<undefined>;
791
+ readonly itemId: v.OptionalSchema<v.NullableSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 80, undefined>]>, undefined>, undefined>;
792
+ readonly description: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 2000, undefined>]>;
793
+ readonly resolution: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 2000, undefined>]>, undefined>;
794
+ }, undefined>, undefined>, readonly []>;
795
+ readonly followUps: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
796
+ readonly id: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 80, undefined>]>;
797
+ readonly at: v.NumberSchema<undefined>;
798
+ readonly sourceItemId: v.OptionalSchema<v.NullableSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 80, undefined>]>, undefined>, undefined>;
799
+ readonly title: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 200, undefined>]>;
800
+ readonly detail: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 2000, undefined>]>, "">;
801
+ readonly status: v.PicklistSchema<["open", "promoted", "dismissed"], undefined>;
802
+ readonly promotedItemId: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 80, undefined>]>, undefined>;
803
+ }, undefined>, undefined>, readonly []>;
804
+ readonly caveats: v.OptionalSchema<v.ArraySchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 2000, undefined>]>, undefined>, readonly []>;
805
+ readonly status: v.PicklistSchema<["planning", "awaiting_approval", "executing", "paused", "done", "cancelled"], undefined>;
806
+ readonly doc: v.OptionalSchema<v.ObjectSchema<{
807
+ readonly version: v.NumberSchema<undefined>;
808
+ readonly hash: v.StringSchema<undefined>;
809
+ readonly committedAt: v.NumberSchema<undefined>;
810
+ }, undefined>, undefined>;
811
+ readonly rev: v.NumberSchema<undefined>;
812
+ readonly createdAt: v.NumberSchema<undefined>;
813
+ readonly updatedAt: v.NumberSchema<undefined>;
814
+ }, undefined>;
815
+ };
816
+ };
817
+ /** Submit the answered questions and resume the interview (the interviewer re-runs). */
818
+ export declare const continueInitiativePlanningContract: {
819
+ readonly method: "post";
820
+ readonly requestPathParamsSchema: v.ObjectSchema<{
821
+ blockId: v.StringSchema<undefined>;
822
+ }, undefined> & import("@toad-contracts/core").StandardObjectKeysV1<unknown, unknown>;
823
+ readonly pathResolver: ({ blockId }: {
824
+ blockId: string;
825
+ }) => string;
826
+ readonly requestBodySchema: typeof ContractNoBody;
827
+ readonly responsesByStatusCode: {
828
+ readonly '4xx': v.ObjectSchema<{
829
+ readonly error: v.ObjectSchema<{
830
+ readonly code: v.StringSchema<undefined>;
831
+ readonly message: v.StringSchema<undefined>;
832
+ readonly details: v.OptionalSchema<v.UnknownSchema, undefined>;
833
+ readonly issues: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
834
+ readonly path: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
835
+ readonly message: v.StringSchema<undefined>;
836
+ }, undefined>, undefined>, undefined>;
837
+ }, undefined>;
838
+ }, undefined>;
839
+ readonly '5xx': v.ObjectSchema<{
840
+ readonly error: v.ObjectSchema<{
841
+ readonly code: v.StringSchema<undefined>;
842
+ readonly message: v.StringSchema<undefined>;
843
+ readonly details: v.OptionalSchema<v.UnknownSchema, undefined>;
844
+ readonly issues: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
845
+ readonly path: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
846
+ readonly message: v.StringSchema<undefined>;
847
+ }, undefined>, undefined>, undefined>;
848
+ }, undefined>;
849
+ }, undefined>;
850
+ readonly 200: v.ObjectSchema<{
851
+ readonly id: v.StringSchema<undefined>;
852
+ readonly blockId: v.StringSchema<undefined>;
853
+ readonly slug: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 80, undefined>]>;
854
+ readonly title: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 200, undefined>]>;
855
+ readonly goal: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 8000, undefined>]>, "">;
856
+ readonly constraints: v.OptionalSchema<v.ArraySchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 2000, undefined>]>, undefined>, readonly []>;
857
+ readonly nonGoals: v.OptionalSchema<v.ArraySchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 2000, undefined>]>, undefined>, readonly []>;
858
+ readonly qa: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
859
+ readonly id: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 80, undefined>]>, undefined>;
860
+ readonly question: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 2000, undefined>]>;
861
+ readonly answer: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 2000, undefined>]>, "">;
862
+ }, undefined>, undefined>, readonly []>;
863
+ readonly interview: v.OptionalSchema<v.NullableSchema<v.ObjectSchema<{
864
+ readonly round: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
865
+ readonly maxRounds: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 1, undefined>]>;
866
+ readonly status: v.PicklistSchema<["awaiting", "done"], undefined>;
867
+ }, undefined>, undefined>, undefined>;
868
+ readonly analysisSummary: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 8000, undefined>]>, "">;
869
+ readonly phases: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
870
+ readonly id: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 80, undefined>]>;
871
+ readonly title: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 200, undefined>]>;
872
+ readonly goal: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 2000, undefined>]>, "">;
873
+ readonly maxConcurrent: v.OptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 1, undefined>, v.MaxValueAction<number, 20, undefined>]>, undefined>;
874
+ }, undefined>, undefined>, readonly []>;
875
+ readonly items: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
876
+ readonly id: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 80, undefined>]>;
877
+ readonly phaseId: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 80, undefined>]>;
878
+ readonly title: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 200, undefined>]>;
879
+ readonly description: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 8000, undefined>]>;
880
+ readonly dependsOn: v.OptionalSchema<v.ArraySchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 80, undefined>]>, undefined>, readonly []>;
881
+ readonly estimate: v.OptionalSchema<v.ObjectSchema<{
882
+ readonly complexity: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.MinValueAction<number, 0, undefined>, v.MaxValueAction<number, 1, undefined>]>;
883
+ readonly risk: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.MinValueAction<number, 0, undefined>, v.MaxValueAction<number, 1, undefined>]>;
884
+ readonly impact: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.MinValueAction<number, 0, undefined>, v.MaxValueAction<number, 1, undefined>]>;
885
+ readonly rationale: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 2000, undefined>]>, "">;
886
+ }, undefined>, undefined>;
887
+ readonly pipelineId: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 80, undefined>]>, undefined>;
888
+ readonly status: v.PicklistSchema<["pending", "in_progress", "pr_open", "done", "blocked", "skipped"], undefined>;
889
+ readonly blockId: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
890
+ readonly pr: v.OptionalSchema<v.ObjectSchema<{
891
+ readonly url: v.StringSchema<undefined>;
892
+ readonly number: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
893
+ }, undefined>, undefined>;
894
+ readonly note: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 2000, undefined>]>, undefined>;
895
+ }, undefined>, undefined>, readonly []>;
896
+ readonly policy: v.OptionalSchema<v.NullableSchema<v.ObjectSchema<{
897
+ readonly maxConcurrent: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 1, undefined>, v.MaxValueAction<number, 20, undefined>]>;
898
+ readonly rules: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
899
+ readonly pipelineId: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 80, undefined>]>;
900
+ readonly minComplexity: v.OptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.MinValueAction<number, 0, undefined>, v.MaxValueAction<number, 1, undefined>]>, undefined>;
901
+ readonly minRisk: v.OptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.MinValueAction<number, 0, undefined>, v.MaxValueAction<number, 1, undefined>]>, undefined>;
902
+ readonly minImpact: v.OptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.MinValueAction<number, 0, undefined>, v.MaxValueAction<number, 1, undefined>]>, undefined>;
903
+ }, undefined>, undefined>, readonly []>;
904
+ readonly defaultPipelineId: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 80, undefined>]>;
905
+ readonly onMissingEstimate: v.OptionalSchema<v.PicklistSchema<["default", "strongest"], undefined>, "default">;
906
+ }, undefined>, undefined>, undefined>;
907
+ readonly decisions: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
908
+ readonly id: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 80, undefined>]>;
909
+ readonly at: v.NumberSchema<undefined>;
910
+ readonly title: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 200, undefined>]>;
911
+ readonly detail: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 2000, undefined>]>, "">;
912
+ readonly source: v.PicklistSchema<["planning", "human", "agent"], undefined>;
913
+ }, undefined>, undefined>, readonly []>;
914
+ readonly deviations: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
915
+ readonly id: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 80, undefined>]>;
916
+ readonly at: v.NumberSchema<undefined>;
917
+ readonly itemId: v.OptionalSchema<v.NullableSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 80, undefined>]>, undefined>, undefined>;
918
+ readonly description: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 2000, undefined>]>;
919
+ readonly resolution: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 2000, undefined>]>, undefined>;
920
+ }, undefined>, undefined>, readonly []>;
921
+ readonly followUps: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
922
+ readonly id: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 80, undefined>]>;
923
+ readonly at: v.NumberSchema<undefined>;
924
+ readonly sourceItemId: v.OptionalSchema<v.NullableSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 80, undefined>]>, undefined>, undefined>;
925
+ readonly title: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 200, undefined>]>;
926
+ readonly detail: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 2000, undefined>]>, "">;
927
+ readonly status: v.PicklistSchema<["open", "promoted", "dismissed"], undefined>;
928
+ readonly promotedItemId: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 80, undefined>]>, undefined>;
929
+ }, undefined>, undefined>, readonly []>;
930
+ readonly caveats: v.OptionalSchema<v.ArraySchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 2000, undefined>]>, undefined>, readonly []>;
931
+ readonly status: v.PicklistSchema<["planning", "awaiting_approval", "executing", "paused", "done", "cancelled"], undefined>;
932
+ readonly doc: v.OptionalSchema<v.ObjectSchema<{
933
+ readonly version: v.NumberSchema<undefined>;
934
+ readonly hash: v.StringSchema<undefined>;
935
+ readonly committedAt: v.NumberSchema<undefined>;
936
+ }, undefined>, undefined>;
937
+ readonly rev: v.NumberSchema<undefined>;
938
+ readonly createdAt: v.NumberSchema<undefined>;
939
+ readonly updatedAt: v.NumberSchema<undefined>;
940
+ }, undefined>;
941
+ };
942
+ };
943
+ /** Skip any remaining questions: synthesize the brief from what's answered and advance. */
944
+ export declare const proceedInitiativePlanningContract: {
945
+ readonly method: "post";
946
+ readonly requestPathParamsSchema: v.ObjectSchema<{
947
+ blockId: v.StringSchema<undefined>;
948
+ }, undefined> & import("@toad-contracts/core").StandardObjectKeysV1<unknown, unknown>;
949
+ readonly pathResolver: ({ blockId }: {
950
+ blockId: string;
951
+ }) => string;
952
+ readonly requestBodySchema: typeof ContractNoBody;
953
+ readonly responsesByStatusCode: {
954
+ readonly '4xx': v.ObjectSchema<{
955
+ readonly error: v.ObjectSchema<{
956
+ readonly code: v.StringSchema<undefined>;
957
+ readonly message: v.StringSchema<undefined>;
958
+ readonly details: v.OptionalSchema<v.UnknownSchema, undefined>;
959
+ readonly issues: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
960
+ readonly path: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
961
+ readonly message: v.StringSchema<undefined>;
962
+ }, undefined>, undefined>, undefined>;
963
+ }, undefined>;
964
+ }, undefined>;
965
+ readonly '5xx': v.ObjectSchema<{
966
+ readonly error: v.ObjectSchema<{
967
+ readonly code: v.StringSchema<undefined>;
968
+ readonly message: v.StringSchema<undefined>;
969
+ readonly details: v.OptionalSchema<v.UnknownSchema, undefined>;
970
+ readonly issues: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
971
+ readonly path: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
972
+ readonly message: v.StringSchema<undefined>;
973
+ }, undefined>, undefined>, undefined>;
974
+ }, undefined>;
975
+ }, undefined>;
976
+ readonly 200: v.ObjectSchema<{
977
+ readonly id: v.StringSchema<undefined>;
978
+ readonly blockId: v.StringSchema<undefined>;
979
+ readonly slug: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 80, undefined>]>;
980
+ readonly title: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 200, undefined>]>;
981
+ readonly goal: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 8000, undefined>]>, "">;
982
+ readonly constraints: v.OptionalSchema<v.ArraySchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 2000, undefined>]>, undefined>, readonly []>;
983
+ readonly nonGoals: v.OptionalSchema<v.ArraySchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 2000, undefined>]>, undefined>, readonly []>;
984
+ readonly qa: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
985
+ readonly id: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 80, undefined>]>, undefined>;
986
+ readonly question: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 2000, undefined>]>;
987
+ readonly answer: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 2000, undefined>]>, "">;
988
+ }, undefined>, undefined>, readonly []>;
989
+ readonly interview: v.OptionalSchema<v.NullableSchema<v.ObjectSchema<{
990
+ readonly round: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
991
+ readonly maxRounds: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 1, undefined>]>;
992
+ readonly status: v.PicklistSchema<["awaiting", "done"], undefined>;
993
+ }, undefined>, undefined>, undefined>;
994
+ readonly analysisSummary: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 8000, undefined>]>, "">;
995
+ readonly phases: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
996
+ readonly id: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 80, undefined>]>;
997
+ readonly title: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 200, undefined>]>;
998
+ readonly goal: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 2000, undefined>]>, "">;
999
+ readonly maxConcurrent: v.OptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 1, undefined>, v.MaxValueAction<number, 20, undefined>]>, undefined>;
1000
+ }, undefined>, undefined>, readonly []>;
1001
+ readonly items: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
1002
+ readonly id: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 80, undefined>]>;
1003
+ readonly phaseId: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 80, undefined>]>;
1004
+ readonly title: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 200, undefined>]>;
1005
+ readonly description: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 8000, undefined>]>;
1006
+ readonly dependsOn: v.OptionalSchema<v.ArraySchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 80, undefined>]>, undefined>, readonly []>;
1007
+ readonly estimate: v.OptionalSchema<v.ObjectSchema<{
1008
+ readonly complexity: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.MinValueAction<number, 0, undefined>, v.MaxValueAction<number, 1, undefined>]>;
1009
+ readonly risk: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.MinValueAction<number, 0, undefined>, v.MaxValueAction<number, 1, undefined>]>;
1010
+ readonly impact: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.MinValueAction<number, 0, undefined>, v.MaxValueAction<number, 1, undefined>]>;
1011
+ readonly rationale: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 2000, undefined>]>, "">;
1012
+ }, undefined>, undefined>;
1013
+ readonly pipelineId: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 80, undefined>]>, undefined>;
1014
+ readonly status: v.PicklistSchema<["pending", "in_progress", "pr_open", "done", "blocked", "skipped"], undefined>;
1015
+ readonly blockId: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
1016
+ readonly pr: v.OptionalSchema<v.ObjectSchema<{
1017
+ readonly url: v.StringSchema<undefined>;
1018
+ readonly number: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
1019
+ }, undefined>, undefined>;
1020
+ readonly note: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 2000, undefined>]>, undefined>;
1021
+ }, undefined>, undefined>, readonly []>;
1022
+ readonly policy: v.OptionalSchema<v.NullableSchema<v.ObjectSchema<{
1023
+ readonly maxConcurrent: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 1, undefined>, v.MaxValueAction<number, 20, undefined>]>;
1024
+ readonly rules: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
1025
+ readonly pipelineId: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 80, undefined>]>;
1026
+ readonly minComplexity: v.OptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.MinValueAction<number, 0, undefined>, v.MaxValueAction<number, 1, undefined>]>, undefined>;
1027
+ readonly minRisk: v.OptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.MinValueAction<number, 0, undefined>, v.MaxValueAction<number, 1, undefined>]>, undefined>;
1028
+ readonly minImpact: v.OptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.MinValueAction<number, 0, undefined>, v.MaxValueAction<number, 1, undefined>]>, undefined>;
1029
+ }, undefined>, undefined>, readonly []>;
1030
+ readonly defaultPipelineId: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 80, undefined>]>;
1031
+ readonly onMissingEstimate: v.OptionalSchema<v.PicklistSchema<["default", "strongest"], undefined>, "default">;
1032
+ }, undefined>, undefined>, undefined>;
1033
+ readonly decisions: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
1034
+ readonly id: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 80, undefined>]>;
1035
+ readonly at: v.NumberSchema<undefined>;
1036
+ readonly title: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 200, undefined>]>;
1037
+ readonly detail: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 2000, undefined>]>, "">;
1038
+ readonly source: v.PicklistSchema<["planning", "human", "agent"], undefined>;
1039
+ }, undefined>, undefined>, readonly []>;
1040
+ readonly deviations: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
1041
+ readonly id: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 80, undefined>]>;
1042
+ readonly at: v.NumberSchema<undefined>;
1043
+ readonly itemId: v.OptionalSchema<v.NullableSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 80, undefined>]>, undefined>, undefined>;
1044
+ readonly description: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 2000, undefined>]>;
1045
+ readonly resolution: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 2000, undefined>]>, undefined>;
1046
+ }, undefined>, undefined>, readonly []>;
1047
+ readonly followUps: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
1048
+ readonly id: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 80, undefined>]>;
1049
+ readonly at: v.NumberSchema<undefined>;
1050
+ readonly sourceItemId: v.OptionalSchema<v.NullableSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 80, undefined>]>, undefined>, undefined>;
1051
+ readonly title: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 200, undefined>]>;
1052
+ readonly detail: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 2000, undefined>]>, "">;
1053
+ readonly status: v.PicklistSchema<["open", "promoted", "dismissed"], undefined>;
1054
+ readonly promotedItemId: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 80, undefined>]>, undefined>;
1055
+ }, undefined>, undefined>, readonly []>;
1056
+ readonly caveats: v.OptionalSchema<v.ArraySchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 2000, undefined>]>, undefined>, readonly []>;
1057
+ readonly status: v.PicklistSchema<["planning", "awaiting_approval", "executing", "paused", "done", "cancelled"], undefined>;
1058
+ readonly doc: v.OptionalSchema<v.ObjectSchema<{
1059
+ readonly version: v.NumberSchema<undefined>;
1060
+ readonly hash: v.StringSchema<undefined>;
1061
+ readonly committedAt: v.NumberSchema<undefined>;
1062
+ }, undefined>, undefined>;
1063
+ readonly rev: v.NumberSchema<undefined>;
1064
+ readonly createdAt: v.NumberSchema<undefined>;
1065
+ readonly updatedAt: v.NumberSchema<undefined>;
1066
+ }, undefined>;
1067
+ };
1068
+ };
663
1069
  //# sourceMappingURL=initiative.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"initiative.d.ts","sourceRoot":"","sources":["../../src/routes/initiative.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAc5B;;;;GAIG;AACH,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAQnC,CAAA;AAEF,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAIlC,CAAA;AAEF,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAKhC,CAAA;AAEF,uFAAuF;AACvF,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAKvC,CAAA"}
1
+ {"version":3,"file":"initiative.d.ts","sourceRoot":"","sources":["../../src/routes/initiative.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAqB,MAAM,yBAAyB,CAAA;AAC3E,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAkB5B;;;;GAIG;AACH,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAQnC,CAAA;AAEF,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAIlC,CAAA;AAEF,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAKhC,CAAA;AAEF,uFAAuF;AACvF,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAKvC,CAAA;AAOF,4FAA4F;AAC5F,eAAO,MAAM,gCAAgC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAM3C,CAAA;AAEF,wFAAwF;AACxF,eAAO,MAAM,kCAAkC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAM7C,CAAA;AAEF,2FAA2F;AAC3F,eAAO,MAAM,iCAAiC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAM5C,CAAA"}
@@ -1,7 +1,7 @@
1
- import { defineApiContract } from '@toad-contracts/valibot';
1
+ import { ContractNoBody, defineApiContract } from '@toad-contracts/valibot';
2
2
  import * as v from 'valibot';
3
3
  import { blockSchema } from '../entities.js';
4
- import { createInitiativeSchema, initiativeSchema } from '../initiative.js';
4
+ import { answerInitiativeQuestionSchema, createInitiativeSchema, initiativeSchema, } from '../initiative.js';
5
5
  import { errorResponses, singleStringParam } from './_shared.js';
6
6
  // ---------------------------------------------------------------------------
7
7
  // Initiative route contracts. Mounted under `/workspaces/:workspaceId`, so the
@@ -42,4 +42,32 @@ export const getInitiativeByBlockContract = defineApiContract({
42
42
  pathResolver: ({ blockId }) => `/blocks/${blockId}/initiative`,
43
43
  responsesByStatusCode: { 200: v.nullable(initiativeSchema), ...errorResponses },
44
44
  });
45
+ // ---- Interactive planning (slice 2) ----------------------------------------
46
+ // The interviewer parks the planning run on a decision-wait; these drive it from the
47
+ // planning Q&A window. All return the updated initiative so the SPA patches its cache
48
+ // (the live `initiative` event carries the same entity, so no separate refetch is needed).
49
+ /** Record the human's answer to one pending planning-interview question (no run resume). */
50
+ export const answerInitiativeQuestionContract = defineApiContract({
51
+ method: 'post',
52
+ requestPathParamsSchema: blockIdParams,
53
+ pathResolver: ({ blockId }) => `/blocks/${blockId}/initiative-planning/answer`,
54
+ requestBodySchema: answerInitiativeQuestionSchema,
55
+ responsesByStatusCode: { 200: initiativeSchema, ...errorResponses },
56
+ });
57
+ /** Submit the answered questions and resume the interview (the interviewer re-runs). */
58
+ export const continueInitiativePlanningContract = defineApiContract({
59
+ method: 'post',
60
+ requestPathParamsSchema: blockIdParams,
61
+ pathResolver: ({ blockId }) => `/blocks/${blockId}/initiative-planning/continue`,
62
+ requestBodySchema: ContractNoBody,
63
+ responsesByStatusCode: { 200: initiativeSchema, ...errorResponses },
64
+ });
65
+ /** Skip any remaining questions: synthesize the brief from what's answered and advance. */
66
+ export const proceedInitiativePlanningContract = defineApiContract({
67
+ method: 'post',
68
+ requestPathParamsSchema: blockIdParams,
69
+ pathResolver: ({ blockId }) => `/blocks/${blockId}/initiative-planning/proceed`,
70
+ requestBodySchema: ContractNoBody,
71
+ responsesByStatusCode: { 200: initiativeSchema, ...errorResponses },
72
+ });
45
73
  //# sourceMappingURL=initiative.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"initiative.js","sourceRoot":"","sources":["../../src/routes/initiative.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAA;AAC3D,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAC5B,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAC5C,OAAO,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AAC3E,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAA;AAEhE,8EAA8E;AAC9E,+EAA+E;AAC/E,sEAAsE;AACtE,uBAAuB;AACvB,8EAA8E;AAE9E,MAAM,kBAAkB,GAAG,iBAAiB,CAAC,cAAc,CAAC,CAAA;AAC5D,MAAM,aAAa,GAAG,iBAAiB,CAAC,SAAS,CAAC,CAAA;AAElD;;;;GAIG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,iBAAiB,CAAC;IACxD,MAAM,EAAE,MAAM;IACd,YAAY,EAAE,GAAG,EAAE,CAAC,cAAc;IAClC,iBAAiB,EAAE,sBAAsB;IACzC,qBAAqB,EAAE;QACrB,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,UAAU,EAAE,gBAAgB,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC;QACnE,GAAG,cAAc;KAClB;CACF,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,uBAAuB,GAAG,iBAAiB,CAAC;IACvD,MAAM,EAAE,KAAK;IACb,YAAY,EAAE,GAAG,EAAE,CAAC,cAAc;IAClC,qBAAqB,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,EAAE,GAAG,cAAc,EAAE;CAC7E,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAG,iBAAiB,CAAC;IACrD,MAAM,EAAE,KAAK;IACb,uBAAuB,EAAE,kBAAkB;IAC3C,YAAY,EAAE,CAAC,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC,gBAAgB,YAAY,EAAE;IAClE,qBAAqB,EAAE,EAAE,GAAG,EAAE,gBAAgB,EAAE,GAAG,cAAc,EAAE;CACpE,CAAC,CAAA;AAEF,uFAAuF;AACvF,MAAM,CAAC,MAAM,4BAA4B,GAAG,iBAAiB,CAAC;IAC5D,MAAM,EAAE,KAAK;IACb,uBAAuB,EAAE,aAAa;IACtC,YAAY,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,WAAW,OAAO,aAAa;IAC9D,qBAAqB,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,GAAG,cAAc,EAAE;CAChF,CAAC,CAAA"}
1
+ {"version":3,"file":"initiative.js","sourceRoot":"","sources":["../../src/routes/initiative.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAA;AAC3E,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAC5B,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAC5C,OAAO,EACL,8BAA8B,EAC9B,sBAAsB,EACtB,gBAAgB,GACjB,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAA;AAEhE,8EAA8E;AAC9E,+EAA+E;AAC/E,sEAAsE;AACtE,uBAAuB;AACvB,8EAA8E;AAE9E,MAAM,kBAAkB,GAAG,iBAAiB,CAAC,cAAc,CAAC,CAAA;AAC5D,MAAM,aAAa,GAAG,iBAAiB,CAAC,SAAS,CAAC,CAAA;AAElD;;;;GAIG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,iBAAiB,CAAC;IACxD,MAAM,EAAE,MAAM;IACd,YAAY,EAAE,GAAG,EAAE,CAAC,cAAc;IAClC,iBAAiB,EAAE,sBAAsB;IACzC,qBAAqB,EAAE;QACrB,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,UAAU,EAAE,gBAAgB,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC;QACnE,GAAG,cAAc;KAClB;CACF,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,uBAAuB,GAAG,iBAAiB,CAAC;IACvD,MAAM,EAAE,KAAK;IACb,YAAY,EAAE,GAAG,EAAE,CAAC,cAAc;IAClC,qBAAqB,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,EAAE,GAAG,cAAc,EAAE;CAC7E,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAG,iBAAiB,CAAC;IACrD,MAAM,EAAE,KAAK;IACb,uBAAuB,EAAE,kBAAkB;IAC3C,YAAY,EAAE,CAAC,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC,gBAAgB,YAAY,EAAE;IAClE,qBAAqB,EAAE,EAAE,GAAG,EAAE,gBAAgB,EAAE,GAAG,cAAc,EAAE;CACpE,CAAC,CAAA;AAEF,uFAAuF;AACvF,MAAM,CAAC,MAAM,4BAA4B,GAAG,iBAAiB,CAAC;IAC5D,MAAM,EAAE,KAAK;IACb,uBAAuB,EAAE,aAAa;IACtC,YAAY,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,WAAW,OAAO,aAAa;IAC9D,qBAAqB,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,GAAG,cAAc,EAAE;CAChF,CAAC,CAAA;AAEF,+EAA+E;AAC/E,qFAAqF;AACrF,sFAAsF;AACtF,2FAA2F;AAE3F,4FAA4F;AAC5F,MAAM,CAAC,MAAM,gCAAgC,GAAG,iBAAiB,CAAC;IAChE,MAAM,EAAE,MAAM;IACd,uBAAuB,EAAE,aAAa;IACtC,YAAY,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,WAAW,OAAO,6BAA6B;IAC9E,iBAAiB,EAAE,8BAA8B;IACjD,qBAAqB,EAAE,EAAE,GAAG,EAAE,gBAAgB,EAAE,GAAG,cAAc,EAAE;CACpE,CAAC,CAAA;AAEF,wFAAwF;AACxF,MAAM,CAAC,MAAM,kCAAkC,GAAG,iBAAiB,CAAC;IAClE,MAAM,EAAE,MAAM;IACd,uBAAuB,EAAE,aAAa;IACtC,YAAY,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,WAAW,OAAO,+BAA+B;IAChF,iBAAiB,EAAE,cAAc;IACjC,qBAAqB,EAAE,EAAE,GAAG,EAAE,gBAAgB,EAAE,GAAG,cAAc,EAAE;CACpE,CAAC,CAAA;AAEF,2FAA2F;AAC3F,MAAM,CAAC,MAAM,iCAAiC,GAAG,iBAAiB,CAAC;IACjE,MAAM,EAAE,MAAM;IACd,uBAAuB,EAAE,aAAa;IACtC,YAAY,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,WAAW,OAAO,8BAA8B;IAC/E,iBAAiB,EAAE,cAAc;IACjC,qBAAqB,EAAE,EAAE,GAAG,EAAE,gBAAgB,EAAE,GAAG,cAAc,EAAE;CACpE,CAAC,CAAA"}