opencode-plugin-flow 4.3.8 → 4.3.9

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.
@@ -144,6 +144,24 @@ export declare const FlowFeatureCompleteToolSchema: z.ZodObject<{
144
144
  skipped: "skipped";
145
145
  }>>;
146
146
  decisionReason: z.ZodOptional<z.ZodString>;
147
+ candidateEligibility: z.ZodDefault<z.ZodEnum<{
148
+ eligible: "eligible";
149
+ not_eligible: "not_eligible";
150
+ unknown: "unknown";
151
+ }>>;
152
+ candidateDecision: z.ZodOptional<z.ZodEnum<{
153
+ skipped: "skipped";
154
+ used: "used";
155
+ serial_required: "serial_required";
156
+ }>>;
157
+ decisionFactors: z.ZodDefault<z.ZodArray<z.ZodEnum<{
158
+ shared_state: "shared_state";
159
+ overlapping_files: "overlapping_files";
160
+ small_slice: "small_slice";
161
+ needs_manager_judgment: "needs_manager_judgment";
162
+ independent_surface: "independent_surface";
163
+ validation_available: "validation_available";
164
+ }>>>;
147
165
  modes: z.ZodDefault<z.ZodArray<z.ZodEnum<{
148
166
  audit: "audit";
149
167
  review: "review";
@@ -175,6 +193,7 @@ export declare const FlowFeatureCompleteToolSchema: z.ZodObject<{
175
193
  }>>;
176
194
  outcome: z.ZodDefault<z.ZodEnum<{
177
195
  accepted: "accepted";
196
+ modified: "modified";
178
197
  rejected: "rejected";
179
198
  partial: "partial";
180
199
  "not-covered": "not-covered";
@@ -60,6 +60,24 @@ export declare const OrchestrationDecisionSchema: z.ZodEnum<{
60
60
  tournament: "tournament";
61
61
  skipped: "skipped";
62
62
  }>;
63
+ export declare const OrchestrationCandidateEligibilitySchema: z.ZodEnum<{
64
+ eligible: "eligible";
65
+ not_eligible: "not_eligible";
66
+ unknown: "unknown";
67
+ }>;
68
+ export declare const OrchestrationCandidateDecisionSchema: z.ZodEnum<{
69
+ skipped: "skipped";
70
+ used: "used";
71
+ serial_required: "serial_required";
72
+ }>;
73
+ export declare const OrchestrationDecisionFactorSchema: z.ZodEnum<{
74
+ shared_state: "shared_state";
75
+ overlapping_files: "overlapping_files";
76
+ small_slice: "small_slice";
77
+ needs_manager_judgment: "needs_manager_judgment";
78
+ independent_surface: "independent_surface";
79
+ validation_available: "validation_available";
80
+ }>;
63
81
  export declare const OrchestrationWriteScopeSchema: z.ZodEnum<{
64
82
  none: "none";
65
83
  "manager-serial": "manager-serial";
@@ -77,11 +95,23 @@ export declare const OrchestrationVerificationStatusSchema: z.ZodEnum<{
77
95
  }>;
78
96
  export declare const OrchestrationOutcomeSchema: z.ZodEnum<{
79
97
  accepted: "accepted";
98
+ modified: "modified";
80
99
  rejected: "rejected";
81
100
  partial: "partial";
82
101
  "not-covered": "not-covered";
83
102
  superseded: "superseded";
84
103
  }>;
104
+ export declare function isCandidateShapedDecision(decision: string | undefined): boolean;
105
+ export declare function hasCandidateExecutionEvidence(pass: {
106
+ kind: string;
107
+ modes: readonly string[];
108
+ candidateWorkerCount: number;
109
+ }): boolean;
110
+ export declare function hasVerifierExecutionEvidence(pass: {
111
+ kind: string;
112
+ modes: readonly string[];
113
+ verifierWorkerCount: number;
114
+ }): boolean;
85
115
  export declare const OrchestrationPassRecordSchema: z.ZodObject<{
86
116
  id: z.ZodString;
87
117
  kind: z.ZodEnum<{
@@ -102,6 +132,24 @@ export declare const OrchestrationPassRecordSchema: z.ZodObject<{
102
132
  skipped: "skipped";
103
133
  }>>;
104
134
  decisionReason: z.ZodOptional<z.ZodString>;
135
+ candidateEligibility: z.ZodDefault<z.ZodEnum<{
136
+ eligible: "eligible";
137
+ not_eligible: "not_eligible";
138
+ unknown: "unknown";
139
+ }>>;
140
+ candidateDecision: z.ZodOptional<z.ZodEnum<{
141
+ skipped: "skipped";
142
+ used: "used";
143
+ serial_required: "serial_required";
144
+ }>>;
145
+ decisionFactors: z.ZodDefault<z.ZodArray<z.ZodEnum<{
146
+ shared_state: "shared_state";
147
+ overlapping_files: "overlapping_files";
148
+ small_slice: "small_slice";
149
+ needs_manager_judgment: "needs_manager_judgment";
150
+ independent_surface: "independent_surface";
151
+ validation_available: "validation_available";
152
+ }>>>;
105
153
  modes: z.ZodDefault<z.ZodArray<z.ZodEnum<{
106
154
  audit: "audit";
107
155
  review: "review";
@@ -133,6 +181,7 @@ export declare const OrchestrationPassRecordSchema: z.ZodObject<{
133
181
  }>>;
134
182
  outcome: z.ZodDefault<z.ZodEnum<{
135
183
  accepted: "accepted";
184
+ modified: "modified";
136
185
  rejected: "rejected";
137
186
  partial: "partial";
138
187
  "not-covered": "not-covered";
@@ -145,7 +194,11 @@ export declare const OrchestrationTelemetrySchema: z.ZodObject<{
145
194
  workerCount: z.ZodDefault<z.ZodNumber>;
146
195
  candidatePassCount: z.ZodDefault<z.ZodNumber>;
147
196
  verifierPassCount: z.ZodDefault<z.ZodNumber>;
197
+ candidateEligibleCount: z.ZodDefault<z.ZodNumber>;
198
+ candidateUsedDecisionCount: z.ZodDefault<z.ZodNumber>;
199
+ candidateSerialRequiredDecisionCount: z.ZodDefault<z.ZodNumber>;
148
200
  skippedCandidateDecisionCount: z.ZodDefault<z.ZodNumber>;
201
+ recordedPassIds: z.ZodDefault<z.ZodArray<z.ZodString>>;
149
202
  latestPasses: z.ZodDefault<z.ZodArray<z.ZodObject<{
150
203
  id: z.ZodString;
151
204
  kind: z.ZodEnum<{
@@ -166,6 +219,24 @@ export declare const OrchestrationTelemetrySchema: z.ZodObject<{
166
219
  skipped: "skipped";
167
220
  }>>;
168
221
  decisionReason: z.ZodOptional<z.ZodString>;
222
+ candidateEligibility: z.ZodDefault<z.ZodEnum<{
223
+ eligible: "eligible";
224
+ not_eligible: "not_eligible";
225
+ unknown: "unknown";
226
+ }>>;
227
+ candidateDecision: z.ZodOptional<z.ZodEnum<{
228
+ skipped: "skipped";
229
+ used: "used";
230
+ serial_required: "serial_required";
231
+ }>>;
232
+ decisionFactors: z.ZodDefault<z.ZodArray<z.ZodEnum<{
233
+ shared_state: "shared_state";
234
+ overlapping_files: "overlapping_files";
235
+ small_slice: "small_slice";
236
+ needs_manager_judgment: "needs_manager_judgment";
237
+ independent_surface: "independent_surface";
238
+ validation_available: "validation_available";
239
+ }>>>;
169
240
  modes: z.ZodDefault<z.ZodArray<z.ZodEnum<{
170
241
  audit: "audit";
171
242
  review: "review";
@@ -197,6 +268,7 @@ export declare const OrchestrationTelemetrySchema: z.ZodObject<{
197
268
  }>>;
198
269
  outcome: z.ZodDefault<z.ZodEnum<{
199
270
  accepted: "accepted";
271
+ modified: "modified";
200
272
  rejected: "rejected";
201
273
  partial: "partial";
202
274
  "not-covered": "not-covered";
@@ -437,6 +509,24 @@ export declare const WorkerResultSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
437
509
  skipped: "skipped";
438
510
  }>>;
439
511
  decisionReason: z.ZodOptional<z.ZodString>;
512
+ candidateEligibility: z.ZodDefault<z.ZodEnum<{
513
+ eligible: "eligible";
514
+ not_eligible: "not_eligible";
515
+ unknown: "unknown";
516
+ }>>;
517
+ candidateDecision: z.ZodOptional<z.ZodEnum<{
518
+ skipped: "skipped";
519
+ used: "used";
520
+ serial_required: "serial_required";
521
+ }>>;
522
+ decisionFactors: z.ZodDefault<z.ZodArray<z.ZodEnum<{
523
+ shared_state: "shared_state";
524
+ overlapping_files: "overlapping_files";
525
+ small_slice: "small_slice";
526
+ needs_manager_judgment: "needs_manager_judgment";
527
+ independent_surface: "independent_surface";
528
+ validation_available: "validation_available";
529
+ }>>>;
440
530
  modes: z.ZodDefault<z.ZodArray<z.ZodEnum<{
441
531
  audit: "audit";
442
532
  review: "review";
@@ -468,6 +558,7 @@ export declare const WorkerResultSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
468
558
  }>>;
469
559
  outcome: z.ZodDefault<z.ZodEnum<{
470
560
  accepted: "accepted";
561
+ modified: "modified";
471
562
  rejected: "rejected";
472
563
  partial: "partial";
473
564
  "not-covered": "not-covered";
@@ -560,6 +651,24 @@ export declare const WorkerResultSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
560
651
  skipped: "skipped";
561
652
  }>>;
562
653
  decisionReason: z.ZodOptional<z.ZodString>;
654
+ candidateEligibility: z.ZodDefault<z.ZodEnum<{
655
+ eligible: "eligible";
656
+ not_eligible: "not_eligible";
657
+ unknown: "unknown";
658
+ }>>;
659
+ candidateDecision: z.ZodOptional<z.ZodEnum<{
660
+ skipped: "skipped";
661
+ used: "used";
662
+ serial_required: "serial_required";
663
+ }>>;
664
+ decisionFactors: z.ZodDefault<z.ZodArray<z.ZodEnum<{
665
+ shared_state: "shared_state";
666
+ overlapping_files: "overlapping_files";
667
+ small_slice: "small_slice";
668
+ needs_manager_judgment: "needs_manager_judgment";
669
+ independent_surface: "independent_surface";
670
+ validation_available: "validation_available";
671
+ }>>>;
563
672
  modes: z.ZodDefault<z.ZodArray<z.ZodEnum<{
564
673
  audit: "audit";
565
674
  review: "review";
@@ -591,6 +700,7 @@ export declare const WorkerResultSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
591
700
  }>>;
592
701
  outcome: z.ZodDefault<z.ZodEnum<{
593
702
  accepted: "accepted";
703
+ modified: "modified";
594
704
  rejected: "rejected";
595
705
  partial: "partial";
596
706
  "not-covered": "not-covered";
@@ -690,6 +800,24 @@ export declare const ExecutionHistoryEntrySchema: z.ZodObject<{
690
800
  skipped: "skipped";
691
801
  }>>;
692
802
  decisionReason: z.ZodOptional<z.ZodString>;
803
+ candidateEligibility: z.ZodDefault<z.ZodEnum<{
804
+ eligible: "eligible";
805
+ not_eligible: "not_eligible";
806
+ unknown: "unknown";
807
+ }>>;
808
+ candidateDecision: z.ZodOptional<z.ZodEnum<{
809
+ skipped: "skipped";
810
+ used: "used";
811
+ serial_required: "serial_required";
812
+ }>>;
813
+ decisionFactors: z.ZodDefault<z.ZodArray<z.ZodEnum<{
814
+ shared_state: "shared_state";
815
+ overlapping_files: "overlapping_files";
816
+ small_slice: "small_slice";
817
+ needs_manager_judgment: "needs_manager_judgment";
818
+ independent_surface: "independent_surface";
819
+ validation_available: "validation_available";
820
+ }>>>;
693
821
  modes: z.ZodDefault<z.ZodArray<z.ZodEnum<{
694
822
  audit: "audit";
695
823
  review: "review";
@@ -721,6 +849,7 @@ export declare const ExecutionHistoryEntrySchema: z.ZodObject<{
721
849
  }>>;
722
850
  outcome: z.ZodDefault<z.ZodEnum<{
723
851
  accepted: "accepted";
852
+ modified: "modified";
724
853
  rejected: "rejected";
725
854
  partial: "partial";
726
855
  "not-covered": "not-covered";
@@ -763,12 +892,16 @@ export declare const BudgetTelemetrySchema: z.ZodObject<{
763
892
  cacheReadTokens: z.ZodDefault<z.ZodNullable<z.ZodNumber>>;
764
893
  nonCacheTokens: z.ZodDefault<z.ZodNullable<z.ZodNumber>>;
765
894
  }, z.core.$strict>>;
766
- orchestration: z.ZodDefault<z.ZodObject<{
895
+ orchestration: z.ZodPrefault<z.ZodObject<{
767
896
  passCount: z.ZodDefault<z.ZodNumber>;
768
897
  workerCount: z.ZodDefault<z.ZodNumber>;
769
898
  candidatePassCount: z.ZodDefault<z.ZodNumber>;
770
899
  verifierPassCount: z.ZodDefault<z.ZodNumber>;
900
+ candidateEligibleCount: z.ZodDefault<z.ZodNumber>;
901
+ candidateUsedDecisionCount: z.ZodDefault<z.ZodNumber>;
902
+ candidateSerialRequiredDecisionCount: z.ZodDefault<z.ZodNumber>;
771
903
  skippedCandidateDecisionCount: z.ZodDefault<z.ZodNumber>;
904
+ recordedPassIds: z.ZodDefault<z.ZodArray<z.ZodString>>;
772
905
  latestPasses: z.ZodDefault<z.ZodArray<z.ZodObject<{
773
906
  id: z.ZodString;
774
907
  kind: z.ZodEnum<{
@@ -789,6 +922,24 @@ export declare const BudgetTelemetrySchema: z.ZodObject<{
789
922
  skipped: "skipped";
790
923
  }>>;
791
924
  decisionReason: z.ZodOptional<z.ZodString>;
925
+ candidateEligibility: z.ZodDefault<z.ZodEnum<{
926
+ eligible: "eligible";
927
+ not_eligible: "not_eligible";
928
+ unknown: "unknown";
929
+ }>>;
930
+ candidateDecision: z.ZodOptional<z.ZodEnum<{
931
+ skipped: "skipped";
932
+ used: "used";
933
+ serial_required: "serial_required";
934
+ }>>;
935
+ decisionFactors: z.ZodDefault<z.ZodArray<z.ZodEnum<{
936
+ shared_state: "shared_state";
937
+ overlapping_files: "overlapping_files";
938
+ small_slice: "small_slice";
939
+ needs_manager_judgment: "needs_manager_judgment";
940
+ independent_surface: "independent_surface";
941
+ validation_available: "validation_available";
942
+ }>>>;
792
943
  modes: z.ZodDefault<z.ZodArray<z.ZodEnum<{
793
944
  audit: "audit";
794
945
  review: "review";
@@ -820,6 +971,7 @@ export declare const BudgetTelemetrySchema: z.ZodObject<{
820
971
  }>>;
821
972
  outcome: z.ZodDefault<z.ZodEnum<{
822
973
  accepted: "accepted";
974
+ modified: "modified";
823
975
  rejected: "rejected";
824
976
  partial: "partial";
825
977
  "not-covered": "not-covered";
@@ -975,6 +1127,24 @@ export declare const SessionSchema: z.ZodObject<{
975
1127
  skipped: "skipped";
976
1128
  }>>;
977
1129
  decisionReason: z.ZodOptional<z.ZodString>;
1130
+ candidateEligibility: z.ZodDefault<z.ZodEnum<{
1131
+ eligible: "eligible";
1132
+ not_eligible: "not_eligible";
1133
+ unknown: "unknown";
1134
+ }>>;
1135
+ candidateDecision: z.ZodOptional<z.ZodEnum<{
1136
+ skipped: "skipped";
1137
+ used: "used";
1138
+ serial_required: "serial_required";
1139
+ }>>;
1140
+ decisionFactors: z.ZodDefault<z.ZodArray<z.ZodEnum<{
1141
+ shared_state: "shared_state";
1142
+ overlapping_files: "overlapping_files";
1143
+ small_slice: "small_slice";
1144
+ needs_manager_judgment: "needs_manager_judgment";
1145
+ independent_surface: "independent_surface";
1146
+ validation_available: "validation_available";
1147
+ }>>>;
978
1148
  modes: z.ZodDefault<z.ZodArray<z.ZodEnum<{
979
1149
  audit: "audit";
980
1150
  review: "review";
@@ -1006,6 +1176,7 @@ export declare const SessionSchema: z.ZodObject<{
1006
1176
  }>>;
1007
1177
  outcome: z.ZodDefault<z.ZodEnum<{
1008
1178
  accepted: "accepted";
1179
+ modified: "modified";
1009
1180
  rejected: "rejected";
1010
1181
  partial: "partial";
1011
1182
  "not-covered": "not-covered";
@@ -1014,7 +1185,7 @@ export declare const SessionSchema: z.ZodObject<{
1014
1185
  synthesisRef: z.ZodOptional<z.ZodString>;
1015
1186
  }, z.core.$strict>>>;
1016
1187
  }, z.core.$strict>>>;
1017
- budget: z.ZodDefault<z.ZodObject<{
1188
+ budget: z.ZodPrefault<z.ZodObject<{
1018
1189
  phaseStartedAt: z.ZodDefault<z.ZodString>;
1019
1190
  completedFeaturesSinceBoundary: z.ZodDefault<z.ZodNumber>;
1020
1191
  reviewCount: z.ZodDefault<z.ZodNumber>;
@@ -1029,12 +1200,16 @@ export declare const SessionSchema: z.ZodObject<{
1029
1200
  cacheReadTokens: z.ZodDefault<z.ZodNullable<z.ZodNumber>>;
1030
1201
  nonCacheTokens: z.ZodDefault<z.ZodNullable<z.ZodNumber>>;
1031
1202
  }, z.core.$strict>>;
1032
- orchestration: z.ZodDefault<z.ZodObject<{
1203
+ orchestration: z.ZodPrefault<z.ZodObject<{
1033
1204
  passCount: z.ZodDefault<z.ZodNumber>;
1034
1205
  workerCount: z.ZodDefault<z.ZodNumber>;
1035
1206
  candidatePassCount: z.ZodDefault<z.ZodNumber>;
1036
1207
  verifierPassCount: z.ZodDefault<z.ZodNumber>;
1208
+ candidateEligibleCount: z.ZodDefault<z.ZodNumber>;
1209
+ candidateUsedDecisionCount: z.ZodDefault<z.ZodNumber>;
1210
+ candidateSerialRequiredDecisionCount: z.ZodDefault<z.ZodNumber>;
1037
1211
  skippedCandidateDecisionCount: z.ZodDefault<z.ZodNumber>;
1212
+ recordedPassIds: z.ZodDefault<z.ZodArray<z.ZodString>>;
1038
1213
  latestPasses: z.ZodDefault<z.ZodArray<z.ZodObject<{
1039
1214
  id: z.ZodString;
1040
1215
  kind: z.ZodEnum<{
@@ -1055,6 +1230,24 @@ export declare const SessionSchema: z.ZodObject<{
1055
1230
  skipped: "skipped";
1056
1231
  }>>;
1057
1232
  decisionReason: z.ZodOptional<z.ZodString>;
1233
+ candidateEligibility: z.ZodDefault<z.ZodEnum<{
1234
+ eligible: "eligible";
1235
+ not_eligible: "not_eligible";
1236
+ unknown: "unknown";
1237
+ }>>;
1238
+ candidateDecision: z.ZodOptional<z.ZodEnum<{
1239
+ skipped: "skipped";
1240
+ used: "used";
1241
+ serial_required: "serial_required";
1242
+ }>>;
1243
+ decisionFactors: z.ZodDefault<z.ZodArray<z.ZodEnum<{
1244
+ shared_state: "shared_state";
1245
+ overlapping_files: "overlapping_files";
1246
+ small_slice: "small_slice";
1247
+ needs_manager_judgment: "needs_manager_judgment";
1248
+ independent_surface: "independent_surface";
1249
+ validation_available: "validation_available";
1250
+ }>>>;
1058
1251
  modes: z.ZodDefault<z.ZodArray<z.ZodEnum<{
1059
1252
  audit: "audit";
1060
1253
  review: "review";
@@ -1086,6 +1279,7 @@ export declare const SessionSchema: z.ZodObject<{
1086
1279
  }>>;
1087
1280
  outcome: z.ZodDefault<z.ZodEnum<{
1088
1281
  accepted: "accepted";
1282
+ modified: "modified";
1089
1283
  rejected: "rejected";
1090
1284
  partial: "partial";
1091
1285
  "not-covered": "not-covered";
@@ -94,10 +94,16 @@ export declare function summarizeSession(session: Session | null): {
94
94
  workerCount: number;
95
95
  candidatePassCount: number;
96
96
  verifierPassCount: number;
97
+ candidateEligibleCount: number;
98
+ candidateUsedDecisionCount: number;
99
+ candidateSerialRequiredDecisionCount: number;
97
100
  skippedCandidateDecisionCount: number;
101
+ recordedPassIds: string[];
98
102
  latestPasses: {
99
103
  id: string;
100
104
  kind: "discovery" | "audit" | "review" | "validation" | "verification" | "candidate" | "implementation-decision";
105
+ candidateEligibility: "eligible" | "not_eligible" | "unknown";
106
+ decisionFactors: ("shared_state" | "overlapping_files" | "small_slice" | "needs_manager_judgment" | "independent_surface" | "validation_available")[];
101
107
  modes: ("audit" | "review" | "validation" | "evidence" | "verifier" | "candidate-implementation")[];
102
108
  workerCount: number;
103
109
  candidateWorkerCount: number;
@@ -107,9 +113,10 @@ export declare function summarizeSession(session: Session | null): {
107
113
  writeScope: "none" | "manager-serial" | "exact-path" | "isolated-worktree" | "mixed";
108
114
  handoffRefs: string[];
109
115
  verificationStatus: "pending" | "passed" | "failed" | "mixed" | "not-needed" | "downgraded";
110
- outcome: "accepted" | "rejected" | "partial" | "not-covered" | "superseded";
116
+ outcome: "accepted" | "modified" | "rejected" | "partial" | "not-covered" | "superseded";
111
117
  decision?: "serial" | "parallel" | "candidate-exact-path" | "candidate-worktree" | "tournament" | "skipped" | undefined;
112
118
  decisionReason?: string | undefined;
119
+ candidateDecision?: "skipped" | "used" | "serial_required" | undefined;
113
120
  synthesisRef?: string | undefined;
114
121
  }[];
115
122
  };
@@ -171,6 +178,8 @@ export declare function summarizeSession(session: Session | null): {
171
178
  orchestrationPasses: {
172
179
  id: string;
173
180
  kind: "discovery" | "audit" | "review" | "validation" | "verification" | "candidate" | "implementation-decision";
181
+ candidateEligibility: "eligible" | "not_eligible" | "unknown";
182
+ decisionFactors: ("shared_state" | "overlapping_files" | "small_slice" | "needs_manager_judgment" | "independent_surface" | "validation_available")[];
174
183
  modes: ("audit" | "review" | "validation" | "evidence" | "verifier" | "candidate-implementation")[];
175
184
  workerCount: number;
176
185
  candidateWorkerCount: number;
@@ -180,9 +189,10 @@ export declare function summarizeSession(session: Session | null): {
180
189
  writeScope: "none" | "manager-serial" | "exact-path" | "isolated-worktree" | "mixed";
181
190
  handoffRefs: string[];
182
191
  verificationStatus: "pending" | "passed" | "failed" | "mixed" | "not-needed" | "downgraded";
183
- outcome: "accepted" | "rejected" | "partial" | "not-covered" | "superseded";
192
+ outcome: "accepted" | "modified" | "rejected" | "partial" | "not-covered" | "superseded";
184
193
  decision?: "serial" | "parallel" | "candidate-exact-path" | "candidate-worktree" | "tournament" | "skipped" | undefined;
185
194
  decisionReason?: string | undefined;
195
+ candidateDecision?: "skipped" | "used" | "serial_required" | undefined;
186
196
  synthesisRef?: string | undefined;
187
197
  }[];
188
198
  validationScope?: "targeted" | "broad" | undefined;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "opencode-plugin-flow",
3
- "version": "4.3.8",
3
+ "version": "4.3.9",
4
4
  "description": "Stateful planning and execution workflow plugin for OpenCode",
5
5
  "type": "module",
6
6
  "repository": {