wicked-crew-api-types 0.132.0 → 0.134.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/index.d.ts +65 -2
  2. package/package.json +1 -1
package/index.d.ts CHANGED
@@ -291,7 +291,8 @@ export interface HealthCapabilities {
291
291
 
292
292
  /** One `GET /health.warnings[]` entry (additive; wicked-core#411 / wicked-crew#497). */
293
293
  export interface HealthWarning {
294
- /** `state-home.unregistered` today; open for later kinds. */
294
+ /** `state-home.unregistered` today; open for later kinds (e.g. `seat.work_default`,
295
+ * api-types 0.133.0 — see `DiagnosticsSeatGovernance.roleFindings`). */
295
296
  kind: string;
296
297
  severity: 'warning' | 'error';
297
298
  message: string;
@@ -1604,6 +1605,34 @@ export interface GateInfo {
1604
1605
  * work this gate asks about. `null` when the unit carries none (no gate evaluated it yet, or an
1605
1606
  * older engine); ABSENT on an older daemon. */
1606
1607
  assurance?: AssuranceReceipt | null;
1608
+ /**
1609
+ * (api-types 0.134.0) On a gate whose unit no judge could rule on (`denial.source:
1610
+ * 'judge_unavailable'`): whether its JUDGE CAN BE RE-RUN NOW — `{approve: true, action:
1611
+ * 'rejudge'}` ({@link GateDecision.action}) — and which seats the engine's judge selection would
1612
+ * draw from. ABSENT on every other gate, on an older daemon, and on an engine without the
1613
+ * readiness read (then `rejudge` is not offered).
1614
+ */
1615
+ rejudge?: RejudgeOffer;
1616
+ }
1617
+
1618
+ /**
1619
+ * (api-types 0.134.0) Whether a `judge_unavailable` gate's judge can be re-run now. `available` —
1620
+ * the engine's judge selection names at least one seat (`eligible`, rotation order, fallback judges
1621
+ * last): `rejudge` re-arms the judge on the same work (the step does not run again; deny-dominates
1622
+ * still folds the result). Otherwise `missing` says which of the run's seats cannot judge this work,
1623
+ * and why — what to fix before re-running it.
1624
+ */
1625
+ export interface RejudgeOffer {
1626
+ available: boolean;
1627
+ eligible: string[];
1628
+ missing: RejudgeMissingSeat[];
1629
+ }
1630
+
1631
+ /** One run seat that cannot judge the gated work now, and why, in the engine's words (`built this
1632
+ * work`, `benched for this run: quota_exhausted …`, `not usable now: signed out`). */
1633
+ export interface RejudgeMissingSeat {
1634
+ seat: string;
1635
+ reason: string;
1607
1636
  }
1608
1637
 
1609
1638
  /**
@@ -1668,6 +1697,15 @@ export interface GateDecision {
1668
1697
  | 'accept_partial'
1669
1698
  | 'accept_suggestion'
1670
1699
  | 'amend_intent'
1700
+ /** (api-types 0.134.0) RE-RUN THE JUDGE of a `judge_unavailable` gate, with `approve: true` and
1701
+ * nothing else: the engine re-arms the judge on the same work with the run's roster as it
1702
+ * stands now (never the work's authors or the pinned validator's author), records
1703
+ * {@link JudgeRerunRequestedEvent} and re-dispatches the unit WITHOUT running its seat; the
1704
+ * ordinary fold judges the result, so a REJECT, a failed floor or another seatless judge denies
1705
+ * again. Refused (409, gate left open) at any other gate and when no judge seat is eligible —
1706
+ * {@link GateInfo.rejudge} says beforehand. Unlike a plain approve there, it is never the
1707
+ * operator's own judgment. */
1708
+ | 'rejudge'
1671
1709
  /** (core#820) A `consent` gate's choice from its dry-run plan (`awaitingHuman.choices`), with
1672
1710
  * `approve: true`: `consent:worker` (the default), `consent:operator`, …; `reject` declines. */
1673
1711
  | `consent:${string}`;
@@ -2229,7 +2267,8 @@ export interface DataUsedEvent {
2229
2267
  * names the error. Before core-ts 0.7.46 the error was dropped and the gate could approve.
2230
2268
  * - `judge_unavailable` — the gate's judge did not run (every eligible judge seat failed, or, since
2231
2269
  * core-ts 0.7.46 / EX-02, the run requires a judge and none distinct from the creator existed).
2232
- * A HOLD: sign a judge seat in, then approve to re-run.
2270
+ * A HOLD: approve = the operator's own judgment (labelled "judged by operator"); once a judge seat
2271
+ * can rule, `rejudge` re-runs the judge (api-types 0.134.0, {@link GateInfo.rejudge}).
2233
2272
  * Open-ended (`string & {}`) so a newer engine's source parses in an older studio.
2234
2273
  */
2235
2274
  export type UnitDenialSource =
@@ -3179,6 +3218,22 @@ export type QeAcceptanceDecidedEvent = {
3179
3218
  qe: QeAcceptanceDecision;
3180
3219
  };
3181
3220
 
3221
+ /** (api-types 0.134.0) The operator re-armed the judge of a `judge_unavailable` gate
3222
+ * ({@link GateDecision.action} `rejudge`): attempt `attempt` re-reads attempt `fromAttempt`'s
3223
+ * captured output with a judge drawn from `seats` (eligible when it was armed); the step's seat does
3224
+ * not run. Emitted before `resumed`; that attempt's `gateEvaluated` says what the judge ruled.
3225
+ * `type` alias on purpose. */
3226
+ export type JudgeRerunRequestedEvent = {
3227
+ type: 'judgeRerunRequested';
3228
+ session: string;
3229
+ ord: number;
3230
+ attempt: number;
3231
+ fromAttempt: number;
3232
+ seats: string[];
3233
+ previousReason: string;
3234
+ by: string;
3235
+ };
3236
+
3182
3237
  /** The gate-evidence events (wicked-core F-036/F-039, extended by wicked-core#431 — api-types 0.33.0
3183
3238
  * added {@link WorktreeRestoredEvent}, {@link DeliverLiftEvaluatedEvent} and
3184
3239
  * {@link EvaluatorToolCallDeniedEvent}) as a discriminated union for consumers that narrow on `type`;
@@ -7562,6 +7617,14 @@ export interface DiagnosticsSeatGovernance {
7562
7617
  * found on PATH; `null` = none, so floor seats resting on it run advisory. */
7563
7618
  hostBoundary: string | null;
7564
7619
  seats: DiagnosticsSeatGovernanceEntry[];
7620
+ /**
7621
+ * (api-types 0.133.0) Seat-role findings read from the overlay above — the same objects
7622
+ * `GET /health.warnings[]` carries. Today one kind: `seat.work_default`, one per CUSTOM seat the
7623
+ * overlay writes `enabled_for_council = false` with no `seat_eligible_for_work` key, which since
7624
+ * crew 0.15.2 (#916) is eligible for work by the engine default. Built-in seats never appear; an
7625
+ * explicit `seat_eligible_for_work` (true or false) silences it. ABSENT on an older daemon.
7626
+ */
7627
+ roleFindings?: HealthWarning[];
7565
7628
  }
7566
7629
 
7567
7630
  export interface DiagnosticsSeatGovernanceEntry {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "wicked-crew-api-types",
3
- "version": "0.132.0",
3
+ "version": "0.134.0",
4
4
  "description": "The wire contract of the wicked-crew daemon's /api/v1 REST surface and /ws CoreEvent frames \u2014 types only, zero runtime",
5
5
  "type": "module",
6
6
  "types": "./index.d.ts",