@12ui/design 0.2.26 → 0.2.28
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 +72 -87
- package/SKILL.md +5 -5
- package/dist/branch-client.d.ts +7 -0
- package/dist/branch-client.d.ts.map +1 -1
- package/dist/branch-client.js +1 -0
- package/dist/branch-client.js.map +1 -1
- package/dist/branch-completion.d.ts +8 -0
- package/dist/branch-completion.d.ts.map +1 -1
- package/dist/branch-completion.js +84 -16
- package/dist/branch-completion.js.map +1 -1
- package/dist/branch-execution.d.ts +8 -0
- package/dist/branch-execution.d.ts.map +1 -1
- package/dist/branch-execution.js +62 -11
- package/dist/branch-execution.js.map +1 -1
- package/dist/branch-identity.d.ts +10 -4
- package/dist/branch-identity.d.ts.map +1 -1
- package/dist/branch-identity.js +9 -6
- package/dist/branch-identity.js.map +1 -1
- package/dist/branch-page-conversion.d.ts +14 -8
- package/dist/branch-page-conversion.d.ts.map +1 -1
- package/dist/branch-page-conversion.js +32 -15
- package/dist/branch-page-conversion.js.map +1 -1
- package/dist/branch-page-packaging.d.ts +31 -0
- package/dist/branch-page-packaging.d.ts.map +1 -0
- package/dist/branch-page-packaging.js +86 -0
- package/dist/branch-page-packaging.js.map +1 -0
- package/dist/branch-plan.d.ts +44 -0
- package/dist/branch-plan.d.ts.map +1 -1
- package/dist/branch-plan.js +89 -18
- package/dist/branch-plan.js.map +1 -1
- package/dist/branch-progress.d.ts +22 -0
- package/dist/branch-progress.d.ts.map +1 -1
- package/dist/branch-progress.js +46 -8
- package/dist/branch-progress.js.map +1 -1
- package/dist/branch-run-record.d.ts +36 -1
- package/dist/branch-run-record.d.ts.map +1 -1
- package/dist/branch-run-record.js.map +1 -1
- package/dist/branch-status.d.ts +2 -0
- package/dist/branch-status.d.ts.map +1 -1
- package/dist/branch-status.js +60 -15
- package/dist/branch-status.js.map +1 -1
- package/dist/branch-winner.d.ts +13 -15
- package/dist/branch-winner.d.ts.map +1 -1
- package/dist/branch-winner.js +25 -77
- package/dist/branch-winner.js.map +1 -1
- package/dist/cli-auth-command.d.ts.map +1 -1
- package/dist/cli-auth-command.js +5 -0
- package/dist/cli-auth-command.js.map +1 -1
- package/dist/cli-auth-onboarding.d.ts +12 -0
- package/dist/cli-auth-onboarding.d.ts.map +1 -0
- package/dist/cli-auth-onboarding.js +21 -0
- package/dist/cli-auth-onboarding.js.map +1 -0
- package/dist/cli-branch-command.d.ts +14 -19
- package/dist/cli-branch-command.d.ts.map +1 -1
- package/dist/cli-branch-command.js +207 -137
- package/dist/cli-branch-command.js.map +1 -1
- package/dist/cli-capabilities.d.ts +10 -51
- package/dist/cli-capabilities.d.ts.map +1 -1
- package/dist/cli-capabilities.js +13 -26
- package/dist/cli-capabilities.js.map +1 -1
- package/dist/cli-cli-command.d.ts +3 -0
- package/dist/cli-cli-command.d.ts.map +1 -1
- package/dist/cli-cli-command.js +15 -3
- package/dist/cli-cli-command.js.map +1 -1
- package/dist/cli-conversion-derivation.d.ts +30 -0
- package/dist/cli-conversion-derivation.d.ts.map +1 -0
- package/dist/{cli-export-command.js → cli-conversion-derivation.js} +178 -110
- package/dist/cli-conversion-derivation.js.map +1 -0
- package/dist/cli-conversion-output-directory.d.ts +5 -0
- package/dist/cli-conversion-output-directory.d.ts.map +1 -0
- package/dist/{cli-export-output-directory.js → cli-conversion-output-directory.js} +10 -10
- package/dist/cli-conversion-output-directory.js.map +1 -0
- package/dist/cli-convert-command.d.ts +9 -0
- package/dist/cli-convert-command.d.ts.map +1 -1
- package/dist/cli-convert-command.js +528 -158
- package/dist/cli-convert-command.js.map +1 -1
- package/dist/cli-corpus-command.d.ts.map +1 -1
- package/dist/cli-corpus-command.js +77 -10
- package/dist/cli-corpus-command.js.map +1 -1
- package/dist/cli-corpus-reference-downloads.d.ts +5 -0
- package/dist/cli-corpus-reference-downloads.d.ts.map +1 -1
- package/dist/cli-corpus-reference-downloads.js +18 -7
- package/dist/cli-corpus-reference-downloads.js.map +1 -1
- package/dist/cli-corpus-run.d.ts +9 -0
- package/dist/cli-corpus-run.d.ts.map +1 -1
- package/dist/cli-corpus-run.js +18 -0
- package/dist/cli-corpus-run.js.map +1 -1
- package/dist/cli-detach.d.ts +12 -4
- package/dist/cli-detach.d.ts.map +1 -1
- package/dist/cli-detach.js +49 -17
- package/dist/cli-detach.js.map +1 -1
- package/dist/cli-draft-command.d.ts +44 -61
- package/dist/cli-draft-command.d.ts.map +1 -1
- package/dist/cli-draft-command.js +307 -180
- package/dist/cli-draft-command.js.map +1 -1
- package/dist/cli-help/conversion.d.ts +30 -0
- package/dist/cli-help/conversion.d.ts.map +1 -0
- package/dist/cli-help/conversion.js +55 -0
- package/dist/cli-help/conversion.js.map +1 -0
- package/dist/cli-help/design.d.ts +74 -0
- package/dist/cli-help/design.d.ts.map +1 -0
- package/dist/cli-help/design.js +131 -0
- package/dist/cli-help/design.js.map +1 -0
- package/dist/cli-help/index.d.ts +224 -0
- package/dist/cli-help/index.d.ts.map +1 -0
- package/dist/cli-help/index.js +32 -0
- package/dist/cli-help/index.js.map +1 -0
- package/dist/cli-help/meta.d.ts +24 -0
- package/dist/cli-help/meta.d.ts.map +1 -0
- package/dist/cli-help/meta.js +30 -0
- package/dist/cli-help/meta.js.map +1 -0
- package/dist/cli-help/render.d.ts +4 -0
- package/dist/cli-help/render.d.ts.map +1 -0
- package/dist/cli-help/render.js +28 -0
- package/dist/cli-help/render.js.map +1 -0
- package/dist/cli-help/setup.d.ts +93 -0
- package/dist/cli-help/setup.d.ts.map +1 -0
- package/dist/cli-help/setup.js +142 -0
- package/dist/cli-help/setup.js.map +1 -0
- package/dist/cli-help/types.d.ts +10 -0
- package/dist/cli-help/types.d.ts.map +1 -0
- package/dist/cli-help/types.js +2 -0
- package/dist/cli-help/types.js.map +1 -0
- package/dist/cli-next-command.d.ts +11 -8
- package/dist/cli-next-command.d.ts.map +1 -1
- package/dist/cli-next-command.js +288 -88
- package/dist/cli-next-command.js.map +1 -1
- package/dist/cli-output-paths.d.ts +2 -23
- package/dist/cli-output-paths.d.ts.map +1 -1
- package/dist/cli-output-paths.js +2 -36
- package/dist/cli-output-paths.js.map +1 -1
- package/dist/cli-package-command.d.ts +1 -0
- package/dist/cli-package-command.d.ts.map +1 -1
- package/dist/cli-package-command.js +107 -34
- package/dist/cli-package-command.js.map +1 -1
- package/dist/cli-pending-auth.d.ts +20 -0
- package/dist/cli-pending-auth.d.ts.map +1 -0
- package/dist/cli-pending-auth.js +160 -0
- package/dist/cli-pending-auth.js.map +1 -0
- package/dist/cli-progress.d.ts +256 -75
- package/dist/cli-progress.d.ts.map +1 -1
- package/dist/cli-progress.js +425 -98
- package/dist/cli-progress.js.map +1 -1
- package/dist/cli-run.d.ts +2 -0
- package/dist/cli-run.d.ts.map +1 -1
- package/dist/cli-run.js +56 -75
- package/dist/cli-run.js.map +1 -1
- package/dist/cli-skill-command.d.ts +3 -0
- package/dist/cli-skill-command.d.ts.map +1 -1
- package/dist/cli-skill-command.js +26 -3
- package/dist/cli-skill-command.js.map +1 -1
- package/dist/cli-usage.d.ts +17 -8
- package/dist/cli-usage.d.ts.map +1 -1
- package/dist/cli-usage.js +55 -40
- package/dist/cli-usage.js.map +1 -1
- package/dist/config.d.ts +1 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +8 -2
- package/dist/config.js.map +1 -1
- package/dist/conversion-client.d.ts +4 -0
- package/dist/conversion-client.d.ts.map +1 -1
- package/dist/conversion-client.js +23 -3
- package/dist/conversion-client.js.map +1 -1
- package/dist/conversion-outputs.d.ts +11 -0
- package/dist/conversion-outputs.d.ts.map +1 -1
- package/dist/conversion-outputs.js +13 -1
- package/dist/conversion-outputs.js.map +1 -1
- package/dist/conversion-receipt.d.ts +1 -1
- package/dist/conversion-receipt.js +1 -1
- package/dist/conversion-recovery.d.ts +20 -0
- package/dist/conversion-recovery.d.ts.map +1 -0
- package/dist/conversion-recovery.js +61 -0
- package/dist/conversion-recovery.js.map +1 -0
- package/dist/conversion-status-contract.js +1 -1
- package/dist/conversion-status-contract.js.map +1 -1
- package/dist/credential-setup.d.ts +9 -1
- package/dist/credential-setup.d.ts.map +1 -1
- package/dist/credential-setup.js +13 -1
- package/dist/credential-setup.js.map +1 -1
- package/dist/draft-adoption.d.ts +9 -3
- package/dist/draft-adoption.d.ts.map +1 -1
- package/dist/draft-adoption.js +26 -41
- package/dist/draft-adoption.js.map +1 -1
- package/dist/draft-identity.d.ts +9 -12
- package/dist/draft-identity.d.ts.map +1 -1
- package/dist/draft-identity.js +0 -0
- package/dist/draft-identity.js.map +1 -1
- package/dist/draft-run.d.ts +9 -19
- package/dist/draft-run.d.ts.map +1 -1
- package/dist/draft-run.js +67 -95
- package/dist/draft-run.js.map +1 -1
- package/dist/draft-workspace.d.ts +26 -18
- package/dist/draft-workspace.d.ts.map +1 -1
- package/dist/draft-workspace.js +16 -5
- package/dist/draft-workspace.js.map +1 -1
- package/dist/hosted-draft-identity.d.ts +20 -0
- package/dist/hosted-draft-identity.d.ts.map +1 -0
- package/dist/hosted-draft-identity.js +30 -0
- package/dist/hosted-draft-identity.js.map +1 -0
- package/dist/hosted-draft-run.d.ts +60 -0
- package/dist/hosted-draft-run.d.ts.map +1 -0
- package/dist/hosted-draft-run.js +97 -0
- package/dist/hosted-draft-run.js.map +1 -0
- package/dist/legacy-codex-cleanup.d.ts +13 -0
- package/dist/legacy-codex-cleanup.d.ts.map +1 -1
- package/dist/legacy-codex-cleanup.js +83 -0
- package/dist/legacy-codex-cleanup.js.map +1 -1
- package/dist/legacy-skill-catalog.d.ts +2 -2
- package/dist/legacy-skill-catalog.d.ts.map +1 -1
- package/dist/legacy-skill-catalog.js +76 -5
- package/dist/legacy-skill-catalog.js.map +1 -1
- package/dist/login-auth.d.ts +38 -0
- package/dist/login-auth.d.ts.map +1 -1
- package/dist/login-auth.js +67 -16
- package/dist/login-auth.js.map +1 -1
- package/dist/mcp-tool-definitions.js +1 -1
- package/dist/mcp-tool-definitions.js.map +1 -1
- package/dist/next-target.d.ts +1 -4
- package/dist/next-target.d.ts.map +1 -1
- package/dist/next-target.js +5 -9
- package/dist/next-target.js.map +1 -1
- package/dist/next-wait-lease.d.ts +17 -0
- package/dist/next-wait-lease.d.ts.map +1 -0
- package/dist/next-wait-lease.js +92 -0
- package/dist/next-wait-lease.js.map +1 -0
- package/dist/operation-poll-policy.d.ts +89 -0
- package/dist/operation-poll-policy.d.ts.map +1 -0
- package/dist/operation-poll-policy.js +99 -0
- package/dist/operation-poll-policy.js.map +1 -0
- package/dist/package-client.d.ts +30 -0
- package/dist/package-client.d.ts.map +1 -1
- package/dist/package-client.js +48 -9
- package/dist/package-client.js.map +1 -1
- package/dist/package-submission.d.ts +17 -0
- package/dist/package-submission.d.ts.map +1 -1
- package/dist/package-submission.js +43 -2
- package/dist/package-submission.js.map +1 -1
- package/dist/pending-auth-store.d.ts +15 -0
- package/dist/pending-auth-store.d.ts.map +1 -0
- package/dist/pending-auth-store.js +90 -0
- package/dist/pending-auth-store.js.map +1 -0
- package/dist/responsive-quality.d.ts +2 -2
- package/dist/responsive-quality.js +2 -2
- package/dist/run-journal-commands.d.ts.map +1 -1
- package/dist/run-journal-commands.js +30 -78
- package/dist/run-journal-commands.js.map +1 -1
- package/dist/run-journal-in-flight.d.ts +2 -2
- package/dist/run-journal-in-flight.d.ts.map +1 -1
- package/dist/run-journal-in-flight.js +0 -0
- package/dist/run-journal-in-flight.js.map +1 -1
- package/dist/skill-installer.d.ts +2 -2
- package/dist/skill-installer.d.ts.map +1 -1
- package/dist/skill-installer.js +2 -2
- package/dist/skill-installer.js.map +1 -1
- package/open-design.json +3 -3
- package/package.json +1 -1
- package/skills/12ui-design/SKILL.md +62 -0
- package/skills/12ui-design/agents/openai.yaml +6 -0
- package/skills/12ui-design/inspire.md +11 -0
- package/dist/cli-create-command.d.ts +0 -59
- package/dist/cli-create-command.d.ts.map +0 -1
- package/dist/cli-create-command.js +0 -354
- package/dist/cli-create-command.js.map +0 -1
- package/dist/cli-export-command.d.ts +0 -26
- package/dist/cli-export-command.d.ts.map +0 -1
- package/dist/cli-export-command.js.map +0 -1
- package/dist/cli-export-output-directory.d.ts +0 -5
- package/dist/cli-export-output-directory.d.ts.map +0 -1
- package/dist/cli-export-output-directory.js.map +0 -1
- package/dist/cli-image-batch-command.d.ts +0 -29
- package/dist/cli-image-batch-command.d.ts.map +0 -1
- package/dist/cli-image-batch-command.js +0 -236
- package/dist/cli-image-batch-command.js.map +0 -1
- package/dist/cli-image-batch-materialize.d.ts +0 -27
- package/dist/cli-image-batch-materialize.d.ts.map +0 -1
- package/dist/cli-image-batch-materialize.js +0 -41
- package/dist/cli-image-batch-materialize.js.map +0 -1
- package/dist/cli-image-batch-resume.d.ts +0 -36
- package/dist/cli-image-batch-resume.d.ts.map +0 -1
- package/dist/cli-image-batch-resume.js +0 -176
- package/dist/cli-image-batch-resume.js.map +0 -1
- package/dist/cli-image-command.d.ts +0 -10
- package/dist/cli-image-command.d.ts.map +0 -1
- package/dist/cli-image-command.js +0 -106
- package/dist/cli-image-command.js.map +0 -1
- package/dist/cli-select-command.d.ts +0 -16
- package/dist/cli-select-command.d.ts.map +0 -1
- package/dist/cli-select-command.js +0 -60
- package/dist/cli-select-command.js.map +0 -1
- package/dist/create-identity.d.ts +0 -25
- package/dist/create-identity.d.ts.map +0 -1
- package/dist/create-identity.js +0 -0
- package/dist/create-identity.js.map +0 -1
- package/dist/draft-prompts.d.ts +0 -35
- package/dist/draft-prompts.d.ts.map +0 -1
- package/dist/draft-prompts.js +0 -51
- package/dist/draft-prompts.js.map +0 -1
- package/dist/image-batch-status.d.ts +0 -42
- package/dist/image-batch-status.d.ts.map +0 -1
- package/dist/image-batch-status.js +0 -143
- package/dist/image-batch-status.js.map +0 -1
- package/dist/image-generation-batch-attempt.d.ts +0 -28
- package/dist/image-generation-batch-attempt.d.ts.map +0 -1
- package/dist/image-generation-batch-attempt.js +0 -48
- package/dist/image-generation-batch-attempt.js.map +0 -1
- package/dist/image-generation-batch-manifest.d.ts +0 -25
- package/dist/image-generation-batch-manifest.d.ts.map +0 -1
- package/dist/image-generation-batch-manifest.js +0 -97
- package/dist/image-generation-batch-manifest.js.map +0 -1
- package/dist/image-generation-completion.d.ts +0 -43
- package/dist/image-generation-completion.d.ts.map +0 -1
- package/dist/image-generation-completion.js +0 -54
- package/dist/image-generation-completion.js.map +0 -1
- package/dist/image-generation-error.d.ts +0 -3
- package/dist/image-generation-error.d.ts.map +0 -1
- package/dist/image-generation-error.js +0 -30
- package/dist/image-generation-error.js.map +0 -1
- package/dist/image-generation-evidence.d.ts +0 -43
- package/dist/image-generation-evidence.d.ts.map +0 -1
- package/dist/image-generation-evidence.js +0 -28
- package/dist/image-generation-evidence.js.map +0 -1
- package/dist/image-generation-fs.d.ts +0 -3
- package/dist/image-generation-fs.d.ts.map +0 -1
- package/dist/image-generation-fs.js +0 -23
- package/dist/image-generation-fs.js.map +0 -1
- package/dist/image-generation-output.d.ts +0 -3
- package/dist/image-generation-output.d.ts.map +0 -1
- package/dist/image-generation-output.js +0 -51
- package/dist/image-generation-output.js.map +0 -1
- package/dist/image-generation-request.d.ts +0 -43
- package/dist/image-generation-request.d.ts.map +0 -1
- package/dist/image-generation-request.js +0 -52
- package/dist/image-generation-request.js.map +0 -1
- package/dist/image-generation-resume.d.ts +0 -49
- package/dist/image-generation-resume.d.ts.map +0 -1
- package/dist/image-generation-resume.js +0 -96
- package/dist/image-generation-resume.js.map +0 -1
- package/dist/image-generation-run.d.ts +0 -46
- package/dist/image-generation-run.d.ts.map +0 -1
- package/dist/image-generation-run.js +0 -158
- package/dist/image-generation-run.js.map +0 -1
- package/dist/image-generation-staging.d.ts +0 -25
- package/dist/image-generation-staging.d.ts.map +0 -1
- package/dist/image-generation-staging.js +0 -80
- package/dist/image-generation-staging.js.map +0 -1
- package/dist/image-generation-usage.d.ts +0 -75
- package/dist/image-generation-usage.d.ts.map +0 -1
- package/dist/image-generation-usage.js +0 -219
- package/dist/image-generation-usage.js.map +0 -1
- package/dist/image-provider-preflight.d.ts +0 -21
- package/dist/image-provider-preflight.d.ts.map +0 -1
- package/dist/image-provider-preflight.js +0 -184
- package/dist/image-provider-preflight.js.map +0 -1
- package/dist/selection-record.d.ts +0 -97
- package/dist/selection-record.d.ts.map +0 -1
- package/dist/selection-record.js +0 -138
- package/dist/selection-record.js.map +0 -1
- package/skills/design/SKILL.md +0 -116
- package/skills/design/agents/openai.yaml +0 -8
- package/skills/design/assets/large-logo.svg +0 -3
- package/skills/design/assets/small-400px.png +0 -0
package/dist/login-auth.js
CHANGED
|
@@ -57,6 +57,7 @@ const parseDeviceAuthorization = (value, loginOrigin) => {
|
|
|
57
57
|
const expiresIn = Number(body?.expires_in);
|
|
58
58
|
const intervalSeconds = Number(body?.interval);
|
|
59
59
|
if (typeof body?.device_code !== 'string'
|
|
60
|
+
|| typeof body.user_code !== 'string'
|
|
60
61
|
|| typeof body.verification_uri_complete !== 'string'
|
|
61
62
|
|| !Number.isFinite(expiresIn)
|
|
62
63
|
|| expiresIn <= 0
|
|
@@ -76,11 +77,19 @@ const parseDeviceAuthorization = (value, loginOrigin) => {
|
|
|
76
77
|
}
|
|
77
78
|
return {
|
|
78
79
|
deviceCode: body.device_code,
|
|
80
|
+
userCode: body.user_code,
|
|
79
81
|
approvalUrl: approvalUrl.toString(),
|
|
80
82
|
expiresAt: Date.now() + expiresIn * 1_000,
|
|
81
83
|
intervalMs: intervalSeconds * 1_000,
|
|
82
84
|
};
|
|
83
85
|
};
|
|
86
|
+
const connectCliApprovalUrl = (connectOrigin, authorization) => {
|
|
87
|
+
if (!connectOrigin)
|
|
88
|
+
return authorization.approvalUrl;
|
|
89
|
+
const url = new URL('/connect-cli', normalizeConversionOrigin(connectOrigin));
|
|
90
|
+
url.searchParams.set('user_code', authorization.userCode);
|
|
91
|
+
return url.toString();
|
|
92
|
+
};
|
|
84
93
|
const launchBrowser = (url) => {
|
|
85
94
|
const command = process.platform === 'darwin'
|
|
86
95
|
? { executable: 'open', args: [url] }
|
|
@@ -192,6 +201,52 @@ export const normalizeLoginOrigin = (value = DEFAULT_TWELVE_UI_LOGIN_ORIGIN) =>
|
|
|
192
201
|
throw new Error(`Invalid Login origin: ${error instanceof Error ? error.message : String(error)}`);
|
|
193
202
|
}
|
|
194
203
|
};
|
|
204
|
+
export const createTwelveUiDeviceAuthorization = async (args) => {
|
|
205
|
+
const loginOrigin = normalizeLoginOrigin(args.loginOrigin);
|
|
206
|
+
const fetchImpl = args.fetch ?? fetch;
|
|
207
|
+
const scopes = requestedScopes(args.scopes);
|
|
208
|
+
const clientName = args.clientName?.trim() || '12ui CLI';
|
|
209
|
+
const deviceName = args.deviceName?.trim() || `${clientName} on ${os.hostname()}`;
|
|
210
|
+
const authorization = parseDeviceAuthorization(await fetchJson(fetchImpl, `${loginOrigin}/api/auth/12ui/device/code`, {
|
|
211
|
+
method: 'POST',
|
|
212
|
+
headers: { Accept: 'application/json', 'Content-Type': 'application/json' },
|
|
213
|
+
body: JSON.stringify({
|
|
214
|
+
client_name: clientName,
|
|
215
|
+
device_name: deviceName,
|
|
216
|
+
scopes,
|
|
217
|
+
}),
|
|
218
|
+
...(args.signal ? { signal: args.signal } : {}),
|
|
219
|
+
}), loginOrigin);
|
|
220
|
+
return { authorization, loginOrigin, scopes };
|
|
221
|
+
};
|
|
222
|
+
export const pollTwelveUiDeviceOnce = async (args) => {
|
|
223
|
+
if (Date.now() >= args.authorization.expiresAt)
|
|
224
|
+
return { status: 'expired' };
|
|
225
|
+
const loginOrigin = normalizeLoginOrigin(args.loginOrigin);
|
|
226
|
+
const requiredScopes = requestedScopes(args.requiredScopes);
|
|
227
|
+
const url = `${loginOrigin}/api/auth/12ui/device/token`;
|
|
228
|
+
const { response, value } = await requestJson(args.fetch ?? fetch, url, {
|
|
229
|
+
method: 'POST',
|
|
230
|
+
headers: { Accept: 'application/json', 'Content-Type': 'application/json' },
|
|
231
|
+
body: JSON.stringify({ device_code: args.authorization.deviceCode }),
|
|
232
|
+
...(args.signal ? { signal: args.signal } : {}),
|
|
233
|
+
});
|
|
234
|
+
const body = record(value);
|
|
235
|
+
if (response.ok && body?.status === 'approved') {
|
|
236
|
+
const credential = parseApprovedCredential(value, requiredScopes);
|
|
237
|
+
if (credential)
|
|
238
|
+
return { status: 'approved', credential };
|
|
239
|
+
}
|
|
240
|
+
if ((response.ok && body?.status === 'pending')
|
|
241
|
+
|| (response.status === 429 && body?.status === 'slow_down')) {
|
|
242
|
+
return { status: 'pending' };
|
|
243
|
+
}
|
|
244
|
+
if (body?.status === 'denied')
|
|
245
|
+
return { status: 'denied' };
|
|
246
|
+
if (body?.status === 'expired')
|
|
247
|
+
return { status: 'expired' };
|
|
248
|
+
throw new Error(`${safeUrl(url)} failed: ${errorDetail(value, response.status)}`);
|
|
249
|
+
};
|
|
195
250
|
export const verifyTwelveUiCredential = async (args) => {
|
|
196
251
|
const loginOrigin = normalizeLoginOrigin(args.loginOrigin);
|
|
197
252
|
const fetchImpl = args.fetch ?? fetch;
|
|
@@ -230,23 +285,18 @@ export const verifyConvertApiKey = async (args) => verifyTwelveUiCredential({
|
|
|
230
285
|
requiredScopes: ['design.convert'],
|
|
231
286
|
});
|
|
232
287
|
export const authenticateTwelveUiDevice = async (args) => {
|
|
233
|
-
const loginOrigin = normalizeLoginOrigin(args.loginOrigin);
|
|
234
288
|
const fetchImpl = args.fetch ?? fetch;
|
|
235
|
-
const scopes =
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
...(args.signal ? { signal: args.signal } : {}),
|
|
247
|
-
}), loginOrigin);
|
|
248
|
-
args.onApprovalUrl?.(authorization.approvalUrl);
|
|
249
|
-
await (args.openApproval ?? launchBrowser)(authorization.approvalUrl);
|
|
289
|
+
const { authorization, loginOrigin, scopes } = await createTwelveUiDeviceAuthorization({
|
|
290
|
+
loginOrigin: args.loginOrigin,
|
|
291
|
+
clientName: args.clientName,
|
|
292
|
+
deviceName: args.deviceName,
|
|
293
|
+
scopes: args.scopes,
|
|
294
|
+
fetch: fetchImpl,
|
|
295
|
+
signal: args.signal,
|
|
296
|
+
});
|
|
297
|
+
const approvalUrl = connectCliApprovalUrl(args.connectOrigin, authorization);
|
|
298
|
+
args.onApprovalUrl?.(approvalUrl);
|
|
299
|
+
await (args.openApproval ?? launchBrowser)(approvalUrl);
|
|
250
300
|
return pollForCredential({
|
|
251
301
|
authorization,
|
|
252
302
|
loginOrigin,
|
|
@@ -258,6 +308,7 @@ export const authenticateTwelveUiDevice = async (args) => {
|
|
|
258
308
|
};
|
|
259
309
|
export const authenticateAndCreateConvertApiKey = async (args) => (await authenticateTwelveUiDevice({
|
|
260
310
|
loginOrigin: args.loginOrigin,
|
|
311
|
+
connectOrigin: args.connectOrigin,
|
|
261
312
|
clientName: '12ui CLI',
|
|
262
313
|
deviceName: args.keyName,
|
|
263
314
|
scopes: ['design.convert'],
|
package/dist/login-auth.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"login-auth.js","sourceRoot":"","sources":["../src/login-auth.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"login-auth.js","sourceRoot":"","sources":["../src/login-auth.ts"],"names":[],"mappings":"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"}
|
|
@@ -102,7 +102,7 @@ export const MCP_TOOL_DEFINITIONS = [
|
|
|
102
102
|
},
|
|
103
103
|
{
|
|
104
104
|
name: 'design.draft.status',
|
|
105
|
-
description: 'Read the
|
|
105
|
+
description: 'Read the recorded hosted run and per-slot status of an existing 12UI draft, including local candidate paths, narrative, and the next action. This does not dispatch generation.',
|
|
106
106
|
inputSchema: {
|
|
107
107
|
type: 'object',
|
|
108
108
|
additionalProperties: false,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-tool-definitions.js","sourceRoot":"","sources":["../src/mcp-tool-definitions.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"mcp-tool-definitions.js","sourceRoot":"","sources":["../src/mcp-tool-definitions.ts"],"names":[],"mappings":"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"}
|
package/dist/next-target.d.ts
CHANGED
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
* command module loads, and it must never be the reason a dispatch throws.
|
|
14
14
|
*/
|
|
15
15
|
export type NextTarget = {
|
|
16
|
-
kind: '
|
|
16
|
+
kind: 'hosted-run';
|
|
17
17
|
runId: string;
|
|
18
18
|
} | {
|
|
19
19
|
kind: 'branch';
|
|
@@ -21,9 +21,6 @@ export type NextTarget = {
|
|
|
21
21
|
} | {
|
|
22
22
|
kind: 'draft';
|
|
23
23
|
directory: string;
|
|
24
|
-
} | {
|
|
25
|
-
kind: 'image-batch';
|
|
26
|
-
manifestPath: string;
|
|
27
24
|
} | {
|
|
28
25
|
kind: 'conversion';
|
|
29
26
|
conversionId: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"next-target.d.ts","sourceRoot":"","sources":["../src/next-target.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"next-target.d.ts","sourceRoot":"","sources":["../src/next-target.ts"],"names":[],"mappings":"AAcA;;;;;;;;;;;;;GAaG;AAEH,MAAM,MAAM,UAAU,GAClB;IAAE,IAAI,EAAE,YAAY,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GACrC;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GACrC;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GACpC;IAAE,IAAI,EAAE,YAAY,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE;AAC9C;;;;;GAKG;GACD;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE;AAC1C;;;;GAIG;GACD;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAmC7E;;;;;;;GAOG;AACH,eAAO,MAAM,iBAAiB,GAAU,OAAO,MAAM,KAAG,OAAO,CAAC,UAAU,CA+BzE,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,mBAAmB,GAAI,QAAQ,UAAU,KAAG,MAAM,GAAG,SAWjE,CAAC"}
|
package/dist/next-target.js
CHANGED
|
@@ -2,7 +2,7 @@ import { stat } from 'node:fs/promises';
|
|
|
2
2
|
import path from 'node:path';
|
|
3
3
|
import { BRANCH_ATTEMPT_FILENAME, BRANCH_COMPLETION_FILENAME, } from './branch-run-record.js';
|
|
4
4
|
import { BRANCH_PROGRESS_FILENAME } from './branch-progress.js';
|
|
5
|
-
import { DRAFT_BRANCH_DIRECTORY,
|
|
5
|
+
import { DRAFT_BRANCH_DIRECTORY, DRAFT_RECORD_FILENAME, } from './draft-workspace.js';
|
|
6
6
|
import { RUN_JOURNAL_FILENAME } from './run-journal.js';
|
|
7
7
|
/** Hosted create/branch runs mint this shape, and nothing else does. */
|
|
8
8
|
const HOSTED_RUN_ID = /^crt-[a-f0-9]{40}$/u;
|
|
@@ -39,7 +39,7 @@ const holdsAny = async (directory, names) => ((await Promise.all(names.map((name
|
|
|
39
39
|
export const resolveNextTarget = async (given) => {
|
|
40
40
|
const trimmed = given.trim();
|
|
41
41
|
if (HOSTED_RUN_ID.test(trimmed))
|
|
42
|
-
return { kind: '
|
|
42
|
+
return { kind: 'hosted-run', runId: trimmed };
|
|
43
43
|
const resolved = path.resolve(trimmed);
|
|
44
44
|
const entry = await stat(resolved).catch(() => null);
|
|
45
45
|
// An id only names a conversion when it names nothing on disk. A path always
|
|
@@ -47,8 +47,9 @@ export const resolveNextTarget = async (given) => {
|
|
|
47
47
|
// called.
|
|
48
48
|
if (!entry && CONVERSION_ID.test(trimmed))
|
|
49
49
|
return { kind: 'conversion', conversionId: trimmed };
|
|
50
|
-
if (entry?.isFile())
|
|
51
|
-
return { kind: '
|
|
50
|
+
if (entry?.isFile()) {
|
|
51
|
+
return { kind: 'unknown', given: trimmed, resolved };
|
|
52
|
+
}
|
|
52
53
|
if (entry?.isDirectory()) {
|
|
53
54
|
if (await holdsAny(resolved, BRANCH_RECORDS))
|
|
54
55
|
return { kind: 'branch', directory: resolved };
|
|
@@ -58,9 +59,6 @@ export const resolveNextTarget = async (given) => {
|
|
|
58
59
|
if (await exists(path.join(resolved, DRAFT_RECORD_FILENAME))) {
|
|
59
60
|
return { kind: 'draft', directory: resolved };
|
|
60
61
|
}
|
|
61
|
-
if (await exists(path.join(resolved, DRAFT_GENERATION_MANIFEST))) {
|
|
62
|
-
return { kind: 'image-batch', manifestPath: path.join(resolved, DRAFT_GENERATION_MANIFEST) };
|
|
63
|
-
}
|
|
64
62
|
// Last, because every other record is more specific: a directory a command
|
|
65
63
|
// wrote a journal into can still answer what that command is doing.
|
|
66
64
|
if (await exists(path.join(resolved, RUN_JOURNAL_FILENAME))) {
|
|
@@ -84,8 +82,6 @@ export const nextTargetWorkspace = (target) => {
|
|
|
84
82
|
case 'draft':
|
|
85
83
|
case 'workspace':
|
|
86
84
|
return target.directory;
|
|
87
|
-
case 'image-batch':
|
|
88
|
-
return path.dirname(target.manifestPath);
|
|
89
85
|
case 'unknown':
|
|
90
86
|
return target.directory;
|
|
91
87
|
default:
|
package/dist/next-target.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"next-target.js","sourceRoot":"","sources":["../src/next-target.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AACxC,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EACL,uBAAuB,EACvB,0BAA0B,GAC3B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,EACL,sBAAsB,EACtB,
|
|
1
|
+
{"version":3,"file":"next-target.js","sourceRoot":"","sources":["../src/next-target.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { NextTarget } from './next-target.js';
|
|
2
|
+
export type NextWaitLease = {
|
|
3
|
+
release: () => Promise<void>;
|
|
4
|
+
};
|
|
5
|
+
/**
|
|
6
|
+
* One live `next --wait` process per durable run.
|
|
7
|
+
*
|
|
8
|
+
* Agent shell tools can yield an in-progress command item while its process is
|
|
9
|
+
* still alive. Without this lease, the model starts another identical waiter
|
|
10
|
+
* every 30 seconds and eventually mistakes the pile of open calls for a stall.
|
|
11
|
+
*/
|
|
12
|
+
export declare const acquireNextWaitLease: (target: NextTarget, options?: {
|
|
13
|
+
root?: string;
|
|
14
|
+
pid?: number;
|
|
15
|
+
isRunning?: (pid: number) => boolean;
|
|
16
|
+
}) => Promise<NextWaitLease>;
|
|
17
|
+
//# sourceMappingURL=next-wait-lease.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"next-wait-lease.d.ts","sourceRoot":"","sources":["../src/next-wait-lease.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAUnD,MAAM,MAAM,aAAa,GAAG;IAC1B,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC9B,CAAC;AAuCF;;;;;;GAMG;AACH,eAAO,MAAM,oBAAoB,GAC/B,QAAQ,UAAU,EAClB,UAAS;IACP,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC;CACjC,KACL,OAAO,CAAC,aAAa,CA0CvB,CAAC"}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
import { createHash, randomUUID } from 'node:crypto';
|
|
2
|
+
import { mkdir, open, readFile, unlink } from 'node:fs/promises';
|
|
3
|
+
import os from 'node:os';
|
|
4
|
+
import path from 'node:path';
|
|
5
|
+
import { CliRefusal } from './cli-refusal.js';
|
|
6
|
+
const targetIdentity = (target) => {
|
|
7
|
+
switch (target.kind) {
|
|
8
|
+
case 'branch':
|
|
9
|
+
case 'draft':
|
|
10
|
+
case 'workspace': return target.directory;
|
|
11
|
+
case 'hosted-run': return target.runId;
|
|
12
|
+
case 'conversion': return target.conversionId;
|
|
13
|
+
case 'unknown': return target.resolved;
|
|
14
|
+
default: return JSON.stringify(target);
|
|
15
|
+
}
|
|
16
|
+
};
|
|
17
|
+
const processIsRunning = (pid) => {
|
|
18
|
+
if (!Number.isInteger(pid) || pid <= 0)
|
|
19
|
+
return false;
|
|
20
|
+
try {
|
|
21
|
+
process.kill(pid, 0);
|
|
22
|
+
return true;
|
|
23
|
+
}
|
|
24
|
+
catch (error) {
|
|
25
|
+
return error.code === 'EPERM';
|
|
26
|
+
}
|
|
27
|
+
};
|
|
28
|
+
const parseRecord = async (file) => {
|
|
29
|
+
try {
|
|
30
|
+
const value = JSON.parse(await readFile(file, 'utf8'));
|
|
31
|
+
return value.version === 1
|
|
32
|
+
&& typeof value.token === 'string'
|
|
33
|
+
&& typeof value.pid === 'number'
|
|
34
|
+
&& typeof value.target === 'string'
|
|
35
|
+
&& typeof value.startedAt === 'string'
|
|
36
|
+
? value
|
|
37
|
+
: null;
|
|
38
|
+
}
|
|
39
|
+
catch {
|
|
40
|
+
return null;
|
|
41
|
+
}
|
|
42
|
+
};
|
|
43
|
+
/**
|
|
44
|
+
* One live `next --wait` process per durable run.
|
|
45
|
+
*
|
|
46
|
+
* Agent shell tools can yield an in-progress command item while its process is
|
|
47
|
+
* still alive. Without this lease, the model starts another identical waiter
|
|
48
|
+
* every 30 seconds and eventually mistakes the pile of open calls for a stall.
|
|
49
|
+
*/
|
|
50
|
+
export const acquireNextWaitLease = async (target, options = {}) => {
|
|
51
|
+
const identity = targetIdentity(target);
|
|
52
|
+
const root = options.root ?? path.join(os.tmpdir(), '12ui-next-waits');
|
|
53
|
+
const digest = createHash('sha256').update(`${target.kind}\0${identity}`).digest('hex');
|
|
54
|
+
const file = path.join(root, `${digest}.json`);
|
|
55
|
+
const pid = options.pid ?? process.pid;
|
|
56
|
+
const isRunning = options.isRunning ?? processIsRunning;
|
|
57
|
+
const record = {
|
|
58
|
+
version: 1,
|
|
59
|
+
token: randomUUID(),
|
|
60
|
+
pid,
|
|
61
|
+
target: identity,
|
|
62
|
+
startedAt: new Date().toISOString(),
|
|
63
|
+
};
|
|
64
|
+
await mkdir(root, { recursive: true, mode: 0o700 });
|
|
65
|
+
for (let attempt = 0; attempt < 2; attempt += 1) {
|
|
66
|
+
try {
|
|
67
|
+
const handle = await open(file, 'wx', 0o600);
|
|
68
|
+
await handle.writeFile(`${JSON.stringify(record)}\n`);
|
|
69
|
+
await handle.close();
|
|
70
|
+
return {
|
|
71
|
+
release: async () => {
|
|
72
|
+
const held = await parseRecord(file);
|
|
73
|
+
if (held?.token === record.token)
|
|
74
|
+
await unlink(file).catch(() => undefined);
|
|
75
|
+
},
|
|
76
|
+
};
|
|
77
|
+
}
|
|
78
|
+
catch (error) {
|
|
79
|
+
if (error.code !== 'EEXIST')
|
|
80
|
+
throw error;
|
|
81
|
+
const held = await parseRecord(file);
|
|
82
|
+
if (held && isRunning(held.pid)) {
|
|
83
|
+
throw new CliRefusal(`Another \`12ui next --wait\` is already blocking on ${identity}`
|
|
84
|
+
+ ` in process ${held.pid}. Poll that existing shell command execution;`
|
|
85
|
+
+ ' do not start another waiter or present a substitute.', 'next_wait_already_active');
|
|
86
|
+
}
|
|
87
|
+
await unlink(file).catch(() => undefined);
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
throw new Error(`Could not acquire the wait lease for ${identity}`);
|
|
91
|
+
};
|
|
92
|
+
//# sourceMappingURL=next-wait-lease.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"next-wait-lease.js","sourceRoot":"","sources":["../src/next-wait-lease.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* One policy for what a FAILED poll of an already-created operation means.
|
|
3
|
+
*
|
|
4
|
+
* The operation lives on the server. A poll is a read of it, and a read that
|
|
5
|
+
* goes wrong is evidence about the read, not about the paid run behind it —
|
|
6
|
+
* measured 2026-08-17, a running pro conversion answered five consecutive
|
|
7
|
+
* polls with `503 service_unavailable`, `retryable: false`, and then
|
|
8
|
+
* succeeded. A client that trusted that flag threw away work it had paid for
|
|
9
|
+
* and that had finished.
|
|
10
|
+
*
|
|
11
|
+
* So a poll failure is transient unless the answer proves the operation is not
|
|
12
|
+
* there to read (404) or not ours to read (401/403). Transience is bounded:
|
|
13
|
+
* a streak of failures buys a bounded number of retries over a bounded window,
|
|
14
|
+
* and the last failure is what the caller finally sees.
|
|
15
|
+
*
|
|
16
|
+
* Everything here is pure. Both wait loops — `conversion-client.ts`
|
|
17
|
+
* `waitForOperation` and `package-client.ts` `waitForPackage` — decide with
|
|
18
|
+
* this module and nothing else, so the two never drift apart.
|
|
19
|
+
*/
|
|
20
|
+
export type PollFailureKind = 'transient' | 'terminal' | 'aborted';
|
|
21
|
+
/** A streak of failed polls since the last successful read. */
|
|
22
|
+
export type PollFailureBudget = {
|
|
23
|
+
readonly consecutive: number;
|
|
24
|
+
/** When the current streak started; null when there is no streak. */
|
|
25
|
+
readonly firstAt: number | null;
|
|
26
|
+
};
|
|
27
|
+
/** What the caller learned about one failed poll. */
|
|
28
|
+
export type PollFailureFacts = {
|
|
29
|
+
/** HTTP status the poll was answered with; null or absent when it never
|
|
30
|
+
* reached one (transport failure, or a body that would not parse). */
|
|
31
|
+
status?: number | null;
|
|
32
|
+
/** The problem body's `retryable` flag, when the body carried one. */
|
|
33
|
+
retryable?: boolean;
|
|
34
|
+
/** What the response asked the caller to wait, in milliseconds. */
|
|
35
|
+
retryAfterMs?: number | null;
|
|
36
|
+
/** The wait's own signal aborted: a caller cancel, or the wait's timeout. */
|
|
37
|
+
aborted: boolean;
|
|
38
|
+
};
|
|
39
|
+
export type PollFailureVerdict =
|
|
40
|
+
/** Wait `delayMs` and read again, carrying `budget` into the next failure. */
|
|
41
|
+
{
|
|
42
|
+
kind: 'retry';
|
|
43
|
+
delayMs: number;
|
|
44
|
+
budget: PollFailureBudget;
|
|
45
|
+
}
|
|
46
|
+
/** The answer settles the operation. Throw the failure unchanged. */
|
|
47
|
+
| {
|
|
48
|
+
kind: 'terminal';
|
|
49
|
+
}
|
|
50
|
+
/** Transient, but the tolerance is spent. Throw the failure annotated. */
|
|
51
|
+
| {
|
|
52
|
+
kind: 'exhausted';
|
|
53
|
+
reason: string;
|
|
54
|
+
}
|
|
55
|
+
/** The caller stopped waiting. Throw the abort reason unchanged. */
|
|
56
|
+
| {
|
|
57
|
+
kind: 'aborted';
|
|
58
|
+
};
|
|
59
|
+
/** Failed polls tolerated in one streak. With the default two-second interval
|
|
60
|
+
* the exponential backoff below spends this over roughly four minutes, which
|
|
61
|
+
* is longer than any read outage measured against a healthy operation and far
|
|
62
|
+
* short of a conversion's own budget. */
|
|
63
|
+
export declare const POLL_TRANSIENT_MAX_CONSECUTIVE = 12;
|
|
64
|
+
/** A streak that has run this long is an outage, not a blip, whatever the
|
|
65
|
+
* caller's poll interval made of the count. */
|
|
66
|
+
export declare const POLL_TRANSIENT_MAX_WINDOW_MS: number;
|
|
67
|
+
/** Backoff ceiling. A longer gap only delays noticing that the operation
|
|
68
|
+
* finished. */
|
|
69
|
+
export declare const POLL_TRANSIENT_MAX_DELAY_MS = 30000;
|
|
70
|
+
export declare const NO_POLL_FAILURES: PollFailureBudget;
|
|
71
|
+
export declare const classifyPollFailure: (error: unknown, facts: PollFailureFacts) => PollFailureKind;
|
|
72
|
+
export declare const nextPollDelayMs: (budget: PollFailureBudget, args: {
|
|
73
|
+
intervalMs: number;
|
|
74
|
+
retryAfterMs?: number | null;
|
|
75
|
+
remainingMs: number;
|
|
76
|
+
}) => number;
|
|
77
|
+
export declare const decidePollFailure: (error: unknown, args: PollFailureFacts & {
|
|
78
|
+
budget: PollFailureBudget;
|
|
79
|
+
now: number;
|
|
80
|
+
intervalMs: number;
|
|
81
|
+
remainingMs: number;
|
|
82
|
+
}) => PollFailureVerdict;
|
|
83
|
+
/**
|
|
84
|
+
* The last failure, told to say how many polls preceded it. The failure itself
|
|
85
|
+
* is kept — its class, its status, its served detail — because everything that
|
|
86
|
+
* inspects the thrown error still needs to.
|
|
87
|
+
*/
|
|
88
|
+
export declare const annotatePollFailure: (error: unknown, reason: string) => unknown;
|
|
89
|
+
//# sourceMappingURL=operation-poll-policy.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"operation-poll-policy.d.ts","sourceRoot":"","sources":["../src/operation-poll-policy.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,MAAM,MAAM,eAAe,GAAG,WAAW,GAAG,UAAU,GAAG,SAAS,CAAC;AAEnE,+DAA+D;AAC/D,MAAM,MAAM,iBAAiB,GAAG;IAC9B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,qEAAqE;IACrE,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CACjC,CAAC;AAEF,qDAAqD;AACrD,MAAM,MAAM,gBAAgB,GAAG;IAC7B;0EACsE;IACtE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,sEAAsE;IACtE,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,mEAAmE;IACnE,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,6EAA6E;IAC7E,OAAO,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,kBAAkB;AAC5B,8EAA8E;AAC5E;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,iBAAiB,CAAA;CAAE;AAC/D,qEAAqE;GACnE;IAAE,IAAI,EAAE,UAAU,CAAA;CAAE;AACtB,0EAA0E;GACxE;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE;AACvC,oEAAoE;GAClE;IAAE,IAAI,EAAE,SAAS,CAAA;CAAE,CAAC;AAExB;;;yCAGyC;AACzC,eAAO,MAAM,8BAA8B,KAAK,CAAC;AAEjD;+CAC+C;AAC/C,eAAO,MAAM,4BAA4B,QAAa,CAAC;AAEvD;eACe;AACf,eAAO,MAAM,2BAA2B,QAAS,CAAC;AAElD,eAAO,MAAM,gBAAgB,EAAE,iBAAqD,CAAC;AAUrF,eAAO,MAAM,mBAAmB,GAAI,OAAO,OAAO,EAAE,OAAO,gBAAgB,KAAG,eAU7E,CAAC;AAEF,eAAO,MAAM,eAAe,GAC1B,QAAQ,iBAAiB,EACzB,MAAM;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,KAC9E,MAKF,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAC5B,OAAO,OAAO,EACd,MAAM,gBAAgB,GAAG;IACvB,MAAM,EAAE,iBAAiB,CAAC;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;CACrB,KACA,kBA4BF,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,GAAI,OAAO,OAAO,EAAE,QAAQ,MAAM,KAAG,OAMpE,CAAC"}
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* One policy for what a FAILED poll of an already-created operation means.
|
|
3
|
+
*
|
|
4
|
+
* The operation lives on the server. A poll is a read of it, and a read that
|
|
5
|
+
* goes wrong is evidence about the read, not about the paid run behind it —
|
|
6
|
+
* measured 2026-08-17, a running pro conversion answered five consecutive
|
|
7
|
+
* polls with `503 service_unavailable`, `retryable: false`, and then
|
|
8
|
+
* succeeded. A client that trusted that flag threw away work it had paid for
|
|
9
|
+
* and that had finished.
|
|
10
|
+
*
|
|
11
|
+
* So a poll failure is transient unless the answer proves the operation is not
|
|
12
|
+
* there to read (404) or not ours to read (401/403). Transience is bounded:
|
|
13
|
+
* a streak of failures buys a bounded number of retries over a bounded window,
|
|
14
|
+
* and the last failure is what the caller finally sees.
|
|
15
|
+
*
|
|
16
|
+
* Everything here is pure. Both wait loops — `conversion-client.ts`
|
|
17
|
+
* `waitForOperation` and `package-client.ts` `waitForPackage` — decide with
|
|
18
|
+
* this module and nothing else, so the two never drift apart.
|
|
19
|
+
*/
|
|
20
|
+
/** Failed polls tolerated in one streak. With the default two-second interval
|
|
21
|
+
* the exponential backoff below spends this over roughly four minutes, which
|
|
22
|
+
* is longer than any read outage measured against a healthy operation and far
|
|
23
|
+
* short of a conversion's own budget. */
|
|
24
|
+
export const POLL_TRANSIENT_MAX_CONSECUTIVE = 12;
|
|
25
|
+
/** A streak that has run this long is an outage, not a blip, whatever the
|
|
26
|
+
* caller's poll interval made of the count. */
|
|
27
|
+
export const POLL_TRANSIENT_MAX_WINDOW_MS = 5 * 60_000;
|
|
28
|
+
/** Backoff ceiling. A longer gap only delays noticing that the operation
|
|
29
|
+
* finished. */
|
|
30
|
+
export const POLL_TRANSIENT_MAX_DELAY_MS = 30_000;
|
|
31
|
+
export const NO_POLL_FAILURES = { consecutive: 0, firstAt: null };
|
|
32
|
+
/** Statuses below 500 that still describe the read rather than the operation:
|
|
33
|
+
* a timed-out request and an admission limit. */
|
|
34
|
+
const TRANSIENT_CLIENT_STATUSES = new Set([408, 429]);
|
|
35
|
+
const isAbortError = (error) => (error instanceof Error && (error.name === 'AbortError' || error.name === 'TimeoutError'));
|
|
36
|
+
export const classifyPollFailure = (error, facts) => {
|
|
37
|
+
if (facts.aborted || isAbortError(error))
|
|
38
|
+
return 'aborted';
|
|
39
|
+
const status = facts.status ?? null;
|
|
40
|
+
if (status === null)
|
|
41
|
+
return 'transient';
|
|
42
|
+
// A 5xx on a read of a KNOWN operation id is the service failing to answer,
|
|
43
|
+
// so its `retryable` flag describes that answer and not the run.
|
|
44
|
+
if (status >= 500 || TRANSIENT_CLIENT_STATUSES.has(status))
|
|
45
|
+
return 'transient';
|
|
46
|
+
// A 4xx is the service saying this id is not there or not ours — unless it
|
|
47
|
+
// explicitly says otherwise, which stays honoured.
|
|
48
|
+
return facts.retryable === true ? 'transient' : 'terminal';
|
|
49
|
+
};
|
|
50
|
+
export const nextPollDelayMs = (budget, args) => {
|
|
51
|
+
const exponent = Math.max(0, Math.min(16, budget.consecutive - 1));
|
|
52
|
+
const backoff = Math.max(0, args.intervalMs) * 2 ** exponent;
|
|
53
|
+
const asked = Math.max(backoff, args.retryAfterMs ?? 0);
|
|
54
|
+
return Math.max(0, Math.min(POLL_TRANSIENT_MAX_DELAY_MS, asked, Math.max(0, args.remainingMs)));
|
|
55
|
+
};
|
|
56
|
+
export const decidePollFailure = (error, args) => {
|
|
57
|
+
const kind = classifyPollFailure(error, args);
|
|
58
|
+
if (kind === 'aborted')
|
|
59
|
+
return { kind: 'aborted' };
|
|
60
|
+
if (kind === 'terminal')
|
|
61
|
+
return { kind: 'terminal' };
|
|
62
|
+
const firstAt = args.budget.firstAt ?? args.now;
|
|
63
|
+
const streak = { consecutive: args.budget.consecutive + 1, firstAt };
|
|
64
|
+
if (streak.consecutive >= POLL_TRANSIENT_MAX_CONSECUTIVE) {
|
|
65
|
+
return {
|
|
66
|
+
kind: 'exhausted',
|
|
67
|
+
reason: `gave up after ${streak.consecutive} consecutive failed polls`,
|
|
68
|
+
};
|
|
69
|
+
}
|
|
70
|
+
const spanMs = Math.max(0, args.now - firstAt);
|
|
71
|
+
if (spanMs >= POLL_TRANSIENT_MAX_WINDOW_MS) {
|
|
72
|
+
return {
|
|
73
|
+
kind: 'exhausted',
|
|
74
|
+
reason: `gave up after ${streak.consecutive} consecutive failed polls over ${Math.round(spanMs / 1000)}s`,
|
|
75
|
+
};
|
|
76
|
+
}
|
|
77
|
+
return {
|
|
78
|
+
kind: 'retry',
|
|
79
|
+
delayMs: nextPollDelayMs(streak, {
|
|
80
|
+
intervalMs: args.intervalMs,
|
|
81
|
+
retryAfterMs: args.retryAfterMs ?? null,
|
|
82
|
+
remainingMs: args.remainingMs,
|
|
83
|
+
}),
|
|
84
|
+
budget: streak,
|
|
85
|
+
};
|
|
86
|
+
};
|
|
87
|
+
/**
|
|
88
|
+
* The last failure, told to say how many polls preceded it. The failure itself
|
|
89
|
+
* is kept — its class, its status, its served detail — because everything that
|
|
90
|
+
* inspects the thrown error still needs to.
|
|
91
|
+
*/
|
|
92
|
+
export const annotatePollFailure = (error, reason) => {
|
|
93
|
+
if (error instanceof Error) {
|
|
94
|
+
error.message = error.message ? `${error.message} (${reason})` : reason;
|
|
95
|
+
return error;
|
|
96
|
+
}
|
|
97
|
+
return new Error(`${String(error)} (${reason})`, { cause: error });
|
|
98
|
+
};
|
|
99
|
+
//# sourceMappingURL=operation-poll-policy.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"operation-poll-policy.js","sourceRoot":"","sources":["../src/operation-poll-policy.ts"],"names":[],"mappings":"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"}
|