@riddledc/riddle-proof 0.7.91 → 0.7.93

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.
@@ -48,12 +48,13 @@ async function riddleRequestJson(config, pathname, init = {}) {
48
48
  if (!response.ok) throw new RiddleApiError(pathname, response.status, text);
49
49
  return json ?? text;
50
50
  }
51
- async function deployRiddleStaticPreview(config, directory, label) {
51
+ async function deployRiddlePreview(config, directory, label, framework = "static") {
52
52
  if (!directory?.trim()) throw new Error("directory is required");
53
53
  if (!label?.trim()) throw new Error("label is required");
54
+ if (framework !== "spa" && framework !== "static") throw new Error("framework must be spa or static");
54
55
  const created = await riddleRequestJson(config, "/v1/preview", {
55
56
  method: "POST",
56
- body: JSON.stringify({ framework: "static", label })
57
+ body: JSON.stringify({ framework, label })
57
58
  });
58
59
  const id = String(created.id || "");
59
60
  const uploadUrl = String(created.upload_url || "");
@@ -80,6 +81,7 @@ async function deployRiddleStaticPreview(config, directory, label) {
80
81
  ok: true,
81
82
  id: String(published.id || id),
82
83
  label,
84
+ framework,
83
85
  preview_url: String(published.preview_url || ""),
84
86
  file_count: typeof published.file_count === "number" ? published.file_count : void 0,
85
87
  total_bytes: typeof published.total_bytes === "number" ? published.total_bytes : void 0,
@@ -87,6 +89,9 @@ async function deployRiddleStaticPreview(config, directory, label) {
87
89
  raw: published
88
90
  };
89
91
  }
92
+ async function deployRiddleStaticPreview(config, directory, label) {
93
+ return deployRiddlePreview(config, directory, label, "static");
94
+ }
90
95
  function createTarball(directory, label, exclude = []) {
91
96
  const scratch = mkdtempSync(path.join(tmpdir(), "riddle-upload-"));
92
97
  const tarball = path.join(scratch, `${label}.tar.gz`);
@@ -318,6 +323,7 @@ async function pollRiddleJob(config, jobId, options = {}) {
318
323
  function createRiddleApiClient(config = {}) {
319
324
  return {
320
325
  requestJson: (pathname, init) => riddleRequestJson(config, pathname, init),
326
+ deployPreview: (directory, label, framework = "static") => deployRiddlePreview(config, directory, label, framework),
321
327
  deployStaticPreview: (directory, label) => deployRiddleStaticPreview(config, directory, label),
322
328
  runScript: (input) => runRiddleScript(config, input),
323
329
  runServerPreview: (input) => runRiddleServerPreview(config, input),
@@ -331,6 +337,7 @@ export {
331
337
  RiddleApiError,
332
338
  resolveRiddleApiKey,
333
339
  riddleRequestJson,
340
+ deployRiddlePreview,
334
341
  deployRiddleStaticPreview,
335
342
  parseRiddleViewport,
336
343
  runRiddleServerPreview,
@@ -4437,6 +4437,16 @@ async function findInventoryLinkIndex(check, expectedPath) {
4437
4437
  }
4438
4438
  return -1;
4439
4439
  }
4440
+ async function waitForInventoryLinkIndex(check, expectedPath) {
4441
+ const timeout = Math.min(inventoryCheckTimeout(check), 15000);
4442
+ const started = Date.now();
4443
+ let index = await findInventoryLinkIndex(check, expectedPath);
4444
+ while (index < 0 && Date.now() - started < timeout) {
4445
+ await page.waitForTimeout(250);
4446
+ index = await findInventoryLinkIndex(check, expectedPath);
4447
+ }
4448
+ return index;
4449
+ }
4440
4450
  async function collectRouteInventory(check, viewport) {
4441
4451
  const expectedRoutes = check.expected_routes || [];
4442
4452
  const expectedPaths = expectedRoutes.map((route) => normalizeRoutePath(route.path));
@@ -4493,7 +4503,7 @@ async function collectRouteInventory(check, viewport) {
4493
4503
  if (profile.target.wait_for_selector) {
4494
4504
  await waitForAnyVisibleSelector(page, profile.target.wait_for_selector, 15000).catch(() => {});
4495
4505
  }
4496
- const index = await findInventoryLinkIndex(check, expectedRoute.path);
4506
+ const index = await waitForInventoryLinkIndex(check, expectedRoute.path);
4497
4507
  if (index < 0) {
4498
4508
  result.error = "source_link_not_found";
4499
4509
  failures.push({ code: "source_link_clickthrough_missing", name: expectedRoute.name || null, path: expectedRoute.path });
package/dist/cli.cjs CHANGED
@@ -6609,12 +6609,13 @@ async function riddleRequestJson(config, pathname, init = {}) {
6609
6609
  if (!response.ok) throw new RiddleApiError(pathname, response.status, text);
6610
6610
  return json ?? text;
6611
6611
  }
6612
- async function deployRiddleStaticPreview(config, directory, label) {
6612
+ async function deployRiddlePreview(config, directory, label, framework = "static") {
6613
6613
  if (!directory?.trim()) throw new Error("directory is required");
6614
6614
  if (!label?.trim()) throw new Error("label is required");
6615
+ if (framework !== "spa" && framework !== "static") throw new Error("framework must be spa or static");
6615
6616
  const created = await riddleRequestJson(config, "/v1/preview", {
6616
6617
  method: "POST",
6617
- body: JSON.stringify({ framework: "static", label })
6618
+ body: JSON.stringify({ framework, label })
6618
6619
  });
6619
6620
  const id = String(created.id || "");
6620
6621
  const uploadUrl = String(created.upload_url || "");
@@ -6641,6 +6642,7 @@ async function deployRiddleStaticPreview(config, directory, label) {
6641
6642
  ok: true,
6642
6643
  id: String(published.id || id),
6643
6644
  label,
6645
+ framework,
6644
6646
  preview_url: String(published.preview_url || ""),
6645
6647
  file_count: typeof published.file_count === "number" ? published.file_count : void 0,
6646
6648
  total_bytes: typeof published.total_bytes === "number" ? published.total_bytes : void 0,
@@ -6648,6 +6650,9 @@ async function deployRiddleStaticPreview(config, directory, label) {
6648
6650
  raw: published
6649
6651
  };
6650
6652
  }
6653
+ async function deployRiddleStaticPreview(config, directory, label) {
6654
+ return deployRiddlePreview(config, directory, label, "static");
6655
+ }
6651
6656
  function createTarball(directory, label, exclude = []) {
6652
6657
  const scratch = (0, import_node_fs5.mkdtempSync)(import_node_path5.default.join((0, import_node_os2.tmpdir)(), "riddle-upload-"));
6653
6658
  const tarball = import_node_path5.default.join(scratch, `${label}.tar.gz`);
@@ -6879,6 +6884,7 @@ async function pollRiddleJob(config, jobId, options = {}) {
6879
6884
  function createRiddleApiClient(config = {}) {
6880
6885
  return {
6881
6886
  requestJson: (pathname, init) => riddleRequestJson(config, pathname, init),
6887
+ deployPreview: (directory, label, framework = "static") => deployRiddlePreview(config, directory, label, framework),
6882
6888
  deployStaticPreview: (directory, label) => deployRiddleStaticPreview(config, directory, label),
6883
6889
  runScript: (input) => runRiddleScript(config, input),
6884
6890
  runServerPreview: (input) => runRiddleServerPreview(config, input),
@@ -11308,6 +11314,16 @@ async function findInventoryLinkIndex(check, expectedPath) {
11308
11314
  }
11309
11315
  return -1;
11310
11316
  }
11317
+ async function waitForInventoryLinkIndex(check, expectedPath) {
11318
+ const timeout = Math.min(inventoryCheckTimeout(check), 15000);
11319
+ const started = Date.now();
11320
+ let index = await findInventoryLinkIndex(check, expectedPath);
11321
+ while (index < 0 && Date.now() - started < timeout) {
11322
+ await page.waitForTimeout(250);
11323
+ index = await findInventoryLinkIndex(check, expectedPath);
11324
+ }
11325
+ return index;
11326
+ }
11311
11327
  async function collectRouteInventory(check, viewport) {
11312
11328
  const expectedRoutes = check.expected_routes || [];
11313
11329
  const expectedPaths = expectedRoutes.map((route) => normalizeRoutePath(route.path));
@@ -11364,7 +11380,7 @@ async function collectRouteInventory(check, viewport) {
11364
11380
  if (profile.target.wait_for_selector) {
11365
11381
  await waitForAnyVisibleSelector(page, profile.target.wait_for_selector, 15000).catch(() => {});
11366
11382
  }
11367
- const index = await findInventoryLinkIndex(check, expectedRoute.path);
11383
+ const index = await waitForInventoryLinkIndex(check, expectedRoute.path);
11368
11384
  if (index < 0) {
11369
11385
  result.error = "source_link_not_found";
11370
11386
  failures.push({ code: "source_link_clickthrough_missing", name: expectedRoute.name || null, path: expectedRoute.path });
@@ -11821,7 +11837,7 @@ function usage() {
11821
11837
  " riddle-proof-loop respond --state-path <path> --decision <decision> --summary <text> [--payload-json <file|json|->]",
11822
11838
  " riddle-proof-loop status --state-path <path>",
11823
11839
  " riddle-proof-loop run-profile --profile <file|json|-> --url <base-url> [--runner riddle] [--strict true|false] [--poll-attempts n] [--output <dir>|--output-dir <dir>] [--quiet]",
11824
- " riddle-proof-loop riddle-preview-deploy <build-dir> <label>",
11840
+ " riddle-proof-loop riddle-preview-deploy <build-dir> <label> [--framework spa|static]",
11825
11841
  " riddle-proof-loop riddle-server-preview <directory> --script-file <file> [--path /route] [--wait-for-selector selector]",
11826
11842
  " riddle-proof-loop riddle-run-script --url <url> --script-file <file> [--viewport 1280x720] [--strict true|false]",
11827
11843
  " riddle-proof-loop riddle-poll <job-id> [--wait] [--attempts n] [--quiet]",
@@ -11885,6 +11901,11 @@ function optionNumber(options, ...keys) {
11885
11901
  function profileOutputDirOption(options) {
11886
11902
  return optionString(options, "output") ?? optionString(options, "outputDir");
11887
11903
  }
11904
+ function previewFrameworkOption(options) {
11905
+ const framework = optionString(options, "framework") ?? "static";
11906
+ if (framework === "spa" || framework === "static") return framework;
11907
+ throw new Error("--framework must be spa or static.");
11908
+ }
11888
11909
  function readStdin() {
11889
11910
  return (0, import_node_fs6.readFileSync)(0, "utf-8");
11890
11911
  }
@@ -12597,7 +12618,7 @@ async function main() {
12597
12618
  if (command === "riddle-preview-deploy") {
12598
12619
  const buildDir = positional[1];
12599
12620
  const label = positional[2];
12600
- const result = await createRiddleApiClient(riddleClientConfig(options)).deployStaticPreview(buildDir, label);
12621
+ const result = await createRiddleApiClient(riddleClientConfig(options)).deployPreview(buildDir, label, previewFrameworkOption(options));
12601
12622
  process.stdout.write(`${JSON.stringify(result, null, 2)}
12602
12623
  `);
12603
12624
  return;
package/dist/cli.js CHANGED
@@ -10,11 +10,11 @@ import {
10
10
  profileStatusExitCode,
11
11
  resolveRiddleProofProfileTargetUrl,
12
12
  resolveRiddleProofProfileTimeoutSec
13
- } from "./chunk-2SGLFPFX.js";
13
+ } from "./chunk-QLBOFUON.js";
14
14
  import {
15
15
  createRiddleApiClient,
16
16
  parseRiddleViewport
17
- } from "./chunk-6RQGBHJ5.js";
17
+ } from "./chunk-OI57LO6Y.js";
18
18
  import {
19
19
  createDisabledRiddleProofAgentAdapter,
20
20
  readRiddleProofRunStatus,
@@ -45,7 +45,7 @@ function usage() {
45
45
  " riddle-proof-loop respond --state-path <path> --decision <decision> --summary <text> [--payload-json <file|json|->]",
46
46
  " riddle-proof-loop status --state-path <path>",
47
47
  " riddle-proof-loop run-profile --profile <file|json|-> --url <base-url> [--runner riddle] [--strict true|false] [--poll-attempts n] [--output <dir>|--output-dir <dir>] [--quiet]",
48
- " riddle-proof-loop riddle-preview-deploy <build-dir> <label>",
48
+ " riddle-proof-loop riddle-preview-deploy <build-dir> <label> [--framework spa|static]",
49
49
  " riddle-proof-loop riddle-server-preview <directory> --script-file <file> [--path /route] [--wait-for-selector selector]",
50
50
  " riddle-proof-loop riddle-run-script --url <url> --script-file <file> [--viewport 1280x720] [--strict true|false]",
51
51
  " riddle-proof-loop riddle-poll <job-id> [--wait] [--attempts n] [--quiet]",
@@ -109,6 +109,11 @@ function optionNumber(options, ...keys) {
109
109
  function profileOutputDirOption(options) {
110
110
  return optionString(options, "output") ?? optionString(options, "outputDir");
111
111
  }
112
+ function previewFrameworkOption(options) {
113
+ const framework = optionString(options, "framework") ?? "static";
114
+ if (framework === "spa" || framework === "static") return framework;
115
+ throw new Error("--framework must be spa or static.");
116
+ }
112
117
  function readStdin() {
113
118
  return readFileSync(0, "utf-8");
114
119
  }
@@ -821,7 +826,7 @@ async function main() {
821
826
  if (command === "riddle-preview-deploy") {
822
827
  const buildDir = positional[1];
823
828
  const label = positional[2];
824
- const result = await createRiddleApiClient(riddleClientConfig(options)).deployStaticPreview(buildDir, label);
829
+ const result = await createRiddleApiClient(riddleClientConfig(options)).deployPreview(buildDir, label, previewFrameworkOption(options));
825
830
  process.stdout.write(`${JSON.stringify(result, null, 2)}
826
831
  `);
827
832
  return;
package/dist/index.cjs CHANGED
@@ -2968,6 +2968,7 @@ __export(index_exports, {
2968
2968
  createRunResult: () => createRunResult,
2969
2969
  createRunState: () => createRunState,
2970
2970
  createRunStatusSnapshot: () => createRunStatusSnapshot,
2971
+ deployRiddlePreview: () => deployRiddlePreview,
2971
2972
  deployRiddleStaticPreview: () => deployRiddleStaticPreview,
2972
2973
  extractBasicGameplayEvidence: () => extractBasicGameplayEvidence,
2973
2974
  extractPlayabilityEvidence: () => extractPlayabilityEvidence,
@@ -13165,6 +13166,16 @@ async function findInventoryLinkIndex(check, expectedPath) {
13165
13166
  }
13166
13167
  return -1;
13167
13168
  }
13169
+ async function waitForInventoryLinkIndex(check, expectedPath) {
13170
+ const timeout = Math.min(inventoryCheckTimeout(check), 15000);
13171
+ const started = Date.now();
13172
+ let index = await findInventoryLinkIndex(check, expectedPath);
13173
+ while (index < 0 && Date.now() - started < timeout) {
13174
+ await page.waitForTimeout(250);
13175
+ index = await findInventoryLinkIndex(check, expectedPath);
13176
+ }
13177
+ return index;
13178
+ }
13168
13179
  async function collectRouteInventory(check, viewport) {
13169
13180
  const expectedRoutes = check.expected_routes || [];
13170
13181
  const expectedPaths = expectedRoutes.map((route) => normalizeRoutePath(route.path));
@@ -13221,7 +13232,7 @@ async function collectRouteInventory(check, viewport) {
13221
13232
  if (profile.target.wait_for_selector) {
13222
13233
  await waitForAnyVisibleSelector(page, profile.target.wait_for_selector, 15000).catch(() => {});
13223
13234
  }
13224
- const index = await findInventoryLinkIndex(check, expectedRoute.path);
13235
+ const index = await waitForInventoryLinkIndex(check, expectedRoute.path);
13225
13236
  if (index < 0) {
13226
13237
  result.error = "source_link_not_found";
13227
13238
  failures.push({ code: "source_link_clickthrough_missing", name: expectedRoute.name || null, path: expectedRoute.path });
@@ -13718,12 +13729,13 @@ async function riddleRequestJson(config, pathname, init = {}) {
13718
13729
  if (!response.ok) throw new RiddleApiError(pathname, response.status, text);
13719
13730
  return json ?? text;
13720
13731
  }
13721
- async function deployRiddleStaticPreview(config, directory, label) {
13732
+ async function deployRiddlePreview(config, directory, label, framework = "static") {
13722
13733
  if (!directory?.trim()) throw new Error("directory is required");
13723
13734
  if (!label?.trim()) throw new Error("label is required");
13735
+ if (framework !== "spa" && framework !== "static") throw new Error("framework must be spa or static");
13724
13736
  const created = await riddleRequestJson(config, "/v1/preview", {
13725
13737
  method: "POST",
13726
- body: JSON.stringify({ framework: "static", label })
13738
+ body: JSON.stringify({ framework, label })
13727
13739
  });
13728
13740
  const id = String(created.id || "");
13729
13741
  const uploadUrl = String(created.upload_url || "");
@@ -13750,6 +13762,7 @@ async function deployRiddleStaticPreview(config, directory, label) {
13750
13762
  ok: true,
13751
13763
  id: String(published.id || id),
13752
13764
  label,
13765
+ framework,
13753
13766
  preview_url: String(published.preview_url || ""),
13754
13767
  file_count: typeof published.file_count === "number" ? published.file_count : void 0,
13755
13768
  total_bytes: typeof published.total_bytes === "number" ? published.total_bytes : void 0,
@@ -13757,6 +13770,9 @@ async function deployRiddleStaticPreview(config, directory, label) {
13757
13770
  raw: published
13758
13771
  };
13759
13772
  }
13773
+ async function deployRiddleStaticPreview(config, directory, label) {
13774
+ return deployRiddlePreview(config, directory, label, "static");
13775
+ }
13760
13776
  function createTarball(directory, label, exclude = []) {
13761
13777
  const scratch = (0, import_node_fs5.mkdtempSync)(import_node_path5.default.join((0, import_node_os2.tmpdir)(), "riddle-upload-"));
13762
13778
  const tarball = import_node_path5.default.join(scratch, `${label}.tar.gz`);
@@ -13988,6 +14004,7 @@ async function pollRiddleJob(config, jobId, options = {}) {
13988
14004
  function createRiddleApiClient(config = {}) {
13989
14005
  return {
13990
14006
  requestJson: (pathname, init) => riddleRequestJson(config, pathname, init),
14007
+ deployPreview: (directory, label, framework = "static") => deployRiddlePreview(config, directory, label, framework),
13991
14008
  deployStaticPreview: (directory, label) => deployRiddleStaticPreview(config, directory, label),
13992
14009
  runScript: (input) => runRiddleScript(config, input),
13993
14010
  runServerPreview: (input) => runRiddleServerPreview(config, input),
@@ -14065,6 +14082,7 @@ function createRiddleApiClient(config = {}) {
14065
14082
  createRunResult,
14066
14083
  createRunState,
14067
14084
  createRunStatusSnapshot,
14085
+ deployRiddlePreview,
14068
14086
  deployRiddleStaticPreview,
14069
14087
  extractBasicGameplayEvidence,
14070
14088
  extractPlayabilityEvidence,
package/dist/index.d.cts CHANGED
@@ -11,4 +11,4 @@ export { BuildVisualProofSessionInput, RIDDLE_PROOF_VISUAL_SESSION_FINGERPRINT_V
11
11
  export { AssessPlayabilityOptions, RIDDLE_PROOF_PLAYABILITY_ASSESSMENT_VERSION, RIDDLE_PROOF_PLAYABILITY_VERSION, RiddleProofPlayabilityAssessment, RiddleProofPlayabilityEvidence, assessPlayabilityEvidence, extractPlayabilityEvidence, isRiddleProofPlayabilityMode } from './playability.cjs';
12
12
  export { AssessBasicGameplayOptions, AttachBasicGameplayArtifactOptions, BASIC_GAMEPLAY_ACTION_TYPES, BASIC_GAMEPLAY_PROGRESS_CHECK_TYPES, BasicGameplayActionResult, BasicGameplayActionType, BasicGameplayArtifactResolution, BasicGameplayAssessmentSummary, BasicGameplayBoundsOffender, BasicGameplayCanvasState, BasicGameplayCatchRecord, BasicGameplayChangeSummary, BasicGameplayFailureCode, BasicGameplayFixReference, BasicGameplayMetric, BasicGameplayMobileEvidence, BasicGameplayProgressCheckType, BasicGameplayProgressionCheck, BasicGameplayProofArtifact, BasicGameplayResponsiveViewportEvidence, BasicGameplayRouteReference, BasicGameplaySnapshot, BasicGameplaySuiteFailure, BasicGameplayWarningCode, CreateBasicGameplayCatchSummaryInput, RIDDLE_PROOF_BASIC_GAMEPLAY_ASSESSMENT_VERSION, RIDDLE_PROOF_BASIC_GAMEPLAY_CATCH_VERSION, RIDDLE_PROOF_BASIC_GAMEPLAY_VERSION, RiddleProofBasicGameplayAssessment, RiddleProofBasicGameplayCatchSummary, RiddleProofBasicGameplayEvidence, RiddleProofBasicGameplayRouteAssessment, RiddleProofBasicGameplayRouteEvidence, assessBasicGameplayEvidence, assessBasicGameplayProgressionCheck, assessBasicGameplayProgressionChecks, assessBasicGameplayRoute, attachBasicGameplayArtifactScreenshotHashes, augmentBasicGameplayAssessmentWithProgressionChecks, compactBasicGameplayText, createBasicGameplayCatchRecords, createBasicGameplayCatchSummary, extractBasicGameplayEvidence, resolveBasicGameplayProgressionCheckWithArtifactScreenshots, sanitizeBasicGameplayJsonString } from './basic-gameplay.cjs';
13
13
  export { NormalizeRiddleProofProfileOptions, RIDDLE_PROOF_PROFILE_CHECK_TYPES, RIDDLE_PROOF_PROFILE_EVIDENCE_VERSION, RIDDLE_PROOF_PROFILE_RESULT_VERSION, RIDDLE_PROOF_PROFILE_SETUP_ACTION_TYPES, RIDDLE_PROOF_PROFILE_STATUSES, RIDDLE_PROOF_PROFILE_VERSION, RiddleProofProfile, RiddleProofProfileArtifactRef, RiddleProofProfileBaselinePolicy, RiddleProofProfileBoundsOffender, RiddleProofProfileCheck, RiddleProofProfileCheckResult, RiddleProofProfileCheckType, RiddleProofProfileEvidence, RiddleProofProfileFailureAction, RiddleProofProfileNetworkMock, RiddleProofProfileNetworkMockResponse, RiddleProofProfileResult, RiddleProofProfileRouteEvidence, RiddleProofProfileRouteInventoryRoute, RiddleProofProfileRunner, RiddleProofProfileSetupAction, RiddleProofProfileSetupActionType, RiddleProofProfileStatus, RiddleProofProfileTarget, RiddleProofProfileViewport, RiddleProofProfileViewportEvidence, assessRiddleProofProfileEvidence, buildRiddleProofProfileScript, collectRiddleProfileArtifactRefs, createRiddleProofProfileConfigurationError, createRiddleProofProfileEnvironmentBlockedResult, createRiddleProofProfileInsufficientResult, extractRiddleProofProfileResult, normalizeRiddleProofProfile, profileStatusExitCode, resolveRiddleProofProfileRouteUrl, resolveRiddleProofProfileTargetUrl, resolveRiddleProofProfileTimeoutSec, slugifyRiddleProofProfileName, summarizeRiddleProofProfileResult } from './profile.cjs';
14
- export { DEFAULT_RIDDLE_API_BASE_URL, DEFAULT_RIDDLE_API_KEY_FILE, RiddleApiError, RiddleClientConfig, RiddleFetch, RiddlePollJobOptions, RiddlePollJobResult, RiddlePollProgressSnapshot, RiddlePollSummary, RiddlePreviewDeployResult, RiddleRunScriptInput, RiddleServerPreviewInput, RiddleServerPreviewResult, createRiddleApiClient, deployRiddleStaticPreview, isTerminalRiddleJobStatus, parseRiddleViewport, pollRiddleJob, resolveRiddleApiKey, riddleRequestJson, runRiddleScript, runRiddleServerPreview } from './riddle-client.cjs';
14
+ export { DEFAULT_RIDDLE_API_BASE_URL, DEFAULT_RIDDLE_API_KEY_FILE, RiddleApiError, RiddleClientConfig, RiddleFetch, RiddlePollJobOptions, RiddlePollJobResult, RiddlePollProgressSnapshot, RiddlePollSummary, RiddlePreviewDeployResult, RiddlePreviewFramework, RiddleRunScriptInput, RiddleServerPreviewInput, RiddleServerPreviewResult, createRiddleApiClient, deployRiddlePreview, deployRiddleStaticPreview, isTerminalRiddleJobStatus, parseRiddleViewport, pollRiddleJob, resolveRiddleApiKey, riddleRequestJson, runRiddleScript, runRiddleServerPreview } from './riddle-client.cjs';
package/dist/index.d.ts CHANGED
@@ -11,4 +11,4 @@ export { BuildVisualProofSessionInput, RIDDLE_PROOF_VISUAL_SESSION_FINGERPRINT_V
11
11
  export { AssessPlayabilityOptions, RIDDLE_PROOF_PLAYABILITY_ASSESSMENT_VERSION, RIDDLE_PROOF_PLAYABILITY_VERSION, RiddleProofPlayabilityAssessment, RiddleProofPlayabilityEvidence, assessPlayabilityEvidence, extractPlayabilityEvidence, isRiddleProofPlayabilityMode } from './playability.js';
12
12
  export { AssessBasicGameplayOptions, AttachBasicGameplayArtifactOptions, BASIC_GAMEPLAY_ACTION_TYPES, BASIC_GAMEPLAY_PROGRESS_CHECK_TYPES, BasicGameplayActionResult, BasicGameplayActionType, BasicGameplayArtifactResolution, BasicGameplayAssessmentSummary, BasicGameplayBoundsOffender, BasicGameplayCanvasState, BasicGameplayCatchRecord, BasicGameplayChangeSummary, BasicGameplayFailureCode, BasicGameplayFixReference, BasicGameplayMetric, BasicGameplayMobileEvidence, BasicGameplayProgressCheckType, BasicGameplayProgressionCheck, BasicGameplayProofArtifact, BasicGameplayResponsiveViewportEvidence, BasicGameplayRouteReference, BasicGameplaySnapshot, BasicGameplaySuiteFailure, BasicGameplayWarningCode, CreateBasicGameplayCatchSummaryInput, RIDDLE_PROOF_BASIC_GAMEPLAY_ASSESSMENT_VERSION, RIDDLE_PROOF_BASIC_GAMEPLAY_CATCH_VERSION, RIDDLE_PROOF_BASIC_GAMEPLAY_VERSION, RiddleProofBasicGameplayAssessment, RiddleProofBasicGameplayCatchSummary, RiddleProofBasicGameplayEvidence, RiddleProofBasicGameplayRouteAssessment, RiddleProofBasicGameplayRouteEvidence, assessBasicGameplayEvidence, assessBasicGameplayProgressionCheck, assessBasicGameplayProgressionChecks, assessBasicGameplayRoute, attachBasicGameplayArtifactScreenshotHashes, augmentBasicGameplayAssessmentWithProgressionChecks, compactBasicGameplayText, createBasicGameplayCatchRecords, createBasicGameplayCatchSummary, extractBasicGameplayEvidence, resolveBasicGameplayProgressionCheckWithArtifactScreenshots, sanitizeBasicGameplayJsonString } from './basic-gameplay.js';
13
13
  export { NormalizeRiddleProofProfileOptions, RIDDLE_PROOF_PROFILE_CHECK_TYPES, RIDDLE_PROOF_PROFILE_EVIDENCE_VERSION, RIDDLE_PROOF_PROFILE_RESULT_VERSION, RIDDLE_PROOF_PROFILE_SETUP_ACTION_TYPES, RIDDLE_PROOF_PROFILE_STATUSES, RIDDLE_PROOF_PROFILE_VERSION, RiddleProofProfile, RiddleProofProfileArtifactRef, RiddleProofProfileBaselinePolicy, RiddleProofProfileBoundsOffender, RiddleProofProfileCheck, RiddleProofProfileCheckResult, RiddleProofProfileCheckType, RiddleProofProfileEvidence, RiddleProofProfileFailureAction, RiddleProofProfileNetworkMock, RiddleProofProfileNetworkMockResponse, RiddleProofProfileResult, RiddleProofProfileRouteEvidence, RiddleProofProfileRouteInventoryRoute, RiddleProofProfileRunner, RiddleProofProfileSetupAction, RiddleProofProfileSetupActionType, RiddleProofProfileStatus, RiddleProofProfileTarget, RiddleProofProfileViewport, RiddleProofProfileViewportEvidence, assessRiddleProofProfileEvidence, buildRiddleProofProfileScript, collectRiddleProfileArtifactRefs, createRiddleProofProfileConfigurationError, createRiddleProofProfileEnvironmentBlockedResult, createRiddleProofProfileInsufficientResult, extractRiddleProofProfileResult, normalizeRiddleProofProfile, profileStatusExitCode, resolveRiddleProofProfileRouteUrl, resolveRiddleProofProfileTargetUrl, resolveRiddleProofProfileTimeoutSec, slugifyRiddleProofProfileName, summarizeRiddleProofProfileResult } from './profile.js';
14
- export { DEFAULT_RIDDLE_API_BASE_URL, DEFAULT_RIDDLE_API_KEY_FILE, RiddleApiError, RiddleClientConfig, RiddleFetch, RiddlePollJobOptions, RiddlePollJobResult, RiddlePollProgressSnapshot, RiddlePollSummary, RiddlePreviewDeployResult, RiddleRunScriptInput, RiddleServerPreviewInput, RiddleServerPreviewResult, createRiddleApiClient, deployRiddleStaticPreview, isTerminalRiddleJobStatus, parseRiddleViewport, pollRiddleJob, resolveRiddleApiKey, riddleRequestJson, runRiddleScript, runRiddleServerPreview } from './riddle-client.js';
14
+ export { DEFAULT_RIDDLE_API_BASE_URL, DEFAULT_RIDDLE_API_KEY_FILE, RiddleApiError, RiddleClientConfig, RiddleFetch, RiddlePollJobOptions, RiddlePollJobResult, RiddlePollProgressSnapshot, RiddlePollSummary, RiddlePreviewDeployResult, RiddlePreviewFramework, RiddleRunScriptInput, RiddleServerPreviewInput, RiddleServerPreviewResult, createRiddleApiClient, deployRiddlePreview, deployRiddleStaticPreview, isTerminalRiddleJobStatus, parseRiddleViewport, pollRiddleJob, resolveRiddleApiKey, riddleRequestJson, runRiddleScript, runRiddleServerPreview } from './riddle-client.js';
package/dist/index.js CHANGED
@@ -58,12 +58,13 @@ import {
58
58
  resolveRiddleProofProfileTimeoutSec,
59
59
  slugifyRiddleProofProfileName,
60
60
  summarizeRiddleProofProfileResult
61
- } from "./chunk-2SGLFPFX.js";
61
+ } from "./chunk-QLBOFUON.js";
62
62
  import {
63
63
  DEFAULT_RIDDLE_API_BASE_URL,
64
64
  DEFAULT_RIDDLE_API_KEY_FILE,
65
65
  RiddleApiError,
66
66
  createRiddleApiClient,
67
+ deployRiddlePreview,
67
68
  deployRiddleStaticPreview,
68
69
  isTerminalRiddleJobStatus,
69
70
  parseRiddleViewport,
@@ -72,7 +73,7 @@ import {
72
73
  riddleRequestJson,
73
74
  runRiddleScript,
74
75
  runRiddleServerPreview
75
- } from "./chunk-6RQGBHJ5.js";
76
+ } from "./chunk-OI57LO6Y.js";
76
77
  import {
77
78
  DEFAULT_DIAGNOSTIC_ARRAY_LIMIT,
78
79
  DEFAULT_DIAGNOSTIC_HISTORY_LIMIT,
@@ -207,6 +208,7 @@ export {
207
208
  createRunResult,
208
209
  createRunState,
209
210
  createRunStatusSnapshot,
211
+ deployRiddlePreview,
210
212
  deployRiddleStaticPreview,
211
213
  extractBasicGameplayEvidence,
212
214
  extractPlayabilityEvidence,
package/dist/profile.cjs CHANGED
@@ -4480,6 +4480,16 @@ async function findInventoryLinkIndex(check, expectedPath) {
4480
4480
  }
4481
4481
  return -1;
4482
4482
  }
4483
+ async function waitForInventoryLinkIndex(check, expectedPath) {
4484
+ const timeout = Math.min(inventoryCheckTimeout(check), 15000);
4485
+ const started = Date.now();
4486
+ let index = await findInventoryLinkIndex(check, expectedPath);
4487
+ while (index < 0 && Date.now() - started < timeout) {
4488
+ await page.waitForTimeout(250);
4489
+ index = await findInventoryLinkIndex(check, expectedPath);
4490
+ }
4491
+ return index;
4492
+ }
4483
4493
  async function collectRouteInventory(check, viewport) {
4484
4494
  const expectedRoutes = check.expected_routes || [];
4485
4495
  const expectedPaths = expectedRoutes.map((route) => normalizeRoutePath(route.path));
@@ -4536,7 +4546,7 @@ async function collectRouteInventory(check, viewport) {
4536
4546
  if (profile.target.wait_for_selector) {
4537
4547
  await waitForAnyVisibleSelector(page, profile.target.wait_for_selector, 15000).catch(() => {});
4538
4548
  }
4539
- const index = await findInventoryLinkIndex(check, expectedRoute.path);
4549
+ const index = await waitForInventoryLinkIndex(check, expectedRoute.path);
4540
4550
  if (index < 0) {
4541
4551
  result.error = "source_link_not_found";
4542
4552
  failures.push({ code: "source_link_clickthrough_missing", name: expectedRoute.name || null, path: expectedRoute.path });
package/dist/profile.js CHANGED
@@ -19,7 +19,7 @@ import {
19
19
  resolveRiddleProofProfileTimeoutSec,
20
20
  slugifyRiddleProofProfileName,
21
21
  summarizeRiddleProofProfileResult
22
- } from "./chunk-2SGLFPFX.js";
22
+ } from "./chunk-QLBOFUON.js";
23
23
  export {
24
24
  RIDDLE_PROOF_PROFILE_CHECK_TYPES,
25
25
  RIDDLE_PROOF_PROFILE_EVIDENCE_VERSION,
@@ -292,7 +292,7 @@ declare function executeWorkflow(params: WorkflowParams, pluginConfig: any, reso
292
292
  blocking?: boolean;
293
293
  details?: Record<string, unknown>;
294
294
  ok: boolean;
295
- action: "author" | "recon" | "ship" | "implement" | "verify" | "setup" | "run";
295
+ action: "setup" | "recon" | "author" | "implement" | "verify" | "ship" | "run";
296
296
  state_path: string;
297
297
  stage: any;
298
298
  summary: string;
@@ -382,7 +382,7 @@ declare function executeWorkflow(params: WorkflowParams, pluginConfig: any, reso
382
382
  continueWithStage?: WorkflowStage | null;
383
383
  blocking?: boolean;
384
384
  details?: Record<string, unknown>;
385
- action: "author" | "recon" | "ship" | "implement" | "verify" | "setup" | "run";
385
+ action: "setup" | "recon" | "author" | "implement" | "verify" | "ship" | "run";
386
386
  state_path: string;
387
387
  stage: any;
388
388
  checkpoint: string;
@@ -659,7 +659,7 @@ declare function executeWorkflow(params: WorkflowParams, pluginConfig: any, reso
659
659
  error?: undefined;
660
660
  } | {
661
661
  ok: boolean;
662
- action: "author" | "recon" | "ship" | "implement" | "verify" | "setup" | "run";
662
+ action: "setup" | "recon" | "author" | "implement" | "verify" | "ship" | "run";
663
663
  state_path: string;
664
664
  stage: any;
665
665
  summary: string;
@@ -292,7 +292,7 @@ declare function executeWorkflow(params: WorkflowParams, pluginConfig: any, reso
292
292
  blocking?: boolean;
293
293
  details?: Record<string, unknown>;
294
294
  ok: boolean;
295
- action: "author" | "recon" | "ship" | "implement" | "verify" | "setup" | "run";
295
+ action: "setup" | "recon" | "author" | "implement" | "verify" | "ship" | "run";
296
296
  state_path: string;
297
297
  stage: any;
298
298
  summary: string;
@@ -382,7 +382,7 @@ declare function executeWorkflow(params: WorkflowParams, pluginConfig: any, reso
382
382
  continueWithStage?: WorkflowStage | null;
383
383
  blocking?: boolean;
384
384
  details?: Record<string, unknown>;
385
- action: "author" | "recon" | "ship" | "implement" | "verify" | "setup" | "run";
385
+ action: "setup" | "recon" | "author" | "implement" | "verify" | "ship" | "run";
386
386
  state_path: string;
387
387
  stage: any;
388
388
  checkpoint: string;
@@ -659,7 +659,7 @@ declare function executeWorkflow(params: WorkflowParams, pluginConfig: any, reso
659
659
  error?: undefined;
660
660
  } | {
661
661
  ok: boolean;
662
- action: "author" | "recon" | "ship" | "implement" | "verify" | "setup" | "run";
662
+ action: "setup" | "recon" | "author" | "implement" | "verify" | "ship" | "run";
663
663
  state_path: string;
664
664
  stage: any;
665
665
  summary: string;
@@ -34,6 +34,7 @@ __export(riddle_client_exports, {
34
34
  DEFAULT_RIDDLE_API_KEY_FILE: () => DEFAULT_RIDDLE_API_KEY_FILE,
35
35
  RiddleApiError: () => RiddleApiError,
36
36
  createRiddleApiClient: () => createRiddleApiClient,
37
+ deployRiddlePreview: () => deployRiddlePreview,
37
38
  deployRiddleStaticPreview: () => deployRiddleStaticPreview,
38
39
  isTerminalRiddleJobStatus: () => isTerminalRiddleJobStatus,
39
40
  parseRiddleViewport: () => parseRiddleViewport,
@@ -93,12 +94,13 @@ async function riddleRequestJson(config, pathname, init = {}) {
93
94
  if (!response.ok) throw new RiddleApiError(pathname, response.status, text);
94
95
  return json ?? text;
95
96
  }
96
- async function deployRiddleStaticPreview(config, directory, label) {
97
+ async function deployRiddlePreview(config, directory, label, framework = "static") {
97
98
  if (!directory?.trim()) throw new Error("directory is required");
98
99
  if (!label?.trim()) throw new Error("label is required");
100
+ if (framework !== "spa" && framework !== "static") throw new Error("framework must be spa or static");
99
101
  const created = await riddleRequestJson(config, "/v1/preview", {
100
102
  method: "POST",
101
- body: JSON.stringify({ framework: "static", label })
103
+ body: JSON.stringify({ framework, label })
102
104
  });
103
105
  const id = String(created.id || "");
104
106
  const uploadUrl = String(created.upload_url || "");
@@ -125,6 +127,7 @@ async function deployRiddleStaticPreview(config, directory, label) {
125
127
  ok: true,
126
128
  id: String(published.id || id),
127
129
  label,
130
+ framework,
128
131
  preview_url: String(published.preview_url || ""),
129
132
  file_count: typeof published.file_count === "number" ? published.file_count : void 0,
130
133
  total_bytes: typeof published.total_bytes === "number" ? published.total_bytes : void 0,
@@ -132,6 +135,9 @@ async function deployRiddleStaticPreview(config, directory, label) {
132
135
  raw: published
133
136
  };
134
137
  }
138
+ async function deployRiddleStaticPreview(config, directory, label) {
139
+ return deployRiddlePreview(config, directory, label, "static");
140
+ }
135
141
  function createTarball(directory, label, exclude = []) {
136
142
  const scratch = (0, import_node_fs.mkdtempSync)(import_node_path.default.join((0, import_node_os.tmpdir)(), "riddle-upload-"));
137
143
  const tarball = import_node_path.default.join(scratch, `${label}.tar.gz`);
@@ -363,6 +369,7 @@ async function pollRiddleJob(config, jobId, options = {}) {
363
369
  function createRiddleApiClient(config = {}) {
364
370
  return {
365
371
  requestJson: (pathname, init) => riddleRequestJson(config, pathname, init),
372
+ deployPreview: (directory, label, framework = "static") => deployRiddlePreview(config, directory, label, framework),
366
373
  deployStaticPreview: (directory, label) => deployRiddleStaticPreview(config, directory, label),
367
374
  runScript: (input) => runRiddleScript(config, input),
368
375
  runServerPreview: (input) => runRiddleServerPreview(config, input),
@@ -375,6 +382,7 @@ function createRiddleApiClient(config = {}) {
375
382
  DEFAULT_RIDDLE_API_KEY_FILE,
376
383
  RiddleApiError,
377
384
  createRiddleApiClient,
385
+ deployRiddlePreview,
378
386
  deployRiddleStaticPreview,
379
387
  isTerminalRiddleJobStatus,
380
388
  parseRiddleViewport,
@@ -32,10 +32,12 @@ interface RiddlePollJobOptions {
32
32
  progressEveryMs?: number;
33
33
  onProgress?: (snapshot: RiddlePollProgressSnapshot) => void | Promise<void>;
34
34
  }
35
+ type RiddlePreviewFramework = "spa" | "static";
35
36
  interface RiddlePreviewDeployResult {
36
37
  ok: true;
37
38
  id: string;
38
39
  label: string;
40
+ framework: RiddlePreviewFramework;
39
41
  preview_url: string;
40
42
  file_count?: number;
41
43
  total_bytes?: number;
@@ -101,6 +103,7 @@ declare class RiddleApiError extends Error {
101
103
  }
102
104
  declare function resolveRiddleApiKey(config?: RiddleClientConfig): string;
103
105
  declare function riddleRequestJson<T = unknown>(config: RiddleClientConfig, pathname: string, init?: RequestInit): Promise<T>;
106
+ declare function deployRiddlePreview(config: RiddleClientConfig, directory: string, label: string, framework?: RiddlePreviewFramework): Promise<RiddlePreviewDeployResult>;
104
107
  declare function deployRiddleStaticPreview(config: RiddleClientConfig, directory: string, label: string): Promise<RiddlePreviewDeployResult>;
105
108
  declare function parseRiddleViewport(value?: string): {
106
109
  width: number;
@@ -112,10 +115,11 @@ declare function isTerminalRiddleJobStatus(status: unknown): boolean;
112
115
  declare function pollRiddleJob(config: RiddleClientConfig, jobId: string, options?: RiddlePollJobOptions): Promise<RiddlePollJobResult>;
113
116
  declare function createRiddleApiClient(config?: RiddleClientConfig): {
114
117
  requestJson: <T = unknown>(pathname: string, init?: RequestInit) => Promise<T>;
118
+ deployPreview: (directory: string, label: string, framework?: RiddlePreviewFramework) => Promise<RiddlePreviewDeployResult>;
115
119
  deployStaticPreview: (directory: string, label: string) => Promise<RiddlePreviewDeployResult>;
116
120
  runScript: (input: RiddleRunScriptInput) => Promise<Record<string, unknown>>;
117
121
  runServerPreview: (input: RiddleServerPreviewInput) => Promise<RiddleServerPreviewResult>;
118
122
  pollJob: (jobId: string, options?: RiddlePollJobOptions) => Promise<RiddlePollJobResult>;
119
123
  };
120
124
 
121
- export { DEFAULT_RIDDLE_API_BASE_URL, DEFAULT_RIDDLE_API_KEY_FILE, RiddleApiError, type RiddleClientConfig, type RiddleFetch, type RiddlePollJobOptions, type RiddlePollJobResult, type RiddlePollProgressSnapshot, type RiddlePollSummary, type RiddlePreviewDeployResult, type RiddleRunScriptInput, type RiddleServerPreviewInput, type RiddleServerPreviewResult, createRiddleApiClient, deployRiddleStaticPreview, isTerminalRiddleJobStatus, parseRiddleViewport, pollRiddleJob, resolveRiddleApiKey, riddleRequestJson, runRiddleScript, runRiddleServerPreview };
125
+ export { DEFAULT_RIDDLE_API_BASE_URL, DEFAULT_RIDDLE_API_KEY_FILE, RiddleApiError, type RiddleClientConfig, type RiddleFetch, type RiddlePollJobOptions, type RiddlePollJobResult, type RiddlePollProgressSnapshot, type RiddlePollSummary, type RiddlePreviewDeployResult, type RiddlePreviewFramework, type RiddleRunScriptInput, type RiddleServerPreviewInput, type RiddleServerPreviewResult, createRiddleApiClient, deployRiddlePreview, deployRiddleStaticPreview, isTerminalRiddleJobStatus, parseRiddleViewport, pollRiddleJob, resolveRiddleApiKey, riddleRequestJson, runRiddleScript, runRiddleServerPreview };
@@ -32,10 +32,12 @@ interface RiddlePollJobOptions {
32
32
  progressEveryMs?: number;
33
33
  onProgress?: (snapshot: RiddlePollProgressSnapshot) => void | Promise<void>;
34
34
  }
35
+ type RiddlePreviewFramework = "spa" | "static";
35
36
  interface RiddlePreviewDeployResult {
36
37
  ok: true;
37
38
  id: string;
38
39
  label: string;
40
+ framework: RiddlePreviewFramework;
39
41
  preview_url: string;
40
42
  file_count?: number;
41
43
  total_bytes?: number;
@@ -101,6 +103,7 @@ declare class RiddleApiError extends Error {
101
103
  }
102
104
  declare function resolveRiddleApiKey(config?: RiddleClientConfig): string;
103
105
  declare function riddleRequestJson<T = unknown>(config: RiddleClientConfig, pathname: string, init?: RequestInit): Promise<T>;
106
+ declare function deployRiddlePreview(config: RiddleClientConfig, directory: string, label: string, framework?: RiddlePreviewFramework): Promise<RiddlePreviewDeployResult>;
104
107
  declare function deployRiddleStaticPreview(config: RiddleClientConfig, directory: string, label: string): Promise<RiddlePreviewDeployResult>;
105
108
  declare function parseRiddleViewport(value?: string): {
106
109
  width: number;
@@ -112,10 +115,11 @@ declare function isTerminalRiddleJobStatus(status: unknown): boolean;
112
115
  declare function pollRiddleJob(config: RiddleClientConfig, jobId: string, options?: RiddlePollJobOptions): Promise<RiddlePollJobResult>;
113
116
  declare function createRiddleApiClient(config?: RiddleClientConfig): {
114
117
  requestJson: <T = unknown>(pathname: string, init?: RequestInit) => Promise<T>;
118
+ deployPreview: (directory: string, label: string, framework?: RiddlePreviewFramework) => Promise<RiddlePreviewDeployResult>;
115
119
  deployStaticPreview: (directory: string, label: string) => Promise<RiddlePreviewDeployResult>;
116
120
  runScript: (input: RiddleRunScriptInput) => Promise<Record<string, unknown>>;
117
121
  runServerPreview: (input: RiddleServerPreviewInput) => Promise<RiddleServerPreviewResult>;
118
122
  pollJob: (jobId: string, options?: RiddlePollJobOptions) => Promise<RiddlePollJobResult>;
119
123
  };
120
124
 
121
- export { DEFAULT_RIDDLE_API_BASE_URL, DEFAULT_RIDDLE_API_KEY_FILE, RiddleApiError, type RiddleClientConfig, type RiddleFetch, type RiddlePollJobOptions, type RiddlePollJobResult, type RiddlePollProgressSnapshot, type RiddlePollSummary, type RiddlePreviewDeployResult, type RiddleRunScriptInput, type RiddleServerPreviewInput, type RiddleServerPreviewResult, createRiddleApiClient, deployRiddleStaticPreview, isTerminalRiddleJobStatus, parseRiddleViewport, pollRiddleJob, resolveRiddleApiKey, riddleRequestJson, runRiddleScript, runRiddleServerPreview };
125
+ export { DEFAULT_RIDDLE_API_BASE_URL, DEFAULT_RIDDLE_API_KEY_FILE, RiddleApiError, type RiddleClientConfig, type RiddleFetch, type RiddlePollJobOptions, type RiddlePollJobResult, type RiddlePollProgressSnapshot, type RiddlePollSummary, type RiddlePreviewDeployResult, type RiddlePreviewFramework, type RiddleRunScriptInput, type RiddleServerPreviewInput, type RiddleServerPreviewResult, createRiddleApiClient, deployRiddlePreview, deployRiddleStaticPreview, isTerminalRiddleJobStatus, parseRiddleViewport, pollRiddleJob, resolveRiddleApiKey, riddleRequestJson, runRiddleScript, runRiddleServerPreview };
@@ -3,6 +3,7 @@ import {
3
3
  DEFAULT_RIDDLE_API_KEY_FILE,
4
4
  RiddleApiError,
5
5
  createRiddleApiClient,
6
+ deployRiddlePreview,
6
7
  deployRiddleStaticPreview,
7
8
  isTerminalRiddleJobStatus,
8
9
  parseRiddleViewport,
@@ -11,12 +12,13 @@ import {
11
12
  riddleRequestJson,
12
13
  runRiddleScript,
13
14
  runRiddleServerPreview
14
- } from "./chunk-6RQGBHJ5.js";
15
+ } from "./chunk-OI57LO6Y.js";
15
16
  export {
16
17
  DEFAULT_RIDDLE_API_BASE_URL,
17
18
  DEFAULT_RIDDLE_API_KEY_FILE,
18
19
  RiddleApiError,
19
20
  createRiddleApiClient,
21
+ deployRiddlePreview,
20
22
  deployRiddleStaticPreview,
21
23
  isTerminalRiddleJobStatus,
22
24
  parseRiddleViewport,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@riddledc/riddle-proof",
3
- "version": "0.7.91",
3
+ "version": "0.7.93",
4
4
  "description": "Reusable Riddle Proof contracts and helpers for evidence-backed agent changes.",
5
5
  "license": "MIT",
6
6
  "author": "RiddleDC",