@wildo-ai/platform-core-shared 1.1.11 → 1.1.12

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 (142) hide show
  1. package/dist/esm/core/resources/resources-operations.custom.shared.definitions.d.ts.map +1 -1
  2. package/dist/esm/core/resources/resources-operations.custom.shared.definitions.js.map +1 -1
  3. package/dist/esm/core/resources/resources-relationships.custom.shared.definitions.d.ts.map +1 -1
  4. package/dist/esm/core/resources/resources-relationships.custom.shared.definitions.js.map +1 -1
  5. package/dist/esm/core/resources/resources-types.custom.shared.schemas.d.ts.map +1 -1
  6. package/dist/esm/core/resources/resources-types.custom.shared.schemas.js.map +1 -1
  7. package/dist/esm/dev-runtime/dependency-install-record.d.ts +111 -0
  8. package/dist/esm/dev-runtime/dependency-install-record.d.ts.map +1 -0
  9. package/dist/esm/dev-runtime/dependency-install-record.js +185 -0
  10. package/dist/esm/dev-runtime/dependency-install-record.js.map +1 -0
  11. package/dist/esm/dev-runtime/dev-runtime-command.d.ts +50 -0
  12. package/dist/esm/dev-runtime/dev-runtime-command.d.ts.map +1 -0
  13. package/dist/esm/dev-runtime/dev-runtime-command.js +147 -0
  14. package/dist/esm/dev-runtime/dev-runtime-command.js.map +1 -0
  15. package/dist/esm/dev-runtime/dev-runtime-processes.d.ts +47 -0
  16. package/dist/esm/dev-runtime/dev-runtime-processes.d.ts.map +1 -0
  17. package/dist/esm/dev-runtime/dev-runtime-processes.js +163 -0
  18. package/dist/esm/dev-runtime/dev-runtime-processes.js.map +1 -0
  19. package/dist/esm/dev-runtime/dev-runtime-signals.d.ts +54 -0
  20. package/dist/esm/dev-runtime/dev-runtime-signals.d.ts.map +1 -0
  21. package/dist/esm/dev-runtime/dev-runtime-signals.js +113 -0
  22. package/dist/esm/dev-runtime/dev-runtime-signals.js.map +1 -0
  23. package/dist/esm/dev-runtime/emitted-relative-specifiers.d.ts +14 -0
  24. package/dist/esm/dev-runtime/emitted-relative-specifiers.d.ts.map +1 -0
  25. package/dist/esm/dev-runtime/emitted-relative-specifiers.js +71 -0
  26. package/dist/esm/dev-runtime/emitted-relative-specifiers.js.map +1 -0
  27. package/dist/esm/dev-runtime/frontend-dev-runtime.d.ts +43 -0
  28. package/dist/esm/dev-runtime/frontend-dev-runtime.d.ts.map +1 -0
  29. package/dist/esm/dev-runtime/frontend-dev-runtime.js +42 -0
  30. package/dist/esm/dev-runtime/frontend-dev-runtime.js.map +1 -0
  31. package/dist/esm/dev-runtime/node-runtime-dev-supervisor.d.ts +233 -0
  32. package/dist/esm/dev-runtime/node-runtime-dev-supervisor.d.ts.map +1 -0
  33. package/dist/esm/dev-runtime/node-runtime-dev-supervisor.js +578 -0
  34. package/dist/esm/dev-runtime/node-runtime-dev-supervisor.js.map +1 -0
  35. package/dist/esm/dev-runtime/package-compile-loop.d.ts +125 -0
  36. package/dist/esm/dev-runtime/package-compile-loop.d.ts.map +1 -0
  37. package/dist/esm/dev-runtime/package-compile-loop.js +386 -0
  38. package/dist/esm/dev-runtime/package-compile-loop.js.map +1 -0
  39. package/dist/esm/dev-runtime.exports.d.ts +19 -0
  40. package/dist/esm/dev-runtime.exports.d.ts.map +1 -0
  41. package/dist/esm/dev-runtime.exports.js +19 -0
  42. package/dist/esm/dev-runtime.exports.js.map +1 -0
  43. package/dist/esm/index.d.ts +4 -0
  44. package/dist/esm/index.d.ts.map +1 -1
  45. package/dist/esm/index.js +4 -0
  46. package/dist/esm/index.js.map +1 -1
  47. package/dist/esm/runtime/application-backend-env.contracts.d.ts +9 -2
  48. package/dist/esm/runtime/application-backend-env.contracts.d.ts.map +1 -1
  49. package/dist/esm/runtime/application-backend-env.contracts.js +8 -1
  50. package/dist/esm/runtime/application-backend-env.contracts.js.map +1 -1
  51. package/dist/esm/runtime/application-worker-env.contracts.d.ts +11 -3
  52. package/dist/esm/runtime/application-worker-env.contracts.d.ts.map +1 -1
  53. package/dist/esm/runtime/application-worker-env.contracts.js +9 -0
  54. package/dist/esm/runtime/application-worker-env.contracts.js.map +1 -1
  55. package/dist/esm/runtime/backend-start-outcome.contracts.d.ts +27 -0
  56. package/dist/esm/runtime/backend-start-outcome.contracts.d.ts.map +1 -1
  57. package/dist/esm/runtime/backend-start-outcome.contracts.js +34 -0
  58. package/dist/esm/runtime/backend-start-outcome.contracts.js.map +1 -1
  59. package/dist/esm/runtime/frontend-settings-hub-wiring.contracts.d.ts +28 -0
  60. package/dist/esm/runtime/frontend-settings-hub-wiring.contracts.d.ts.map +1 -0
  61. package/dist/esm/runtime/frontend-settings-hub-wiring.contracts.js +35 -0
  62. package/dist/esm/runtime/frontend-settings-hub-wiring.contracts.js.map +1 -0
  63. package/dist/esm/runtime/http-server-env.contracts.d.ts +14 -1
  64. package/dist/esm/runtime/http-server-env.contracts.d.ts.map +1 -1
  65. package/dist/esm/runtime/http-server-env.contracts.js +13 -0
  66. package/dist/esm/runtime/http-server-env.contracts.js.map +1 -1
  67. package/dist/esm/runtime/local-dev-runtime-signals.contracts.d.ts +239 -0
  68. package/dist/esm/runtime/local-dev-runtime-signals.contracts.d.ts.map +1 -0
  69. package/dist/esm/runtime/local-dev-runtime-signals.contracts.js +256 -0
  70. package/dist/esm/runtime/local-dev-runtime-signals.contracts.js.map +1 -0
  71. package/dist/esm/runtime/runtime-topology.contracts.d.ts.map +1 -1
  72. package/dist/esm/runtime/runtime-topology.contracts.js.map +1 -1
  73. package/dist/esm/security/authorizations/roles.custom.shared.definitions.d.ts.map +1 -1
  74. package/dist/esm/security/authorizations/roles.custom.shared.definitions.js.map +1 -1
  75. package/dist/esm/wildo-application-executions/wildo-application-executions.custom.shared.resources-config.schemas.d.ts +112 -104
  76. package/dist/esm/wildo-application-executions/wildo-application-executions.custom.shared.resources-config.schemas.d.ts.map +1 -1
  77. package/dist/esm/wildo-application-executions/wildo-application-executions.custom.shared.resources-config.schemas.js +4 -3
  78. package/dist/esm/wildo-application-executions/wildo-application-executions.custom.shared.resources-config.schemas.js.map +1 -1
  79. package/dist/esm/wildo-application-executions/wildo-application-executions.custom.shared.schemas.d.ts +112 -104
  80. package/dist/esm/wildo-application-executions/wildo-application-executions.custom.shared.schemas.d.ts.map +1 -1
  81. package/dist/esm/wildo-application-executions/wildo-application-executions.custom.shared.schemas.js.map +1 -1
  82. package/dist/esm/wildo-application-tasks/wildo-application-tasks.custom.shared.resources-config.schemas.d.ts +24 -34
  83. package/dist/esm/wildo-application-tasks/wildo-application-tasks.custom.shared.resources-config.schemas.d.ts.map +1 -1
  84. package/dist/esm/wildo-application-tasks/wildo-application-tasks.custom.shared.resources-config.schemas.js +4 -3
  85. package/dist/esm/wildo-application-tasks/wildo-application-tasks.custom.shared.resources-config.schemas.js.map +1 -1
  86. package/dist/esm/wildo-application-tasks/wildo-application-tasks.custom.shared.schemas.d.ts +24 -34
  87. package/dist/esm/wildo-application-tasks/wildo-application-tasks.custom.shared.schemas.d.ts.map +1 -1
  88. package/dist/esm/wildo-application-tasks/wildo-application-tasks.custom.shared.schemas.js.map +1 -1
  89. package/dist/esm/wildo-applications/wildo-applications.custom.shared.resources-config.schemas.d.ts +3 -3
  90. package/dist/esm/wildo-applications/wildo-applications.custom.shared.resources-config.schemas.d.ts.map +1 -1
  91. package/dist/esm/wildo-applications/wildo-applications.custom.shared.resources-config.schemas.js +30 -42
  92. package/dist/esm/wildo-applications/wildo-applications.custom.shared.resources-config.schemas.js.map +1 -1
  93. package/dist/esm/wildo-applications/wildo-applications.custom.shared.schemas.d.ts +9 -9
  94. package/dist/esm/wildo-applications/wildo-applications.custom.shared.schemas.d.ts.map +1 -1
  95. package/dist/esm/wildo-applications/wildo-applications.custom.shared.schemas.js.map +1 -1
  96. package/dist/esm/wildo-applications-versions/wildo-applications-versions.custom.shared.resources-config.schemas.d.ts.map +1 -1
  97. package/dist/esm/wildo-applications-versions/wildo-applications-versions.custom.shared.resources-config.schemas.js.map +1 -1
  98. package/dist/esm/wildo-applications-versions/wildo-applications-versions.custom.shared.schemas.d.ts +7 -7
  99. package/dist/esm/wildo-applications-versions/wildo-applications-versions.custom.shared.schemas.d.ts.map +1 -1
  100. package/dist/esm/wildo-applications-versions/wildo-applications-versions.custom.shared.schemas.js.map +1 -1
  101. package/dist/esm/workbench/creation-drive.custom.shared.schemas.d.ts +52 -0
  102. package/dist/esm/workbench/creation-drive.custom.shared.schemas.d.ts.map +1 -0
  103. package/dist/esm/workbench/creation-drive.custom.shared.schemas.js +49 -0
  104. package/dist/esm/workbench/creation-drive.custom.shared.schemas.js.map +1 -0
  105. package/dist/esm/workbench/creation-journey-timeline.custom.shared.schemas.d.ts +183 -0
  106. package/dist/esm/workbench/creation-journey-timeline.custom.shared.schemas.d.ts.map +1 -0
  107. package/dist/esm/workbench/creation-journey-timeline.custom.shared.schemas.js +188 -0
  108. package/dist/esm/workbench/creation-journey-timeline.custom.shared.schemas.js.map +1 -0
  109. package/dist/esm/workbench/workbench-aspect-resources.custom.shared.schemas.d.ts.map +1 -1
  110. package/dist/esm/workbench/workbench-aspect-resources.custom.shared.schemas.js +46 -0
  111. package/dist/esm/workbench/workbench-aspect-resources.custom.shared.schemas.js.map +1 -1
  112. package/dist/esm/workbench/workbench-creation-console.custom.shared.schemas.d.ts +170 -7
  113. package/dist/esm/workbench/workbench-creation-console.custom.shared.schemas.d.ts.map +1 -1
  114. package/dist/esm/workbench/workbench-creation-console.custom.shared.schemas.js +177 -7
  115. package/dist/esm/workbench/workbench-creation-console.custom.shared.schemas.js.map +1 -1
  116. package/dist/esm/workbench/workbench-creation-conversation.custom.shared.schemas.d.ts.map +1 -1
  117. package/dist/esm/workbench/workbench-creation-conversation.custom.shared.schemas.js.map +1 -1
  118. package/dist/esm/workbench/workbench-creation-dossier.custom.shared.schemas.d.ts.map +1 -1
  119. package/dist/esm/workbench/workbench-creation-dossier.custom.shared.schemas.js.map +1 -1
  120. package/dist/esm/workbench/workbench-creation-plane.custom.shared.resources-config.schemas.d.ts +480 -459
  121. package/dist/esm/workbench/workbench-creation-plane.custom.shared.resources-config.schemas.d.ts.map +1 -1
  122. package/dist/esm/workbench/workbench-creation-plane.custom.shared.resources-config.schemas.js +21 -16
  123. package/dist/esm/workbench/workbench-creation-plane.custom.shared.resources-config.schemas.js.map +1 -1
  124. package/dist/esm/workbench/workbench-creation-plane.custom.shared.schemas.d.ts +457 -278
  125. package/dist/esm/workbench/workbench-creation-plane.custom.shared.schemas.d.ts.map +1 -1
  126. package/dist/esm/workbench/workbench-creation-plane.custom.shared.schemas.js +291 -46
  127. package/dist/esm/workbench/workbench-creation-plane.custom.shared.schemas.js.map +1 -1
  128. package/dist/esm/workbench/workbench-domain-model.custom.shared.schemas.d.ts.map +1 -1
  129. package/dist/esm/workbench/workbench-domain-model.custom.shared.schemas.js.map +1 -1
  130. package/dist/esm/workbench/workbench-resources-types.custom.shared.schemas.d.ts +7 -0
  131. package/dist/esm/workbench/workbench-resources-types.custom.shared.schemas.d.ts.map +1 -1
  132. package/dist/esm/workbench/workbench-resources-types.custom.shared.schemas.js +13 -1
  133. package/dist/esm/workbench/workbench-resources-types.custom.shared.schemas.js.map +1 -1
  134. package/dist/esm/workbench/workbench-resources.custom.shared.resources-config.schemas.d.ts +287 -277
  135. package/dist/esm/workbench/workbench-resources.custom.shared.resources-config.schemas.d.ts.map +1 -1
  136. package/dist/esm/workbench/workbench-resources.custom.shared.resources-config.schemas.js.map +1 -1
  137. package/dist/esm/workbench/workbench-resources.custom.shared.schemas.d.ts +34 -29
  138. package/dist/esm/workbench/workbench-resources.custom.shared.schemas.d.ts.map +1 -1
  139. package/dist/esm/workbench/workbench-resources.custom.shared.schemas.js +9 -5
  140. package/dist/esm/workbench/workbench-resources.custom.shared.schemas.js.map +1 -1
  141. package/dist/tsconfig.build.tsbuildinfo +1 -1
  142. package/package.json +13 -8
@@ -1,4 +1,4 @@
1
- import { ApplicationInterviewDepth, MetaWorkflow_ClarificationAction, MetaWorkflow_EvaluationVerdict } from '@wildo-ai/saas-models/meta-workflows';
1
+ import { ApplicationInterviewDepth, MetaWorkflow_ClarificationAction, MetaWorkflow_ElicitationNonAnswer, MetaWorkflow_EvaluationVerdict } from '@wildo-ai/saas-models/meta-workflows';
2
2
  import { AgentWorkShortfallKind, EngineCapability, FlowsActors_Status, HumanDecision_FieldKind } from '@wildo-ai/saas-models';
3
3
  import { z } from 'zod';
4
4
  import { WorkbenchSpecificationArtifactConcern } from './workbench-resources.custom.shared.schemas';
@@ -154,18 +154,13 @@ export declare enum WorkbenchBuildPlanTaskStatus {
154
154
  * stuck tasks, because "nothing can run, and here is why" is an answer.
155
155
  */
156
156
  export declare enum Workbench_BuildTaskStuckReason {
157
- /** It already ran, and its declared product is absent even from the working tree: fix the declaration or the work. */
158
- COMPLETED_UNLANDED = "completed_unlanded",
159
157
  /**
160
- * It already ran, and its declared product IS in the working tree but not committed. Landing means
161
- * committed because acceptance is a commit.
158
+ * It already ran, and its declared product is absent from the working tree: fix the declaration or the work.
162
159
  *
163
- * Under GUIDED that is the whole story, and the remedy is to review and commit what the run wrote.
164
- * Under the autonomy posture the loop has ALREADY tried to commit it (#1534), so reaching this state
165
- * means its accept REFUSED a path — carried changes from before the run, edited since, or not this
166
- * run's — and the companion's warning names which. The remedy is that refusal's, not a blind commit.
160
+ * There is no "written, awaiting a commit" reason (#3514): a task lands when its product is in the working tree and
161
+ * something checked it (#3204), and a commit is a build checkpoint that records, never a condition of landing.
167
162
  */
168
- COMPLETED_AWAITING_COMMIT = "completed_awaiting_commit",
163
+ COMPLETED_UNLANDED = "completed_unlanded",
169
164
  /** Its run suspended on a question nobody has answered; re-dispatching would abandon that session. */
170
165
  PARKED_AWAITING_ANSWER = "parked_awaiting_answer",
171
166
  /** It produces a governed document the engine catalog does not define, so no run can author it. */
@@ -182,8 +177,53 @@ export declare enum Workbench_BuildTaskStuckReason {
182
177
  * wave several tasks run at once, and the next selection must pass over one already being built,
183
178
  * or two agents would build the same task. Nobody's move: it clears when that run settles.
184
179
  */
185
- IN_FLIGHT = "in_flight"
180
+ IN_FLIGHT = "in_flight",
181
+ /**
182
+ * A live run of ANOTHER task may write one of the files this task's declared products are written to (#3204). Two runs
183
+ * writing one file in the shared worktree interfere: one overwrites the other, and the wave repairs it after the fact
184
+ * with a re-check or a re-run. So the wave's own selection passes over it for a ready task whose declared products
185
+ * meet nothing in flight. Only DECLARED products are compared; a shared file no product names (a module barrel, a
186
+ * registry) is still left to the after-the-fact repair. Nobody's move: it clears when that run settles.
187
+ */
188
+ CONTENDED = "contended",
189
+ /**
190
+ * Its latest run failed its checks while other runs of the wave were writing beside it, so the failure may be theirs
191
+ * (#3204): a sibling's half-written file turned a shared typecheck red, or left a package's compiled output stale so the
192
+ * check could not be asked at all. It is not dispatched again in the same wave, where it would meet the same tree: the
193
+ * wave's end re-runs its checks ALONE, a pass lands it and a failure offers it to the next wave. Measured on reference run
194
+ * 42621319676: two schema tasks re-dispatched five times in nine minutes, each failing on a sibling's red build, spent their
195
+ * attempt budget while their checks passed alone. Nobody's move: it clears when the wave ends.
196
+ */
197
+ AWAITING_ISOLATED_RECHECK = "awaiting_isolated_recheck",
198
+ /**
199
+ * A generation step whose landing check could not be ANSWERED right now (#3223): a schema-plan check that neither passed
200
+ * nor reported drift, a design-token block the CLI could not validate, a brand nobody could read. Not "not landed": it
201
+ * is UNKNOWN, so it is never dispatched — running it would either fail the same way or redo work that may well have
202
+ * landed (a companion restart re-ran a landed `design-system-brand` step this way). It clears on its own once the check
203
+ * answers; when it does not, the dispatch refusal names the check and the command that shows why.
204
+ */
205
+ LANDING_UNKNOWN = "landing_unknown",
206
+ /**
207
+ * A FOLLOW-UP the host derived from a reported gap (#3227), waiting for the creator's review before it runs: the
208
+ * autonomy posture (`one-source-of-truth.md` D5) keeps approving a result a person's act, and a follow-up is work the
209
+ * accepted plan never listed. `wildo build approve <ref>` lets it run; `wildo build close <ref> --declined` closes it.
210
+ * Never reached under the automatic posture, where follow-ups run as they are derived.
211
+ */
212
+ FOLLOW_UP_AWAITING_REVIEW = "follow_up_awaiting_review",
213
+ /**
214
+ * A generation step whose panel refused to seat expert charters older than their inputs (#3244): a build task changed
215
+ * what they read (the design system, say). Passed over so the rest of the plan proceeds, and offered again once the
216
+ * staffing step, `top_down.expert-personas`, has derived them again, which the build-dispatch step runs on its own
217
+ * (reference run 42218788356, where the refusal ended the build lane at 32 of 98 tasks). A charter a person edited is
218
+ * never derived again: its remedy is the hand edit.
219
+ */
220
+ STALE_EXPERT_CHARTERS = "stale_expert_charters"
186
221
  }
222
+ /**
223
+ * The stuck reasons that only WAIT for a live run to settle (#1528, #3204): progress, never a finding, and proof that a
224
+ * run is live. One set, so the dispatch's warning and the Home projection cannot disagree about which reasons mean it.
225
+ */
226
+ export declare const WORKBENCH_BUILD_TASK_STUCK_REASONS_WAITING_ON_A_LIVE_RUN: ReadonlySet<Workbench_BuildTaskStuckReason>;
187
227
  /**
188
228
  * The stuck reasons a RE-ARM releases (#2530): the task is held by its own runs, and the remedy is to fix why and put it
189
229
  * back — `WorkbenchBuildPlanTasks_Operations.REARM` is offered for these and no other.
@@ -191,9 +231,9 @@ export declare enum Workbench_BuildTaskStuckReason {
191
231
  * - `completed_unlanded`: a completed run holds it through the loop guard, and a re-arm releases that run.
192
232
  * - `attempts_exhausted`: its failed runs hold it through the attempt budget, and a re-arm releases them.
193
233
  *
194
- * Left out, each because a re-arm would be the wrong remedy: `completed_awaiting_commit` (the product exists and wants
195
- * accepting, and a re-arm would build it again), `parked_awaiting_answer` (a question waits), `in_flight` (a run is
196
- * live), `no_document_blueprint` (no run can produce it).
234
+ * Left out, each because a re-arm would be the wrong remedy: `parked_awaiting_answer` (a question waits), `in_flight` (a run is
235
+ * live), `no_document_blueprint` (no run can produce it), `landing_unknown` (nothing holds it but a check that has not
236
+ * answered yet).
197
237
  */
198
238
  export declare const WORKBENCH_REARMABLE_STUCK_REASONS: readonly Workbench_BuildTaskStuckReason[];
199
239
  /**
@@ -226,6 +266,12 @@ export declare enum BuildTaskRearmReason {
226
266
  BLOCKING_DEFECT_FIXED = "blocking-defect-fixed",
227
267
  /** Neither of the above: an operator judged the work should run again. The note says why. */
228
268
  OPERATOR_JUDGEMENT = "operator-judgement",
269
+ /**
270
+ * The ENVIRONMENT failed the runs, not the task (#3236): the network or the machine went away (DNS lost, a connection
271
+ * cut, a sleep) and the runs the outage took are released. Distinct from `operator-judgement` so a later reader of the
272
+ * task's history sees that its failed attempts said nothing about the work.
273
+ */
274
+ ENVIRONMENT = "environment",
229
275
  /**
230
276
  * Set by the BUILD WAVE, never by a person (#2210): the run completed while other runs edited the same tree, and its
231
277
  * declared product is missing from a file one of them also changed, so the loss is theirs rather than the task's. The
@@ -238,12 +284,27 @@ export declare enum BuildTaskRearmReason {
238
284
  */
239
285
  INTERFERED_BY_CONCURRENT_RUN = "interfered-by-concurrent-run"
240
286
  }
287
+ /**
288
+ * How a build task a PERSON closed is accounted for (`wildo build close`, #3224, #3225, #3227) — the one question a reader
289
+ * of a closed task asks: what made it done, if anything did. A closure never makes a task's product true; it records that
290
+ * a person said it is done another way, or that a derived follow-up is not wanted. Declared here rather than beside its
291
+ * producer (the companion's build dispatch) because the workbench shows it on the task's record, and a browser bundle
292
+ * cannot import the companion.
293
+ */
294
+ export declare enum BuildTaskClosureKind {
295
+ /** Another task of the plan built what this one was for. It counts as landed while that task is landed. */
296
+ SATISFIED_BY_TASK = "satisfied_by_task",
297
+ /** A commit HEAD contains built it (a person's, a reconciliation's). It counts as landed while the closure is committed. */
298
+ SATISFIED_BY_COMMIT = "satisfied_by_commit",
299
+ /** A host-derived follow-up the creator declines: the gap it answers is not worked. Follow-ups only. */
300
+ DECLINED = "declined"
301
+ }
241
302
  /**
242
303
  * The reasons a PERSON may give (`wildo build rearm`, the companion's re-arm route, the workbench's `rearm` operation).
243
304
  * The wave's own reason is left out: it asserts a measurement (a sibling changed the product's file during the run)
244
305
  * that only the wave makes, and an operator choosing it would record a detection that never happened.
245
306
  */
246
- export declare const OPERATOR_BUILD_TASK_REARM_REASONS: readonly [BuildTaskRearmReason.PROBE_CORRECTED, BuildTaskRearmReason.BLOCKING_DEFECT_FIXED, BuildTaskRearmReason.OPERATOR_JUDGEMENT];
307
+ export declare const OPERATOR_BUILD_TASK_REARM_REASONS: readonly [BuildTaskRearmReason.PROBE_CORRECTED, BuildTaskRearmReason.BLOCKING_DEFECT_FIXED, BuildTaskRearmReason.OPERATOR_JUDGEMENT, BuildTaskRearmReason.ENVIRONMENT];
247
308
  /** One of the reasons a person may give a re-arm. */
248
309
  export type OperatorBuildTaskRearmReason = (typeof OPERATOR_BUILD_TASK_REARM_REASONS)[number];
249
310
  /**
@@ -292,38 +353,38 @@ export declare enum Workbench_BuildDispatchPhase {
292
353
  * row (`phase`, `computedAt`) because a resource row must be complete on its own.
293
354
  */
294
355
  export declare const Workbench_Playbook_Schema: z.ZodObject<{
295
- workbenchPlaybookId: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
296
- playbookRef: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
297
- playbookVersion: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
298
- phase: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
299
- intent: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
300
- eligible: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodBoolean>;
301
- unmet: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodArray<z.ZodString>>;
302
- blockedOnlyBySequencing: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodBoolean>;
303
- requiresElicitation: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodBoolean>;
304
- unansweredQuestionRefs: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodArray<z.ZodString>>;
305
- wouldReplace: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodArray<z.ZodString>>;
306
- outputOwners: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodArray<z.ZodObject<{
356
+ workbenchPlaybookId: z.ZodString;
357
+ playbookRef: z.ZodString;
358
+ playbookVersion: z.ZodString;
359
+ phase: z.ZodString;
360
+ intent: z.ZodString;
361
+ eligible: z.ZodBoolean;
362
+ unmet: z.ZodArray<z.ZodString>;
363
+ blockedOnlyBySequencing: z.ZodBoolean;
364
+ requiresElicitation: z.ZodBoolean;
365
+ unansweredQuestionRefs: z.ZodArray<z.ZodString>;
366
+ wouldReplace: z.ZodArray<z.ZodString>;
367
+ outputOwners: z.ZodArray<z.ZodObject<{
307
368
  family: z.ZodString;
308
369
  playbookRefs: z.ZodArray<z.ZodString>;
309
- }, z.core.$strip>>>;
310
- unresolvedPlaybookRefs: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodArray<z.ZodString>>;
311
- unlandableFamilies: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodArray<z.ZodString>>;
312
- staleOutputs: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodArray<z.ZodObject<{
370
+ }, z.core.$strip>>;
371
+ unresolvedPlaybookRefs: z.ZodArray<z.ZodString>;
372
+ unlandableFamilies: z.ZodArray<z.ZodString>;
373
+ staleOutputs: z.ZodArray<z.ZodObject<{
313
374
  family: z.ZodString;
314
375
  changedInputs: z.ZodArray<z.ZodString>;
315
- }, z.core.$strip>>>;
316
- activeInLine: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodOptional<z.ZodBoolean>>;
317
- activationDetail: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodOptional<z.ZodString>>;
318
- openInstances: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodOptional<z.ZodArray<z.ZodObject<{
376
+ }, z.core.$strip>>;
377
+ activeInLine: z.ZodOptional<z.ZodBoolean>;
378
+ activationDetail: z.ZodOptional<z.ZodString>;
379
+ openInstances: z.ZodOptional<z.ZodArray<z.ZodObject<{
319
380
  instanceKey: z.ZodString;
320
381
  purpose: z.ZodString;
321
- }, z.core.$strip>>>>;
322
- inputFamilyIds: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodArray<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>>;
323
- preconditionFamilyIds: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodArray<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>>;
324
- conditionFamilyIds: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodArray<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>>;
325
- admittedPlaybookIds: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodArray<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>>;
326
- computedAt: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodDate>;
382
+ }, z.core.$strip>>>;
383
+ inputFamilyIds: z.ZodArray<z.ZodString>;
384
+ preconditionFamilyIds: z.ZodArray<z.ZodString>;
385
+ conditionFamilyIds: z.ZodArray<z.ZodString>;
386
+ admittedPlaybookIds: z.ZodArray<z.ZodString>;
387
+ computedAt: z.ZodDate;
327
388
  }, z.core.$strip>;
328
389
  export type Workbench_Playbook = z.infer<typeof Workbench_Playbook_Schema>;
329
390
  /**
@@ -335,13 +396,13 @@ export type Workbench_Playbook = z.infer<typeof Workbench_Playbook_Schema>;
335
396
  * stays on the aspect row sharing the same `taskRef`.
336
397
  */
337
398
  export declare const Workbench_BuildPlanTask_Schema: z.ZodObject<{
338
- workbenchBuildPlanTaskId: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
339
- taskRef: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
340
- objective: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
341
- targetKind: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
342
- functionalTopic: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
343
- status: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodEnum<typeof WorkbenchBuildPlanTaskStatus>>>;
344
- prerequisiteTaskRefs: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodArray<z.ZodString>>;
399
+ workbenchBuildPlanTaskId: z.ZodString;
400
+ taskRef: z.ZodString;
401
+ objective: z.ZodString;
402
+ targetKind: z.ZodString;
403
+ functionalTopic: z.ZodString;
404
+ status: z.ZodEnum<typeof WorkbenchBuildPlanTaskStatus>;
405
+ prerequisiteTaskRefs: z.ZodArray<z.ZodString>;
345
406
  }, z.core.$strip>;
346
407
  export type Workbench_BuildPlanTask = z.infer<typeof Workbench_BuildPlanTask_Schema>;
347
408
  /**
@@ -370,28 +431,33 @@ export declare const WORKBENCH_PLAYBOOK_MAP_TRANSLATION_REF = "app.playbook-map"
370
431
  * every LIST.
371
432
  */
372
433
  export declare const Workbench_RunWriteRecord_Schema: z.ZodObject<{
373
- workbenchRunWriteRecordId: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
374
- runId: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
375
- playbookRef: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
376
- workbenchPlaybookId: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
377
- workbenchTraceSessionId: z.ZodNullable<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>>;
378
- at: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodDate>;
379
- files: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodArray<z.ZodObject<{
434
+ workbenchRunWriteRecordId: z.ZodString;
435
+ runId: z.ZodString;
436
+ playbookRef: z.ZodString;
437
+ workbenchPlaybookId: z.ZodString;
438
+ workbenchTraceSessionId: z.ZodNullable<z.ZodString>;
439
+ at: z.ZodDate;
440
+ files: z.ZodArray<z.ZodObject<{
380
441
  path: z.ZodString;
381
442
  existedBefore: z.ZodBoolean;
382
- }, z.core.$strip>>>;
383
- fileCount: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodNumber>;
384
- acceptedCommitSha: z.ZodNullable<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
443
+ }, z.core.$strip>>;
444
+ fileCount: z.ZodNumber;
445
+ acceptedCommitSha: z.ZodNullable<z.ZodString>;
446
+ landingFailed: z.ZodBoolean;
447
+ failedLandingRemedies: z.ZodNullable<z.ZodObject<{
448
+ accept: z.ZodString;
449
+ revert: z.ZodString;
450
+ }, z.core.$strip>>;
385
451
  }, z.core.$strip>;
386
452
  export type Workbench_RunWriteRecord = z.infer<typeof Workbench_RunWriteRecord_Schema>;
387
453
  /** One execution-trace session — the queryable index the board links from. */
388
454
  export declare const Workbench_TraceSession_Schema: z.ZodObject<{
389
- workbenchTraceSessionId: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
390
- sessionId: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
391
- startedAt: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodDate>;
392
- label: z.ZodNullable<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
393
- eventCount: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodNumber>;
394
- stepCount: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodNumber>;
455
+ workbenchTraceSessionId: z.ZodString;
456
+ sessionId: z.ZodString;
457
+ startedAt: z.ZodDate;
458
+ label: z.ZodNullable<z.ZodString>;
459
+ eventCount: z.ZodNumber;
460
+ stepCount: z.ZodNumber;
395
461
  }, z.core.$strip>;
396
462
  export type Workbench_TraceSession = z.infer<typeof Workbench_TraceSession_Schema>;
397
463
  /**
@@ -455,7 +521,18 @@ export declare enum WorkbenchDossierEntryStanding {
455
521
  * decided: the run treats it as a working hypothesis, and this standing is how the dossier lists it to revisit.
456
522
  * Changing it records the creator's own answer in its place.
457
523
  */
458
- ASSUMED = "assumed"
524
+ ASSUMED = "assumed",
525
+ /**
526
+ * The creator said the question does not concern this application, and why (#3437). Answered — nothing is
527
+ * blocked — and never filled in by a run. Changing it records an answer, or the other non-answer, in its place.
528
+ */
529
+ NOT_APPLICABLE = "not-applicable",
530
+ /**
531
+ * The creator said the question concerns this application and is not decided yet, and why (#3437). Nothing waits
532
+ * on it: the step runs and marks what rests on it as owed; a governed document shows the clause as owed. Listed
533
+ * to revisit, like an assumption.
534
+ */
535
+ DEFERRED = "deferred"
459
536
  }
460
537
  /**
461
538
  * Whether a CHOICE question's options can be offered right now — for a question whose options are
@@ -474,33 +551,33 @@ export declare enum WorkbenchDossierEntryOptionsState {
474
551
  ANSWER_NO_LONGER_OFFERED = "answer-no-longer-offered"
475
552
  }
476
553
  export declare const Workbench_GovernanceDocument_Schema: z.ZodObject<{
477
- workbenchGovernanceDocumentId: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
478
- definitionRef: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
479
- askCount: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodNumber>;
480
- derivedFactRefs: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodArray<z.ZodString>>;
481
- openCount: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodNumber>;
482
- drafted: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodBoolean>;
554
+ workbenchGovernanceDocumentId: z.ZodString;
555
+ definitionRef: z.ZodString;
556
+ askCount: z.ZodNumber;
557
+ derivedFactRefs: z.ZodArray<z.ZodString>;
558
+ openCount: z.ZodNumber;
559
+ drafted: z.ZodBoolean;
483
560
  }, z.core.$strip>;
484
561
  export type Workbench_GovernanceDocument = z.infer<typeof Workbench_GovernanceDocument_Schema>;
485
562
  export declare const Workbench_GovernanceQuestion_Schema: z.ZodObject<{
486
- workbenchGovernanceQuestionId: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
487
- definitionRef: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
488
- questionRef: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
489
- factRef: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
490
- creatorPrompt: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
491
- decisionPurpose: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
492
- answerKind: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
493
- factAuthorityKind: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
494
- allowsNotApplicable: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodBoolean>;
495
- sensitivityRef: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
496
- semanticOptions: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodArray<z.ZodObject<{
563
+ workbenchGovernanceQuestionId: z.ZodString;
564
+ definitionRef: z.ZodString;
565
+ questionRef: z.ZodString;
566
+ factRef: z.ZodString;
567
+ creatorPrompt: z.ZodString;
568
+ decisionPurpose: z.ZodString;
569
+ answerKind: z.ZodString;
570
+ factAuthorityKind: z.ZodString;
571
+ allowsNotApplicable: z.ZodBoolean;
572
+ sensitivityRef: z.ZodString;
573
+ semanticOptions: z.ZodArray<z.ZodObject<{
497
574
  optionRef: z.ZodString;
498
575
  creatorMeaning: z.ZodString;
499
- }, z.core.$strip>>>;
500
- standing: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodEnum<typeof WorkbenchDossierEntryStanding>>>;
501
- answerSummary: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodNullable<z.ZodString>>;
502
- answeredAt: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodNullable<z.ZodDate>>;
503
- askedNow: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodBoolean>;
576
+ }, z.core.$strip>>;
577
+ standing: z.ZodEnum<typeof WorkbenchDossierEntryStanding>;
578
+ answerSummary: z.ZodNullable<z.ZodString>;
579
+ answeredAt: z.ZodNullable<z.ZodDate>;
580
+ askedNow: z.ZodBoolean;
504
581
  }, z.core.$strip>;
505
582
  export type Workbench_GovernanceQuestion = z.infer<typeof Workbench_GovernanceQuestion_Schema>;
506
583
  /** The playbook resource's dispatch verbs. */
@@ -621,11 +698,12 @@ export declare const Workbench_BuildPlanDispatchTaskRequest_Schema: z.ZodObject<
621
698
  export type Workbench_BuildPlanDispatchTaskRequest = z.infer<typeof Workbench_BuildPlanDispatchTaskRequest_Schema>;
622
699
  /** Why a build task goes back in the queue (#2530): a person's reason, and what was fixed. */
623
700
  export declare const Workbench_BuildTaskRearmRequest_Schema: z.ZodObject<{
624
- reason: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodEnum<{
701
+ reason: z.ZodEnum<{
625
702
  "probe-corrected": BuildTaskRearmReason.PROBE_CORRECTED;
626
703
  "blocking-defect-fixed": BuildTaskRearmReason.BLOCKING_DEFECT_FIXED;
627
704
  "operator-judgement": BuildTaskRearmReason.OPERATOR_JUDGEMENT;
628
- }>>;
705
+ environment: BuildTaskRearmReason.ENVIRONMENT;
706
+ }>;
629
707
  note: z.ZodString;
630
708
  }, z.core.$strip>;
631
709
  export type Workbench_BuildTaskRearmRequest = z.infer<typeof Workbench_BuildTaskRearmRequest_Schema>;
@@ -694,9 +772,7 @@ export declare const Workbench_BuildTaskRearmOutcome_Schema: z.ZodObject<{
694
772
  export type Workbench_BuildTaskRearmOutcome = z.infer<typeof Workbench_BuildTaskRearmOutcome_Schema>;
695
773
  export declare const Workbench_BuildPlanAddTaskOutcome_Schema: z.ZodObject<{
696
774
  taskRef: z.ZodOptional<z.ZodString>;
697
- /** TRUE when no plan existed and this task is its first. */
698
775
  createdPlan: z.ZodOptional<z.ZodBoolean>;
699
- /** Validator findings below the hard floor — worth telling the creator, never a refusal. */
700
776
  advisoryFindings: z.ZodOptional<z.ZodArray<z.ZodObject<{
701
777
  code: z.ZodString;
702
778
  taskRef: z.ZodString;
@@ -707,12 +783,6 @@ export declare const Workbench_BuildPlanAddTaskOutcome_Schema: z.ZodObject<{
707
783
  export type Workbench_BuildPlanAddTaskOutcome = z.infer<typeof Workbench_BuildPlanAddTaskOutcome_Schema>;
708
784
  /** How ACCEPT answers, for a task's coding run or a playbook run alike: what was committed, what was refused and why. */
709
785
  export declare const Workbench_AcceptChangesOutcome_Schema: z.ZodObject<{
710
- /**
711
- * TRUE when no new commit was made because what it would commit was already committed: the run was accepted before, or
712
- * its files were committed by hand (#2531 review M3). `commitSha` is then that earlier commit, not a new one. An accept
713
- * can be partial, holding back the files it cannot vouch for, and the task waits on them; only a forced accept
714
- * (`force`) commits those.
715
- */
716
786
  alreadyCommitted: z.ZodOptional<z.ZodBoolean>;
717
787
  commitSha: z.ZodOptional<z.ZodString>;
718
788
  committedPaths: z.ZodOptional<z.ZodArray<z.ZodString>>;
@@ -727,16 +797,12 @@ export type Workbench_AcceptChangesOutcome = z.infer<typeof Workbench_AcceptChan
727
797
  export declare const Workbench_RunWriteRevertOutcome_Schema: z.ZodObject<{
728
798
  runId: z.ZodOptional<z.ZodString>;
729
799
  reverted: z.ZodOptional<z.ZodArray<z.ZodString>>;
730
- /** Files whose current bytes differ from what the run wrote — refused by name, revertable with force. */
731
800
  refusedDiverged: z.ZodOptional<z.ZodArray<z.ZodString>>;
732
- /**
733
- * Files a LATER recorded run landed on (#1614): refused even under force, because the earlier bytes
734
- * would destroy that run's work. Each names the run to revert first (#1666).
735
- */
736
801
  refusedLaterRun: z.ZodOptional<z.ZodArray<z.ZodObject<{
737
802
  path: z.ZodString;
738
803
  runId: z.ZodString;
739
804
  }, z.core.$strip>>>;
805
+ refusedWithoutPreImage: z.ZodOptional<z.ZodArray<z.ZodString>>;
740
806
  note: z.ZodOptional<z.ZodString>;
741
807
  }, z.core.$loose>;
742
808
  export type Workbench_RunWriteRevertOutcome = z.infer<typeof Workbench_RunWriteRevertOutcome_Schema>;
@@ -772,46 +838,47 @@ export type Workbench_RunWriteRevertOutcome = z.infer<typeof Workbench_RunWriteR
772
838
  * on this row so the finished state can say how far it got.
773
839
  */
774
840
  export declare const Workbench_BuildDispatchPlan_Schema: z.ZodObject<{
775
- workbenchBuildDispatchPlanId: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
776
- taskRef: z.ZodNullable<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
777
- objective: z.ZodNullable<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
778
- targetKind: z.ZodNullable<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
779
- generationStepRef: z.ZodNullable<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
780
- allowedPathPrefixes: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodArray<z.ZodString>>;
781
- prohibitedPathPrefixes: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodArray<z.ZodString>>;
782
- requiredChecks: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodArray<z.ZodString>>;
783
- installedSkillRefs: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodArray<z.ZodString>>;
784
- readyTaskRefs: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodArray<z.ZodString>>;
785
- landedTaskRefs: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodArray<z.ZodString>>;
786
- unverifiableLandedTaskRefs: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodArray<z.ZodString>>;
787
- landedBeforeAnyRunTaskRefs: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodArray<z.ZodString>>;
788
- exhausted: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodBoolean>;
789
- stuckTasks: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodArray<z.ZodObject<{
841
+ workbenchBuildDispatchPlanId: z.ZodString;
842
+ taskRef: z.ZodNullable<z.ZodString>;
843
+ objective: z.ZodNullable<z.ZodString>;
844
+ targetKind: z.ZodNullable<z.ZodString>;
845
+ generationStepRef: z.ZodNullable<z.ZodString>;
846
+ allowedPathPrefixes: z.ZodArray<z.ZodString>;
847
+ prohibitedPathPrefixes: z.ZodArray<z.ZodString>;
848
+ requiredChecks: z.ZodArray<z.ZodString>;
849
+ installedSkillRefs: z.ZodArray<z.ZodString>;
850
+ readyTaskRefs: z.ZodArray<z.ZodString>;
851
+ landedTaskRefs: z.ZodArray<z.ZodString>;
852
+ unverifiableLandedTaskRefs: z.ZodArray<z.ZodString>;
853
+ landedBeforeAnyRunTaskRefs: z.ZodArray<z.ZodString>;
854
+ exhausted: z.ZodBoolean;
855
+ failingSpecificationModules: z.ZodArray<z.ZodString>;
856
+ specificationRepairOwed: z.ZodBoolean;
857
+ stuckTasks: z.ZodArray<z.ZodObject<{
790
858
  taskRef: z.ZodString;
791
- reason: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodEnum<typeof Workbench_BuildTaskStuckReason>>;
859
+ reason: z.ZodEnum<typeof Workbench_BuildTaskStuckReason>;
792
860
  priorTaskId: z.ZodNullable<z.ZodString>;
793
- uncommittedPaths: z.ZodArray<z.ZodString>;
794
861
  question: z.ZodNullable<z.ZodString>;
795
862
  documentRef: z.ZodNullable<z.ZodString>;
796
- }, z.core.$strip>>>;
797
- taskCount: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodNumber>;
798
- landedCount: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodNumber>;
863
+ }, z.core.$strip>>;
864
+ taskCount: z.ZodNumber;
865
+ landedCount: z.ZodNumber;
799
866
  }, z.core.$strip>;
800
867
  export type Workbench_BuildDispatchPlan = z.infer<typeof Workbench_BuildDispatchPlan_Schema>;
801
868
  export declare const Workbench_BuildDispatch_Schema: z.ZodObject<{
802
- workbenchBuildDispatchId: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
803
- taskRef: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
804
- objective: z.ZodNullable<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
805
- phase: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodEnum<typeof Workbench_BuildDispatchPhase>>>;
806
- startedAt: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodDate>;
807
- settledAt: z.ZodNullable<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodDate>>;
808
- codingTaskId: z.ZodNullable<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>>;
809
- error: z.ZodNullable<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
810
- failureAttribution: z.ZodNullable<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodEnum<typeof CodingRunFailureAttribution>>>;
811
- conversationId: z.ZodNullable<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
812
- runStatus: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodEnum<typeof FlowsActors_Status>>>;
813
- runFinishedAt: z.ZodNullable<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodDate>>;
814
- accepted: z.ZodNullable<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodBoolean>>;
869
+ workbenchBuildDispatchId: z.ZodString;
870
+ taskRef: z.ZodString;
871
+ objective: z.ZodNullable<z.ZodString>;
872
+ phase: z.ZodEnum<typeof Workbench_BuildDispatchPhase>;
873
+ startedAt: z.ZodDate;
874
+ settledAt: z.ZodNullable<z.ZodDate>;
875
+ codingTaskId: z.ZodNullable<z.ZodString>;
876
+ error: z.ZodNullable<z.ZodString>;
877
+ failureAttribution: z.ZodNullable<z.ZodEnum<typeof CodingRunFailureAttribution>>;
878
+ conversationId: z.ZodNullable<z.ZodString>;
879
+ runStatus: z.ZodEnum<typeof FlowsActors_Status>;
880
+ runFinishedAt: z.ZodNullable<z.ZodDate>;
881
+ accepted: z.ZodNullable<z.ZodBoolean>;
815
882
  }, z.core.$strip>;
816
883
  export type Workbench_BuildDispatch = z.infer<typeof Workbench_BuildDispatch_Schema>;
817
884
  /**
@@ -822,13 +889,13 @@ export declare const Workbench_BuildTaskAttempt_Schema: z.ZodObject<{
822
889
  runTaskId: z.ZodString;
823
890
  startedAt: z.ZodDate;
824
891
  settledAt: z.ZodNullable<z.ZodDate>;
825
- status: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodEnum<typeof FlowsActors_Status>>;
892
+ status: z.ZodEnum<typeof FlowsActors_Status>;
826
893
  generationStep: z.ZodBoolean;
827
894
  refusedBeforeStart: z.ZodBoolean;
828
895
  ranNothing: z.ZodBoolean;
829
- failureAttribution: z.ZodNullable<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodEnum<typeof CodingRunFailureAttribution>>>;
896
+ failureAttribution: z.ZodNullable<z.ZodEnum<typeof CodingRunFailureAttribution>>;
830
897
  interferenceSuspected: z.ZodBoolean;
831
- rearmReason: z.ZodNullable<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodEnum<typeof BuildTaskRearmReason>>>;
898
+ rearmReason: z.ZodNullable<z.ZodEnum<typeof BuildTaskRearmReason>>;
832
899
  rearmNote: z.ZodNullable<z.ZodString>;
833
900
  error: z.ZodNullable<z.ZodString>;
834
901
  costAmount: z.ZodNullable<z.ZodNumber>;
@@ -908,29 +975,28 @@ export declare enum BrandDesignState {
908
975
  /** The brand's visual tone could not be read, so currency cannot be decided either way. */
909
976
  UNANSWERABLE = "unanswerable"
910
977
  }
911
- /** A landing probe HEAD does not satisfy (#2530): what landing searched for, and whether the working tree has it. */
978
+ /** A landing probe the working tree does not satisfy (#2530, #3204): what landing searched for there, and what is missing. */
912
979
  export declare const Workbench_BuildTaskUnmetProbe_Schema: z.ZodObject<{
913
980
  paths: z.ZodArray<z.ZodString>;
914
981
  declarations: z.ZodArray<z.ZodString>;
915
982
  keyPrefix: z.ZodNullable<z.ZodString>;
916
- shellSurface: z.ZodNullable<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
983
+ shellSurface: z.ZodNullable<z.ZodString>;
917
984
  shell: z.ZodNullable<z.ZodObject<{
918
985
  unanswerable: z.ZodNullable<z.ZodString>;
919
986
  missing: z.ZodArray<z.ZodString>;
920
987
  declinedButPresent: z.ZodArray<z.ZodString>;
921
- uncommittedPaths: z.ZodArray<z.ZodString>;
988
+ absentPaths: z.ZodArray<z.ZodString>;
922
989
  }, z.core.$strip>>;
923
990
  registered: z.ZodNullable<z.ZodObject<{
924
991
  unanswerable: z.ZodNullable<z.ZodString>;
925
992
  missing: z.ZodArray<z.ZodObject<{
926
- kind: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodEnum<typeof AgentWorkShortfallKind>>;
993
+ kind: z.ZodEnum<typeof AgentWorkShortfallKind>;
927
994
  ref: z.ZodString;
928
995
  planned: z.ZodNullable<z.ZodString>;
929
996
  registered: z.ZodNullable<z.ZodString>;
930
997
  }, z.core.$strip>>;
931
- uncommittedPaths: z.ZodArray<z.ZodString>;
998
+ absentPaths: z.ZodArray<z.ZodString>;
932
999
  }, z.core.$strip>>;
933
- satisfiedInWorkingTree: z.ZodBoolean;
934
1000
  }, z.core.$strip>;
935
1001
  export type Workbench_BuildTaskUnmetProbe = z.infer<typeof Workbench_BuildTaskUnmetProbe_Schema>;
936
1002
  /**
@@ -947,22 +1013,22 @@ export type Workbench_BuildTaskUnmetProbe = z.infer<typeof Workbench_BuildTaskUn
947
1013
  * claimed.
948
1014
  */
949
1015
  export declare const Workbench_BuildTaskRecord_Schema: z.ZodObject<{
950
- workbenchBuildTaskRecordId: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
951
- workbenchBuildPlanTaskId: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
952
- taskRef: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
953
- status: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodEnum<typeof WorkbenchBuildPlanTaskStatus>>>;
954
- attemptCount: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodNumber>;
1016
+ workbenchBuildTaskRecordId: z.ZodString;
1017
+ workbenchBuildPlanTaskId: z.ZodString;
1018
+ taskRef: z.ZodString;
1019
+ status: z.ZodEnum<typeof WorkbenchBuildPlanTaskStatus>;
1020
+ attemptCount: z.ZodNumber;
955
1021
  attempts: z.ZodArray<z.ZodObject<{
956
1022
  runTaskId: z.ZodString;
957
1023
  startedAt: z.ZodDate;
958
1024
  settledAt: z.ZodNullable<z.ZodDate>;
959
- status: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodEnum<typeof FlowsActors_Status>>;
1025
+ status: z.ZodEnum<typeof FlowsActors_Status>;
960
1026
  generationStep: z.ZodBoolean;
961
1027
  refusedBeforeStart: z.ZodBoolean;
962
1028
  ranNothing: z.ZodBoolean;
963
- failureAttribution: z.ZodNullable<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodEnum<typeof CodingRunFailureAttribution>>>;
1029
+ failureAttribution: z.ZodNullable<z.ZodEnum<typeof CodingRunFailureAttribution>>;
964
1030
  interferenceSuspected: z.ZodBoolean;
965
- rearmReason: z.ZodNullable<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodEnum<typeof BuildTaskRearmReason>>>;
1031
+ rearmReason: z.ZodNullable<z.ZodEnum<typeof BuildTaskRearmReason>>;
966
1032
  rearmNote: z.ZodNullable<z.ZodString>;
967
1033
  error: z.ZodNullable<z.ZodString>;
968
1034
  costAmount: z.ZodNullable<z.ZodNumber>;
@@ -979,8 +1045,7 @@ export declare const Workbench_BuildTaskRecord_Schema: z.ZodObject<{
979
1045
  }, z.core.$strip>>;
980
1046
  }, z.core.$strip>>;
981
1047
  attemptsTruncated: z.ZodBoolean;
982
- stuckReason: z.ZodNullable<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodEnum<typeof Workbench_BuildTaskStuckReason>>>>;
983
- stuckUncommittedPaths: z.ZodArray<z.ZodString>;
1048
+ stuckReason: z.ZodNullable<z.ZodEnum<typeof Workbench_BuildTaskStuckReason>>;
984
1049
  stuckQuestion: z.ZodNullable<z.ZodString>;
985
1050
  stuckDocumentRef: z.ZodNullable<z.ZodString>;
986
1051
  waitingOnTaskRefs: z.ZodArray<z.ZodString>;
@@ -988,31 +1053,33 @@ export declare const Workbench_BuildTaskRecord_Schema: z.ZodObject<{
988
1053
  paths: z.ZodArray<z.ZodString>;
989
1054
  declarations: z.ZodArray<z.ZodString>;
990
1055
  keyPrefix: z.ZodNullable<z.ZodString>;
991
- shellSurface: z.ZodNullable<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
1056
+ shellSurface: z.ZodNullable<z.ZodString>;
992
1057
  shell: z.ZodNullable<z.ZodObject<{
993
1058
  unanswerable: z.ZodNullable<z.ZodString>;
994
1059
  missing: z.ZodArray<z.ZodString>;
995
1060
  declinedButPresent: z.ZodArray<z.ZodString>;
996
- uncommittedPaths: z.ZodArray<z.ZodString>;
1061
+ absentPaths: z.ZodArray<z.ZodString>;
997
1062
  }, z.core.$strip>>;
998
1063
  registered: z.ZodNullable<z.ZodObject<{
999
1064
  unanswerable: z.ZodNullable<z.ZodString>;
1000
1065
  missing: z.ZodArray<z.ZodObject<{
1001
- kind: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodEnum<typeof AgentWorkShortfallKind>>;
1066
+ kind: z.ZodEnum<typeof AgentWorkShortfallKind>;
1002
1067
  ref: z.ZodString;
1003
1068
  planned: z.ZodNullable<z.ZodString>;
1004
1069
  registered: z.ZodNullable<z.ZodString>;
1005
1070
  }, z.core.$strip>>;
1006
- uncommittedPaths: z.ZodArray<z.ZodString>;
1071
+ absentPaths: z.ZodArray<z.ZodString>;
1007
1072
  }, z.core.$strip>>;
1008
- satisfiedInWorkingTree: z.ZodBoolean;
1009
1073
  }, z.core.$strip>>;
1010
- schemaPlanSyncState: z.ZodNullable<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodEnum<typeof SchemaPlanSyncState>>>;
1011
- designTokenBlockState: z.ZodNullable<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodEnum<typeof DesignTokenBlockState>>>;
1012
- brandDesignState: z.ZodNullable<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodEnum<typeof BrandDesignState>>>;
1074
+ schemaPlanSyncState: z.ZodNullable<z.ZodEnum<typeof SchemaPlanSyncState>>;
1075
+ designTokenBlockState: z.ZodNullable<z.ZodEnum<typeof DesignTokenBlockState>>;
1076
+ brandDesignState: z.ZodNullable<z.ZodEnum<typeof BrandDesignState>>;
1013
1077
  landingBlockedBy: z.ZodNullable<z.ZodString>;
1014
- followUpTaskIds: z.ZodArray<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
1015
- followUpOfTaskId: z.ZodNullable<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
1078
+ followUpTaskIds: z.ZodArray<z.ZodString>;
1079
+ followUpOfTaskId: z.ZodNullable<z.ZodString>;
1080
+ closureKind: z.ZodNullable<z.ZodEnum<typeof BuildTaskClosureKind>>;
1081
+ closureSatisfiedBy: z.ZodNullable<z.ZodString>;
1082
+ closureReason: z.ZodNullable<z.ZodString>;
1016
1083
  unverifiable: z.ZodBoolean;
1017
1084
  landedBeforeAnyRun: z.ZodBoolean;
1018
1085
  landedBeforeAnyRunPaths: z.ZodArray<z.ZodString>;
@@ -1067,6 +1134,7 @@ export declare enum Workbench_PlaybookRunState {
1067
1134
  export declare const Workbench_PlaybookRunRoundChild_Schema: z.ZodObject<{
1068
1135
  playbookRef: z.ZodString;
1069
1136
  ranBecause: z.ZodNullable<z.ZodString>;
1137
+ reranOverLanding: z.ZodNullable<z.ZodBoolean>;
1070
1138
  landed: z.ZodArray<z.ZodString>;
1071
1139
  failure: z.ZodNullable<z.ZodString>;
1072
1140
  }, z.core.$strip>;
@@ -1090,6 +1158,7 @@ export declare const Workbench_PlaybookRunRound_Schema: z.ZodObject<{
1090
1158
  children: z.ZodArray<z.ZodObject<{
1091
1159
  playbookRef: z.ZodString;
1092
1160
  ranBecause: z.ZodNullable<z.ZodString>;
1161
+ reranOverLanding: z.ZodNullable<z.ZodBoolean>;
1093
1162
  landed: z.ZodArray<z.ZodString>;
1094
1163
  failure: z.ZodNullable<z.ZodString>;
1095
1164
  }, z.core.$strip>>;
@@ -1102,25 +1171,25 @@ export type Workbench_PlaybookRunRound = z.infer<typeof Workbench_PlaybookRunRou
1102
1171
  * that playbook and never a history of it.
1103
1172
  */
1104
1173
  export declare const Workbench_PlaybookRun_Schema: z.ZodObject<{
1105
- workbenchPlaybookRunId: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
1106
- runId: z.ZodNullable<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
1107
- playbookRef: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
1108
- instanceKey: z.ZodNullable<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
1109
- traceSessionId: z.ZodNullable<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
1110
- conversationId: z.ZodNullable<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
1111
- state: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodEnum<typeof Workbench_PlaybookRunState>>>;
1112
- startedAt: z.ZodNullable<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodDate>>;
1113
- finishedAt: z.ZodNullable<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodDate>>;
1114
- ok: z.ZodNullable<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodBoolean>>;
1115
- error: z.ZodNullable<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
1116
- completedIterations: z.ZodNullable<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodNumber>>;
1117
- checkpointedAt: z.ZodNullable<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodDate>>;
1118
- awaitingFamily: z.ZodNullable<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
1119
- awaitingRound: z.ZodNullable<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodNumber>>;
1120
- judgeOverall: z.ZodNullable<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodEnum<typeof MetaWorkflow_EvaluationVerdict>>>>;
1174
+ workbenchPlaybookRunId: z.ZodString;
1175
+ runId: z.ZodNullable<z.ZodString>;
1176
+ playbookRef: z.ZodString;
1177
+ instanceKey: z.ZodNullable<z.ZodString>;
1178
+ traceSessionId: z.ZodNullable<z.ZodString>;
1179
+ conversationId: z.ZodNullable<z.ZodString>;
1180
+ state: z.ZodEnum<typeof Workbench_PlaybookRunState>;
1181
+ startedAt: z.ZodNullable<z.ZodDate>;
1182
+ finishedAt: z.ZodNullable<z.ZodDate>;
1183
+ ok: z.ZodNullable<z.ZodBoolean>;
1184
+ error: z.ZodNullable<z.ZodString>;
1185
+ completedIterations: z.ZodNullable<z.ZodNumber>;
1186
+ checkpointedAt: z.ZodNullable<z.ZodDate>;
1187
+ awaitingFamily: z.ZodNullable<z.ZodString>;
1188
+ awaitingRound: z.ZodNullable<z.ZodNumber>;
1189
+ judgeOverall: z.ZodNullable<z.ZodEnum<typeof MetaWorkflow_EvaluationVerdict>>;
1121
1190
  judgeCriteria: z.ZodNullable<z.ZodArray<z.ZodObject<{
1122
1191
  criterionRef: z.ZodString;
1123
- verdict: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodEnum<typeof MetaWorkflow_EvaluationVerdict>>;
1192
+ verdict: z.ZodEnum<typeof MetaWorkflow_EvaluationVerdict>;
1124
1193
  rationale: z.ZodString;
1125
1194
  }, z.core.$strip>>>;
1126
1195
  judgeSkipped: z.ZodNullable<z.ZodString>;
@@ -1134,6 +1203,7 @@ export declare const Workbench_PlaybookRun_Schema: z.ZodObject<{
1134
1203
  children: z.ZodArray<z.ZodObject<{
1135
1204
  playbookRef: z.ZodString;
1136
1205
  ranBecause: z.ZodNullable<z.ZodString>;
1206
+ reranOverLanding: z.ZodNullable<z.ZodBoolean>;
1137
1207
  landed: z.ZodArray<z.ZodString>;
1138
1208
  failure: z.ZodNullable<z.ZodString>;
1139
1209
  }, z.core.$strip>>;
@@ -1141,22 +1211,22 @@ export declare const Workbench_PlaybookRun_Schema: z.ZodObject<{
1141
1211
  }, z.core.$strip>;
1142
1212
  export type Workbench_PlaybookRun = z.infer<typeof Workbench_PlaybookRun_Schema>;
1143
1213
  export declare const Workbench_WaitingPlaybookRun_Schema: z.ZodObject<{
1144
- workbenchWaitingPlaybookRunId: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
1145
- runId: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
1146
- readable: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodBoolean>;
1147
- playbookRef: z.ZodNullable<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
1148
- family: z.ZodNullable<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
1149
- suspendedAt: z.ZodNullable<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodDate>>;
1150
- round: z.ZodNullable<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodNumber>>;
1151
- dryRun: z.ZodNullable<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodBoolean>>;
1152
- requests: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodArray<z.ZodObject<{
1214
+ workbenchWaitingPlaybookRunId: z.ZodString;
1215
+ runId: z.ZodString;
1216
+ readable: z.ZodBoolean;
1217
+ playbookRef: z.ZodNullable<z.ZodString>;
1218
+ family: z.ZodNullable<z.ZodString>;
1219
+ suspendedAt: z.ZodNullable<z.ZodDate>;
1220
+ round: z.ZodNullable<z.ZodNumber>;
1221
+ dryRun: z.ZodNullable<z.ZodBoolean>;
1222
+ requests: z.ZodArray<z.ZodObject<{
1153
1223
  ref: z.ZodString;
1154
1224
  question: z.ZodString;
1155
1225
  why: z.ZodString;
1156
1226
  kind: z.ZodString;
1157
1227
  options: z.ZodArray<z.ZodString>;
1158
- }, z.core.$strip>>>;
1159
- routedToUserId: z.ZodNullable<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
1228
+ }, z.core.$strip>>;
1229
+ routedToUserId: z.ZodNullable<z.ZodString>;
1160
1230
  }, z.core.$strip>;
1161
1231
  export type Workbench_WaitingPlaybookRun = z.infer<typeof Workbench_WaitingPlaybookRun_Schema>;
1162
1232
  /**
@@ -1186,15 +1256,15 @@ export declare const WORKBENCH_CODING_LANE_STATUS_ROW_ID = "coding-lane";
1186
1256
  * outstanding — which is why the parked queue has to be read beside it.
1187
1257
  */
1188
1258
  export declare const Workbench_CodingLaneStatus_Schema: z.ZodObject<{
1189
- workbenchCodingLaneStatusId: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
1190
- codingAgentRegistered: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodBoolean>;
1191
- codingAgentProviderRef: z.ZodNullable<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
1192
- codingAgentSignedIn: z.ZodNullable<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodBoolean>>;
1259
+ workbenchCodingLaneStatusId: z.ZodString;
1260
+ codingAgentRegistered: z.ZodBoolean;
1261
+ codingAgentProviderRef: z.ZodNullable<z.ZodString>;
1262
+ codingAgentSignedIn: z.ZodNullable<z.ZodBoolean>;
1193
1263
  codingAgentLoginDetail: z.ZodNullable<z.ZodString>;
1194
1264
  codingAgentLoginRemedy: z.ZodNullable<z.ZodString>;
1195
- activeRunTaskId: z.ZodNullable<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>>;
1196
- activeRunStartedAt: z.ZodNullable<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodDate>>;
1197
- lockFilePath: z.ZodNullable<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
1265
+ activeRunTaskId: z.ZodNullable<z.ZodString>;
1266
+ activeRunStartedAt: z.ZodNullable<z.ZodDate>;
1267
+ lockFilePath: z.ZodNullable<z.ZodString>;
1198
1268
  defaultTimeoutMs: z.ZodNumber;
1199
1269
  hardMaxTimeoutMs: z.ZodNumber;
1200
1270
  defaultMaxCapturedBytes: z.ZodNumber;
@@ -1231,12 +1301,12 @@ export declare const WORKBENCH_PARKED_CODING_QUESTION_FIELD_REF = "answer";
1231
1301
  * reachable only by reading a status blob.
1232
1302
  */
1233
1303
  export declare const Workbench_ParkedCodingQuestion_Schema: z.ZodObject<{
1234
- workbenchParkedCodingQuestionId: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
1235
- taskId: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
1236
- taskRef: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
1237
- question: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
1238
- parkedAt: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodDate>;
1239
- resumable: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodBoolean>;
1304
+ workbenchParkedCodingQuestionId: z.ZodString;
1305
+ taskId: z.ZodString;
1306
+ taskRef: z.ZodString;
1307
+ question: z.ZodString;
1308
+ parkedAt: z.ZodDate;
1309
+ resumable: z.ZodBoolean;
1240
1310
  suspensionRef: z.ZodString;
1241
1311
  }, z.core.$strip>;
1242
1312
  export type Workbench_ParkedCodingQuestion = z.infer<typeof Workbench_ParkedCodingQuestion_Schema>;
@@ -1249,34 +1319,36 @@ export type Workbench_ParkedCodingQuestion = z.infer<typeof Workbench_ParkedCodi
1249
1319
  * surface can ASK it without a second read.
1250
1320
  */
1251
1321
  export declare const Workbench_DossierEntry_Schema: z.ZodObject<{
1252
- workbenchDossierEntryId: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
1253
- playbookRef: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
1254
- questionRef: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
1255
- instanceKey: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodNullable<z.ZodString>>;
1256
- instancePurpose: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodNullable<z.ZodString>>;
1257
- question: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
1258
- kind: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
1259
- options: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodArray<z.ZodString>>;
1260
- optionDetails: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodArray<z.ZodString>>;
1261
- position: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodNumber>;
1262
- standing: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodEnum<typeof WorkbenchDossierEntryStanding>>>;
1263
- optionsState: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodEnum<typeof WorkbenchDossierEntryOptionsState>>>;
1264
- value: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodNullable<z.ZodString>>;
1265
- answeredAt: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodNullable<z.ZodDate>>;
1266
- answeredByRef: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodNullable<z.ZodString>>;
1267
- shownOptionDetail: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodNullable<z.ZodString>>;
1268
- playbookEligible: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodBoolean>;
1269
- askedNow: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodBoolean>;
1270
- affectsFamilies: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodArray<z.ZodString>>;
1271
- subject: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodEnum<typeof WorkbenchSpecificationArtifactConcern>>>;
1272
- outOfDate: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodBoolean>;
1273
- outOfDateStepRefs: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodArray<z.ZodString>>;
1274
- sharedWithPlaybookRefs: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodArray<z.ZodString>>;
1275
- askedInSimpleInterview: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodBoolean>;
1276
- proposable: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodBoolean>;
1277
- regulatedDomain: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodBoolean>;
1278
- assumptionRationale: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodNullable<z.ZodString>>;
1279
- interviewDepth: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodNullable<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodEnum<typeof ApplicationInterviewDepth>>>>;
1322
+ workbenchDossierEntryId: z.ZodString;
1323
+ playbookRef: z.ZodString;
1324
+ questionRef: z.ZodString;
1325
+ instanceKey: z.ZodNullable<z.ZodString>;
1326
+ instancePurpose: z.ZodNullable<z.ZodString>;
1327
+ question: z.ZodString;
1328
+ kind: z.ZodString;
1329
+ options: z.ZodArray<z.ZodString>;
1330
+ optionDetails: z.ZodArray<z.ZodString>;
1331
+ position: z.ZodNumber;
1332
+ standing: z.ZodEnum<typeof WorkbenchDossierEntryStanding>;
1333
+ optionsState: z.ZodEnum<typeof WorkbenchDossierEntryOptionsState>;
1334
+ value: z.ZodNullable<z.ZodString>;
1335
+ nonAnswerReason: z.ZodNullable<z.ZodString>;
1336
+ admittedNonAnswers: z.ZodArray<z.ZodEnum<typeof MetaWorkflow_ElicitationNonAnswer>>;
1337
+ answeredAt: z.ZodNullable<z.ZodDate>;
1338
+ answeredByRef: z.ZodNullable<z.ZodString>;
1339
+ shownOptionDetail: z.ZodNullable<z.ZodString>;
1340
+ playbookEligible: z.ZodBoolean;
1341
+ askedNow: z.ZodBoolean;
1342
+ affectsFamilies: z.ZodArray<z.ZodString>;
1343
+ subject: z.ZodEnum<typeof WorkbenchSpecificationArtifactConcern>;
1344
+ outOfDate: z.ZodBoolean;
1345
+ outOfDateStepRefs: z.ZodArray<z.ZodString>;
1346
+ sharedWithPlaybookRefs: z.ZodArray<z.ZodString>;
1347
+ askedInSimpleInterview: z.ZodBoolean;
1348
+ proposable: z.ZodBoolean;
1349
+ regulatedDomain: z.ZodBoolean;
1350
+ assumptionRationale: z.ZodNullable<z.ZodString>;
1351
+ interviewDepth: z.ZodNullable<z.ZodEnum<typeof ApplicationInterviewDepth>>;
1280
1352
  }, z.core.$strip>;
1281
1353
  export type Workbench_DossierEntry = z.infer<typeof Workbench_DossierEntry_Schema>;
1282
1354
  /** The dossier resource's one write verb. */
@@ -1326,7 +1398,6 @@ export declare const Workbench_DossierProposeOutcome_Schema: z.ZodObject<{
1326
1398
  rationale: z.ZodString;
1327
1399
  regulatedDomain: z.ZodBoolean;
1328
1400
  }, z.core.$strip>>;
1329
- /** Asked for, and nothing admissible came back — each with the last refusal. Ask these of the person. */
1330
1401
  unproposed: z.ZodArray<z.ZodObject<{
1331
1402
  questionRef: z.ZodString;
1332
1403
  reason: z.ZodString;
@@ -1342,19 +1413,24 @@ export declare const Workbench_DossierInterviewDepthOutcome_Schema: z.ZodObject<
1342
1413
  packageRelativePath: z.ZodString;
1343
1414
  }, z.core.$loose>;
1344
1415
  export type Workbench_DossierInterviewDepthOutcome = z.infer<typeof Workbench_DossierInterviewDepthOutcome_Schema>;
1416
+ /**
1417
+ * An answer to a dossier question: a VALUE, or (#3439) a NON-ANSWER with its reason — never both, and one of the two.
1418
+ * The exclusivity and the admission are decided by the operation against the ROW (`admittedNonAnswers`), not here: a
1419
+ * cross-field refinement would hide the one sentence that says what to change behind a generic schema error.
1420
+ */
1345
1421
  export declare const Workbench_DossierAnswerRequest_Schema: z.ZodObject<{
1346
- value: z.ZodString;
1422
+ value: z.ZodOptional<z.ZodString>;
1423
+ nonAnswer: z.ZodOptional<z.ZodEnum<typeof MetaWorkflow_ElicitationNonAnswer>>;
1424
+ reason: z.ZodOptional<z.ZodString>;
1347
1425
  assumed: z.ZodOptional<z.ZodBoolean>;
1348
1426
  assumptionRationale: z.ZodOptional<z.ZodString>;
1349
1427
  }, z.core.$strip>;
1350
1428
  export type Workbench_DossierAnswerRequest = z.infer<typeof Workbench_DossierAnswerRequest_Schema>;
1351
1429
  export declare const Workbench_DossierAnswerOutcome_Schema: z.ZodObject<{
1352
- /** The answer as STORED (canonical for a `confirm`). */
1353
- value: z.ZodString;
1430
+ value: z.ZodNullable<z.ZodString>;
1431
+ nonAnswer: z.ZodNullable<z.ZodEnum<typeof MetaWorkflow_ElicitationNonAnswer>>;
1354
1432
  answeredAt: z.ZodString;
1355
- /** The dossier file this landed in, package-relative. */
1356
1433
  packageRelativePath: z.ZodString;
1357
- /** The asking playbook's questions still unanswered after this one — empty means it can run. */
1358
1434
  unansweredQuestionRefs: z.ZodArray<z.ZodString>;
1359
1435
  }, z.core.$loose>;
1360
1436
  export type Workbench_DossierAnswerOutcome = z.infer<typeof Workbench_DossierAnswerOutcome_Schema>;
@@ -1394,16 +1470,62 @@ export declare enum WorkbenchCreationHomeLineKind {
1394
1470
  RUN_INTERRUPTED = "run-interrupted",
1395
1471
  /** A build dispatch finished or failed; `acceptable` says whether its writes wait to be committed. */
1396
1472
  DISPATCH_SETTLED = "dispatch-settled",
1473
+ /**
1474
+ * A re-run inside a lane — a repair of a GAP, a refresh — FAILED while the family's earlier landing still stands
1475
+ * (#3213): a NON-FATAL repair failure, whether the re-run was refused or the environment failed it. The landing it would have replaced is what its consumers read, and the lane
1476
+ * went on with them (e.g. a refused build-decompose repair: the plan on disk still dispatches). `playbookRef` is the
1477
+ * re-run's playbook, `subject` its failure; the target is the lane's run. `failed` stays false, because nothing the
1478
+ * creation built is lost; the refusal is shown so it can be repaired when it matters.
1479
+ */
1480
+ REPAIR_FAILED_LANDING_STANDS = "repair-failed-landing-stands",
1397
1481
  /**
1398
1482
  * The coding agent's account hit its usage limit, and the build dispatches nothing until it resets
1399
1483
  * (#2388). `subject` is when the build resumes (`08:11 Europe/Paris`); the target is the dispatch that met
1400
1484
  * the limit. Shown only while the limit holds, so it disappears once the build has resumed.
1401
1485
  */
1402
1486
  CODING_AGENT_USAGE_LIMITED = "coding-agent-usage-limited",
1487
+ /**
1488
+ * The coding agent's provider ACCOUNT refused its turn: no credits left, a spend or usage limit, billing (#3204).
1489
+ * Distinct from {@link CODING_AGENT_USAGE_LIMITED}: nothing resets on its own, a PERSON adds credits or raises the
1490
+ * limit. The build holds and asks again every thirty minutes, charging no attempt, so a person who fixes the account
1491
+ * while a drive waits loses nothing; an unattended drive stops on it. `subject` is the refusal in the providers'
1492
+ * sentence (`describeModelProviderAccountRefusal`); the target is the dispatch that met it. Shown while the hold lasts.
1493
+ */
1494
+ CODING_AGENT_ACCOUNT_REFUSED = "coding-agent-account-refused",
1495
+ /**
1496
+ * A coding run lost the network, and no coding turn is admitted until a probe of the agent's API answers along the
1497
+ * agent's own route (#3236, #3262). `at` is when the loss was met, `taskRef` the task whose run met it, `subject` the
1498
+ * route the probe takes (`api.anthropic.com via proxy proxy.corp:3128`), absent when no route is known. Shown only
1499
+ * while the hold lasts; what ends it is the probe answering, a turn started after the loss succeeding, or
1500
+ * `wildo build rearm <task> --reason environment`.
1501
+ */
1502
+ CODING_AGENT_CONNECTIVITY_LOST = "coding-agent-connectivity-lost",
1503
+ /**
1504
+ * A verification check's command cannot be executed (#3423): `wildo`, say, is not on the companion's PATH, so every
1505
+ * task's check would fail the same way, and no coding turn is admitted. `subject` is the command, `taskRef` the task
1506
+ * whose run met it, `at` when. Nothing lifts it on its own: a person puts the command on PATH, and the next admission
1507
+ * looks it up first (or `wildo build rearm <task> --reason environment` ends it). Shown while the hold lasts; an
1508
+ * unattended drive stops on it.
1509
+ */
1510
+ VERIFICATION_TOOL_UNAVAILABLE = "verification-tool-unavailable",
1511
+ /**
1512
+ * A person CLOSED a build task (`wildo build close`, #3224, #3227): done another way, or a derived follow-up declined.
1513
+ * `at` is when, `taskRef` the task, `subject` the reason they gave. Shown so a reader of the build's history sees that a
1514
+ * person, not a probe, said the task is done.
1515
+ */
1516
+ BUILD_TASK_CLOSED = "build-task-closed",
1403
1517
  /** A playbook run suspended on questions only the creator can answer. */
1404
1518
  CLARIFICATION = "clarification",
1405
1519
  /** A coding run parked on a question the agent could not answer alone. */
1406
1520
  PARKED_QUESTION = "parked-question",
1521
+ /**
1522
+ * An interview still waiting on the creator whose answer would date work the next unattended round could run
1523
+ * (#3361): a step reading the creator's stated facts, which an answer given later re-derives. The round withholds
1524
+ * that work (`findReadersDatedByWaitingInterviews`), so this line is what moves it, and an unattended drive stops on
1525
+ * it. `playbookRef` is the interview's playbook, `subject` the steps it holds (refs, comma-separated); the target is
1526
+ * the interview's playbook. Not shown for a quick interview's questions an unattended round assumes (#2129).
1527
+ */
1528
+ INTERVIEW_DATES_NEXT_WORK = "interview-dates-next-work",
1407
1529
  /** A governed document the creator asked for (a draft exists) still needing a fact only they can give. */
1408
1530
  GOVERNANCE_DOCUMENT = "governance-document",
1409
1531
  /** The next READY build task of the dispatch plan. */
@@ -1411,13 +1533,42 @@ export declare enum WorkbenchCreationHomeLineKind {
1411
1533
  /**
1412
1534
  * The plan can run NOTHING: every ready task is stuck, and `stuckReason` says what unblocks it.
1413
1535
  *
1414
- * ASKED rather than SUGGESTION, because every reason is the creator's move — committing what a
1415
- * finished run wrote under GUIDED, or, under the autonomy posture where the loop commits (#1534),
1416
- * resolving the path its accept refused or correcting a declaration no run can satisfy.
1536
+ * ASKED rather than SUGGESTION, because every reason it is shown for is the creator's move — correcting a
1537
+ * declaration no run can satisfy, re-arming a task that spent its attempts, approving a follow-up. (A run's work
1538
+ * awaiting a commit was one until #3514: a task lands from the working tree since #3204.)
1417
1539
  * Without it the plan simply falls silent: `CONTINUE_THE_PLAN` is derived from the next ready task,
1418
1540
  * and a stuck queue has none (#1451, #1463).
1419
1541
  */
1420
1542
  UNBLOCK_THE_PLAN = "unblock-the-plan",
1543
+ /**
1544
+ * Nothing in the plan can run and it is not finished, because a specifications module fails (#3258). `subject` names the
1545
+ * modules. ASKED because the remedy is fixing the module, and without this line such a plan reads as nothing at all: no
1546
+ * next task, not finished, and no stuck task to explain it.
1547
+ */
1548
+ SPECIFICATION_FAULT_HOLDS_THE_PLAN = "specification-fault-holds-the-plan",
1549
+ /**
1550
+ * A FOLLOW-UP task landed while its latest completed run still reports a requirement unmet (#2583): advisory, never a
1551
+ * reason the loop stops. `taskRef` is the follow-up, `subject` names each requirement and what the run said is
1552
+ * missing. The door is running it again on purpose: `wildo build run <ref> --despite-landed --reason operator-judgement`.
1553
+ */
1554
+ FOLLOW_UP_LANDED_WITH_GAP = "follow-up-landed-with-gap",
1555
+ /**
1556
+ * Files a build task's coding runs left UNCOMMITTED that no automatic door will commit (#3267): a failed run's file a
1557
+ * retry refused, or a file dirty at a retry's baseline with what earlier failed runs left, and no run of the task live.
1558
+ * ASKED, because only a person can settle it: `taskRef` is the task, `subject` names each file and the runs whose
1559
+ * record holds it. The doors are `wildo build accept <ref> --leftovers` (commit, under those runs) and the discard
1560
+ * command `wildo build tasks` prints per file. Derived from the write register and the tree, so it disappears once
1561
+ * each file is committed or discarded.
1562
+ */
1563
+ RUN_LEFTOVER_UNCOMMITTED = "run-leftover-uncommitted",
1564
+ /**
1565
+ * A build task LANDED and something its landing does not cover is unfinished (#3285): a billing catalogue committed
1566
+ * while the backend does not enable billing, so nothing serves it. Advisory, a mark beside the landing and never a
1567
+ * reason anything stops. `taskRef` is the task, `subject` names each setting still to set and the file that holds it;
1568
+ * `wildo build tasks` prints what each needs first. Derived from the committed tree, so it disappears once the setting
1569
+ * is committed.
1570
+ */
1571
+ LANDED_WITH_ADVISORY = "landed-with-advisory",
1421
1572
  /** An eligible playbook whose output family is missing. */
1422
1573
  PRODUCE_MISSING = "produce-missing",
1423
1574
  /** An eligible playbook whose output is stale — derived before one of its inputs last changed. */
@@ -1433,19 +1584,19 @@ export declare enum WorkbenchCreationHomeLineKind {
1433
1584
  * companion serves unparseable by an older workbench.
1434
1585
  */
1435
1586
  export declare const Workbench_CreationHomeLine_Schema: z.ZodObject<{
1436
- workbenchCreationHomeLineId: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
1437
- section: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodEnum<typeof WorkbenchCreationHomeSection>>>;
1438
- kind: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodEnum<typeof WorkbenchCreationHomeLineKind>>>;
1439
- at: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodNullable<z.ZodDate>>;
1440
- playbookRef: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodNullable<z.ZodString>>;
1441
- taskRef: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodNullable<z.ZodString>>;
1442
- subject: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodNullable<z.ZodString>>;
1443
- failed: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodBoolean>;
1444
- acceptable: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodBoolean>;
1445
- needsAnswers: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodBoolean>;
1446
- stuckReason: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodNullable<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodEnum<typeof Workbench_BuildTaskStuckReason>>>>;
1447
- targetResourceType: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
1448
- targetResourceId: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
1587
+ workbenchCreationHomeLineId: z.ZodString;
1588
+ section: z.ZodEnum<typeof WorkbenchCreationHomeSection>;
1589
+ kind: z.ZodEnum<typeof WorkbenchCreationHomeLineKind>;
1590
+ at: z.ZodNullable<z.ZodDate>;
1591
+ playbookRef: z.ZodNullable<z.ZodString>;
1592
+ taskRef: z.ZodNullable<z.ZodString>;
1593
+ subject: z.ZodNullable<z.ZodString>;
1594
+ failed: z.ZodBoolean;
1595
+ acceptable: z.ZodBoolean;
1596
+ needsAnswers: z.ZodBoolean;
1597
+ stuckReason: z.ZodNullable<z.ZodEnum<typeof Workbench_BuildTaskStuckReason>>;
1598
+ targetResourceType: z.ZodString;
1599
+ targetResourceId: z.ZodString;
1449
1600
  }, z.core.$strip>;
1450
1601
  export type Workbench_CreationHomeLine = z.infer<typeof Workbench_CreationHomeLine_Schema>;
1451
1602
  /**
@@ -1481,18 +1632,18 @@ export declare enum WorkbenchCreationOutcomeStatus {
1481
1632
  * well.
1482
1633
  */
1483
1634
  export declare const Workbench_CreationOutcome_Schema: z.ZodObject<{
1484
- workbenchCreationOutcomeId: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
1485
- outcome: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodEnum<typeof WorkbenchCreationOutcome>>>;
1486
- status: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodEnum<typeof WorkbenchCreationOutcomeStatus>>>;
1487
- position: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodNumber>;
1488
- familiesTotal: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodNumber>;
1489
- familiesLanded: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodNumber>;
1490
- familiesInvalid: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodNumber>;
1491
- familiesMissing: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodNumber>;
1492
- familiesStale: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodNumber>;
1493
- tasksTotal: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodNullable<z.ZodNumber>>;
1494
- tasksLanded: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodNullable<z.ZodNumber>>;
1495
- unavailableRuntimes: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodNullable<z.ZodArray<z.ZodString>>>;
1635
+ workbenchCreationOutcomeId: z.ZodString;
1636
+ outcome: z.ZodEnum<typeof WorkbenchCreationOutcome>;
1637
+ status: z.ZodEnum<typeof WorkbenchCreationOutcomeStatus>;
1638
+ position: z.ZodNumber;
1639
+ familiesTotal: z.ZodNumber;
1640
+ familiesLanded: z.ZodNumber;
1641
+ familiesInvalid: z.ZodNumber;
1642
+ familiesMissing: z.ZodNumber;
1643
+ familiesStale: z.ZodNumber;
1644
+ tasksTotal: z.ZodNullable<z.ZodNumber>;
1645
+ tasksLanded: z.ZodNullable<z.ZodNumber>;
1646
+ unavailableRuntimes: z.ZodNullable<z.ZodArray<z.ZodString>>;
1496
1647
  }, z.core.$strip>;
1497
1648
  export type Workbench_CreationOutcome = z.infer<typeof Workbench_CreationOutcome_Schema>;
1498
1649
  /** An operation that takes nothing. */
@@ -1508,6 +1659,7 @@ export declare const Workbench_RunWriteFileDiff_Schema: z.ZodObject<{
1508
1659
  existedBefore: z.ZodBoolean;
1509
1660
  diverged: z.ZodBoolean;
1510
1661
  diff: z.ZodString;
1662
+ binary: z.ZodOptional<z.ZodLiteral<true>>;
1511
1663
  }, z.core.$strip>;
1512
1664
  export type Workbench_RunWriteFileDiff = z.infer<typeof Workbench_RunWriteFileDiff_Schema>;
1513
1665
  export declare const Workbench_RunWriteDiff_Schema: z.ZodObject<{
@@ -1519,6 +1671,7 @@ export declare const Workbench_RunWriteDiff_Schema: z.ZodObject<{
1519
1671
  existedBefore: z.ZodBoolean;
1520
1672
  diverged: z.ZodBoolean;
1521
1673
  diff: z.ZodString;
1674
+ binary: z.ZodOptional<z.ZodLiteral<true>>;
1522
1675
  }, z.core.$strip>>;
1523
1676
  }, z.core.$strip>;
1524
1677
  export type Workbench_RunWriteDiff = z.infer<typeof Workbench_RunWriteDiff_Schema>;
@@ -1634,7 +1787,8 @@ export type Workbench_CodingRunCancelOutcome = z.infer<typeof Workbench_CodingRu
1634
1787
  * The governed document's one verb: LAND the facts a person established for it as the
1635
1788
  * `document-facts-authored` family. The row is the document; the body carries the governance scope,
1636
1789
  * the answers and, for a reviewed fact, the review — a per-question verb with a bare value could
1637
- * carry none of that, which is why the question resource has no write verb of its own.
1790
+ * carry none of that, which is why ANSWERING stays on the document. Deferring one question carries
1791
+ * only a reason and asserts nothing, so it is the question's own verb (`WorkbenchGovernanceQuestions_Operations`).
1638
1792
  */
1639
1793
  export declare enum WorkbenchGovernanceDocuments_Operations {
1640
1794
  LAND_FACTS = "land_facts"
@@ -1661,6 +1815,31 @@ export declare const Workbench_GovernanceFactsLandingRequest_Schema: z.ZodObject
1661
1815
  dryRun: z.ZodOptional<z.ZodBoolean>;
1662
1816
  }, z.core.$strip>;
1663
1817
  export type Workbench_GovernanceFactsLandingRequest = z.infer<typeof Workbench_GovernanceFactsLandingRequest_Schema>;
1818
+ /**
1819
+ * The governance question's one verb (#3439): DEFER it — the person says the fact concerns this application and is not
1820
+ * decided yet, and why. A dossier write (`deferredDocumentFacts`), never a fact declaration, so the fact stays absent
1821
+ * and every clause resting on it stays owed. It names no governance scope and records no review, which is why it can be
1822
+ * a per-question verb while answering cannot (see {@link WorkbenchGovernanceDocuments_Operations}).
1823
+ */
1824
+ export declare enum WorkbenchGovernanceQuestions_Operations {
1825
+ DEFER = "defer"
1826
+ }
1827
+ /**
1828
+ * Whether a governance question in this standing may be DEFERRED (#3439): one still needed, and one already deferred
1829
+ * (re-deferring rewords the reason). A fact the product establishes is read, never deferred; and an ANSWERED fact is
1830
+ * not either, because a landed declaration wins over a deferral of the same fact (`deriveOpenGovernanceQuestions`), so
1831
+ * the deferral would change nothing anyone sees. The ONE predicate the operation refuses by and the workbench offers by.
1832
+ */
1833
+ export declare function governanceQuestionAdmitsDeferral(standing: WorkbenchDossierEntryStanding): boolean;
1834
+ export declare const Workbench_GovernanceQuestionDeferRequest_Schema: z.ZodObject<{
1835
+ reason: z.ZodString;
1836
+ }, z.core.$strip>;
1837
+ export type Workbench_GovernanceQuestionDeferRequest = z.infer<typeof Workbench_GovernanceQuestionDeferRequest_Schema>;
1838
+ export declare const Workbench_GovernanceQuestionDeferOutcome_Schema: z.ZodObject<{
1839
+ factRef: z.ZodString;
1840
+ packageRelativePath: z.ZodString;
1841
+ }, z.core.$loose>;
1842
+ export type Workbench_GovernanceQuestionDeferOutcome = z.infer<typeof Workbench_GovernanceQuestionDeferOutcome_Schema>;
1664
1843
  export declare const Workbench_GovernanceFactsLandingOutcome_Schema: z.ZodObject<{
1665
1844
  family: z.ZodString;
1666
1845
  packageRelativePath: z.ZodString;
@@ -1766,17 +1945,17 @@ export declare function splitApplicationSecretRowId(rowId: string): {
1766
1945
  * secrets section. Names and standings only: a value never enters this row, in either direction of the wire.
1767
1946
  */
1768
1947
  export declare const Workbench_ApplicationSecret_Schema: z.ZodObject<{
1769
- workbenchApplicationSecretId: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
1770
- environmentName: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
1771
- envVarName: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
1772
- standing: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodEnum<typeof ApplicationSecretStanding>>>;
1773
- kind: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodEnum<typeof ApplicationSecretKind>>>;
1774
- ownerRef: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodNullable<z.ZodString>>;
1948
+ workbenchApplicationSecretId: z.ZodString;
1949
+ environmentName: z.ZodString;
1950
+ envVarName: z.ZodString;
1951
+ standing: z.ZodEnum<typeof ApplicationSecretStanding>;
1952
+ kind: z.ZodEnum<typeof ApplicationSecretKind>;
1953
+ ownerRef: z.ZodNullable<z.ZodString>;
1775
1954
  description: z.ZodNullable<z.ZodString>;
1776
- capabilities: z.ZodArray<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodEnum<typeof EngineCapability>>>;
1955
+ capabilities: z.ZodArray<z.ZodEnum<typeof EngineCapability>>;
1777
1956
  runtimes: z.ZodArray<z.ZodString>;
1778
1957
  creationEssential: z.ZodBoolean;
1779
- remoteLevel: z.ZodNullable<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodEnum<typeof ApplicationSecretRemoteLevel>>>;
1958
+ remoteLevel: z.ZodNullable<z.ZodEnum<typeof ApplicationSecretRemoteLevel>>;
1780
1959
  }, z.core.$strip>;
1781
1960
  export type Workbench_ApplicationSecret = z.infer<typeof Workbench_ApplicationSecret_Schema>;
1782
1961
  /** The secret row's two verbs. Both run `wildo secrets set/unset`, which is the only writer of a secret. */
@@ -1790,7 +1969,7 @@ export declare enum WorkbenchApplicationSecrets_Operations {
1790
1969
  UNSET = "unset"
1791
1970
  }
1792
1971
  export declare const Workbench_ApplicationSecretSetRequest_Schema: z.ZodObject<{
1793
- value: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
1972
+ value: z.ZodString;
1794
1973
  }, z.core.$strip>;
1795
1974
  export type Workbench_ApplicationSecretSetRequest = z.infer<typeof Workbench_ApplicationSecretSetRequest_Schema>;
1796
1975
  /**
@@ -1804,7 +1983,7 @@ export type Workbench_ApplicationSecretSetRequest = z.infer<typeof Workbench_App
1804
1983
  */
1805
1984
  export declare const Workbench_ApplicationSecretChangeOutcome_Schema: z.ZodObject<{
1806
1985
  envVarName: z.ZodString;
1807
- kind: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodEnum<typeof ApplicationSecretKind>>;
1986
+ kind: z.ZodEnum<typeof ApplicationSecretKind>;
1808
1987
  envName: z.ZodString;
1809
1988
  restartSignalledRuntimes: z.ZodArray<z.ZodString>;
1810
1989
  envFilesRegenerated: z.ZodBoolean;