@michaelrwalker/stagehand 0.8.0 → 0.9.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.
package/README.md CHANGED
@@ -303,6 +303,26 @@ per placement.
303
303
  `when` returning false marks the step **skipped** — its rollback never runs.
304
304
  Phases accept `when` too, which skips all their steps.
305
305
 
306
+ ### Branching: `addBranch`
307
+
308
+ `when` skips a step, which leaves later steps without what it would have
309
+ produced. `addBranch` chooses between two arms that return the same shape, so
310
+ `ctx` is typed correctly whichever one runs — the natural home for an override
311
+ flag:
312
+
313
+ ```ts
314
+ .addBranch({
315
+ name: "resolve commit",
316
+ condition: ({ flags }) => Boolean(flags.sha),
317
+ onTrue: ({ flags }) => ({ sha: flags.sha as string }),
318
+ onFalse: async ({ input }) => ({ sha: await git.head(input.service) }),
319
+ })
320
+ ```
321
+
322
+ `onTrue` fixes the output type and `onFalse` must match it. A branch takes
323
+ `description`, `retry` and `timeoutMs`, but no `rollback`, `cache` or `clean`:
324
+ cache the phase it lives in instead.
325
+
306
326
  ## Caching
307
327
 
308
328
  A phase or a step can reuse what it produced on an earlier run. Point it at a
@@ -612,7 +632,7 @@ fragment someone else's script also mounts.
612
632
 
613
633
  ## Examples
614
634
 
615
- Eleven runnable scripts, each aimed at a different part of the API. Most take
635
+ Twelve runnable scripts, each aimed at a different part of the API. Most take
616
636
  a flag to switch between the happy path and the interesting one.
617
637
 
618
638
  | | |
@@ -627,6 +647,7 @@ a flag to switch between the happy path and the interesting one.
627
647
  | [`cache.ts`](examples/cache.ts) | A cached `Build` phase and a cached step. Run it twice to watch the second run skip both. `-- --fresh` to rebuild and overwrite |
628
648
  | [`invalidate.ts`](examples/invalidate.ts) | `context.cache` from inside a step: correct an entry without refetching, drop one that is beyond saving, and watch the shape guard catch an entry written before the code changed. `-- --patch`, `-- --drop`, `-- --drift` |
629
649
  | [`routine.ts`](examples/routine.ts) | One reusable fragment in [`routines/channel.ts`](examples/routines/channel.ts), mounted by a sync script and, months later, a report that maps its own input onto the routine's — and gets the pull from cache. `-- --multi` mounts it twice, one storefront and API key per mount |
650
+ | [`branch.ts`](examples/branch.ts) | `addBranch` with an override flag: both arms hand later steps the same `sha`. `-- --sha abc1234` takes the override arm |
630
651
  | [`validate.ts`](examples/validate.ts) | The smallest thing that runs: two steps, `rollback: "none"` |
631
652
 
632
653
  ```
package/dist/index.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  export { Script, script, stepFor, routineFor, type CachedPhaseOptions, type ClosedPhase, type Commit, type MountInput, type MountOptions, type Mounted, type OpenPhase, type Routine, type RunOptions, } from "./script.js";
2
2
  export { fileStore, memoryStore } from "./cache.js";
3
3
  export { CacheShapeError, DuplicateNameError, MissingFlagValueError, PromptCancelledError, PromptUnavailableError, RollbackFailedError, SchemaValidationError, ScriptAbortedError, StepDefinitionError, StepFailedError, StepTimeoutError, UnknownFlagError, isAbort, } from "./errors.js";
4
- export type { Awaitable, BaseFlagOptions, BooleanFlagOptions, CacheHandle, CacheMode, CacheOptions, CacheSource, CacheStore, CachedEntry, CleanField, Cleaned, ConfirmPromptOptions, LogPlacement, Merge, MultiSelectPromptOptions, PhaseOptions, PhaseStatus, Prettify, ProgressHandle, PromptChoice, PromptHandle, RetryPolicy, RollbackContext, RollbackData, RollbackReport, RunResult, RunStatus, ScriptOptions, SelectPromptOptions, SlotValue, StaleContext, StepContext, StepDef, InheritedKeyStepDef, StepReport, StepStatus, StringFlagOptions, TaskHandle, TaskListHandle, TextPromptOptions, UnknownFlags, UnknownSlots, WithStepFor, } from "./types.js";
4
+ export type { Awaitable, BaseFlagOptions, BooleanFlagOptions, BranchDef, CacheHandle, CacheMode, CacheOptions, CacheSource, CacheStore, CachedEntry, CleanField, Cleaned, ConfirmPromptOptions, LogPlacement, Merge, MultiSelectPromptOptions, PhaseOptions, PhaseStatus, Prettify, ProgressHandle, PromptChoice, PromptHandle, RetryPolicy, RollbackContext, RollbackData, RollbackReport, RunResult, RunStatus, ScriptOptions, SelectPromptOptions, SlotValue, StaleContext, StepContext, StepDef, InheritedKeyStepDef, StepReport, StepStatus, StringFlagOptions, TaskHandle, TaskListHandle, TextPromptOptions, UnknownFlags, UnknownSlots, WithStepFor, } from "./types.js";
5
5
  export { formatDuration } from "./state.js";
6
6
  export { setColorEnabled, isColorEnabled } from "./ui/ansi.js";
7
7
  export { palette, symbols } from "./ui/theme.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,MAAM,EACN,MAAM,EACN,OAAO,EACP,UAAU,EACV,KAAK,kBAAkB,EACvB,KAAK,WAAW,EAChB,KAAK,MAAM,EACX,KAAK,UAAU,EACf,KAAK,YAAY,EACjB,KAAK,OAAO,EACZ,KAAK,SAAS,EACd,KAAK,OAAO,EACZ,KAAK,UAAU,GAChB,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAEpD,OAAO,EACL,eAAe,EACf,kBAAkB,EAClB,qBAAqB,EACrB,oBAAoB,EACpB,sBAAsB,EACtB,mBAAmB,EACnB,qBAAqB,EACrB,kBAAkB,EAClB,mBAAmB,EACnB,eAAe,EACf,gBAAgB,EAChB,gBAAgB,EAChB,OAAO,GACR,MAAM,aAAa,CAAC;AAErB,YAAY,EACV,SAAS,EACT,eAAe,EACf,kBAAkB,EAClB,WAAW,EACX,SAAS,EACT,YAAY,EACZ,WAAW,EACX,UAAU,EACV,WAAW,EACX,UAAU,EACV,OAAO,EACP,oBAAoB,EACpB,YAAY,EACZ,KAAK,EACL,wBAAwB,EACxB,YAAY,EACZ,WAAW,EACX,QAAQ,EACR,cAAc,EACd,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,eAAe,EACf,YAAY,EACZ,cAAc,EACd,SAAS,EACT,SAAS,EACT,aAAa,EACb,mBAAmB,EACnB,SAAS,EACT,YAAY,EACZ,WAAW,EACX,OAAO,EACP,mBAAmB,EACnB,UAAU,EACV,UAAU,EACV,iBAAiB,EACjB,UAAU,EACV,cAAc,EACd,iBAAiB,EACjB,YAAY,EACZ,YAAY,EACZ,WAAW,GACZ,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC/D,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,MAAM,EACN,MAAM,EACN,OAAO,EACP,UAAU,EACV,KAAK,kBAAkB,EACvB,KAAK,WAAW,EAChB,KAAK,MAAM,EACX,KAAK,UAAU,EACf,KAAK,YAAY,EACjB,KAAK,OAAO,EACZ,KAAK,SAAS,EACd,KAAK,OAAO,EACZ,KAAK,UAAU,GAChB,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAEpD,OAAO,EACL,eAAe,EACf,kBAAkB,EAClB,qBAAqB,EACrB,oBAAoB,EACpB,sBAAsB,EACtB,mBAAmB,EACnB,qBAAqB,EACrB,kBAAkB,EAClB,mBAAmB,EACnB,eAAe,EACf,gBAAgB,EAChB,gBAAgB,EAChB,OAAO,GACR,MAAM,aAAa,CAAC;AAErB,YAAY,EACV,SAAS,EACT,eAAe,EACf,kBAAkB,EAClB,SAAS,EACT,WAAW,EACX,SAAS,EACT,YAAY,EACZ,WAAW,EACX,UAAU,EACV,WAAW,EACX,UAAU,EACV,OAAO,EACP,oBAAoB,EACpB,YAAY,EACZ,KAAK,EACL,wBAAwB,EACxB,YAAY,EACZ,WAAW,EACX,QAAQ,EACR,cAAc,EACd,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,eAAe,EACf,YAAY,EACZ,cAAc,EACd,SAAS,EACT,SAAS,EACT,aAAa,EACb,mBAAmB,EACnB,SAAS,EACT,YAAY,EACZ,WAAW,EACX,OAAO,EACP,mBAAmB,EACnB,UAAU,EACV,UAAU,EACV,iBAAiB,EACjB,UAAU,EACV,cAAc,EACd,iBAAiB,EACjB,YAAY,EACZ,YAAY,EACZ,WAAW,GACZ,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC/D,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC"}
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,MAAM,EACN,MAAM,EACN,OAAO,EACP,UAAU,GAUX,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAEpD,OAAO,EACL,eAAe,EACf,kBAAkB,EAClB,qBAAqB,EACrB,oBAAoB,EACpB,sBAAsB,EACtB,mBAAmB,EACnB,qBAAqB,EACrB,kBAAkB,EAClB,mBAAmB,EACnB,eAAe,EACf,gBAAgB,EAChB,gBAAgB,EAChB,OAAO,GACR,MAAM,aAAa,CAAC;AAgDrB,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC/D,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,MAAM,EACN,MAAM,EACN,OAAO,EACP,UAAU,GAUX,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAEpD,OAAO,EACL,eAAe,EACf,kBAAkB,EAClB,qBAAqB,EACrB,oBAAoB,EACpB,sBAAsB,EACtB,mBAAmB,EACnB,qBAAqB,EACrB,kBAAkB,EAClB,mBAAmB,EACnB,eAAe,EACf,gBAAgB,EAChB,gBAAgB,EAChB,OAAO,GACR,MAAM,aAAa,CAAC;AAiDrB,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC/D,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC"}
package/dist/script.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import type { StandardSchemaV1 } from "@standard-schema/spec";
2
- import type { Awaitable, BooleanFlagOptions, CacheMode, CacheSource, CleanField, Cleaned, Merge, PhaseOptions, RunResult, ScriptOptions, SlotValue, StepDef, StringFlagOptions, UnknownFlags, UnknownSlots, InheritedKeyStepDef } from "./types.js";
2
+ import type { Awaitable, BranchDef, BooleanFlagOptions, CacheMode, CacheSource, CleanField, Cleaned, Merge, PhaseOptions, RunResult, ScriptOptions, SlotValue, StepDef, StringFlagOptions, UnknownFlags, UnknownSlots, InheritedKeyStepDef } from "./types.js";
3
3
  /**
4
4
  * Keys for the phantom markers on {@link Script} and {@link Routine}. Exported
5
5
  * only because declaration emit has to name them; there is no runtime value
@@ -303,6 +303,32 @@ export declare class Script<In = void, Ctx extends object = {}, Reserved extends
303
303
  schema: Open["schema"];
304
304
  delta: Cleaned<Merge<Open["delta"], Out>, CleanKeys[number]>;
305
305
  }, Flags>;
306
+ /**
307
+ * Append a step that runs `onTrue` or `onFalse` depending on `condition`.
308
+ * Both arms return the same shape, so the context is typed identically for
309
+ * every later step whichever one ran — the way to model an override flag.
310
+ *
311
+ * ```ts
312
+ * .addBranch({
313
+ * name: "resolve commit",
314
+ * condition: ({ flags }) => Boolean(flags.sha),
315
+ * onTrue: ({ flags }) => ({ sha: flags.sha as string }),
316
+ * onFalse: async ({ input }) => ({ sha: await git.head(input.service) }),
317
+ * })
318
+ * ```
319
+ *
320
+ * It is an ordinary step once added: a failing `condition` or arm fails the
321
+ * step, and `retry` / `timeoutMs` cover the whole thing. There is no
322
+ * `rollback`, `cache` or `clean` — cache the enclosing phase instead.
323
+ */
324
+ addBranch<Out extends object | void, const Name extends string = string>(def: Omit<BranchDef<In, Ctx, Out, Slots, Flags>, "name"> & {
325
+ name: Name;
326
+ }): Script<In, Merge<Ctx, Out>, Reserved, Slots, {
327
+ name: Open["name"];
328
+ phase: Open["phase"];
329
+ schema: Open["schema"];
330
+ delta: Merge<Open["delta"], Out>;
331
+ }, Flags>;
306
332
  /**
307
333
  * Splice a reusable fragment into this script. Its phases land here in
308
334
  * order, and everything it produced is merged into the context — so the
@@ -1 +1 @@
1
- {"version":3,"file":"script.d.ts","sourceRoot":"","sources":["../src/script.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAqB9D,OAAO,KAAK,EACV,SAAS,EACT,kBAAkB,EAClB,SAAS,EACT,WAAW,EACX,UAAU,EACV,OAAO,EACP,KAAK,EACL,YAAY,EAIZ,SAAS,EACT,aAAa,EACb,SAAS,EACT,OAAO,EACP,iBAAiB,EACjB,YAAY,EACZ,YAAY,EAEZ,mBAAmB,EACpB,MAAM,YAAY,CAAC;AAsCpB;;;;GAIG;AACH,MAAM,CAAC,OAAO,CAAC,MAAM,QAAQ,EAAE,OAAO,MAAM,CAAC;AAC7C,MAAM,CAAC,OAAO,CAAC,MAAM,QAAQ,EAAE,OAAO,MAAM,CAAC;AAE7C;;;;;;;GAOG;AACH,MAAM,WAAW,OAAO,CACtB,EAAE,EACF,GAAG,SAAS,MAAM,EAClB,GAAG,SAAS,MAAM,EAClB,QAAQ,SAAS,WAAW,EAK5B,KAAK,GAAG,YAAY;IAEpB;;;;OAIG;IACH,QAAQ,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE;QAAE,KAAK,EAAE,EAAE,CAAC;QAAC,GAAG,EAAE,GAAG,CAAA;KAAE,KAAK,IAAI,CAAC;IAChE,2EAA2E;IAC3E,QAAQ,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IAClC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAED;;;;;GAKG;AACH,MAAM,MAAM,OAAO,CAAC,EAAE,SAAS,MAAM,GAAG,SAAS,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,GAC7E;KAAG,CAAC,IAAI,MAAM,KAAK,IAAI,GAAG,EAAE,MAAM,CAAC,GAAG,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC;CAAE,GAC3D,KAAK,CAAC;AAeV,MAAM,WAAW,YAAY;IAC3B;;;;OAIG;IACH,EAAE,CAAC,EAAE,MAAM,CAAC;CACb;AAED;;;;;GAKG;AACH,MAAM,MAAM,UAAU,CAAC,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,GAAG,YAAY,IACvD,KAAK,GACL,CAAC,CAAC,OAAO,EAAE;IAAE,KAAK,EAAE,EAAE,CAAC;IAAC,GAAG,EAAE,GAAG,CAAC;IAAC,KAAK,EAAE,KAAK,CAAA;CAAE,KAAK,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;AAO3E;;;;;;;GAOG;AACH,MAAM,WAAW,SAAS;IACxB,2EAA2E;IAC3E,IAAI,EAAE,MAAM,GAAG,KAAK,CAAC;IACrB;;;OAGG;IACH,KAAK,EAAE,MAAM,CAAC;IACd,uEAAuE;IACvE,MAAM,EAAE,OAAO,CAAC;IAChB,uDAAuD;IACvD,KAAK,EAAE,MAAM,CAAC;CACf;AAED,kEAAkE;AAClE,MAAM,MAAM,WAAW,GAAG;IAAE,IAAI,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,EAAE,CAAA;CAAE,CAAC;AAGrF;;;;;;;;;GASG;AACH,MAAM,MAAM,MAAM,CAAC,KAAK,EAAE,IAAI,SAAS,SAAS,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,GAC9E,KAAK,GACL,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;AAE3E,kFAAkF;AAClF,MAAM,MAAM,kBAAkB,CAAC,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,GAAG,YAAY,IAAI,IAAI,CACzE,YAAY,CAAC,EAAE,EAAE,GAAG,EAAE,KAAK,CAAC,EAC5B,OAAO,CACR,GAAG;IACF,KAAK,EAAE,WAAW,CAAC,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;CAC3C,CAAC;AAEF,MAAM,WAAW,UAAU;IACzB,uCAAuC;IACvC,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB;;;;OAIG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB;;;;OAIG;IACH,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAC1B;AAMD;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,qBAAa,MAAM,CACjB,EAAE,GAAG,IAAI,EACT,GAAG,SAAS,MAAM,GAAG,EAAE,EACvB,QAAQ,SAAS,WAAW,GAAG,KAAK,EACpC,KAAK,GAAG,EAAE,EACV,IAAI,SAAS,SAAS,GAAG,WAAW,EACpC,KAAK,SAAS,MAAM,GAAG,EAAE;IAEzB;;;;;;OAMG;IACH,SAAiB,CAAC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,KAAK,IAAI,CAAC;IAEjD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAgB;IACxC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAyB;IACpD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAqB;IAC9C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAqB;IAChD,gFAAgF;IAChF,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,OAAO,CAA+B;IAC9C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAiB;IAC1C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAqB;IAC/C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAqB;IAC/C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAqB;gBAEpC,OAAO,GAAE,aAAa,GAAG,MAAW;IAShD;;;;;;;;;;;;;;;;;;;OAmBG;IACH,WAAW,CAAC,OAAO,EACjB,MAAM,EAAE,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,GACzC,MAAM,CAAC,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,EAAE,EAAE,WAAW,EAAE,KAAK,CAAC;IAKzD,sEAAsE;YACxD,aAAa;IAO3B;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACH,UAAU,CAAC,KAAK,CAAC,IAAI,SAAS,MAAM,EAClC,OAAO,EAAE,kBAAkB,CAAC,IAAI,CAAC,GAChC,MAAM,CAAC,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,GAAG,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACxE,UAAU,CAAC,KAAK,CAAC,IAAI,SAAS,MAAM,EAAE,KAAK,CAAC,OAAO,SAAS,MAAM,GAAG,SAAS,GAAG,SAAS,EACxF,OAAO,EAAE,iBAAiB,CAAC,IAAI,EAAE,OAAO,CAAC,GACxC,MAAM,CACP,EAAE,EACF,GAAG,EACH,QAAQ,EACR,KAAK,EACL,IAAI,EACJ,KAAK,GAAG,MAAM,CAAC,IAAI,EAAE,OAAO,SAAS,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC,CAC3E;IAmBD;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAezB,8EAA8E;IAC9E,OAAO,CAAC,YAAY;IAKpB;;;;OAIG;IACH,QAAQ,CAAC,KAAK,CAAC,IAAI,SAAS,MAAM,EAAE,KAAK,GAAG,OAAO,EACjD,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,kBAAkB,CAAC,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,CAAC,GACjD,MAAM,CACP,EAAE,EACF,GAAG,EACH,QAAQ,EACR,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,EACnB;QAAE,IAAI,EAAE,IAAI,CAAC;QAAC,KAAK,EAAE,IAAI,CAAC;QAAC,MAAM,EAAE,KAAK,CAAC;QAAC,KAAK,EAAE,EAAE,CAAA;KAAE,EACrD,KAAK,CACN;IACD,+DAA+D;IAC/D,QAAQ,CAAC,KAAK,CAAC,IAAI,SAAS,MAAM,EAChC,IAAI,EAAE,IAAI,EACV,OAAO,CAAC,EAAE,YAAY,CAAC,EAAE,EAAE,GAAG,EAAE,KAAK,CAAC,GACrC,MAAM,CACP,EAAE,EACF,GAAG,EACH,QAAQ,EACR,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,EAEnB;QAAE,IAAI,EAAE,KAAK,CAAC;QAAC,KAAK,EAAE,IAAI,CAAC;QAAC,MAAM,EAAE,OAAO,CAAC;QAAC,KAAK,EAAE,EAAE,CAAA;KAAE,EACxD,KAAK,CACN;IACD,6EAA6E;IAC7E,QAAQ,CACN,IAAI,SAAS,MAAM,EACnB,YAAY,SAAS,WAAW,EAChC,SAAS,EACT,QAAQ,SAAS,SAAS,EAC1B,SAAS,SAAS,MAAM,EAExB,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,CACL,MAAM,EAAE,MAAM,CAAC,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,WAAW,EAAE,KAAK,CAAC,KACvE,MAAM,CAAC,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,CAAC,GAClE,MAAM,CAAC,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,CAAC;IACjE,QAAQ,CACN,IAAI,SAAS,MAAM,EACnB,YAAY,SAAS,WAAW,EAChC,SAAS,EACT,QAAQ,SAAS,SAAS,EAC1B,SAAS,SAAS,MAAM,EAExB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,YAAY,CAAC,EAAE,EAAE,GAAG,EAAE,KAAK,CAAC,EACrC,KAAK,EAAE,CACL,MAAM,EAAE,MAAM,CAAC,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,WAAW,EAAE,KAAK,CAAC,KACvE,MAAM,CAAC,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,CAAC,GAClE,MAAM,CAAC,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,CAAC;IAuBjE;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACH,yEAAyE;IACzE,OAAO,CACL,GAAG,SAAS,MAAM,GAAG,IAAI,GAAG,IAAI,EAChC,KAAK,CAAC,IAAI,SAAS,MAAM,GAAG,MAAM,EAClC,KAAK,CAAC,YAAY,SAAS,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,GAAG,SAAS,EAAE,EAC/D,KAAK,CAAC,SAAS,SAAS,SAAS,WAAW,EAAE,GAAG,SAAS,EAAE,EAE5D,GAAG,EAAE,IAAI,CAAC,mBAAmB,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,YAAY,EAAE,KAAK,EAAE,KAAK,CAAC,EAAE,MAAM,CAAC,GAC9E,UAAU,CAAC,GAAG,EAAE,QAAQ,EAAE,SAAS,CAAC,GAAG;QAAE,IAAI,EAAE,IAAI,CAAC;QAAC,KAAK,EAAE,WAAW,CAAC,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,CAAC,CAAA;KAAE,GACnG,MAAM,CACP,EAAE,EACF,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC,EAC3C,QAAQ,GAAG,YAAY,CAAC,MAAM,CAAC,EAC/B,KAAK,GAAG,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE,EAAE,GAAG,CAAC,EAChD;QACE,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QACnB,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QACrB,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QACvB,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,GAAG,CAAC,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;KAC9D,EACD,KAAK,CACN;IACD,wEAAwE;IACxE,OAAO,CACL,GAAG,SAAS,MAAM,GAAG,IAAI,GAAG,IAAI,EAChC,KAAK,CAAC,YAAY,SAAS,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,GAAG,SAAS,EAAE,EAC/D,KAAK,CAAC,SAAS,SAAS,SAAS,WAAW,EAAE,GAAG,SAAS,EAAE,EAE5D,GAAG,EAAE,mBAAmB,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,YAAY,EAAE,KAAK,EAAE,KAAK,CAAC,GAChE,UAAU,CAAC,GAAG,EAAE,QAAQ,EAAE,SAAS,CAAC,GACrC,MAAM,CACP,EAAE,EACF,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC,EAC3C,QAAQ,GAAG,YAAY,CAAC,MAAM,CAAC,EAC/B,KAAK,EACL;QACE,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QACnB,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QACrB,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QACvB,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,GAAG,CAAC,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;KAC9D,EACD,KAAK,CACN;IACD,iDAAiD;IACjD,OAAO,CACL,GAAG,SAAS,MAAM,GAAG,IAAI,EACzB,KAAK,CAAC,IAAI,SAAS,MAAM,EACzB,KAAK,CAAC,YAAY,SAAS,SAAS,WAAW,EAAE,GAAG,SAAS,EAAE,EAC/D,KAAK,CAAC,SAAS,SAAS,SAAS,WAAW,EAAE,GAAG,SAAS,EAAE,EAE5D,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,YAAY,EAAE,KAAK,EAAE,KAAK,CAAC,EAAE,MAAM,CAAC,GAClE,UAAU,CAAC,GAAG,EAAE,QAAQ,EAAE,SAAS,CAAC,GAAG;QAAE,IAAI,EAAE,IAAI,CAAC;QAAC,KAAK,EAAE,WAAW,CAAC,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,CAAC,CAAA;KAAE,GACnG,MAAM,CACP,EAAE,EACF,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC,EAC3C,QAAQ,GAAG,YAAY,CAAC,MAAM,CAAC,EAC/B,KAAK,GAAG,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE,EAAE,GAAG,CAAC,EAChD;QACE,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QACnB,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QACrB,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QACvB,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,GAAG,CAAC,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;KAC9D,EACD,KAAK,CACN;IACD,gDAAgD;IAChD,OAAO,CACL,GAAG,SAAS,MAAM,GAAG,IAAI,EACzB,KAAK,CAAC,YAAY,SAAS,SAAS,WAAW,EAAE,GAAG,SAAS,EAAE,EAC/D,KAAK,CAAC,SAAS,SAAS,SAAS,WAAW,EAAE,GAAG,SAAS,EAAE,EAE5D,GAAG,EAAE,OAAO,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,YAAY,EAAE,KAAK,EAAE,KAAK,CAAC,GAAG,UAAU,CAAC,GAAG,EAAE,QAAQ,EAAE,SAAS,CAAC,GAC5F,MAAM,CACP,EAAE,EACF,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC,EAC3C,QAAQ,GAAG,YAAY,CAAC,MAAM,CAAC,EAC/B,KAAK,EAGL;QACE,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QACnB,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QACrB,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QACvB,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,GAAG,CAAC,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;KAC9D,EACD,KAAK,CACN;IAiCD;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACH,GAAG,CACD,KAAK,EACL,GAAG,SAAS,MAAM,EAClB,CAAC,SAAS,WAAW,EACrB,EAAE,EACF,KAAK,CAAC,EAAE,SAAS,MAAM,GAAG,SAAS,GAAG,SAAS,EAE/C,OAAO,EAAE,OAAO,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,EACxC,OAAO,EAAE;QAAE,EAAE,CAAC,EAAE,EAAE,CAAC;QAAC,KAAK,EAAE,UAAU,CAAC,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,CAAC,CAAA;KAAE,GAC7D,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,QAAQ,GAAG,CAAC,EAAE,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,OAAO,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,WAAW,EAAE,KAAK,CAAC;IACvG,GAAG,CACD,KAAK,EACL,GAAG,SAAS,MAAM,EAClB,CAAC,SAAS,WAAW,EACrB,EAAE,EACF,EAAE,SAAS,SAAS,EAIpB,EAAE,SAAS,MAAM,EACjB,KAAK,CAAC,EAAE,SAAS,MAAM,GAAG,SAAS,GAAG,SAAS,EAE/C,MAAM,EAAE,MAAM,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EACzC,OAAO,EAAE;QAAE,EAAE,CAAC,EAAE,EAAE,CAAC;QAAC,KAAK,EAAE,UAAU,CAAC,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,CAAC,CAAA;KAAE,GAC7D,MAAM,CACP,EAAE,EACF,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,EACf,QAAQ,GAAG,CAAC,EACZ,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,OAAO,CAAC,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EACjD,WAAW,EACX,KAAK,CACN;IAKD,GAAG,CACD,GAAG,SAAS,MAAM,EAClB,CAAC,SAAS,WAAW,EACrB,EAAE,EACF,EAAE,SAAS,SAAS,EACpB,EAAE,SAAS,MAAM,EACjB,KAAK,CAAC,EAAE,SAAS,MAAM,GAAG,SAAS,GAAG,SAAS,EAE/C,MAAM,EAAE,MAAM,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EACtC,OAAO,CAAC,EAAE;QAAE,EAAE,CAAC,EAAE,EAAE,CAAA;KAAE,GACpB,MAAM,CACP,EAAE,EACF,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,EACf,QAAQ,GAAG,CAAC,EACZ,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,OAAO,CAAC,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EACjD,WAAW,EACX,KAAK,CACN;IACD,GAAG,CACD,GAAG,SAAS,MAAM,EAClB,CAAC,SAAS,WAAW,EACrB,EAAE,EACF,KAAK,CAAC,EAAE,SAAS,MAAM,GAAG,SAAS,GAAG,SAAS,EAE/C,OAAO,EAAE,OAAO,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,EACrC,OAAO,CAAC,EAAE;QAAE,EAAE,CAAC,EAAE,EAAE,CAAA;KAAE,GACpB,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,QAAQ,GAAG,CAAC,EAAE,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,OAAO,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,WAAW,EAAE,KAAK,CAAC;IAsCvG,sEAAsE;IACtE,OAAO,IAAI,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IAOpD,OAAO,CAAC,YAAY;IAiBpB;;;;;OAKG;IACH,OAAO,CAAC,cAAc;IAmBhB,GAAG,CAAC,KAAK,EAAE,EAAE,EAAE,UAAU,GAAE,UAAe,GAAG,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IAwU1E,kEAAkE;YACpD,WAAW;IAgEzB,mDAAmD;YACrC,MAAM;IA2DpB;;;OAGG;IACH,OAAO,CAAC,kBAAkB;CA+B3B;AAwFD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,OAAO,CACrB,EAAE,EACF,GAAG,SAAS,MAAM,GAAG,EAAE,EACvB,KAAK,GAAG,YAAY,EACpB,KAAK,GAAG,YAAY;KAQlB,GAAG,SAAS,MAAM,GAAG,IAAI,eACnB,YAAY,SAAS,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,qBAE5C,mBAAmB,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,YAAY,EAAE,KAAK,EAAE,KAAK,CAAC,GACjE,OAAO,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,YAAY,EAAE,KAAK,EAAE,KAAK,CAAC;KAElD,GAAG,SAAS,MAAM,GAAG,IAAI,QACnB,YAAY,SAAS,SAAS,WAAW,EAAE,qBAE5C,OAAO,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,YAAY,EAAE,KAAK,EAAE,KAAK,CAAC,GACrD,OAAO,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,YAAY,EAAE,KAAK,EAAE,KAAK,CAAC;EAKrD;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,UAAU,CAAC,EAAE,EAAE,GAAG,SAAS,MAAM,GAAG,EAAE,MAC5C,GAAG,SAAS,MAAM,EAAE,CAAC,SAAS,WAAW,EAAE,CAAC,EAAE,CAAC,SAAS,SAAS,EACvE,MAAM,MAAM,EAOZ,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE,WAAW,EAAE,YAAY,CAAC,KAAK,MAAM,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KACjG,OAAO,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAS1C;AAED,qDAAqD;AACrD,wBAAgB,MAAM,CAAC,EAAE,GAAG,IAAI,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,MAAM,GAAG,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,CAElF"}
1
+ {"version":3,"file":"script.d.ts","sourceRoot":"","sources":["../src/script.ts"],"names":[],"mappings":"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"}
package/dist/script.js CHANGED
@@ -169,6 +169,31 @@ export class Script {
169
169
  phase.steps.push(step);
170
170
  return this;
171
171
  }
172
+ /**
173
+ * Append a step that runs `onTrue` or `onFalse` depending on `condition`.
174
+ * Both arms return the same shape, so the context is typed identically for
175
+ * every later step whichever one ran — the way to model an override flag.
176
+ *
177
+ * ```ts
178
+ * .addBranch({
179
+ * name: "resolve commit",
180
+ * condition: ({ flags }) => Boolean(flags.sha),
181
+ * onTrue: ({ flags }) => ({ sha: flags.sha as string }),
182
+ * onFalse: async ({ input }) => ({ sha: await git.head(input.service) }),
183
+ * })
184
+ * ```
185
+ *
186
+ * It is an ordinary step once added: a failing `condition` or arm fails the
187
+ * step, and `retry` / `timeoutMs` cover the whole thing. There is no
188
+ * `rollback`, `cache` or `clean` — cache the enclosing phase instead.
189
+ */
190
+ addBranch(def) {
191
+ const { condition, onTrue, onFalse, ...rest } = def;
192
+ return this.addStep({
193
+ ...rest,
194
+ handler: async (context) => (await condition(context)) ? onTrue(context) : onFalse(context),
195
+ });
196
+ }
172
197
  use(source, options = {}) {
173
198
  const body = bodies.get(source);
174
199
  if (!body) {
@@ -1 +1 @@
1
- {"version":3,"file":"script.js","sourceRoot":"","sources":["../src/script.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"script.js","sourceRoot":"","sources":["../src/script.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -19,7 +19,7 @@ export type Prettify<T> = {
19
19
  * A plain intersection is the one shape that costs nothing: TypeScript
20
20
  * flattens `A & B & C` into a single list of leaves and stops. A mapped type —
21
21
  * `Omit`, `Pick`, `Prettify` — does not flatten, so a chain of them has to be
22
- * walked one level per link. Hence the three-way split: shadowing a key needs
22
+ * walked one level per link. Hence, the three-way split: shadowing a key needs
23
23
  * `Omit` and pays for it, and the overwhelmingly common case of a step adding
24
24
  * fresh keys does not.
25
25
  *
@@ -450,6 +450,29 @@ export interface StepDef<In, Ctx, Out, RollbackKeys extends readonly PropertyKey
450
450
  retry?: RetryPolicy;
451
451
  timeoutMs?: number;
452
452
  }
453
+ /**
454
+ * A step that does one of two jobs and hands back the same shape either way.
455
+ *
456
+ * `onTrue` is the source of truth for `Out`; `onFalse` has to return something
457
+ * assignable to it, so every later step sees one `ctx` type whichever arm ran.
458
+ * That is the difference from `when`, which skips a step and leaves nothing
459
+ * behind for the steps that depended on it.
460
+ *
461
+ * Deliberately small: no `rollback`, no `cache`, no `clean`. Cache the phase
462
+ * the branch sits in, and `clean` in a later step.
463
+ */
464
+ export interface BranchDef<In, Ctx, Out, Slots = UnknownSlots, Flags = UnknownFlags> {
465
+ name: string;
466
+ description?: string;
467
+ /** Picks the arm. May be async; evaluated once per attempt. */
468
+ condition: (context: StepContext<In, Ctx, Slots, Flags>) => Awaitable<boolean>;
469
+ /** Runs when `condition` resolves truthy. Its return type fixes `Out`. */
470
+ onTrue: (context: StepContext<In, Ctx, Slots, Flags>) => Awaitable<Out>;
471
+ /** Runs otherwise. Must return the same shape as `onTrue`. */
472
+ onFalse: (context: StepContext<In, Ctx, Slots, Flags>) => Awaitable<NoInfer<Out>>;
473
+ retry?: RetryPolicy;
474
+ timeoutMs?: number;
475
+ }
453
476
  /**
454
477
  * The same step definition as {@link StepDef}, for the case where every
455
478
  * `rollbackKeys` entry names a key the incoming context *already* has —
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAE9D,MAAM,MAAM,SAAS,CAAC,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;AAE1C,yEAAyE;AACzE,MAAM,MAAM,QAAQ,CAAC,CAAC,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAE,GAAG,EAAE,CAAC;AAExD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,MAAM,KAAK,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,GAC9C,GAAG,GACH,CAAC,GAAG,CAAC,SAAS,CAAC,SAAS,CAAC,GACvB,GAAG,GACH,CAAC,OAAO,CAAC,MAAM,GAAG,EAAE,MAAM,GAAG,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,GAC7C,GAAG,GAAG,GAAG,GACT,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,CAAC,GAAG,GAAG,CAAC;AAEnC;;;;;GAKG;AACH,MAAM,MAAM,OAAO,CAAC,GAAG,EAAE,IAAI,SAAS,WAAW,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GACvE,GAAG,GACH,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;AAEpB;;;;GAIG;AACH,MAAM,MAAM,YAAY,CAAC,GAAG,EAAE,IAAI,SAAS,SAAS,WAAW,EAAE,IAAI,IAAI,CACvE,GAAG,EACH,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,CAAC,CACjC,CAAC;AAEF;;;;;;;;;GASG;AACH,MAAM,MAAM,UAAU,CACpB,GAAG,EACH,QAAQ,SAAS,WAAW,EAC5B,IAAI,SAAS,SAAS,WAAW,EAAE,IACjC;IACF;;;;OAIG;IACH,KAAK,CAAC,EAAE;SACL,CAAC,IAAI,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,SAAS,OAAO,CAAC,MAAM,GAAG,EAAE,QAAQ,CAAC,GAC3D,IAAI,CAAC,CAAC,CAAC,GACP,OAAO,CAAC,MAAM,GAAG,EAAE,QAAQ,CAAC;KACjC,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,UAAU,GAClB,SAAS,GACT,SAAS,GACT,SAAS,GACT,QAAQ,GACR,SAAS,GACT,QAAQ,GACR,cAAc,GACd,aAAa,GACb,iBAAiB,CAAC;AAEtB,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,GAAG,QAAQ,GAAG,SAAS,GAAG,QAAQ,CAAC;AAE9F,MAAM,MAAM,SAAS,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,GAAG,QAAQ,GAAG,SAAS,CAAC;AAEjF;;;;;;;;;;;;;;;GAeG;AACH,MAAM,MAAM,YAAY,GAAG,YAAY,GAAG,MAAM,GAAG,QAAQ,CAAC;AAM5D,6DAA6D;AAC7D,MAAM,WAAW,WAAW;IAC1B,6DAA6D;IAC7D,KAAK,EAAE,OAAO,CAAC;IACf,iEAAiE;IACjE,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,UAAU;IACzB,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC,WAAW,GAAG,SAAS,CAAC,CAAC;IACvD,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;IACzD,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;CACtC;AAED,sCAAsC;AACtC,MAAM,WAAW,YAAY,CAAC,EAAE,EAAE,GAAG,EAAE,KAAK,GAAG,OAAO;IACpD,gFAAgF;IAChF,KAAK,EAAE,OAAO,CAAC;IACf,KAAK,EAAE,EAAE,CAAC;IACV,8EAA8E;IAC9E,GAAG,EAAE,GAAG,CAAC;IACT,kEAAkE;IAClE,KAAK,EAAE,KAAK,CAAC;IACb,oDAAoD;IACpD,OAAO,EAAE,MAAM,CAAC;IAChB,gFAAgF;IAChF,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;;;;GAMG;AACH,MAAM,WAAW,YAAY,CAAC,EAAE,GAAG,OAAO,EAAE,GAAG,GAAG,OAAO,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK,GAAG,OAAO;IACzF,KAAK,EAAE,UAAU,CAAC;IAClB;;;;OAIG;IACH,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,EAAE,GAAG,EAAE,KAAK,CAAC,KAAK,SAAS,CAAC,OAAO,CAAC,CAAC;IACtE;;;;;OAKG;IACH,MAAM,CAAC,EAAE,gBAAgB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;CAC3C;AAED,MAAM,MAAM,WAAW,CAAC,EAAE,GAAG,OAAO,EAAE,GAAG,GAAG,OAAO,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK,GAAG,OAAO,IACjF,UAAU,GACV,YAAY,CAAC,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AAExC;;;;;;;;GAQG;AACH,MAAM,MAAM,SAAS,CAAC,MAAM,EAAE,KAAK,IAAI,OAAO,SAAS,MAAM,GAAG,KAAK,GAAG,MAAM,CAAC;AAE/E;;;;;;;;;GASG;AACH,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAEnD;;;;;GAKG;AACH,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAMnD,MAAM,WAAW,eAAe,CAAC,IAAI,SAAS,MAAM,GAAG,MAAM;IAC3D,oFAAoF;IACpF,IAAI,EAAE,IAAI,CAAC;IACX,qEAAqE;IACrE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,iCAAiC;IACjC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,kBAAkB,CAAC,IAAI,SAAS,MAAM,GAAG,MAAM,CAAE,SAAQ,eAAe,CAAC,IAAI,CAAC;IAC7F,OAAO,EAAE,IAAI,CAAC;IACd,wEAAwE;IACxE,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,iBAAiB,CAChC,IAAI,SAAS,MAAM,GAAG,MAAM,EAC5B,OAAO,SAAS,MAAM,GAAG,SAAS,GAAG,SAAS,CAC9C,SAAQ,eAAe,CAAC,IAAI,CAAC;IAC7B,OAAO,CAAC,EAAE,KAAK,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,WAAW,CAAC,KAAK;IAChC;;;;;;;;;OASG;IACH,IAAI,CAAC,CAAC,SAAS,MAAM,KAAK,GAAG,MAAM,EACjC,IAAI,EAAE,CAAC,EACP,OAAO,CAAC,EAAE;QAAE,GAAG,CAAC,EAAE,OAAO,CAAA;KAAE,GAC1B,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC;IACjC;;;;;;;;OAQG;IACH,KAAK,CAAC,CAAC,SAAS,MAAM,KAAK,GAAG,MAAM,EAClC,IAAI,EAAE,CAAC,EACP,KAAK,EAAE,OAAO,EACd,OAAO,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,OAAO,CAAA;KAAE,GAC9B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,wDAAwD;IACxD,KAAK,CAAC,IAAI,EAAE,MAAM,KAAK,GAAG,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACjD,sEAAsE;IACtE,KAAK,CAAC,IAAI,EAAE,MAAM,KAAK,GAAG,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;CAChE;AAED;;;;;;;GAOG;AACH,MAAM,MAAM,SAAS,GAAG,IAAI,GAAG,KAAK,GAAG,SAAS,GAAG,WAAW,CAAC;AAM/D,MAAM,WAAW,cAAc;IAC7B,6DAA6D;IAC7D,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5C,mCAAmC;IACnC,SAAS,CAAC,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,qDAAqD;IACrD,IAAI,IAAI,IAAI,CAAC;IACb,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,UAAU;IACzB,4DAA4D;IAC5D,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,gCAAgC;IAChC,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,OAAO,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B;AAED,MAAM,WAAW,cAAc,CAAC,CAAC,SAAS,MAAM;IAC9C,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC;IACtC,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,UAAU,CAAC;CACzB;AAED,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,uFAAuF;IACvF,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kFAAkF;IAClF,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,SAAS,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IACvD,sFAAsF;IACtF,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,YAAY,CAAC,KAAK;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,KAAK,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,mBAAmB,CAAC,KAAK;IACxC,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,SAAS,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;IACxC,OAAO,CAAC,EAAE,KAAK,CAAC;CACjB;AAED,MAAM,WAAW,wBAAwB,CAAC,KAAK;IAC7C,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,SAAS,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;IACxC,OAAO,CAAC,EAAE,SAAS,KAAK,EAAE,CAAC;IAC3B,4DAA4D;IAC5D,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,0DAA0D;IAC1D,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,YAAY;IAC3B,IAAI,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAClD,OAAO,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACzD,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,mBAAmB,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;IACnE,WAAW,CAAC,KAAK,EAAE,OAAO,EAAE,wBAAwB,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;CAChF;AAED,0EAA0E;AAC1E,MAAM,WAAW,WAAW,CAAC,EAAE,EAAE,GAAG,EAAE,KAAK,GAAG,YAAY,EAAE,KAAK,GAAG,YAAY;IAC9E,yCAAyC;IACzC,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC;IACnB;;;;;;OAMG;IACH,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC;IAC5B,+DAA+D;IAC/D,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAC7B,2DAA2D;IAC3D,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB,6HAA6H;IAC7H,GAAG,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAE/B,wEAAwE;IACxE,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAE9B;;;;;OAKG;IACH,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAE5B,0CAA0C;IAC1C,QAAQ,CAAC,OAAO,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,cAAc,CAAC;IAErF,6DAA6D;IAC7D,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU,CAAC;IAEhC,gEAAgE;IAChE,KAAK,CAAC,KAAK,CAAC,CAAC,SAAS,SAAS,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;IAE/E;;;OAGG;IACH,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC;IAEnC;;;OAGG;IACH,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC;IAE9B;;;;OAIG;IACH,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;CACvB;AAED,MAAM,WAAW,eAAe,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,GAAG,YAAY,EAAE,KAAK,GAAG,YAAY;IACvF,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC;IACnB;;;OAGG;IACH,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC;IAClB,iDAAiD;IACjD,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC;IACrB,2CAA2C;IAC3C,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAC7B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB,yEAAyE;IACzE,GAAG,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,4EAA4E;IAC5E,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,QAAQ,CAAC,OAAO,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,cAAc,CAAC;IAErF,uEAAuE;IACvE,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC;IAEnC,sEAAsE;IACtE,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;CACvB;AAMD,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,6EAA6E;IAC7E,OAAO,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,OAAO,EAAE,MAAM,KAAK,MAAM,CAAC,CAAC;IACjD,2DAA2D;IAC3D,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC;CACxD;AAED,MAAM,WAAW,OAAO,CACtB,EAAE,EACF,GAAG,EACH,GAAG,EACH,YAAY,SAAS,SAAS,WAAW,EAAE,GAAG,SAAS,EAAE,EACzD,KAAK,GAAG,YAAY,EACpB,KAAK,GAAG,YAAY;IAEpB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;OAGG;IACH,OAAO,EAAE,CAAC,OAAO,EAAE,WAAW,CAAC,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,SAAS,CAAC,GAAG,CAAC,CAAC;IACzE;;;;;;;;OAQG;IACH,YAAY,CAAC,EAAE,YAAY,GAAG,SAAS,CAAC,MAAM,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC;IACjE;;;OAGG;IACH,QAAQ,CAAC,EAAE,CACT,OAAO,EAAE,eAAe,CACtB,EAAE,EACF,QAAQ,CAAC,YAAY,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,YAAY,CAAC,CAAC,EACrD,GAAG,EACH,KAAK,EACL,KAAK,CACN,KACE,SAAS,CAAC,IAAI,CAAC,CAAC;IACrB,iEAAiE;IACjE,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE;QAAE,KAAK,EAAE,EAAE,CAAC;QAAC,GAAG,EAAE,GAAG,CAAC;QAAC,KAAK,EAAE,KAAK,CAAA;KAAE,KAAK,SAAS,CAAC,OAAO,CAAC,CAAC;IAC9E;;;;;;;;;;OAUG;IACH,KAAK,CAAC,EAAE,WAAW,CAAC,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;IAC7C,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,MAAM,WAAW,mBAAmB,CAClC,EAAE,EACF,GAAG,EACH,GAAG,EACH,YAAY,SAAS,SAAS,WAAW,EAAE,GAAG,SAAS,EAAE,EACzD,KAAK,GAAG,YAAY,EACpB,KAAK,GAAG,YAAY;IAEpB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,mCAAmC;IACnC,OAAO,EAAE,CAAC,OAAO,EAAE,WAAW,CAAC,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,SAAS,CAAC,GAAG,CAAC,CAAC;IACzE;;;OAGG;IACH,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,oCAAoC;IACpC,QAAQ,CAAC,EAAE,CACT,OAAO,EAAE,eAAe,CACtB,EAAE,EACF,QAAQ,CAAC,YAAY,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,YAAY,CAAC,CAAC,EACrD,GAAG,EACH,KAAK,EACL,KAAK,CACN,KACE,SAAS,CAAC,IAAI,CAAC,CAAC;IACrB,gCAAgC;IAChC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE;QAAE,KAAK,EAAE,EAAE,CAAC;QAAC,GAAG,EAAE,GAAG,CAAC;QAAC,KAAK,EAAE,KAAK,CAAA;KAAE,KAAK,SAAS,CAAC,OAAO,CAAC,CAAC;IAC9E,iCAAiC;IACjC,KAAK,CAAC,EAAE,WAAW,CAAC,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;IAC7C,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AACH,MAAM,MAAM,WAAW,CAKrB,IAAI,SAAS;IAAE,OAAO,EAAE,CAAC,OAAO,EAAE,KAAK,KAAK,OAAO,CAAA;CAAE,EACrD,IAAI,SAAS,MAAM,GAAG,EAAE,IACtB,IAAI,SAAS;IAAE,OAAO,EAAE,CAAC,OAAO,EAAE,KAAK,KAAK,MAAM,GAAG,CAAA;CAAE,GACvD,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,GACzB,KAAK,CAAC;AAEV,MAAM,WAAW,YAAY,CAAC,EAAE,GAAG,OAAO,EAAE,GAAG,GAAG,OAAO,EAAE,KAAK,GAAG,OAAO;IACxE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,6DAA6D;IAC7D,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE;QAAE,KAAK,EAAE,EAAE,CAAC;QAAC,GAAG,EAAE,GAAG,CAAC;QAAC,KAAK,EAAE,KAAK,CAAA;KAAE,KAAK,SAAS,CAAC,OAAO,CAAC,CAAC;IAC9E;;;;;;;;;;;;;;;;;;OAkBG;IACH,KAAK,CAAC,EAAE,WAAW,CAAC,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;CAC9C;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;OAGG;IACH,QAAQ,CAAC,EAAE,KAAK,GAAG,OAAO,GAAG,MAAM,CAAC;IACpC,iEAAiE;IACjE,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,4EAA4E;IAC5E,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,2BAA2B;IAC3B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,gDAAgD;IAChD,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,gFAAgF;IAChF,YAAY,CAAC,EAAE,YAAY,CAAC;CAC7B;AAMD,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,UAAU,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,OAAO,CAAC;IACZ,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,MAAM,SAAS,CAAC,GAAG,IACrB;IACE,EAAE,EAAE,IAAI,CAAC;IACT,MAAM,EAAE,SAAS,CAAC;IAClB,GAAG,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,UAAU,EAAE,CAAC;CACrB,GACD;IACE,EAAE,EAAE,KAAK,CAAC;IACV,MAAM,EAAE,QAAQ,GAAG,SAAS,CAAC;IAC7B,KAAK,EAAE,OAAO,CAAC;IACf,QAAQ,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IACjD,uEAAuE;IACvE,GAAG,EAAE,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,UAAU,EAAE,CAAC;IACpB,SAAS,EAAE,cAAc,EAAE,CAAC;CAC7B,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@michaelrwalker/stagehand",
3
- "version": "0.8.0",
3
+ "version": "0.9.0",
4
4
  "description": "Fully typesafe saga-style script framework with modern terminal visuals",
5
5
  "homepage": "https://michaelrwalker.netlify.app/stagehand",
6
6
  "type": "module",
@@ -0,0 +1,144 @@
1
+ ---
2
+ name: 'branching-steps'
3
+ description: >
4
+ Covers `addBranch` — a step that runs `onTrue` or `onFalse` depending on `condition`, with both
5
+ arms required to return the same shape so `ctx` stays accurately typed whichever one ran. Load this
6
+ for "an override flag changes how a value is produced but later steps need it either way," "do X or
7
+ Y and keep the context typed," or when `when` skipped a step and a later step crashed on a missing
8
+ `ctx` key.
9
+ metadata:
10
+ type: 'core'
11
+ library: 'stagehand'
12
+ library_version: '0.8.0'
13
+ sources:
14
+ - 'miaklwalker/stagehand:docs/guides/phases-and-steps.md'
15
+ - 'miaklwalker/stagehand:docs/reference/script.md'
16
+ - 'miaklwalker/stagehand:src/script.ts'
17
+ - 'miaklwalker/stagehand:test/branch.test.ts'
18
+ ---
19
+
20
+ # Stagehand — Branching Steps
21
+
22
+ `addBranch` is a step with an if/else inside it. `condition` picks the arm, `onTrue` / `onFalse` do the work, and both return the same shape — so every later step sees one `ctx` type, no matter which arm ran. Use it instead of `when` whenever later steps depend on what the step produces.
23
+
24
+ ## Setup
25
+
26
+ ```ts
27
+ import { Script } from "@michaelrwalker/stagehand";
28
+
29
+ const result = await new Script<{ service: string }>({ name: "deploy" })
30
+ .defineFlag({ name: "sha" })
31
+ .addPhase("Resolve")
32
+ .addBranch({
33
+ name: "resolve commit",
34
+ condition: ({ flags }) => Boolean(flags.sha),
35
+ onTrue: ({ flags }) => ({ sha: flags.sha as string }),
36
+ onFalse: async ({ input }) => ({ sha: await git.head(input.service) }),
37
+ })
38
+ .addStep({
39
+ name: "build",
40
+ handler: ({ ctx }) => ({ image: `app:${ctx.sha}` }), // ctx.sha: string
41
+ })
42
+ .run({ service: "checkout-api" }, { argv: ["--sha", "abc1234"] });
43
+ ```
44
+
45
+ ## Core Patterns
46
+
47
+ ### Everything a handler gets, in all three functions
48
+
49
+ `condition`, `onTrue` and `onFalse` each receive the normal step context — `input`, `ctx`, `flags`, `status`, `note`, `log`, `prompt`, `signal`. `condition` may be async and runs once per attempt; only the chosen arm executes.
50
+
51
+ ```ts
52
+ .addBranch({
53
+ name: "pick target",
54
+ condition: async ({ ctx }) => await isReachable(ctx.host),
55
+ onTrue: ({ ctx }) => ({ target: ctx.host }),
56
+ onFalse: async ({ prompt }) => ({ target: await prompt.text({ message: "fallback host?", default: "localhost" }) }),
57
+ })
58
+ ```
59
+
60
+ ### Retry and timeout cover the whole branch
61
+
62
+ ```ts
63
+ .addBranch({
64
+ name: "resolve commit",
65
+ retry: { attempts: 3, delayMs: 250 },
66
+ timeoutMs: 10_000,
67
+ condition: ({ flags }) => Boolean(flags.sha),
68
+ onTrue: ({ flags }) => ({ sha: flags.sha as string }),
69
+ onFalse: async ({ input }) => ({ sha: await git.head(input.service) }),
70
+ })
71
+ ```
72
+
73
+ A retry re-evaluates `condition` and re-runs the arm. Those two options, plus `name` and `description`, are the whole surface.
74
+
75
+ ### Caching a branch: cache the phase
76
+
77
+ ```ts
78
+ .addPhase("Resolve", { cache: store })
79
+ .addBranch({ name: "resolve commit", /* ... */ })
80
+ ```
81
+
82
+ A branch has no `cache` of its own. A cached phase stores the merged output of every step in it, branch included.
83
+
84
+ ## Common Mistakes
85
+
86
+ ### HIGH Using `when` where later steps need the output
87
+
88
+ Wrong:
89
+ ```ts
90
+ .addStep({ name: "head sha", when: ({ flags }) => !flags.sha, handler: async () => ({ sha: await git.head() }) })
91
+ .addStep({ name: "build", handler: ({ ctx }) => ctx.sha.slice(0, 7) }) // compiles; crashes with --sha set
92
+ ```
93
+
94
+ Correct:
95
+ ```ts
96
+ .addBranch({
97
+ name: "resolve commit",
98
+ condition: ({ flags }) => Boolean(flags.sha),
99
+ onTrue: ({ flags }) => ({ sha: flags.sha as string }),
100
+ onFalse: async () => ({ sha: await git.head() }),
101
+ })
102
+ ```
103
+
104
+ `when` skips the step but `ctx` is still typed as though it ran. A branch always produces the keys.
105
+
106
+ ### MEDIUM Arms returning different shapes
107
+
108
+ Wrong:
109
+ ```ts
110
+ onTrue: () => ({ sha: "abc" }),
111
+ onFalse: () => ({ commit: "abc" }), // compile error on onFalse
112
+ ```
113
+
114
+ Correct:
115
+ ```ts
116
+ onTrue: () => ({ sha: "abc" }),
117
+ onFalse: () => ({ sha: "abc" }),
118
+ ```
119
+
120
+ `onTrue`'s return type fixes `Out`; `onFalse` must be assignable to it. If one path has no value, return an explicit default (`{ sha: undefined }` on both arms, or `sha: string | undefined` in `onTrue`) rather than omitting the key.
121
+
122
+ ### MEDIUM Expecting `rollback`, `cache`, `clean` or `when` on a branch
123
+
124
+ Wrong:
125
+ ```ts
126
+ .addBranch({ name: "b", condition, onTrue, onFalse, rollback: async () => {} }) // not accepted
127
+ ```
128
+
129
+ Correct:
130
+ ```ts
131
+ // If the work needs compensation, make it a plain addStep with its own rollback
132
+ // and branch inside the handler; cache the enclosing phase; clean in a later step.
133
+ .addStep({
134
+ name: "provision",
135
+ handler: async ({ input }) => ({ id: input.existingId ?? (await create()) }),
136
+ rollback: async ({ output }) => destroy(output.id),
137
+ })
138
+ ```
139
+
140
+ A branch is intentionally minimal: no compensation, no step-level cache, no `clean`, no `when`.
141
+
142
+ Source: docs/guides/phases-and-steps.md; src/types.ts `BranchDef`
143
+
144
+ See also: skills/compensation-safety/conditional-steps/SKILL.md — `when` is for work that may simply not happen; `addBranch` is for work that always happens in one of two ways.
@@ -0,0 +1,115 @@
1
+ ---
2
+ name: 'command-line-flags'
3
+ description: >
4
+ Covers `defineFlag` and `context.flags` — typed string and boolean flags parsed from argv once before
5
+ any phase runs, `long`/`short` aliases, defaults, `UnknownFlagError` / `MissingFlagValueError`,
6
+ `run(input, { argv })` for tests, and mapping a flag onto a mounted routine's input. Load this for
7
+ "add a --force or --env flag," "gate a step on a CLI flag," or "test a script with flags."
8
+ metadata:
9
+ type: 'core'
10
+ library: 'stagehand'
11
+ library_version: '0.8.0'
12
+ sources:
13
+ - 'miaklwalker/stagehand:docs/guides/flags.md'
14
+ - 'miaklwalker/stagehand:docs/reference/script.md'
15
+ - 'miaklwalker/stagehand:src/flags.ts'
16
+ - 'miaklwalker/stagehand:src/script.ts'
17
+ - 'miaklwalker/stagehand:test/flags.test.ts'
18
+ ---
19
+
20
+ # Stagehand — Command-Line Flags
21
+
22
+ `defineFlag` declares a flag. `run()` parses `process.argv` once, before any phase, and every step, `when`, `stale` and rollback receives the result as `flags`, typed from the declarations.
23
+
24
+ ## Setup
25
+
26
+ ```ts
27
+ import { Script } from "@michaelrwalker/stagehand";
28
+
29
+ await new Script({ name: "deploy" })
30
+ .defineFlag({ name: "environment", long: "env", short: "e", default: "staging" })
31
+ .defineFlag({ name: "force", short: "f", boolean: true })
32
+ .addStep({
33
+ name: "ship",
34
+ handler: ({ flags }) => {
35
+ // flags.environment: string flags.force: boolean
36
+ return { env: flags.environment };
37
+ },
38
+ })
39
+ .run();
40
+ // myScript --env production -f
41
+ ```
42
+
43
+ ## Core Patterns
44
+
45
+ ### String vs boolean
46
+
47
+ A string flag with a `default` is `string`; without one it is `string | undefined`. A boolean flag (`boolean: true`) is presence-based, never consumes the next token, and resolves to `default ?? false`. `--flag=value` and `--flag value` both work; `--force=false` is honoured.
48
+
49
+ ### Gate work on a flag
50
+
51
+ ```ts
52
+ .addPhase("Publish", { when: ({ flags }) => flags.production })
53
+ .addStep({ name: "notify", when: ({ flags }) => !flags.quiet, handler: async () => {} })
54
+ .addPhase("Build", { cache: { store, stale: ({ flags }) => flags.fresh } })
55
+ ```
56
+
57
+ When the flag changes *how* a value is produced rather than *whether* a step runs, use `addBranch` (see skills/building-scripts/branching-steps/SKILL.md).
58
+
59
+ ### Test with `argv`
60
+
61
+ ```ts
62
+ const result = await script.run({ service: "api" }, { argv: ["--env", "production"] });
63
+ ```
64
+
65
+ `argv` replaces `process.argv.slice(2)`; use it in tests and when the script is one subcommand of a bigger CLI.
66
+
67
+ ### Hand a flag to a routine
68
+
69
+ ```ts
70
+ new Script({ name: "sync" })
71
+ .defineFlag({ name: "environment", long: "env", default: "staging" })
72
+ .use(pullChannel, { input: ({ flags }) => ({ env: flags.environment }) })
73
+ ```
74
+
75
+ ## Common Mistakes
76
+
77
+ ### HIGH Declaring flags on a routine
78
+
79
+ Wrong:
80
+ ```ts
81
+ routineFor<{ env: string }>()("pull", (script) => script.defineFlag({ name: "env" })) // flags are top-level only
82
+ ```
83
+
84
+ Correct:
85
+ ```ts
86
+ // declare on the script you run; pass it down through use()'s input mapper
87
+ ```
88
+
89
+ `defineFlag` belongs to the entry script. A mounted script's flags are not merged into the host, and a routine's `flags` are typed loosely (`Record<string, unknown>`).
90
+
91
+ ### MEDIUM Expecting `run()` to return `{ ok: false }` for a bad flag
92
+
93
+ Wrong:
94
+ ```ts
95
+ const result = await script.run(undefined, { argv: ["--nope"] });
96
+ if (!result.ok) { /* never reached */ }
97
+ ```
98
+
99
+ Correct:
100
+ ```ts
101
+ try { await script.run(undefined, { argv }); }
102
+ catch (error) { if (error instanceof UnknownFlagError) console.error(error.flag); }
103
+ ```
104
+
105
+ `UnknownFlagError` and `MissingFlagValueError` are thrown directly, before any phase, and ignore `throwOnError`.
106
+
107
+ ### MEDIUM Assuming undeclared flags are always rejected
108
+
109
+ A script with **no** `defineFlag` call ignores argv entirely; the unknown-flag check starts at the first declaration. Adding a first flag can therefore break a script that read `process.argv` by hand.
110
+
111
+ ### LOW Duplicate names
112
+
113
+ `defineFlag` throws `DuplicateNameError` (`kind: "flag"`) if `name`, the resolved long form, or `short` is already used.
114
+
115
+ Source: docs/guides/flags.md; src/flags.ts
@@ -7,7 +7,7 @@ description: >
7
7
  metadata:
8
8
  type: 'lifecycle'
9
9
  library: 'stagehand'
10
- library_version: '0.5.3'
10
+ library_version: '0.8.0'
11
11
  sources:
12
12
  - 'miaklwalker/stagehand:README.md'
13
13
  - 'miaklwalker/stagehand:docs/quick-start.md'
@@ -0,0 +1,91 @@
1
+ ---
2
+ name: 'prompting-the-user'
3
+ description: >
4
+ Covers `context.prompt` — `text`, `confirm`, `select` and `multiselect` asked mid-step, the
5
+ non-interactive `default` fallback, `PromptUnavailableError`, and Ctrl-C cancellation via
6
+ `PromptCancelledError`. Load this for "ask for confirmation before a destructive step," "let the
7
+ user pick an environment," or "make an interactive script runnable in CI."
8
+ metadata:
9
+ type: 'core'
10
+ library: 'stagehand'
11
+ library_version: '0.8.0'
12
+ sources:
13
+ - 'miaklwalker/stagehand:docs/guides/prompts.md'
14
+ - 'miaklwalker/stagehand:docs/reference/errors.md'
15
+ - 'miaklwalker/stagehand:src/ui/prompt.ts'
16
+ - 'miaklwalker/stagehand:test/prompt.test.ts'
17
+ ---
18
+
19
+ # Stagehand — Prompting the User
20
+
21
+ `prompt` is on a step handler's context. Calling it suspends the live frame, draws the question, and repaints once answered. It is hand-rolled on the renderer's ANSI primitives, so there is no extra dependency.
22
+
23
+ ## Setup
24
+
25
+ ```ts
26
+ .addStep({
27
+ name: "confirm production",
28
+ handler: async ({ flags, prompt }) => {
29
+ if (flags.environment === "production" && !flags.force) {
30
+ const ok = await prompt.confirm({ message: "Deploy to production?", default: false });
31
+ if (!ok) throw new Error("cancelled by user");
32
+ }
33
+ return {};
34
+ },
35
+ })
36
+ ```
37
+
38
+ ## Core Patterns
39
+
40
+ | method | resolves to |
41
+ | --- | --- |
42
+ | `prompt.text({ message, default?, placeholder?, validate?, mask? })` | `string` |
43
+ | `prompt.confirm({ message, default? })` | `boolean` |
44
+ | `prompt.select({ message, choices, default? })` | the chosen `value` |
45
+ | `prompt.multiselect({ message, choices, default?, min?, max? })` | `value[]` |
46
+
47
+ `choices` are `{ label, value, hint? }`. `validate` returns `true` or an error string, may be async. `mask: true` echoes `•`.
48
+
49
+ ### Always give a `default` if the script may run unattended
50
+
51
+ With no TTY (CI, a pipe) nothing is drawn: a `default` is returned immediately, and a missing one throws `PromptUnavailableError`.
52
+
53
+ ### Prefer a flag, prompt only as the fallback
54
+
55
+ ```ts
56
+ const environment = flags.environment ?? (await prompt.select({ message: "environment?", choices, default: "staging" }));
57
+ ```
58
+
59
+ ## Common Mistakes
60
+
61
+ ### HIGH Prompting without a `default` in a script CI runs
62
+
63
+ Wrong:
64
+ ```ts
65
+ const tag = await prompt.text({ message: "release tag?" }); // PromptUnavailableError under CI
66
+ ```
67
+
68
+ Correct:
69
+ ```ts
70
+ const tag = await prompt.text({ message: "release tag?", default: "latest" });
71
+ ```
72
+
73
+ ### MEDIUM Treating Ctrl-C at a prompt as a handler failure
74
+
75
+ Wrong:
76
+ ```ts
77
+ if (!result.ok) report(result.error); // reports a cancellation as a bug
78
+ ```
79
+
80
+ Correct:
81
+ ```ts
82
+ if (!result.ok && isAbort(result.error)) { /* result.status === "aborted"; rollback policy applied */ }
83
+ ```
84
+
85
+ `PromptCancelledError` is recognised by `isAbort`, so the run unwinds exactly like a SIGINT.
86
+
87
+ ### MEDIUM Prompting from a rollback
88
+
89
+ `prompt` exists only on `StepContext`. A rollback runs during an unwind and cannot stop to ask; decide inside the step and keep what the rollback needs in `rollbackKeys`.
90
+
91
+ Source: docs/guides/prompts.md; src/ui/prompt.ts
@@ -5,7 +5,7 @@ description: >
5
5
  metadata:
6
6
  type: 'core'
7
7
  library: 'stagehand'
8
- library_version: '0.5.3'
8
+ library_version: '0.8.0'
9
9
  sources:
10
10
  - 'miaklwalker/stagehand:docs/guides/phases-and-steps.md'
11
11
  - 'miaklwalker/stagehand:docs/guides/script-options-and-result.md'
@@ -60,6 +60,10 @@ new Script<{ n: number }>({ name: "t" })
60
60
 
61
61
  The callback form groups a phase's steps visually while preserving the same type flow as the flat form; the two are interchangeable.
62
62
 
63
+ ### Two ways to do one step: `addBranch`
64
+
65
+ `addBranch({ name, condition, onTrue, onFalse })` runs one of two arms that return the same shape, so the context stays typed either way. It takes `retry` and `timeoutMs` like any step, but no `rollback`, `cache` or `clean`. See skills/building-scripts/branching-steps/SKILL.md.
66
+
63
67
  ### Retry with backoff and veto specific errors
64
68
 
65
69
  ```ts
@@ -10,7 +10,7 @@ description: >
10
10
  metadata:
11
11
  type: 'core'
12
12
  library: 'stagehand'
13
- library_version: '0.5.3'
13
+ library_version: '0.8.0'
14
14
  sources:
15
15
  - 'miaklwalker/stagehand:docs/guides/typed-context.md'
16
16
  - 'miaklwalker/stagehand:docs/reference/errors.md'
@@ -10,7 +10,7 @@ description: >
10
10
  metadata:
11
11
  type: 'core'
12
12
  library: 'stagehand'
13
- library_version: '0.5.3'
13
+ library_version: '0.8.0'
14
14
  sources:
15
15
  - 'miaklwalker/stagehand:docs/guides/caching.md'
16
16
  - 'miaklwalker/stagehand:docs/reference/cache.md'
@@ -71,14 +71,14 @@ const BuildSchema = z.object({ artifact: z.string() });
71
71
  name: "compile",
72
72
  cache: {
73
73
  store: cache,
74
- stale: ({ value, ctx, ageMs }) => ageMs > 3_600_000,
74
+ stale: ({ value, ctx, flags, ageMs }) => flags.fresh || ageMs > 3_600_000,
75
75
  schema: BuildSchema,
76
76
  },
77
77
  handler: async ({ input }) => ({ artifact: `dist/${input.ref}.tgz` }),
78
78
  })
79
79
  ```
80
80
 
81
- `stale` and `schema` both see the live context as of that step; a stored
81
+ `stale` and `schema` both see the live context as of that step (`stale` also gets `flags`, so a `--fresh` flag can force a miss); a stored
82
82
  value that fails `schema` is treated as a miss, not an error.
83
83
 
84
84
  ### Controlling caching per run without touching the script
@@ -10,7 +10,7 @@ description: >
10
10
  metadata:
11
11
  type: 'core'
12
12
  library: 'stagehand'
13
- library_version: '0.5.3'
13
+ library_version: '0.8.0'
14
14
  sources:
15
15
  - 'miaklwalker/stagehand:docs/guides/rollbacks.md'
16
16
  - 'miaklwalker/stagehand:docs/reference/errors.md'
@@ -26,6 +26,8 @@ completed, first undone. The step that actually failed is never compensated: it
26
26
  there's nothing to undo. A rollback gets no context by default; it has to name every key it needs
27
27
  through `rollbackKeys`, which both narrows and permanently reserves them.
28
28
 
29
+ Rollback timing, retries and scope are specified exactly in docs/guides/error-handling.md (summary: skills/errors-results/handling-results-and-errors/SKILL.md, "The failure contract"). Notably, retries do not trigger rollback and the failed step is never rolled back.
30
+
29
31
  ## Setup
30
32
 
31
33
  ```ts
@@ -5,7 +5,7 @@ description: >
5
5
  metadata:
6
6
  type: 'core'
7
7
  library: 'stagehand'
8
- library_version: '0.5.3'
8
+ library_version: '0.8.0'
9
9
  sources:
10
10
  - 'miaklwalker/stagehand:docs/guides/cleaning-context.md'
11
11
  - 'miaklwalker/stagehand:src/script.ts'
@@ -8,16 +8,17 @@ description: >
8
8
  metadata:
9
9
  type: 'core'
10
10
  library: 'stagehand'
11
- library_version: '0.5.3'
11
+ library_version: '0.8.0'
12
12
  sources:
13
13
  - 'miaklwalker/stagehand:docs/guides/phases-and-steps.md'
14
14
  - 'miaklwalker/stagehand:docs/guides/reusable-scripts.md'
15
+ - 'miaklwalker/stagehand:docs/guides/flags.md'
15
16
  - 'miaklwalker/stagehand:src/script.ts'
16
17
  ---
17
18
 
18
19
  # Stagehand — Conditional Steps and Phases
19
20
 
20
- `when` on `addStep` or `addPhase` is a function of `{ input, ctx }` (may be async) that gates whether the step, or every step in the phase, runs at all. A falsy result marks the step `"skipped"` — it never runs its handler and never runs its `rollback`.
21
+ `when` on `addStep` or `addPhase` is a function of `{ input, ctx, flags }` (may be async) that gates whether the step, or every step in the phase, runs at all. A falsy result marks the step `"skipped"` — it never runs its handler and never runs its `rollback`.
21
22
 
22
23
  ## Setup
23
24
 
@@ -58,7 +59,7 @@ new Script<{ environment: "development" | "production" }>({ name: "deploy" })
58
59
  });
59
60
  ```
60
61
 
61
- `when` sees the same `{ input, ctx }` shape a handler does, so it can read anything an earlier step already put in context.
62
+ `when` sees the same `{ input, ctx, flags }` a handler does, so it can read anything an earlier step already put in context, and any `defineFlag` value (`when: ({ flags }) => !flags.quiet`).
62
63
 
63
64
  ### Gate an entire phase
64
65
 
@@ -87,6 +88,21 @@ A falsy phase-level `when` marks every step in `"Release"` `"skipped"` in one sh
87
88
 
88
89
  `when` may return a promise; the script awaits it before deciding whether to run or skip the step (or, at phase level, the whole phase).
89
90
 
91
+ ### Need the output either way? Use `addBranch`
92
+
93
+ A skipped step produces nothing, but `ctx` is still typed as though it ran. When later steps depend on the value, pick between two ways of producing it instead:
94
+
95
+ ```ts
96
+ .addBranch({
97
+ name: "resolve commit",
98
+ condition: ({ flags }) => Boolean(flags.sha),
99
+ onTrue: ({ flags }) => ({ sha: flags.sha as string }),
100
+ onFalse: async () => ({ sha: await git.head() }),
101
+ })
102
+ ```
103
+
104
+ See skills/building-scripts/branching-steps/SKILL.md.
105
+
90
106
  ## Common Mistakes
91
107
 
92
108
  ### MEDIUM Skipped step's `clean` still runs
@@ -3,25 +3,40 @@ name: 'handling-results-and-errors'
3
3
  description: >
4
4
  Covers the RunResult discriminated union returned by run(), every exported error class
5
5
  (StepFailedError, StepTimeoutError, ScriptAbortedError, RollbackFailedError, CacheShapeError,
6
- SchemaValidationError), the isAbort(error) helper, and the throwOnError script option. Load this
6
+ SchemaValidationError, UnknownFlagError, MissingFlagValueError, PromptCancelledError,
7
+ PromptUnavailableError), the isAbort(error) helper, and the throwOnError script option. Load this
7
8
  for "branch correctly on a failed run," "tell a Ctrl-C cancellation apart from a real failure,"
8
9
  or "get the phase/step name a failure happened at."
9
10
  metadata:
10
11
  type: 'core'
11
12
  library: 'stagehand'
12
- library_version: '0.5.3'
13
+ library_version: '0.8.0'
13
14
  sources:
15
+ - 'miaklwalker/stagehand:docs/guides/error-handling.md'
14
16
  - 'miaklwalker/stagehand:docs/guides/rollbacks.md'
15
17
  - 'miaklwalker/stagehand:docs/guides/script-options-and-result.md'
16
18
  - 'miaklwalker/stagehand:docs/reference/errors.md'
17
19
  - 'miaklwalker/stagehand:src/errors.ts'
18
20
  - 'miaklwalker/stagehand:src/script.ts'
21
+ - 'miaklwalker/stagehand:test/error-handling.test.ts'
19
22
  ---
20
23
 
21
24
  # Stagehand — Handling Results and Errors
22
25
 
23
26
  `run()` never throws for an ordinary step failure — it resolves to a discriminated union on `ok`. A handful of exported error classes exist for callers building their own reporting, but most of them never propagate through `run()` itself; knowing which ones do (and which don't) is the whole game.
24
27
 
28
+ ## The failure contract (read this before reasoning about rollback)
29
+
30
+ - **Retries never roll back.** A failed attempt is not compensated; the handler simply re-runs against the same `input`/`ctx`. Rollback runs **once**, after the last attempt fails (or `retryIf` stops retrying).
31
+ - **The failed step is never rolled back**, and steps after it never run (`"pending"`). Only steps that *completed* are compensated, in reverse order. Skipped and cached steps are not.
32
+ - **Extent** is `ScriptOptions.rollback`: `"all"` (default) every completed step, `"phase"` only the failing step's phase, `"none"` nothing.
33
+ - A **failing rollback** is recorded in `result.rollbacks` (`status: "rollback-failed"`), the rest still run, and `result.error` stays the original error.
34
+ - A **timeout** (`StepTimeoutError`) is an ordinary failure: retried, `isAbort` false. A **cancellation** is never retried, gives `status: "aborted"`, and still compensates; a second signal abandons compensation.
35
+ - **Not step failures** (thrown out of `run()`, nothing rolled back): `SchemaValidationError`, flag errors, and an error thrown by a `when` predicate or a mount `input` mapper. Keep those total; put fallible logic in a step or `addBranch`.
36
+ - A step with `retry` must tolerate partial work: nothing compensates the failed attempts, so make it idempotent or clean up inside the handler before rethrowing.
37
+
38
+ Full tables and the step lifecycle: docs/guides/error-handling.md.
39
+
25
40
  ## Setup
26
41
 
27
42
  ```ts
@@ -89,7 +104,7 @@ if (!result.ok) {
89
104
  }
90
105
  ```
91
106
 
92
- `isAbort(error)` returns `true` for a `ScriptAbortedError` or any `Error` named `"AbortError"` — checking `result.status === "aborted"` alongside it confirms the abort was the script's own, not an unrelated `AbortError` a handler happened to throw.
107
+ `isAbort(error)` returns `true` for a `ScriptAbortedError`, a `PromptCancelledError` (Ctrl-C at a prompt), or any `Error` named `"AbortError"` — checking `result.status === "aborted"` alongside it confirms the abort was the script's own, not an unrelated `AbortError` a handler happened to throw.
93
108
 
94
109
  ### Use `throwOnError` when the script is one stage of a larger flow
95
110
 
@@ -157,7 +172,7 @@ try {
157
172
  }
158
173
  ```
159
174
 
160
- `SchemaValidationError` is always thrown directly by `run()`, before any phase executes, and is unaffected by `throwOnError` — there is no partial result to produce since nothing ran yet.
175
+ `SchemaValidationError` is always thrown directly by `run()`, before any phase executes, and is unaffected by `throwOnError` — there is no partial result to produce since nothing ran yet. `UnknownFlagError` and `MissingFlagValueError` (bad `defineFlag` argv) behave the same way. `PromptUnavailableError`, by contrast, is thrown from inside a handler, so it arrives as an ordinary failed step.
161
176
 
162
177
  Source: docs/guides/typed-context.md; docs/reference/errors.md
163
178
 
@@ -5,7 +5,7 @@ description: >
5
5
  metadata:
6
6
  type: 'core'
7
7
  library: 'stagehand'
8
- library_version: '0.5.3'
8
+ library_version: '0.8.0'
9
9
  sources:
10
10
  - 'miaklwalker/stagehand:docs/guides/handler-surface.md'
11
11
  - 'miaklwalker/stagehand:docs/guides/terminal-rendering.md'
@@ -5,7 +5,7 @@ description: >
5
5
  metadata:
6
6
  type: 'core'
7
7
  library: 'stagehand'
8
- library_version: '0.5.3'
8
+ library_version: '0.8.0'
9
9
  sources:
10
10
  - 'miaklwalker/stagehand:docs/guides/handler-surface.md'
11
11
  - 'miaklwalker/stagehand:src/context.ts'
@@ -14,6 +14,8 @@ sources:
14
14
 
15
15
  # Stagehand — Reporting Progress From a Step
16
16
 
17
+ The handler context also carries `prompt` (see skills/building-scripts/prompting-the-user/SKILL.md) and `flags` (see skills/building-scripts/command-line-flags/SKILL.md); this skill covers only the output side.
18
+
17
19
  Every handler receives `status`, `note`, `progress`, `task`, `tasks`, and the five log methods as part of its single context object. `rollback` gets a smaller subset — `log` (no `info`/`warn`/`error`/`success`), `status`, `note`, and `progress`, but not `task`/`tasks`.
18
20
 
19
21
  ## Setup
@@ -7,7 +7,7 @@ description: >
7
7
  metadata:
8
8
  type: 'core'
9
9
  library: 'stagehand'
10
- library_version: '0.5.3'
10
+ library_version: '0.8.0'
11
11
  sources:
12
12
  - 'miaklwalker/stagehand:docs/guides/reusable-scripts.md'
13
13
  - 'miaklwalker/stagehand:docs/guides/caching.md'
@@ -104,7 +104,7 @@ const result = await new Script<{ region: string }>({ name: "t" })
104
104
  .run({ region: "eu" });
105
105
  ```
106
106
 
107
- `input` takes a fixed value or an `{ input, ctx } => SubIn` mapper, may be async, and is resolved once per mount at the moment the mount is reached — the host no longer has to match the routine's input shape, only produce it.
107
+ `input` takes a fixed value or an `{ input, ctx, flags } => SubIn` mapper, may be async, and is resolved once per mount at the moment the mount is reached — the host no longer has to match the routine's input shape, only produce it. `flags` is how a routine, which cannot declare flags itself, is driven by one: `use(r, { input: ({ flags }) => ({ env: flags.environment }) })`.
108
108
 
109
109
  ## Common Mistakes
110
110
 
@@ -152,7 +152,7 @@ export const pullChannel = routineFor<{ channel: string; since: string }>()(
152
152
  );
153
153
  ```
154
154
 
155
- A mount's input is resolved once, when the mount is reached, from either a fixed value or an `{ input, ctx } => SubIn` mapper — every `when` inside that fragment (phase- or step-level) is evaluated against the mount's resolved input, never the host's own.
155
+ A mount's input is resolved once, when the mount is reached, from either a fixed value or an `{ input, ctx, flags } => SubIn` mapper — every `when` inside that fragment (phase- or step-level) is evaluated against the mount's resolved input, never the host's own.
156
156
 
157
157
  Source: docs/guides/reusable-scripts.md ("Giving a mount its own input"); src/script.ts use()/run() mount input resolution
158
158
 
@@ -5,7 +5,7 @@ description: >
5
5
  metadata:
6
6
  type: 'core'
7
7
  library: 'stagehand'
8
- library_version: '0.5.3'
8
+ library_version: '0.8.0'
9
9
  sources:
10
10
  - 'miaklwalker/stagehand:docs/guides/splitting-steps.md'
11
11
  - 'miaklwalker/stagehand:src/script.ts'