@12ui/design 0.2.76 → 0.2.77
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/SKILL.md +1 -1
- package/dist/cli-codex-readiness.d.ts +6 -0
- package/dist/cli-codex-readiness.d.ts.map +1 -1
- package/dist/cli-codex-readiness.js +12 -12
- package/dist/cli-codex-readiness.js.map +1 -1
- package/dist/cli-help/design.d.ts +2 -2
- package/dist/cli-help/design.d.ts.map +1 -1
- package/dist/cli-help/design.js +2 -0
- package/dist/cli-help/design.js.map +1 -1
- package/dist/cli-help/index.d.ts +2 -2
- package/dist/cli-review-command.d.ts.map +1 -1
- package/dist/cli-review-command.js +2 -0
- package/dist/cli-review-command.js.map +1 -1
- package/dist/cli-run.d.ts.map +1 -1
- package/dist/cli-run.js +6 -0
- package/dist/cli-run.js.map +1 -1
- package/dist/cli-workspace-draw.d.ts +1 -11
- package/dist/cli-workspace-draw.d.ts.map +1 -1
- package/dist/cli-workspace-draw.js +17 -18
- package/dist/cli-workspace-draw.js.map +1 -1
- package/dist/cli-workspace-runner.d.ts +30 -0
- package/dist/cli-workspace-runner.d.ts.map +1 -0
- package/dist/cli-workspace-runner.js +105 -0
- package/dist/cli-workspace-runner.js.map +1 -0
- package/dist/mcp-slate-image.js +1 -1
- package/dist/mcp-slate-image.js.map +1 -1
- package/dist/mcp-slate-tool-defs.js +1 -1
- package/dist/mcp-slate-tool-defs.js.map +1 -1
- package/dist/mcp-slate-ui-copy.d.ts +403 -33
- package/dist/mcp-slate-ui-copy.d.ts.map +1 -1
- package/dist/mcp-slate-ui-copy.js +247 -57
- package/dist/mcp-slate-ui-copy.js.map +1 -1
- package/dist/mcp-slate-ui-icu.d.ts +47 -0
- package/dist/mcp-slate-ui-icu.d.ts.map +1 -0
- package/dist/mcp-slate-ui-icu.js +229 -0
- package/dist/mcp-slate-ui-icu.js.map +1 -0
- package/dist/mcp-slate-ui-locale-match.d.ts +12 -0
- package/dist/mcp-slate-ui-locale-match.d.ts.map +1 -0
- package/dist/mcp-slate-ui-locale-match.js +34 -0
- package/dist/mcp-slate-ui-locale-match.js.map +1 -0
- package/dist/mcp-slate-ui-locales/de-DE.d.ts +9 -0
- package/dist/mcp-slate-ui-locales/de-DE.d.ts.map +1 -0
- package/dist/mcp-slate-ui-locales/de-DE.js +217 -0
- package/dist/mcp-slate-ui-locales/de-DE.js.map +1 -0
- package/dist/mcp-slate-ui-locales/es-419.d.ts +9 -0
- package/dist/mcp-slate-ui-locales/es-419.d.ts.map +1 -0
- package/dist/mcp-slate-ui-locales/es-419.js +217 -0
- package/dist/mcp-slate-ui-locales/es-419.js.map +1 -0
- package/dist/mcp-slate-ui-locales/es-ES.d.ts +9 -0
- package/dist/mcp-slate-ui-locales/es-ES.d.ts.map +1 -0
- package/dist/mcp-slate-ui-locales/es-ES.js +217 -0
- package/dist/mcp-slate-ui-locales/es-ES.js.map +1 -0
- package/dist/mcp-slate-ui-locales/fr-FR.d.ts +9 -0
- package/dist/mcp-slate-ui-locales/fr-FR.d.ts.map +1 -0
- package/dist/mcp-slate-ui-locales/fr-FR.js +217 -0
- package/dist/mcp-slate-ui-locales/fr-FR.js.map +1 -0
- package/dist/mcp-slate-ui-locales/hi-IN.d.ts +9 -0
- package/dist/mcp-slate-ui-locales/hi-IN.d.ts.map +1 -0
- package/dist/mcp-slate-ui-locales/hi-IN.js +217 -0
- package/dist/mcp-slate-ui-locales/hi-IN.js.map +1 -0
- package/dist/mcp-slate-ui-locales/index.d.ts +11 -0
- package/dist/mcp-slate-ui-locales/index.d.ts.map +1 -0
- package/dist/mcp-slate-ui-locales/index.js +34 -0
- package/dist/mcp-slate-ui-locales/index.js.map +1 -0
- package/dist/mcp-slate-ui-locales/it-IT.d.ts +9 -0
- package/dist/mcp-slate-ui-locales/it-IT.d.ts.map +1 -0
- package/dist/mcp-slate-ui-locales/it-IT.js +217 -0
- package/dist/mcp-slate-ui-locales/it-IT.js.map +1 -0
- package/dist/mcp-slate-ui-locales/ja-JP.d.ts +9 -0
- package/dist/mcp-slate-ui-locales/ja-JP.d.ts.map +1 -0
- package/dist/mcp-slate-ui-locales/ja-JP.js +217 -0
- package/dist/mcp-slate-ui-locales/ja-JP.js.map +1 -0
- package/dist/mcp-slate-ui-locales/ko-KR.d.ts +9 -0
- package/dist/mcp-slate-ui-locales/ko-KR.d.ts.map +1 -0
- package/dist/mcp-slate-ui-locales/ko-KR.js +217 -0
- package/dist/mcp-slate-ui-locales/ko-KR.js.map +1 -0
- package/dist/mcp-slate-ui-locales/pt-BR.d.ts +9 -0
- package/dist/mcp-slate-ui-locales/pt-BR.d.ts.map +1 -0
- package/dist/mcp-slate-ui-locales/pt-BR.js +217 -0
- package/dist/mcp-slate-ui-locales/pt-BR.js.map +1 -0
- package/dist/mcp-slate-ui-locales/zh-CN.d.ts +9 -0
- package/dist/mcp-slate-ui-locales/zh-CN.d.ts.map +1 -0
- package/dist/mcp-slate-ui-locales/zh-CN.js +217 -0
- package/dist/mcp-slate-ui-locales/zh-CN.js.map +1 -0
- package/dist/mcp-slate-ui-locales/zh-TW.d.ts +9 -0
- package/dist/mcp-slate-ui-locales/zh-TW.d.ts.map +1 -0
- package/dist/mcp-slate-ui-locales/zh-TW.js +217 -0
- package/dist/mcp-slate-ui-locales/zh-TW.js.map +1 -0
- package/dist/mcp-slate-ui-script-bridge.d.ts.map +1 -1
- package/dist/mcp-slate-ui-script-bridge.js +8 -9
- package/dist/mcp-slate-ui-script-bridge.js.map +1 -1
- package/dist/mcp-slate-ui-script-dialog.d.ts.map +1 -1
- package/dist/mcp-slate-ui-script-dialog.js +60 -30
- package/dist/mcp-slate-ui-script-dialog.js.map +1 -1
- package/dist/mcp-slate-ui-script-inline.d.ts +9 -6
- package/dist/mcp-slate-ui-script-inline.d.ts.map +1 -1
- package/dist/mcp-slate-ui-script-inline.js +91 -46
- package/dist/mcp-slate-ui-script-inline.js.map +1 -1
- package/dist/mcp-slate-ui-script-inspiration-collage.d.ts +20 -0
- package/dist/mcp-slate-ui-script-inspiration-collage.d.ts.map +1 -0
- package/dist/mcp-slate-ui-script-inspiration-collage.js +68 -0
- package/dist/mcp-slate-ui-script-inspiration-collage.js.map +1 -0
- package/dist/mcp-slate-ui-script-inspiration-grid.d.ts +26 -0
- package/dist/mcp-slate-ui-script-inspiration-grid.d.ts.map +1 -0
- package/dist/mcp-slate-ui-script-inspiration-grid.js +246 -0
- package/dist/mcp-slate-ui-script-inspiration-grid.js.map +1 -0
- package/dist/mcp-slate-ui-script-inspiration.d.ts +10 -9
- package/dist/mcp-slate-ui-script-inspiration.d.ts.map +1 -1
- package/dist/mcp-slate-ui-script-inspiration.js +161 -120
- package/dist/mcp-slate-ui-script-inspiration.js.map +1 -1
- package/dist/mcp-slate-ui-script-l10n.d.ts +29 -0
- package/dist/mcp-slate-ui-script-l10n.d.ts.map +1 -0
- package/dist/mcp-slate-ui-script-l10n.js +135 -0
- package/dist/mcp-slate-ui-script-l10n.js.map +1 -0
- package/dist/mcp-slate-ui-script-more.d.ts +3 -2
- package/dist/mcp-slate-ui-script-more.d.ts.map +1 -1
- package/dist/mcp-slate-ui-script-more.js +19 -18
- package/dist/mcp-slate-ui-script-more.js.map +1 -1
- package/dist/mcp-slate-ui-script-pause.d.ts +33 -0
- package/dist/mcp-slate-ui-script-pause.d.ts.map +1 -0
- package/dist/mcp-slate-ui-script-pause.js +217 -0
- package/dist/mcp-slate-ui-script-pause.js.map +1 -0
- package/dist/mcp-slate-ui-script-remote.d.ts +2 -0
- package/dist/mcp-slate-ui-script-remote.d.ts.map +1 -1
- package/dist/mcp-slate-ui-script-remote.js +39 -6
- package/dist/mcp-slate-ui-script-remote.js.map +1 -1
- package/dist/mcp-slate-ui-script-scribble.js +1 -1
- package/dist/mcp-slate-ui-script-select.js +6 -6
- package/dist/mcp-slate-ui-script-stage.d.ts +3 -2
- package/dist/mcp-slate-ui-script-stage.d.ts.map +1 -1
- package/dist/mcp-slate-ui-script-stage.js +31 -19
- package/dist/mcp-slate-ui-script-stage.js.map +1 -1
- package/dist/mcp-slate-ui-script-state.d.ts.map +1 -1
- package/dist/mcp-slate-ui-script-state.js +77 -57
- package/dist/mcp-slate-ui-script-state.js.map +1 -1
- package/dist/mcp-slate-ui-script.d.ts +2 -2
- package/dist/mcp-slate-ui-script.d.ts.map +1 -1
- package/dist/mcp-slate-ui-script.js +21 -7
- package/dist/mcp-slate-ui-script.js.map +1 -1
- package/dist/mcp-slate-ui-styles-dialog.d.ts +6 -7
- package/dist/mcp-slate-ui-styles-dialog.d.ts.map +1 -1
- package/dist/mcp-slate-ui-styles-dialog.js +13 -29
- package/dist/mcp-slate-ui-styles-dialog.js.map +1 -1
- package/dist/mcp-slate-ui-styles-inspiration.d.ts +18 -0
- package/dist/mcp-slate-ui-styles-inspiration.d.ts.map +1 -0
- package/dist/mcp-slate-ui-styles-inspiration.js +43 -0
- package/dist/mcp-slate-ui-styles-inspiration.js.map +1 -0
- package/dist/mcp-slate-ui-styles-pause.d.ts +10 -0
- package/dist/mcp-slate-ui-styles-pause.d.ts.map +1 -0
- package/dist/mcp-slate-ui-styles-pause.js +25 -0
- package/dist/mcp-slate-ui-styles-pause.js.map +1 -0
- package/dist/mcp-slate-ui-styles-stage.d.ts +10 -6
- package/dist/mcp-slate-ui-styles-stage.d.ts.map +1 -1
- package/dist/mcp-slate-ui-styles-stage.js +24 -16
- package/dist/mcp-slate-ui-styles-stage.js.map +1 -1
- package/dist/mcp-slate-ui-styles.d.ts +12 -5
- package/dist/mcp-slate-ui-styles.d.ts.map +1 -1
- package/dist/mcp-slate-ui-styles.js +38 -21
- package/dist/mcp-slate-ui-styles.js.map +1 -1
- package/dist/mcp-slate-ui.d.ts +11 -3
- package/dist/mcp-slate-ui.d.ts.map +1 -1
- package/dist/mcp-slate-ui.js +24 -16
- package/dist/mcp-slate-ui.js.map +1 -1
- package/dist/mosaic-bands.d.ts +44 -0
- package/dist/mosaic-bands.d.ts.map +1 -0
- package/dist/mosaic-bands.js +153 -0
- package/dist/mosaic-bands.js.map +1 -0
- package/dist/review-discovery.d.ts.map +1 -1
- package/dist/review-discovery.js +36 -54
- package/dist/review-discovery.js.map +1 -1
- package/dist/review-page.d.ts.map +1 -1
- package/dist/review-page.js +2 -1
- package/dist/review-page.js.map +1 -1
- package/dist/review-run-roots.d.ts +40 -0
- package/dist/review-run-roots.d.ts.map +1 -0
- package/dist/review-run-roots.js +94 -0
- package/dist/review-run-roots.js.map +1 -0
- package/dist/review-server.d.ts +2 -0
- package/dist/review-server.d.ts.map +1 -1
- package/dist/review-server.js +2 -0
- package/dist/review-server.js.map +1 -1
- package/dist/review-types.d.ts +10 -0
- package/dist/review-types.d.ts.map +1 -1
- package/dist/slate-actions.d.ts +3 -3
- package/dist/slate-actions.d.ts.map +1 -1
- package/dist/slate-actions.js +9 -8
- package/dist/slate-actions.js.map +1 -1
- package/dist/slate-browser-host-script.d.ts +4 -0
- package/dist/slate-browser-host-script.d.ts.map +1 -1
- package/dist/slate-browser-host-script.js +25 -6
- package/dist/slate-browser-host-script.js.map +1 -1
- package/dist/slate-browser-host.d.ts +2 -1
- package/dist/slate-browser-host.d.ts.map +1 -1
- package/dist/slate-browser-host.js +18 -5
- package/dist/slate-browser-host.js.map +1 -1
- package/dist/slate-commit.js +7 -7
- package/dist/slate-commit.js.map +1 -1
- package/dist/slate-corpus.d.ts.map +1 -1
- package/dist/slate-corpus.js +3 -2
- package/dist/slate-corpus.js.map +1 -1
- package/dist/slate-edit-runner.d.ts.map +1 -1
- package/dist/slate-edit-runner.js +5 -4
- package/dist/slate-edit-runner.js.map +1 -1
- package/dist/slate-editability.d.ts +2 -0
- package/dist/slate-editability.d.ts.map +1 -1
- package/dist/slate-editability.js +1 -1
- package/dist/slate-editability.js.map +1 -1
- package/dist/slate-errors.d.ts +7 -1
- package/dist/slate-errors.d.ts.map +1 -1
- package/dist/slate-errors.js +3 -2
- package/dist/slate-errors.js.map +1 -1
- package/dist/slate-handoff-options.d.ts +2 -1
- package/dist/slate-handoff-options.d.ts.map +1 -1
- package/dist/slate-handoff-options.js +2 -2
- package/dist/slate-handoff-options.js.map +1 -1
- package/dist/slate-handoff.js +1 -1
- package/dist/slate-handoff.js.map +1 -1
- package/dist/slate-image-executor.d.ts +18 -1
- package/dist/slate-image-executor.d.ts.map +1 -1
- package/dist/slate-image-executor.js +1 -0
- package/dist/slate-image-executor.js.map +1 -1
- package/dist/slate-inspiration.js +2 -2
- package/dist/slate-inspiration.js.map +1 -1
- package/dist/slate-local-image.d.ts.map +1 -1
- package/dist/slate-local-image.js +4 -1
- package/dist/slate-local-image.js.map +1 -1
- package/dist/slate-lock.js +1 -1
- package/dist/slate-lock.js.map +1 -1
- package/dist/slate-resume.js +6 -6
- package/dist/slate-resume.js.map +1 -1
- package/dist/slate-round-params.d.ts +3 -0
- package/dist/slate-round-params.d.ts.map +1 -1
- package/dist/slate-round-params.js +5 -0
- package/dist/slate-round-params.js.map +1 -1
- package/dist/slate-round-queries.d.ts +18 -0
- package/dist/slate-round-queries.d.ts.map +1 -0
- package/dist/slate-round-queries.js +29 -0
- package/dist/slate-round-queries.js.map +1 -0
- package/dist/slate-round-runner.d.ts.map +1 -1
- package/dist/slate-round-runner.js +12 -9
- package/dist/slate-round-runner.js.map +1 -1
- package/dist/slate-round-search.js +5 -5
- package/dist/slate-round-search.js.map +1 -1
- package/dist/slate-run-action.d.ts.map +1 -1
- package/dist/slate-run-action.js +2 -1
- package/dist/slate-run-action.js.map +1 -1
- package/dist/slate-runner-context.d.ts +3 -1
- package/dist/slate-runner-context.d.ts.map +1 -1
- package/dist/slate-runner-context.js +4 -3
- package/dist/slate-runner-context.js.map +1 -1
- package/dist/slate-runner-failure.d.ts +7 -1
- package/dist/slate-runner-failure.d.ts.map +1 -1
- package/dist/slate-runner-failure.js +6 -5
- package/dist/slate-runner-failure.js.map +1 -1
- package/dist/slate-runtime.d.ts.map +1 -1
- package/dist/slate-runtime.js +1 -0
- package/dist/slate-runtime.js.map +1 -1
- package/dist/slate-versions.js +3 -3
- package/dist/slate-versions.js.map +1 -1
- package/dist/slate-view-contract.d.ts +62 -1
- package/dist/slate-view-contract.d.ts.map +1 -1
- package/dist/slate-view-contract.js +30 -0
- package/dist/slate-view-contract.js.map +1 -1
- package/dist/slate-view.d.ts.map +1 -1
- package/dist/slate-view.js +19 -3
- package/dist/slate-view.js.map +1 -1
- package/dist/slate-workspace-parse.d.ts.map +1 -1
- package/dist/slate-workspace-parse.js +22 -0
- package/dist/slate-workspace-parse.js.map +1 -1
- package/dist/slate-workspace-types.d.ts +2 -0
- package/dist/slate-workspace-types.d.ts.map +1 -1
- package/dist/workspace-draw-client.d.ts +42 -1
- package/dist/workspace-draw-client.d.ts.map +1 -1
- package/dist/workspace-draw-client.js +56 -7
- package/dist/workspace-draw-client.js.map +1 -1
- package/dist/workspace-draw-codex.d.ts +9 -4
- package/dist/workspace-draw-codex.d.ts.map +1 -1
- package/dist/workspace-draw-codex.js +17 -3
- package/dist/workspace-draw-codex.js.map +1 -1
- package/dist/workspace-draw-messages.d.ts +24 -0
- package/dist/workspace-draw-messages.d.ts.map +1 -1
- package/dist/workspace-draw-messages.js +25 -0
- package/dist/workspace-draw-messages.js.map +1 -1
- package/dist/workspace-draw-run.d.ts +19 -1
- package/dist/workspace-draw-run.d.ts.map +1 -1
- package/dist/workspace-draw-run.js +76 -3
- package/dist/workspace-draw-run.js.map +1 -1
- package/dist/workspace-draw-store.d.ts +2 -0
- package/dist/workspace-draw-store.d.ts.map +1 -1
- package/dist/workspace-draw-store.js +3 -1
- package/dist/workspace-draw-store.js.map +1 -1
- package/dist/workspace-draw-types.d.ts +1 -0
- package/dist/workspace-draw-types.d.ts.map +1 -1
- package/dist/workspace-draw-types.js +1 -0
- package/dist/workspace-draw-types.js.map +1 -1
- package/dist/workspace-origin.d.ts +15 -0
- package/dist/workspace-origin.d.ts.map +1 -0
- package/dist/workspace-origin.js +36 -0
- package/dist/workspace-origin.js.map +1 -0
- package/dist/workspace-runner-children.d.ts +28 -0
- package/dist/workspace-runner-children.d.ts.map +1 -0
- package/dist/workspace-runner-children.js +112 -0
- package/dist/workspace-runner-children.js.map +1 -0
- package/dist/workspace-runner-client.d.ts +41 -0
- package/dist/workspace-runner-client.d.ts.map +1 -0
- package/dist/workspace-runner-client.js +63 -0
- package/dist/workspace-runner-client.js.map +1 -0
- package/dist/workspace-runner-main.d.ts +56 -0
- package/dist/workspace-runner-main.d.ts.map +1 -0
- package/dist/workspace-runner-main.js +350 -0
- package/dist/workspace-runner-main.js.map +1 -0
- package/dist/workspace-runner-policy.d.ts +40 -0
- package/dist/workspace-runner-policy.d.ts.map +1 -0
- package/dist/workspace-runner-policy.js +47 -0
- package/dist/workspace-runner-policy.js.map +1 -0
- package/dist/workspace-runner-spawn.d.ts +42 -0
- package/dist/workspace-runner-spawn.d.ts.map +1 -0
- package/dist/workspace-runner-spawn.js +60 -0
- package/dist/workspace-runner-spawn.js.map +1 -0
- package/dist/workspace-runner-stop.d.ts +25 -0
- package/dist/workspace-runner-stop.d.ts.map +1 -0
- package/dist/workspace-runner-stop.js +44 -0
- package/dist/workspace-runner-stop.js.map +1 -0
- package/dist/workspace-runner-store.d.ts +26 -0
- package/dist/workspace-runner-store.d.ts.map +1 -0
- package/dist/workspace-runner-store.js +114 -0
- package/dist/workspace-runner-store.js.map +1 -0
- package/open-design.json +2 -2
- package/package.json +1 -1
- package/runtime/codex-conversion/src/images/native-invoke.mjs +24 -5
- package/runtime/codex-conversion/src/images/native.mjs +3 -2
|
@@ -6,9 +6,32 @@ import { type PlanImageName, type SlateDrawPlan } from './workspace-draw-types.j
|
|
|
6
6
|
*/
|
|
7
7
|
export declare const PUSH_HEADER = "X-12ui-Push";
|
|
8
8
|
export declare const CLI_HEADER = "X-12ui-Cli";
|
|
9
|
+
/**
|
|
10
|
+
* This CLI waits through the inspiration pause. The server tells a CLI that names itself without it (npm 0.2.75, which
|
|
11
|
+
* gave up after 180 s of `plan_pending`) to update while a round waits, rather than let it fail or loop.
|
|
12
|
+
*/
|
|
13
|
+
export declare const WAITS_HEADER = "X-12ui-Waits";
|
|
14
|
+
export declare const WAITS_PAUSE = "pause";
|
|
15
|
+
/**
|
|
16
|
+
* The workspace runner's own draws name the runner: a request held by a runner whose lease lapsed (in flight) reads
|
|
17
|
+
* its plan for that runner only, and anyone else is told to wait (`op_in_flight`). An identity, never a credential.
|
|
18
|
+
*/
|
|
19
|
+
export declare const RUNNER_HEADER = "X-12ui-Runner";
|
|
9
20
|
export declare const MAX_RETRIES = 3;
|
|
10
21
|
/** How long a plan may stay `plan_pending` (its direction call in flight) before the run gives up on it. */
|
|
11
22
|
export declare const PLAN_PENDING_LIMIT_MS = 180000;
|
|
23
|
+
/**
|
|
24
|
+
* A round that waits for the person to choose its references in the Design workspace (the inspiration pause): it
|
|
25
|
+
* starts by itself in `startsInSeconds` unless they touch the screen, or (`held`) when they press Continue. The plan is
|
|
26
|
+
* `plan_pending` with this `pause` meanwhile; the command waits as long as it lasts, which is not the 180 s it gives a
|
|
27
|
+
* direction call, since the person is the one taking the time.
|
|
28
|
+
*/
|
|
29
|
+
export type PlanPause = {
|
|
30
|
+
state: 'countdown';
|
|
31
|
+
startsInSeconds: number;
|
|
32
|
+
} | {
|
|
33
|
+
state: 'held';
|
|
34
|
+
};
|
|
12
35
|
/** The server answered with an error (`{ok:false,error:{code,...}}`, or the flat `{error:"code"}` form). */
|
|
13
36
|
export declare class DrawHttpError extends Error {
|
|
14
37
|
readonly status: number;
|
|
@@ -43,6 +66,14 @@ export type PushOutcome = {
|
|
|
43
66
|
};
|
|
44
67
|
/** The error code in either error shape the server uses. */
|
|
45
68
|
export declare const errorCodeOf: (body: unknown) => string | null;
|
|
69
|
+
/** The wait an error names: `retryAfterSeconds` in either error shape, else the `retry-after` header. */
|
|
70
|
+
export declare const retryAfterOf: (response: Response, body: unknown) => number | null;
|
|
71
|
+
/** The body as JSON when it parses, else as text. */
|
|
72
|
+
export declare const readBody: (response: Response) => Promise<unknown>;
|
|
73
|
+
/** The workspace a paused plan belongs to (its public handle, as the plan names it), or null when the answer has none. */
|
|
74
|
+
export declare const waitWorkspaceOf: (body: unknown) => string | null;
|
|
75
|
+
/** The pause a `plan_pending` answer names, or null when it is a direction call still being made. */
|
|
76
|
+
export declare const pauseOf: (body: unknown) => PlanPause | null;
|
|
46
77
|
/** Check the plan against I1 before anything is drawn from it; a plan this CLI cannot read is never guessed at. */
|
|
47
78
|
export declare const validatePlan: (value: unknown, opId: string) => SlateDrawPlan;
|
|
48
79
|
export declare const createDrawClient: (args: {
|
|
@@ -50,11 +81,21 @@ export declare const createDrawClient: (args: {
|
|
|
50
81
|
token: string;
|
|
51
82
|
opId: string;
|
|
52
83
|
cliVersion: string;
|
|
84
|
+
/** The workspace runner whose draw this is; absent for the agent's command. */
|
|
85
|
+
runnerId?: string;
|
|
53
86
|
fetch?: DrawFetch;
|
|
54
87
|
sleep?: (milliseconds: number) => Promise<void>;
|
|
55
88
|
now?: () => number;
|
|
89
|
+
/**
|
|
90
|
+
* Told every time the plan answers that the person is still choosing the round's references, with the workspace the
|
|
91
|
+
* request belongs to; the next read waits until it settles.
|
|
92
|
+
*/
|
|
93
|
+
onWait?: (pause: PlanPause, workspace: string | null) => void | Promise<void>;
|
|
56
94
|
}) => {
|
|
57
|
-
/**
|
|
95
|
+
/**
|
|
96
|
+
* The frozen plan (2.1), waiting out `plan_pending`: for as long as the person is choosing the round's references
|
|
97
|
+
* (the pause), then up to `PLAN_PENDING_LIMIT_MS` while the round's direction call finishes.
|
|
98
|
+
*/
|
|
58
99
|
plan: () => Promise<SlateDrawPlan>;
|
|
59
100
|
/** The exact bytes every engine attaches (2.2), checked against the server's sha256. */
|
|
60
101
|
image: (name: PlanImageName) => Promise<PlanImage>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspace-draw-client.d.ts","sourceRoot":"","sources":["../src/workspace-draw-client.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"workspace-draw-client.d.ts","sourceRoot":"","sources":["../src/workspace-draw-client.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { createHash } from 'node:crypto';
|
|
2
|
+
import { OPTION_FAILURE_CODES } from './workspace-draw-messages.js';
|
|
2
3
|
import { PLAN_SCHEMA } from './workspace-draw-types.js';
|
|
3
4
|
/**
|
|
4
5
|
* The CLI's side of interface I1: the three `/api/v1/slate/` routes `12ui workspace draw` calls on
|
|
@@ -7,6 +8,17 @@ import { PLAN_SCHEMA } from './workspace-draw-types.js';
|
|
|
7
8
|
*/
|
|
8
9
|
export const PUSH_HEADER = 'X-12ui-Push';
|
|
9
10
|
export const CLI_HEADER = 'X-12ui-Cli';
|
|
11
|
+
/**
|
|
12
|
+
* This CLI waits through the inspiration pause. The server tells a CLI that names itself without it (npm 0.2.75, which
|
|
13
|
+
* gave up after 180 s of `plan_pending`) to update while a round waits, rather than let it fail or loop.
|
|
14
|
+
*/
|
|
15
|
+
export const WAITS_HEADER = 'X-12ui-Waits';
|
|
16
|
+
export const WAITS_PAUSE = 'pause';
|
|
17
|
+
/**
|
|
18
|
+
* The workspace runner's own draws name the runner: a request held by a runner whose lease lapsed (in flight) reads
|
|
19
|
+
* its plan for that runner only, and anyone else is told to wait (`op_in_flight`). An identity, never a credential.
|
|
20
|
+
*/
|
|
21
|
+
export const RUNNER_HEADER = 'X-12ui-Runner';
|
|
10
22
|
export const MAX_RETRIES = 3;
|
|
11
23
|
/** How long a plan may stay `plan_pending` (its direction call in flight) before the run gives up on it. */
|
|
12
24
|
export const PLAN_PENDING_LIMIT_MS = 180_000;
|
|
@@ -48,14 +60,16 @@ export const errorCodeOf = (body) => {
|
|
|
48
60
|
return body.error.code;
|
|
49
61
|
return null;
|
|
50
62
|
};
|
|
51
|
-
|
|
63
|
+
/** The wait an error names: `retryAfterSeconds` in either error shape, else the `retry-after` header. */
|
|
64
|
+
export const retryAfterOf = (response, body) => {
|
|
52
65
|
const fromBody = isRecord(body) ? (body.retryAfterSeconds ?? (isRecord(body.error) ? body.error.retryAfterSeconds : undefined)) : undefined;
|
|
53
66
|
if (typeof fromBody === 'number' && Number.isFinite(fromBody) && fromBody >= 0)
|
|
54
67
|
return fromBody;
|
|
55
68
|
const header = Number(response.headers.get('retry-after'));
|
|
56
69
|
return Number.isFinite(header) && header >= 0 && response.headers.get('retry-after') !== null ? header : null;
|
|
57
70
|
};
|
|
58
|
-
|
|
71
|
+
/** The body as JSON when it parses, else as text. */
|
|
72
|
+
export const readBody = async (response) => {
|
|
59
73
|
const text = await response.text();
|
|
60
74
|
try {
|
|
61
75
|
return JSON.parse(text);
|
|
@@ -64,6 +78,23 @@ const readBody = async (response) => {
|
|
|
64
78
|
return text;
|
|
65
79
|
}
|
|
66
80
|
};
|
|
81
|
+
/** The workspace a paused plan belongs to (its public handle, as the plan names it), or null when the answer has none. */
|
|
82
|
+
export const waitWorkspaceOf = (body) => {
|
|
83
|
+
const workspace = isRecord(body) && isRecord(body.error) ? body.error.workspace : undefined;
|
|
84
|
+
return typeof workspace === 'string' && workspace !== '' ? workspace : null;
|
|
85
|
+
};
|
|
86
|
+
/** The pause a `plan_pending` answer names, or null when it is a direction call still being made. */
|
|
87
|
+
export const pauseOf = (body) => {
|
|
88
|
+
const pause = isRecord(body) && isRecord(body.error) ? body.error.pause : undefined;
|
|
89
|
+
if (!isRecord(pause))
|
|
90
|
+
return null;
|
|
91
|
+
if (pause.state === 'held')
|
|
92
|
+
return { state: 'held' };
|
|
93
|
+
if (pause.state === 'countdown' && typeof pause.startsInSeconds === 'number' && Number.isFinite(pause.startsInSeconds) && pause.startsInSeconds >= 0) {
|
|
94
|
+
return { state: 'countdown', startsInSeconds: pause.startsInSeconds };
|
|
95
|
+
}
|
|
96
|
+
return null;
|
|
97
|
+
};
|
|
67
98
|
/** Check the plan against I1 before anything is drawn from it; a plan this CLI cannot read is never guessed at. */
|
|
68
99
|
export const validatePlan = (value, opId) => {
|
|
69
100
|
const fail = (what) => { throw new DrawTransportError('malformed', `The plan for ${opId} is not one this command can read: ${what}.`); };
|
|
@@ -107,6 +138,12 @@ export const validatePlan = (value, opId) => {
|
|
|
107
138
|
};
|
|
108
139
|
export const createDrawClient = (args) => {
|
|
109
140
|
const fetcher = args.fetch ?? ((url, init) => fetch(url, init));
|
|
141
|
+
const identity = {
|
|
142
|
+
[PUSH_HEADER]: args.token,
|
|
143
|
+
[CLI_HEADER]: args.cliVersion,
|
|
144
|
+
[WAITS_HEADER]: WAITS_PAUSE,
|
|
145
|
+
...(args.runnerId ? { [RUNNER_HEADER]: args.runnerId } : {}),
|
|
146
|
+
};
|
|
110
147
|
const sleep = args.sleep ?? ((milliseconds) => new Promise((resolve) => { setTimeout(resolve, milliseconds); }));
|
|
111
148
|
const now = args.now ?? Date.now;
|
|
112
149
|
const opPath = `${args.origin}/api/v1/slate/ops/${encodeURIComponent(args.opId)}`;
|
|
@@ -115,7 +152,7 @@ export const createDrawClient = (args) => {
|
|
|
115
152
|
for (let attempt = 0;; attempt += 1) {
|
|
116
153
|
let response;
|
|
117
154
|
try {
|
|
118
|
-
response = await fetcher(url, { ...init, headers: {
|
|
155
|
+
response = await fetcher(url, { ...init, headers: { ...identity, ...init.headers } });
|
|
119
156
|
}
|
|
120
157
|
catch (cause) {
|
|
121
158
|
throw new DrawTransportError('unreachable', `${new URL(url).host} could not be reached`, { cause });
|
|
@@ -140,15 +177,25 @@ export const createDrawClient = (args) => {
|
|
|
140
177
|
return body;
|
|
141
178
|
};
|
|
142
179
|
return {
|
|
143
|
-
/**
|
|
180
|
+
/**
|
|
181
|
+
* The frozen plan (2.1), waiting out `plan_pending`: for as long as the person is choosing the round's references
|
|
182
|
+
* (the pause), then up to `PLAN_PENDING_LIMIT_MS` while the round's direction call finishes.
|
|
183
|
+
*/
|
|
144
184
|
plan: async () => {
|
|
145
|
-
|
|
185
|
+
let pendingSince = now();
|
|
146
186
|
for (;;) {
|
|
147
187
|
try {
|
|
148
188
|
return validatePlan(await json(await request(`${opPath}/plan`)), args.opId);
|
|
149
189
|
}
|
|
150
190
|
catch (error) {
|
|
151
|
-
if (!(error instanceof DrawHttpError) || error.code !== 'plan_pending'
|
|
191
|
+
if (!(error instanceof DrawHttpError) || error.code !== 'plan_pending')
|
|
192
|
+
throw error;
|
|
193
|
+
const pause = pauseOf(error.body);
|
|
194
|
+
if (pause) {
|
|
195
|
+
await args.onWait?.(pause, waitWorkspaceOf(error.body));
|
|
196
|
+
pendingSince = now();
|
|
197
|
+
}
|
|
198
|
+
else if (now() - pendingSince >= PLAN_PENDING_LIMIT_MS)
|
|
152
199
|
throw error;
|
|
153
200
|
await sleep(Math.max(1, error.retryAfterSeconds ?? 2) * 1000);
|
|
154
201
|
}
|
|
@@ -176,7 +223,9 @@ export const createDrawClient = (args) => {
|
|
|
176
223
|
form.append('file', new Blob([new Uint8Array(part.png)], { type: 'image/png' }), `${key}.png`);
|
|
177
224
|
else
|
|
178
225
|
form.append('reason', part.reason);
|
|
179
|
-
|
|
226
|
+
// A failure sentence of ours travels with its code; a server that does not know the parameter ignores it.
|
|
227
|
+
const code = 'reason' in part ? OPTION_FAILURE_CODES[part.reason] : undefined;
|
|
228
|
+
const url = `${args.origin}/api/v1/slate/push?op=${encodeURIComponent(args.opId)}&option=${encodeURIComponent(key)}${code ? `&code=${code}` : ''}`;
|
|
180
229
|
const body = await json(await request(url, { method: 'POST', body: form }));
|
|
181
230
|
if (body.state !== 'filled' && body.state !== 'failed')
|
|
182
231
|
throw new DrawTransportError('malformed', `The push of ${key} answered state ${JSON.stringify(body.state)}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspace-draw-client.js","sourceRoot":"","sources":["../src/workspace-draw-client.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"workspace-draw-client.js","sourceRoot":"","sources":["../src/workspace-draw-client.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type SlateImageExecutor } from './slate-image-executor.js';
|
|
1
|
+
import { type CodexProcessOptions, type SlateImageExecutor } from './slate-image-executor.js';
|
|
2
2
|
import type { DrawOptionCodex, SlatePlanOption } from './workspace-draw-types.js';
|
|
3
3
|
/**
|
|
4
4
|
* The codex engine for one option (design section 6): one native `codex exec` image call through the repo's own
|
|
@@ -31,19 +31,24 @@ export type CodexOptionResult = {
|
|
|
31
31
|
export type ExecutorFactory = (args: {
|
|
32
32
|
root: string;
|
|
33
33
|
env: NodeJS.ProcessEnv;
|
|
34
|
+
processOptions?: CodexProcessOptions;
|
|
34
35
|
}) => SlateImageExecutor;
|
|
35
36
|
/** The executor's call store keeps one folder per call id at `<root>/calls/<sha256(id)>`. */
|
|
36
37
|
export declare const callDirectoryOf: (root: string, callId: string) => string;
|
|
37
|
-
|
|
38
|
-
export declare const readCallDetails: (callDir: string, prompt: string) => Promise<DrawOptionCodex & {
|
|
38
|
+
type CallEnd = {
|
|
39
39
|
receiptState: string | null;
|
|
40
40
|
timedOut: boolean;
|
|
41
|
-
|
|
41
|
+
signal: string | null;
|
|
42
|
+
};
|
|
43
|
+
/** What the call directory says about the call, for the record. */
|
|
44
|
+
export declare const readCallDetails: (callDir: string, prompt: string) => Promise<DrawOptionCodex & CallEnd>;
|
|
42
45
|
export declare const drawOptionWithCodex: (args: {
|
|
43
46
|
root: string;
|
|
44
47
|
env: NodeJS.ProcessEnv;
|
|
45
48
|
option: SlatePlanOption;
|
|
46
49
|
images: Buffer[];
|
|
47
50
|
executorFactory?: ExecutorFactory;
|
|
51
|
+
processOptions?: CodexProcessOptions;
|
|
48
52
|
}) => Promise<CodexOptionResult>;
|
|
53
|
+
export {};
|
|
49
54
|
//# sourceMappingURL=workspace-draw-codex.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspace-draw-codex.d.ts","sourceRoot":"","sources":["../src/workspace-draw-codex.ts"],"names":[],"mappings":"AAKA,OAAO,EAA6B,KAAK,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"workspace-draw-codex.d.ts","sourceRoot":"","sources":["../src/workspace-draw-codex.ts"],"names":[],"mappings":"AAKA,OAAO,EAA6B,KAAK,mBAAmB,EAAE,KAAK,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAEzH,OAAO,KAAK,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAElF;;;;;;;;;GASG;AAEH,MAAM,MAAM,iBAAiB,GACzB;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,eAAe,CAAA;CAAE;AAC3E,4EAA4E;GAC1E;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,eAAe,CAAA;CAAE;AAC/D,+GAA+G;GAC7G;IAAE,IAAI,EAAE,aAAa,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,eAAe,CAAA;CAAE,CAAC;AAErE,MAAM,MAAM,eAAe,GAAG,CAAC,IAAI,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC,UAAU,CAAC;IAAC,cAAc,CAAC,EAAE,mBAAmB,CAAA;CAAE,KAAK,kBAAkB,CAAC;AAI3I,6FAA6F;AAC7F,eAAO,MAAM,eAAe,GAAI,MAAM,MAAM,EAAE,QAAQ,MAAM,KAAG,MAAkD,CAAC;AAWlH,KAAK,OAAO,GAAG;IAAE,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,QAAQ,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAAC;AAEzF,mEAAmE;AACnE,eAAO,MAAM,eAAe,GAAU,SAAS,MAAM,EAAE,QAAQ,MAAM,KAAG,OAAO,CAAC,eAAe,GAAG,OAAO,CAiCxG,CAAC;AAQF,eAAO,MAAM,mBAAmB,GAAU,MAAM;IAC9C,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC,UAAU,CAAC;IACvB,MAAM,EAAE,eAAe,CAAC;IACxB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,cAAc,CAAC,EAAE,mBAAmB,CAAC;CACtC,KAAG,OAAO,CAAC,iBAAiB,CAmC5B,CAAC"}
|
|
@@ -51,6 +51,7 @@ export const readCallDetails = async (callDir, prompt) => {
|
|
|
51
51
|
revisedPrompt: typeof revised === 'string' ? revised : null,
|
|
52
52
|
receiptState: typeof receipt?.state === 'string' ? receipt.state : null,
|
|
53
53
|
timedOut: completion?.timedOut === true,
|
|
54
|
+
signal: typeof completion?.signal === 'string' ? completion.signal : null,
|
|
54
55
|
};
|
|
55
56
|
};
|
|
56
57
|
const failureSentence = (details) => {
|
|
@@ -61,11 +62,17 @@ const failureSentence = (details) => {
|
|
|
61
62
|
return OPTION_FAILURES.noImage;
|
|
62
63
|
};
|
|
63
64
|
export const drawOptionWithCodex = async (args) => {
|
|
64
|
-
const executor = (args.executorFactory ?? createNativeImageExecutor)({
|
|
65
|
+
const executor = (args.executorFactory ?? createNativeImageExecutor)({
|
|
66
|
+
root: args.root,
|
|
67
|
+
env: args.env,
|
|
68
|
+
...(args.processOptions ? { processOptions: args.processOptions } : {}),
|
|
69
|
+
});
|
|
65
70
|
const callDir = callDirectoryOf(args.root, args.option.callId);
|
|
71
|
+
// A call this run dispatches has no state yet; one an earlier run dispatched is settled by the executor's rule.
|
|
72
|
+
const dispatchedEarlier = existsSync(path.join(callDir, 'state.json'));
|
|
66
73
|
const details = async () => {
|
|
67
|
-
const { receiptState, timedOut, ...record } = await readCallDetails(callDir, args.option.prompt);
|
|
68
|
-
return { record, receiptState, timedOut };
|
|
74
|
+
const { receiptState, timedOut, signal, ...record } = await readCallDetails(callDir, args.option.prompt);
|
|
75
|
+
return { record, receiptState, timedOut, signal };
|
|
69
76
|
};
|
|
70
77
|
try {
|
|
71
78
|
const result = await executor.generate({
|
|
@@ -79,6 +86,13 @@ export const drawOptionWithCodex = async (args) => {
|
|
|
79
86
|
catch (error) {
|
|
80
87
|
const code = error.code;
|
|
81
88
|
const read = await details();
|
|
89
|
+
// Codex was stopped by a signal before it returned an image, in this run (macOS signals every process at logout,
|
|
90
|
+
// or the person stopped it): not the model's failure, so it is not pushed, and the request goes back to whoever
|
|
91
|
+
// runs it again. That rerun settles the call by the executor's rule: an image that landed is recovered, anything
|
|
92
|
+
// else is never dispatched again and shows the fixed failure sentence.
|
|
93
|
+
if (code === 'NEEDS_RECONCILIATION' && !dispatchedEarlier && read.signal !== null && !read.timedOut) {
|
|
94
|
+
return { kind: 'environment', error: `Codex was stopped (${read.signal}) before it returned an image.`, details: read.record };
|
|
95
|
+
}
|
|
82
96
|
if (code === 'NEEDS_RECONCILIATION')
|
|
83
97
|
return { kind: 'failed', failure: failureSentence(read), details: read.record };
|
|
84
98
|
if (code === 'REQUEST_CHANGED')
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspace-draw-codex.js","sourceRoot":"","sources":["../src/workspace-draw-codex.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,yBAAyB,
|
|
1
|
+
{"version":3,"file":"workspace-draw-codex.js","sourceRoot":"","sources":["../src/workspace-draw-codex.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { CodexReadinessCheck } from './cli-codex-readiness.js';
|
|
2
|
+
import type { SlateServerMessageCode } from './slate-view-contract.js';
|
|
2
3
|
export declare const DRAW_MESSAGES: {
|
|
3
4
|
readonly added: (args: {
|
|
4
5
|
count: number;
|
|
@@ -19,6 +20,10 @@ export declare const DRAW_MESSAGES: {
|
|
|
19
20
|
readonly unknownOp: () => string;
|
|
20
21
|
readonly notDrawing: () => string;
|
|
21
22
|
readonly opInProgress: () => string;
|
|
23
|
+
/** A runner whose Mac stopped answering mid-draw still holds the request: its images may land, so nothing is drawn. */
|
|
24
|
+
readonly opInFlight: (args: {
|
|
25
|
+
minutes: number;
|
|
26
|
+
}) => string;
|
|
22
27
|
readonly usage: (reason: string) => string;
|
|
23
28
|
readonly needsEscalation: () => string;
|
|
24
29
|
readonly unreachable: () => string;
|
|
@@ -31,7 +36,21 @@ export declare const DRAW_MESSAGES: {
|
|
|
31
36
|
readonly noEngine: (check: Exclude<CodexReadinessCheck, "ready">) => string;
|
|
32
37
|
readonly codexStopped: () => string;
|
|
33
38
|
readonly cliOutdated: () => string;
|
|
39
|
+
/** Appended to `message` when the command left a workspace runner behind, so the person learns a helper stays. */
|
|
40
|
+
readonly runnerStarted: (args: {
|
|
41
|
+
idleMinutes: number;
|
|
42
|
+
}) => string;
|
|
43
|
+
};
|
|
44
|
+
/**
|
|
45
|
+
* The progress lines (stderr) while the person chooses a round's references in the Design workspace (the inspiration
|
|
46
|
+
* pause): the countdown, then, once they touch the screen, that it waits for Continue.
|
|
47
|
+
*/
|
|
48
|
+
export declare const DRAW_WAITS: {
|
|
49
|
+
readonly countdown: (seconds: number) => string;
|
|
50
|
+
readonly held: () => string;
|
|
34
51
|
};
|
|
52
|
+
/** How often a countdown line repeats while nothing else changes. */
|
|
53
|
+
export declare const DRAW_WAIT_EVERY_SECONDS = 15;
|
|
35
54
|
/** Why Codex cannot draw here, one sentence per readiness check that can fail. */
|
|
36
55
|
export declare const CODEX_NOT_READY: Record<Exclude<CodexReadinessCheck, 'ready'>, string>;
|
|
37
56
|
/** What a failed option shows on the screen: fixed sentences, at most 200 characters each (I1 2.3). */
|
|
@@ -42,4 +61,9 @@ export declare const OPTION_FAILURES: {
|
|
|
42
61
|
readonly changed: "This option was drawn on this Mac with different inputs and cannot be drawn again here.";
|
|
43
62
|
readonly codexUnavailable: "Codex cannot draw on this Mac, and drawing on 12ui needs a 12ui sign-in.";
|
|
44
63
|
};
|
|
64
|
+
/**
|
|
65
|
+
* The code each failure sentence is pushed with (`&code=`), so the Design workspace screen can word it in the person's
|
|
66
|
+
* language (`server.<code>` in its catalogue); the sentence itself stays the agent's English.
|
|
67
|
+
*/
|
|
68
|
+
export declare const OPTION_FAILURE_CODES: Readonly<Record<string, SlateServerMessageCode>>;
|
|
45
69
|
//# sourceMappingURL=workspace-draw-messages.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspace-draw-messages.d.ts","sourceRoot":"","sources":["../src/workspace-draw-messages.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"workspace-draw-messages.d.ts","sourceRoot":"","sources":["../src/workspace-draw-messages.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AACpE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AASvE,eAAO,MAAM,aAAa;2BACV;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,OAAO,CAAC;QAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,KAAG,MAAM;8BAG5D;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,KAAG,MAAM;6BAG3B;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,KAAG,MAAM;4BAG1C;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,KAAG,MAAM;iCAGvB,MAAM;8BACT,MAAM;+BACL,MAAM;iCACJ,MAAM;IACxB,uHAAuH;gCACpG;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,KAAG,MAAM;6BAG/B,MAAM,KAAG,MAAM;oCACV,MAAM;gCACV,MAAM;gCACN,MAAM;IACvB;;;;OAIG;+BACe,OAAO,CAAC,mBAAmB,EAAE,OAAO,CAAC,KAAG,MAAM;iCAG9C,MAAM;gCACP,MAAM;IACvB,kHAAkH;mCAC5F;QAAE,WAAW,EAAE,MAAM,CAAA;KAAE,KAAG,MAAM;CAG9C,CAAC;AAEX;;;GAGG;AACH,eAAO,MAAM,UAAU;kCACA,MAAM,KAAG,MAAM;yBAC1B,MAAM;CACR,CAAC;AAEX,qEAAqE;AACrE,eAAO,MAAM,uBAAuB,KAAK,CAAC;AAE1C,kFAAkF;AAClF,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,OAAO,CAAC,mBAAmB,EAAE,OAAO,CAAC,EAAE,MAAM,CASjF,CAAC;AAEF,uGAAuG;AACvG,eAAO,MAAM,eAAe;;;;;;CAMlB,CAAC;AAEX;;;GAGG;AACH,eAAO,MAAM,oBAAoB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,sBAAsB,CAAC,CAMjF,CAAC"}
|
|
@@ -12,6 +12,8 @@ export const DRAW_MESSAGES = {
|
|
|
12
12
|
unknownOp: () => 'That request is not in this workspace.',
|
|
13
13
|
notDrawing: () => 'That request has no options to draw.',
|
|
14
14
|
opInProgress: () => 'This request is already being drawn on this Mac. Wait for that command to finish.',
|
|
15
|
+
/** A runner whose Mac stopped answering mid-draw still holds the request: its images may land, so nothing is drawn. */
|
|
16
|
+
opInFlight: (args) => (`This request is still being drawn by a 12ui helper that stopped answering, and its images may still land. Wait for it; if nothing lands, it comes back to you in about ${plural(args.minutes, 'minute')}.`),
|
|
15
17
|
usage: (reason) => `${reason} Usage: 12ui workspace draw --op <request id> --token <upload token> [--origin <url>] [--engine auto|codex] [--dry-run]`,
|
|
16
18
|
needsEscalation: () => 'This command must run outside the sandbox. Run the same command again with escalated permissions.',
|
|
17
19
|
unreachable: () => 'design.12ui.com could not be reached from here. Run the same command again with escalated permissions.',
|
|
@@ -24,7 +26,19 @@ export const DRAW_MESSAGES = {
|
|
|
24
26
|
noEngine: (check) => (`${CODEX_NOT_READY[check]} Nothing was drawn. Drawing on 12ui needs a 12ui sign-in (12ui login).`),
|
|
25
27
|
codexStopped: () => 'Codex stopped being able to draw on this Mac partway through. Run the same command again.',
|
|
26
28
|
cliOutdated: () => 'This 12ui command line is older than the Design workspace needs. Install the current one, then run the same command.',
|
|
29
|
+
/** Appended to `message` when the command left a workspace runner behind, so the person learns a helper stays. */
|
|
30
|
+
runnerStarted: (args) => (`A small 12ui helper keeps running for up to ${args.idleMinutes} idle minutes to draw your next requests without the chat; 12ui workspace runner stop ends it.`),
|
|
27
31
|
};
|
|
32
|
+
/**
|
|
33
|
+
* The progress lines (stderr) while the person chooses a round's references in the Design workspace (the inspiration
|
|
34
|
+
* pause): the countdown, then, once they touch the screen, that it waits for Continue.
|
|
35
|
+
*/
|
|
36
|
+
export const DRAW_WAITS = {
|
|
37
|
+
countdown: (seconds) => `12ui workspace draw: waiting while the person chooses references in the Design workspace; drawing starts in ${seconds} s unless they pause it`,
|
|
38
|
+
held: () => '12ui workspace draw: paused in the Design workspace; drawing starts when the person presses Continue',
|
|
39
|
+
};
|
|
40
|
+
/** How often a countdown line repeats while nothing else changes. */
|
|
41
|
+
export const DRAW_WAIT_EVERY_SECONDS = 15;
|
|
28
42
|
/** Why Codex cannot draw here, one sentence per readiness check that can fail. */
|
|
29
43
|
export const CODEX_NOT_READY = {
|
|
30
44
|
no_binary: 'Codex is not installed on this Mac.',
|
|
@@ -44,4 +58,15 @@ export const OPTION_FAILURES = {
|
|
|
44
58
|
changed: 'This option was drawn on this Mac with different inputs and cannot be drawn again here.',
|
|
45
59
|
codexUnavailable: 'Codex cannot draw on this Mac, and drawing on 12ui needs a 12ui sign-in.',
|
|
46
60
|
};
|
|
61
|
+
/**
|
|
62
|
+
* The code each failure sentence is pushed with (`&code=`), so the Design workspace screen can word it in the person's
|
|
63
|
+
* language (`server.<code>` in its catalogue); the sentence itself stays the agent's English.
|
|
64
|
+
*/
|
|
65
|
+
export const OPTION_FAILURE_CODES = {
|
|
66
|
+
[OPTION_FAILURES.noImage]: 'draw_no_image',
|
|
67
|
+
[OPTION_FAILURES.protocol]: 'draw_protocol',
|
|
68
|
+
[OPTION_FAILURES.timeout]: 'draw_timeout',
|
|
69
|
+
[OPTION_FAILURES.changed]: 'draw_inputs_changed',
|
|
70
|
+
[OPTION_FAILURES.codexUnavailable]: 'draw_codex_unavailable',
|
|
71
|
+
};
|
|
47
72
|
//# sourceMappingURL=workspace-draw-messages.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspace-draw-messages.js","sourceRoot":"","sources":["../src/workspace-draw-messages.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"workspace-draw-messages.js","sourceRoot":"","sources":["../src/workspace-draw-messages.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { CodexProcessOptions } from './slate-image-executor.js';
|
|
2
|
+
import { type DrawFetch, type PlanPause } from './workspace-draw-client.js';
|
|
2
3
|
import { type ExecutorFactory } from './workspace-draw-codex.js';
|
|
3
4
|
import { type ReadinessProbe, type RequestedEngine } from './workspace-draw-engine.js';
|
|
5
|
+
import type { RunnerLauncher } from './workspace-runner-spawn.js';
|
|
4
6
|
import { type DrawCode } from './workspace-draw-types.js';
|
|
5
7
|
/**
|
|
6
8
|
* `12ui workspace draw`, start to finish (design section 3): the sandbox gate, the op lock, the frozen plan and its
|
|
@@ -9,12 +11,14 @@ import { type DrawCode } from './workspace-draw-types.js';
|
|
|
9
11
|
* When Codex cannot draw here it spends nothing and draws nothing (decision D2-B): it pushes each pending option's
|
|
10
12
|
* failure and exits 4 with the reason and that drawing on 12ui needs a 12ui sign-in.
|
|
11
13
|
*/
|
|
14
|
+
/** `runnerId`: set by the workspace runner for its own draws (its claim lets it read an in-flight request's plan). */
|
|
12
15
|
export type DrawArguments = {
|
|
13
16
|
opId: string;
|
|
14
17
|
token: string;
|
|
15
18
|
origin: string;
|
|
16
19
|
engine: RequestedEngine;
|
|
17
20
|
dryRun: boolean;
|
|
21
|
+
runnerId?: string;
|
|
18
22
|
};
|
|
19
23
|
export type DrawDependencies = {
|
|
20
24
|
env?: NodeJS.ProcessEnv;
|
|
@@ -25,8 +29,17 @@ export type DrawDependencies = {
|
|
|
25
29
|
cliVersion?: string;
|
|
26
30
|
probe?: ReadinessProbe;
|
|
27
31
|
executorFactory?: ExecutorFactory;
|
|
32
|
+
/** How each option's `codex exec` child runs; the workspace runner finishes its calls on a signal and records them. */
|
|
33
|
+
processOptions?: CodexProcessOptions;
|
|
28
34
|
/** One progress line per option, on stderr. */
|
|
29
35
|
progress?: (line: string) => void;
|
|
36
|
+
/**
|
|
37
|
+
* Leaves the workspace runner behind once the token has read a plan (or been told the round waits on the person) and
|
|
38
|
+
* Codex can draw here, so the person's later clicks are drawn without the agent, and a round whose draw was stopped
|
|
39
|
+
* during the pause is still drawn (docs/slate-remote.md, "The workspace runner"). Only the command the agent runs
|
|
40
|
+
* passes it; the runner's own draws do not.
|
|
41
|
+
*/
|
|
42
|
+
launchRunner?: RunnerLauncher;
|
|
30
43
|
};
|
|
31
44
|
export type DrawResult = {
|
|
32
45
|
exitCode: number;
|
|
@@ -38,6 +51,11 @@ type Abort = {
|
|
|
38
51
|
};
|
|
39
52
|
/** Server and transport failures, as the command's refusal codes. Anything else is a fault and is thrown. */
|
|
40
53
|
export declare const abortOf: (error: unknown) => Abort | null;
|
|
54
|
+
/**
|
|
55
|
+
* The wait, as progress lines: one when it starts, one whenever it changes (the person touched the screen), and the
|
|
56
|
+
* countdown again every `DRAW_WAIT_EVERY_SECONDS`, so the output says why nothing is drawn yet without a line per poll.
|
|
57
|
+
*/
|
|
58
|
+
export declare const waitReporter: (progress: (line: string) => void) => ((pause: PlanPause) => void);
|
|
41
59
|
export declare const runWorkspaceDraw: (args: DrawArguments, deps?: DrawDependencies) => Promise<DrawResult>;
|
|
42
60
|
export {};
|
|
43
61
|
//# sourceMappingURL=workspace-draw-run.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspace-draw-run.d.ts","sourceRoot":"","sources":["../src/workspace-draw-run.ts"],"names":[],"mappings":"AACA,OAAO,EAAwE,KAAK,SAAS,EAAkB,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"workspace-draw-run.d.ts","sourceRoot":"","sources":["../src/workspace-draw-run.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AACrE,OAAO,EAAwE,KAAK,SAAS,EAAkB,KAAK,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAClK,OAAO,EAAuB,KAAK,eAAe,EAAE,MAAM,2BAA2B,CAAC;AACtF,OAAO,EAAgB,KAAK,cAAc,EAAE,KAAK,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAIrG,OAAO,KAAK,EAAgB,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAChF,OAAO,EAGL,KAAK,QAAQ,EASd,MAAM,2BAA2B,CAAC;AAEnC;;;;;;GAMG;AAEH,sHAAsH;AACtH,MAAM,MAAM,aAAa,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,eAAe,CAAC;IAAC,MAAM,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAEzI,MAAM,MAAM,gBAAgB,GAAG;IAC7B,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IACxB,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,KAAK,CAAC,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAChD,GAAG,CAAC,EAAE,MAAM,IAAI,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,cAAc,CAAC;IACvB,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,uHAAuH;IACvH,cAAc,CAAC,EAAE,mBAAmB,CAAC;IACrC,+CAA+C;IAC/C,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC;;;;;OAKG;IACH,YAAY,CAAC,EAAE,cAAc,CAAC;CAC/B,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,CAAC;AAE/E,KAAK,KAAK,GAAG;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAUjD,6GAA6G;AAC7G,eAAO,MAAM,OAAO,GAAI,OAAO,OAAO,KAAG,KAAK,GAAG,IAkBhD,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,YAAY,GAAI,UAAU,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,KAAG,CAAC,CAAC,KAAK,EAAE,SAAS,KAAK,IAAI,CAS1F,CAAC;AAyBF,eAAO,MAAM,gBAAgB,GAAU,MAAM,aAAa,EAAE,OAAM,gBAAqB,KAAG,OAAO,CAAC,UAAU,CAwI3G,CAAC"}
|