halfcycle 0.4.9 → 0.4.10

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.
@@ -231,6 +231,13 @@ export declare function reviewOpenedLine(phase: string): string;
231
231
  export declare const COULD_NOT_COUNT_LINE = "[halfcycle] Halfcycle could not count what this phase changed, so the owner judges each part on what the agents reported alone.";
232
232
  /** H1 (`typed-close-review`) — how the owner reviews, or that typing is switched off. */
233
233
  export declare function typedReviewHintLine(offered: boolean): string;
234
+ /**
235
+ * After H1 (`system-view-page` AC7): the console's way to review, ending with the
236
+ * phase's System view address on `engagementId`. The second way while typing is
237
+ * offered, the way while it is switched off. `undefined` when there is no address (an
238
+ * id that is not an engagement id), and then no line is printed.
239
+ */
240
+ export declare function systemViewReviewLine(offered: boolean, engagementId: string, phase: string): string | undefined;
234
241
  /** CL3 — tasks of the phase are not finished, named by title, at most ten. */
235
242
  export declare function tasksOpenLine(phase: string, open: readonly string[], more: number): string;
236
243
  /** CL4 — no build of the phase has been reported. */
@@ -253,12 +260,13 @@ export interface CloseStepReport {
253
260
  }
254
261
  /**
255
262
  * Every line the close step prints for one attempt. An open prints CL1, then CL2 when
256
- * the answer says Halfcycle could not count, then H1, and closes nothing; a commit
263
+ * the answer says Halfcycle could not count, then H1, then the System view line on
264
+ * `engagementId` (`systemViewReviewLine`), and closes nothing; a commit
257
265
  * that could not be read is then said on stderr, with the reasons this verb has always
258
266
  * given (git missing and git's bad answer stay two), because the statements carry the
259
267
  * commit to the record. A refusal from the service names each field by its flag, as a
260
268
  * refusal on this machine does (`describeIssuePath`). A refusal prints
261
269
  * its own sentence and exits 1.
262
270
  */
263
- export declare function closeStepReport(phase: string, attempt: ReviewOpenAttempt): CloseStepReport;
271
+ export declare function closeStepReport(phase: string, attempt: ReviewOpenAttempt, engagementId: string): CloseStepReport;
264
272
  //# sourceMappingURL=close-phase.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"close-phase.d.ts","sourceRoot":"","sources":["../src/close-phase.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CG;AAGH,OAAO,EAQL,kBAAkB,EAClB,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACtB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAGtD;;;;GAIG;AACH,MAAM,MAAM,kBAAkB,GAAG;IAAE,IAAI,EAAE,IAAI,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,IAAI,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAElG;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,UAAU,EAAE,MAAM,EAAE,CAAC;CACtB;AAED,4EAA4E;AAC5E,eAAO,MAAM,aAAa,EAAE,gBAAkE,CAAC;AAE/F;;;;;;;;;;GAUG;AACH,MAAM,MAAM,eAAe,GAAG,eAAe,GAAG,WAAW,GAAG,YAAY,CAAC;AAE3E,qFAAqF;AACrF,MAAM,MAAM,iBAAiB,GACzB;IAAE,IAAI,EAAE,IAAI,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAC9B;IAAE,IAAI,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,eAAe,GAAG,WAAW,CAAA;CAAE,GACrD;IAAE,IAAI,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,YAAY,CAAC;IAAC,UAAU,EAAE,OAAO,CAAA;CAAE,CAAC;AAE9D;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,iBAAiB,CAgC9E;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,kBAAkB,CAkBhF;AAID;;;;;GAKG;AACH,eAAO,MAAM,yBAAyB,QAAS,CAAC;AAEhD;;;;;GAKG;AACH,eAAO,MAAM,4BAA4B;;;;CAI/B,CAAC;AAKX;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,UAAU,EAAE,cAAc,GAAG,MAAM,CAAC,UAAU,CAM7E;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,gBAAgB,CAUhE;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAC7B,MAAM,EAAE,MAAM,GAAG,KAAK,EACtB,UAAU,EAAE,cAAc,EAC1B,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,gBAAgB,CAAC,CAuB3B;AAID;;;GAGG;AACH,qBAAa,mBAAoB,SAAQ,KAAK;gBAChC,OAAO,EAAE,MAAM;CAI5B;AAED;;;;;;;;GAQG;AACH,MAAM,MAAM,gBAAgB,GACxB;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,MAAM,EAAE,gBAAgB,CAAA;CAAE,GAC9C;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,GAC3D;IAAE,IAAI,EAAE,YAAY,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACtC;IAAE,IAAI,EAAE,aAAa,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAAC;AAEzC,6FAA6F;AAC7F,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,gBAAgB,CAAC;IAC1B,WAAW,EAAE,kBAAkB,CAAC;IAChC,IAAI,EAAE,gBAAgB,CAAC;CACxB;AAED,8FAA8F;AAC9F,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,MAAM,EAAE,gBAAgB,CAAC;CAC1B;AAED,wFAAwF;AACxF,wBAAgB,aAAa,CAAC,UAAU,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAK/E;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,eAAe,CACnC,UAAU,EAAE,cAAc,EAC1B,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,gBAAgB,EACzB,OAAO,EAAE,MAAM,OAAO,CAAC,gBAAgB,CAAC,EACxC,QAAQ,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC,iBAAiB,CAAC,CAkE5B;AA6BD,gCAAgC;AAChC,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAMtD;AAED,8DAA8D;AAC9D,eAAO,MAAM,oBAAoB,oIACkG,CAAC;AAEpI,yFAAyF;AACzF,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,CAI5D;AAED,8EAA8E;AAC9E,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAe1F;AAED,qDAAqD;AACrD,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAKjD;AAED,+DAA+D;AAC/D,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAK3D;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,UAAU,CAAC,OAAO,kBAAkB,CAAC,CAAC,CAAC,CAAC,EAAE,GAChD,MAAM,EAAE,CAOV;AAED,sEAAsE;AACtE,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAI7E;AAED,kFAAkF;AAClF,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,QAAQ,EAAE,CAAC,GAAG,CAAC,CAAC;CACjB;AAED;;;;;;;;GAQG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,iBAAiB,GAAG,eAAe,CA2E1F"}
1
+ {"version":3,"file":"close-phase.d.ts","sourceRoot":"","sources":["../src/close-phase.ts"],"names":[],"mappings":"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"}
@@ -143,7 +143,10 @@ export type PasteTarget = {
143
143
  };
144
144
  /** The architecture's paste target. */
145
145
  export declare const ARCHITECTURE_PASTE: PasteTarget;
146
- /** A phase's paste target: `Phase <name>`, in `docs/phases/`. */
146
+ /** A phase's paste target: `Phase "<name>"`, in `docs/phases/`. Quoted
147
+ * (agreed difference #41, FW-03's form), same reason `closedPhraseFor`
148
+ * above is: an unquoted name is indistinguishable from Halfcycle's own
149
+ * plan-order number on a project that names a phase a plain digit. */
147
150
  export declare function phasePaste(phase: string): PasteTarget;
148
151
  /** The Markdown to paste into the document `target` names, and the line before it. */
149
152
  export declare function pasteLines(mermaid: string, target: PasteTarget): string;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/draw/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/draw/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -790,10 +790,10 @@ var buildRecordV2Schema = z5.object({
790
790
 
791
791
  // ../events/dist/crew.js
792
792
  import { z as z6 } from "zod";
793
- var crewGroupSchema = z6.enum(["builder", "reviewer", "always-on"]);
793
+ var crewGroupSchema = z6.enum(["analyst-architect", "builder", "reviewer", "lead"]);
794
794
  var crewTierSchema = z6.enum(["deep", "standard", "fast"]);
795
795
  var CREW_DISCIPLINE_MAX = 64;
796
- var crewFaceHeadSchema = z6.enum(["sq", "sqr", "rnd", "dome", "hex"]);
796
+ var crewFaceHeadSchema = z6.enum(["sq", "sqr", "rnd", "dome", "hex", "gable"]);
797
797
  var crewFaceAntennaSchema = z6.enum(["none", "stalk", "twin", "dish"]);
798
798
  var crewFaceEyesSchema = z6.enum(["dots", "bars", "visor", "cyclops"]);
799
799
  var crewFaceMouthSchema = z6.enum(["line", "grid", "dots", "wave"]);
@@ -810,12 +810,25 @@ var crewFaceSchema = z6.object({
810
810
  // Whether this member is drawn with ears.
811
811
  ears: z6.boolean()
812
812
  }).strict();
813
+ var crewRoleSchema = z6.enum([
814
+ "business-analyst",
815
+ "architect",
816
+ "spec-writer",
817
+ "builder",
818
+ "context-docs",
819
+ "spec-reviewer",
820
+ "code-test-reviewer",
821
+ "delivery-lead",
822
+ "quality-lead"
823
+ ]);
813
824
  var crewMemberSchema = z6.object({
814
- // The agent's name. The same twenty-one on every project, so a name is a
825
+ // The agent's name. The same names on every project, so a name is a
815
826
  // vocabulary a returning client already knows.
816
827
  callsign: z6.string().min(1).max(32),
817
- // Which of the three headings this member reads under.
828
+ // Which of the four teams this member belongs to.
818
829
  group: crewGroupSchema,
830
+ // The part this member plays, which decides the stages it leads and helps with.
831
+ role: crewRoleSchema,
819
832
  // The kind of work this member takes. A task names a discipline, and only
820
833
  // agents holding it can be dispatched to it.
821
834
  discipline: z6.string().min(1).max(CREW_DISCIPLINE_MAX),
@@ -827,10 +840,44 @@ var crewMemberSchema = z6.object({
827
840
  face: crewFaceSchema
828
841
  }).strict();
829
842
  var CREW_ROSTER = [
843
+ // ── analysts and architects ─────────────────────────────────────────────────
844
+ {
845
+ callsign: "SOFIA",
846
+ group: "analyst-architect",
847
+ role: "business-analyst",
848
+ discipline: "business analyst",
849
+ tier: "deep",
850
+ face: { head: "gable", antenna: "stalk", eyes: "dots", mouth: "wave", ears: false }
851
+ },
852
+ {
853
+ callsign: "BEA",
854
+ group: "analyst-architect",
855
+ role: "business-analyst",
856
+ discipline: "business analyst",
857
+ tier: "standard",
858
+ face: { head: "gable", antenna: "none", eyes: "visor", mouth: "line", ears: false }
859
+ },
860
+ {
861
+ callsign: "WREN",
862
+ group: "analyst-architect",
863
+ role: "architect",
864
+ discipline: "solution architect",
865
+ tier: "deep",
866
+ face: { head: "gable", antenna: "dish", eyes: "bars", mouth: "line", ears: true }
867
+ },
868
+ {
869
+ callsign: "PEI",
870
+ group: "analyst-architect",
871
+ role: "architect",
872
+ discipline: "technical architect",
873
+ tier: "standard",
874
+ face: { head: "gable", antenna: "twin", eyes: "cyclops", mouth: "dots", ears: false }
875
+ },
830
876
  // ── builders: code ──────────────────────────────────────────────────────────
831
877
  {
832
878
  callsign: "ADA",
833
879
  group: "builder",
880
+ role: "builder",
834
881
  discipline: "implementation",
835
882
  tier: "deep",
836
883
  face: { head: "sq", antenna: "stalk", eyes: "dots", mouth: "line", ears: false }
@@ -838,6 +885,7 @@ var CREW_ROSTER = [
838
885
  {
839
886
  callsign: "OTTO",
840
887
  group: "builder",
888
+ role: "builder",
841
889
  discipline: "implementation",
842
890
  tier: "deep",
843
891
  face: { head: "sq", antenna: "twin", eyes: "bars", mouth: "grid", ears: true }
@@ -845,6 +893,7 @@ var CREW_ROSTER = [
845
893
  {
846
894
  callsign: "MILO",
847
895
  group: "builder",
896
+ role: "builder",
848
897
  discipline: "implementation",
849
898
  tier: "standard",
850
899
  face: { head: "sqr", antenna: "stalk", eyes: "dots", mouth: "dots", ears: false }
@@ -852,42 +901,24 @@ var CREW_ROSTER = [
852
901
  {
853
902
  callsign: "NOVA",
854
903
  group: "builder",
904
+ role: "builder",
855
905
  discipline: "implementation",
856
906
  tier: "standard",
857
907
  face: { head: "sq", antenna: "dish", eyes: "cyclops", mouth: "line", ears: false }
858
908
  },
859
- {
860
- callsign: "KAI",
861
- group: "builder",
862
- discipline: "implementation",
863
- tier: "standard",
864
- face: { head: "sqr", antenna: "none", eyes: "bars", mouth: "line", ears: true }
865
- },
866
909
  {
867
910
  callsign: "HUGO",
868
911
  group: "builder",
912
+ role: "builder",
869
913
  discipline: "infrastructure",
870
914
  tier: "standard",
871
915
  face: { head: "sq", antenna: "twin", eyes: "dots", mouth: "grid", ears: true }
872
916
  },
873
- {
874
- callsign: "WREN",
875
- group: "builder",
876
- discipline: "refactor",
877
- tier: "fast",
878
- face: { head: "sqr", antenna: "stalk", eyes: "bars", mouth: "wave", ears: false }
879
- },
880
- {
881
- callsign: "PIP",
882
- group: "builder",
883
- discipline: "refactor",
884
- tier: "fast",
885
- face: { head: "sqr", antenna: "none", eyes: "dots", mouth: "dots", ears: false }
886
- },
887
917
  // ── builders: specs and docs ────────────────────────────────────────────────
888
918
  {
889
919
  callsign: "IRIS",
890
920
  group: "builder",
921
+ role: "spec-writer",
891
922
  discipline: "feature spec",
892
923
  tier: "deep",
893
924
  face: { head: "dome", antenna: "stalk", eyes: "visor", mouth: "line", ears: false }
@@ -895,6 +926,7 @@ var CREW_ROSTER = [
895
926
  {
896
927
  callsign: "JUNO",
897
928
  group: "builder",
929
+ role: "spec-writer",
898
930
  discipline: "feature spec",
899
931
  tier: "standard",
900
932
  face: { head: "dome", antenna: "none", eyes: "dots", mouth: "wave", ears: false }
@@ -902,6 +934,7 @@ var CREW_ROSTER = [
902
934
  {
903
935
  callsign: "LEX",
904
936
  group: "builder",
937
+ role: "context-docs",
905
938
  discipline: "context & docs",
906
939
  tier: "fast",
907
940
  face: { head: "dome", antenna: "twin", eyes: "bars", mouth: "dots", ears: false }
@@ -910,6 +943,7 @@ var CREW_ROSTER = [
910
943
  {
911
944
  callsign: "VERA",
912
945
  group: "reviewer",
946
+ role: "spec-reviewer",
913
947
  discipline: "spec consistency",
914
948
  tier: "deep",
915
949
  face: { head: "rnd", antenna: "stalk", eyes: "visor", mouth: "line", ears: false }
@@ -917,6 +951,7 @@ var CREW_ROSTER = [
917
951
  {
918
952
  callsign: "ODIN",
919
953
  group: "reviewer",
954
+ role: "spec-reviewer",
920
955
  discipline: "cross-spec audit",
921
956
  tier: "deep",
922
957
  face: { head: "rnd", antenna: "dish", eyes: "cyclops", mouth: "line", ears: false }
@@ -924,6 +959,7 @@ var CREW_ROSTER = [
924
959
  {
925
960
  callsign: "CASS",
926
961
  group: "reviewer",
962
+ role: "code-test-reviewer",
927
963
  discipline: "code review",
928
964
  tier: "deep",
929
965
  face: { head: "rnd", antenna: "none", eyes: "visor", mouth: "grid", ears: true }
@@ -931,13 +967,23 @@ var CREW_ROSTER = [
931
967
  {
932
968
  callsign: "THEO",
933
969
  group: "reviewer",
970
+ role: "code-test-reviewer",
934
971
  discipline: "code review",
935
972
  tier: "standard",
936
973
  face: { head: "rnd", antenna: "twin", eyes: "bars", mouth: "line", ears: false }
937
974
  },
975
+ {
976
+ callsign: "KAI",
977
+ group: "reviewer",
978
+ role: "code-test-reviewer",
979
+ discipline: "code review",
980
+ tier: "standard",
981
+ face: { head: "rnd", antenna: "none", eyes: "bars", mouth: "line", ears: true }
982
+ },
938
983
  {
939
984
  callsign: "ECHO",
940
985
  group: "reviewer",
986
+ role: "code-test-reviewer",
941
987
  discipline: "test quality",
942
988
  tier: "standard",
943
989
  face: { head: "rnd", antenna: "stalk", eyes: "dots", mouth: "wave", ears: false }
@@ -945,6 +991,7 @@ var CREW_ROSTER = [
945
991
  {
946
992
  callsign: "MAVIS",
947
993
  group: "reviewer",
994
+ role: "code-test-reviewer",
948
995
  discipline: "suites & coverage",
949
996
  tier: "standard",
950
997
  face: { head: "rnd", antenna: "none", eyes: "visor", mouth: "dots", ears: false }
@@ -952,6 +999,7 @@ var CREW_ROSTER = [
952
999
  {
953
1000
  callsign: "ZARA",
954
1001
  group: "reviewer",
1002
+ role: "code-test-reviewer",
955
1003
  discipline: "smoke & walk aid",
956
1004
  tier: "standard",
957
1005
  face: { head: "rnd", antenna: "dish", eyes: "bars", mouth: "wave", ears: false }
@@ -959,39 +1007,31 @@ var CREW_ROSTER = [
959
1007
  {
960
1008
  callsign: "NORA",
961
1009
  group: "reviewer",
1010
+ role: "code-test-reviewer",
962
1011
  discipline: "evidence & provenance",
963
1012
  tier: "fast",
964
1013
  face: { head: "rnd", antenna: "twin", eyes: "dots", mouth: "line", ears: false }
965
1014
  },
966
- // ── always on: continuous, takes no task ────────────────────────────────────
1015
+ // ── leads ───────────────────────────────────────────────────────────────────
967
1016
  {
968
1017
  callsign: "ARGUS",
969
- group: "always-on",
970
- discipline: "guard \xB7 every diff",
1018
+ group: "lead",
1019
+ role: "quality-lead",
1020
+ discipline: "quality lead \xB7 every diff",
971
1021
  tier: "standard",
972
1022
  face: { head: "hex", antenna: "dish", eyes: "visor", mouth: "grid", ears: true }
973
1023
  },
974
1024
  {
975
1025
  callsign: "ATLAS",
976
- group: "always-on",
977
- discipline: "coordinator",
1026
+ group: "lead",
1027
+ role: "delivery-lead",
1028
+ discipline: "delivery lead",
978
1029
  tier: "deep",
979
1030
  face: { head: "hex", antenna: "twin", eyes: "cyclops", mouth: "line", ears: true }
980
1031
  }
981
1032
  ];
982
1033
  var CREW_ROSTER_SIZE = CREW_ROSTER.length;
983
1034
  var CREW_CALLSIGNS = CREW_ROSTER.map((member) => member.callsign);
984
- var crewRoleSchema = z6.enum([
985
- "business-analyst",
986
- "architect",
987
- "spec-writer",
988
- "builder",
989
- "context-docs",
990
- "spec-reviewer",
991
- "code-test-reviewer",
992
- "delivery-lead",
993
- "quality-lead"
994
- ]);
995
1035
  var crewLayerSchema = methodLayerSchema.extract(["l0", "l1", "l2", "l3", "l4", "l5"]);
996
1036
  var crewRoleLayersSchema = z6.object({
997
1037
  leads: z6.array(crewLayerSchema),
@@ -1349,14 +1389,13 @@ var SCOPE_STATE_NAMES = [
1349
1389
  "waiting",
1350
1390
  "sent-back",
1351
1391
  "approved",
1352
- "partly-stale",
1353
- "withdrawn"
1392
+ "partly-stale"
1354
1393
  ];
1355
1394
  var scopeStateNameSchema = z9.enum(SCOPE_STATE_NAMES);
1356
1395
  var plannedScopeStateSchema = scopeStateNameSchema.exclude(["not-planned"]);
1357
1396
  var SCOPE_PART_STATUSES = ["approved", "waiting"];
1358
1397
  var scopePartStatusSchema = z9.enum(SCOPE_PART_STATUSES);
1359
- var SCOPE_ACTS = ["approve", "send-back", "withdraw"];
1398
+ var SCOPE_ACTS = ["approve", "send-back"];
1360
1399
  var scopeActSchema = z9.enum(SCOPE_ACTS);
1361
1400
  var SCOPE_GIVEN_IN = ["console", "chat"];
1362
1401
  var scopeGivenInSchema = z9.enum(SCOPE_GIVEN_IN);
@@ -1427,14 +1466,9 @@ var scopeSendBackRequestSchema = z9.object({
1427
1466
  parts: z9.array(scopeDecisionPartSchema).max(PHASE_PLAN_CHANGES_MAX),
1428
1467
  note: scopeNoteWireSchema.optional()
1429
1468
  }).strict();
1430
- var scopeWithdrawRequestSchema = z9.object({
1431
- act: z9.literal("withdraw"),
1432
- planVersion: planVersionSchema
1433
- }).strict();
1434
1469
  var scopeDecisionRequestSchema = z9.discriminatedUnion("act", [
1435
1470
  scopeApproveRequestSchema,
1436
- scopeSendBackRequestSchema,
1437
- scopeWithdrawRequestSchema
1471
+ scopeSendBackRequestSchema
1438
1472
  ]);
1439
1473
  var scopeDecisionRecordedSchema = z9.object({
1440
1474
  outcome: z9.literal("recorded"),
@@ -1467,7 +1501,6 @@ var scopeDecisionResultSchema = z9.discriminatedUnion("outcome", [
1467
1501
  reasonOutcome("not-owner"),
1468
1502
  reasonOutcome("no-owner"),
1469
1503
  reasonOutcome("plan-changed"),
1470
- reasonOutcome("nothing-to-withdraw"),
1471
1504
  reasonOutcome("build-started")
1472
1505
  ]);
1473
1506
  var scopeReadPartSchema = z9.object({
@@ -5266,7 +5299,7 @@ function decisionText(part, p) {
5266
5299
  case "accepted":
5267
5300
  return "Accepted";
5268
5301
  case "carried":
5269
- return part.carriedTo === null || part.carriedTo === void 0 ? `Carried to the next phase planned: ${p.text(part.reason ?? "")}` : `Carried to phase ${String(part.carriedTo.number)}: ${p.text(part.reason ?? "")}`;
5302
+ return part.carriedTo === null || part.carriedTo === void 0 ? `Carried to the next phase planned: ${p.text(part.reason ?? "")}` : `Carried to phase "${part.carriedTo.phase}": ${p.text(part.reason ?? "")}`;
5270
5303
  case "dropped":
5271
5304
  return `Dropped: ${p.text(part.reason ?? "")}`;
5272
5305
  }