@riddledc/riddle-proof 0.8.80 → 0.8.81

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -309,6 +309,15 @@ or as a stronger proof base before a change loop.
309
309
  }
310
310
  ```
311
311
 
312
+ Viewport entries may set `hasTouch` and `isMobile` when the behavior under
313
+ test depends on a touch-capable browser context rather than dimensions alone.
314
+ The snake-case aliases `has_touch` and `is_mobile` are accepted at profile
315
+ input boundaries. For example:
316
+
317
+ ```json
318
+ { "name": "ipad", "width": 820, "height": 1180, "hasTouch": true, "isMobile": true }
319
+ ```
320
+
312
321
  For early proof authoring, `profile-suggest` can turn a route plus changed file,
313
322
  selector, and changed-text hints into a conservative draft profile:
314
323
 
@@ -12,9 +12,9 @@ import {
12
12
  parseRiddleProofHandoffReceipt,
13
13
  riddleProofChangeReceiptHtml,
14
14
  riddleProofChangeReceiptMarkdown
15
- } from "./chunk-IL7MLYB5.js";
15
+ } from "./chunk-LR4UYJDY.js";
16
16
  import "./chunk-MEVVL4TI.js";
17
- import "./chunk-ZNVYJFR7.js";
17
+ import "./chunk-2K3DIK7A.js";
18
18
  import "./chunk-MLKGABMK.js";
19
19
  export {
20
20
  RIDDLE_PROOF_CHANGE_CONTRACT_VERSION,
@@ -1144,10 +1144,14 @@ function normalizeViewport(input, index) {
1144
1144
  if (!width || !height || width < 100 || height < 100) {
1145
1145
  throw new Error(`target.viewports[${index}] requires numeric width and height >= 100.`);
1146
1146
  }
1147
+ const hasTouch = booleanValue(valueFromOwn(input, "hasTouch", "has_touch"));
1148
+ const isMobile = booleanValue(valueFromOwn(input, "isMobile", "is_mobile"));
1147
1149
  return {
1148
1150
  name: normalizeName(input.name || input.label, `viewport-${index + 1}`),
1149
1151
  width: Math.round(width),
1150
- height: Math.round(height)
1152
+ height: Math.round(height),
1153
+ ...hasTouch === void 0 ? {} : { hasTouch },
1154
+ ...isMobile === void 0 ? {} : { isMobile }
1151
1155
  };
1152
1156
  }
1153
1157
  function normalizeViewports(value) {
@@ -5,7 +5,7 @@ import {
5
5
  createRiddleProofHandoffReceipt,
6
6
  parseRiddleProofChangeReceipt,
7
7
  parseRiddleProofHandoffReceipt
8
- } from "./chunk-IL7MLYB5.js";
8
+ } from "./chunk-LR4UYJDY.js";
9
9
  import {
10
10
  riddleProofPublicStateAllowsMergeRecommendation,
11
11
  riddleProofPublicStateMergeRecommendation,
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  RIDDLE_PROOF_PROFILE_VERSION
3
- } from "./chunk-ZNVYJFR7.js";
3
+ } from "./chunk-2K3DIK7A.js";
4
4
 
5
5
  // src/profile-suggestions.ts
6
6
  var RIDDLE_PROOF_PROFILE_SUGGESTIONS_VERSION = "riddle-proof.profile-suggestions.v1";
@@ -4,7 +4,7 @@ import {
4
4
  } from "./chunk-MEVVL4TI.js";
5
5
  import {
6
6
  RIDDLE_PROOF_PROFILE_STATUSES
7
- } from "./chunk-ZNVYJFR7.js";
7
+ } from "./chunk-2K3DIK7A.js";
8
8
 
9
9
  // src/change-proof.ts
10
10
  var RIDDLE_PROOF_CHANGE_CONTRACT_VERSION = "riddle-proof.change-contract.v1";
@@ -8,17 +8,17 @@ import {
8
8
  RIDDLE_PROOF_PR_COMMENT_MARKER,
9
9
  buildRiddleProofPrCommentMarkdown,
10
10
  summarizeRiddleProofPrComment
11
- } from "./chunk-6T6ZAK77.js";
11
+ } from "./chunk-7OAETQU3.js";
12
12
  import {
13
13
  suggestRiddleProofProfileChecks
14
- } from "./chunk-A4EF4M3B.js";
14
+ } from "./chunk-FW7CKARF.js";
15
15
  import {
16
16
  assessRiddleProofChange,
17
17
  createRiddleProofChangeReceipt,
18
18
  createRiddleProofHandoffReceipt,
19
19
  riddleProofChangeReceiptHtml,
20
20
  riddleProofChangeReceiptMarkdown
21
- } from "./chunk-IL7MLYB5.js";
21
+ } from "./chunk-LR4UYJDY.js";
22
22
  import {
23
23
  createRiddleProofObservationReceipt,
24
24
  parseRiddlePreviewReceipt,
@@ -41,7 +41,7 @@ import {
41
41
  profileStatusExitCode,
42
42
  resolveRiddleProofProfileTargetUrl,
43
43
  resolveRiddleProofProfileTimeoutSec
44
- } from "./chunk-ZNVYJFR7.js";
44
+ } from "./chunk-2K3DIK7A.js";
45
45
  import {
46
46
  createCodexExecAgentAdapter,
47
47
  runCodexExecAgentDoctor
package/dist/cli/index.js CHANGED
@@ -1,11 +1,11 @@
1
- import "../chunk-N7EETHYG.js";
1
+ import "../chunk-QYZ3GKCP.js";
2
2
  import "../chunk-5IFZSUPF.js";
3
3
  import "../chunk-JFQXAJH2.js";
4
- import "../chunk-6T6ZAK77.js";
5
- import "../chunk-A4EF4M3B.js";
6
- import "../chunk-IL7MLYB5.js";
4
+ import "../chunk-7OAETQU3.js";
5
+ import "../chunk-FW7CKARF.js";
6
+ import "../chunk-LR4UYJDY.js";
7
7
  import "../chunk-MEVVL4TI.js";
8
- import "../chunk-ZNVYJFR7.js";
8
+ import "../chunk-2K3DIK7A.js";
9
9
  import "../chunk-KXLEN4SA.js";
10
10
  import "../chunk-WLUMLHII.js";
11
11
  import "../chunk-CGJX7LJO.js";
package/dist/cli.cjs CHANGED
@@ -9893,10 +9893,14 @@ function normalizeViewport(input, index) {
9893
9893
  if (!width || !height || width < 100 || height < 100) {
9894
9894
  throw new Error(`target.viewports[${index}] requires numeric width and height >= 100.`);
9895
9895
  }
9896
+ const hasTouch = booleanValue2(valueFromOwn(input, "hasTouch", "has_touch"));
9897
+ const isMobile = booleanValue2(valueFromOwn(input, "isMobile", "is_mobile"));
9896
9898
  return {
9897
9899
  name: normalizeName(input.name || input.label, `viewport-${index + 1}`),
9898
9900
  width: Math.round(width),
9899
- height: Math.round(height)
9901
+ height: Math.round(height),
9902
+ ...hasTouch === void 0 ? {} : { hasTouch },
9903
+ ...isMobile === void 0 ? {} : { isMobile }
9900
9904
  };
9901
9905
  }
9902
9906
  function normalizeViewports(value) {
package/dist/cli.js CHANGED
@@ -1,12 +1,12 @@
1
1
  #!/usr/bin/env node
2
- import "./chunk-N7EETHYG.js";
2
+ import "./chunk-QYZ3GKCP.js";
3
3
  import "./chunk-5IFZSUPF.js";
4
4
  import "./chunk-JFQXAJH2.js";
5
- import "./chunk-6T6ZAK77.js";
6
- import "./chunk-A4EF4M3B.js";
7
- import "./chunk-IL7MLYB5.js";
5
+ import "./chunk-7OAETQU3.js";
6
+ import "./chunk-FW7CKARF.js";
7
+ import "./chunk-LR4UYJDY.js";
8
8
  import "./chunk-MEVVL4TI.js";
9
- import "./chunk-ZNVYJFR7.js";
9
+ import "./chunk-2K3DIK7A.js";
10
10
  import "./chunk-KXLEN4SA.js";
11
11
  import "./chunk-WLUMLHII.js";
12
12
  import "./chunk-CGJX7LJO.js";
package/dist/index.cjs CHANGED
@@ -11326,10 +11326,14 @@ function normalizeViewport(input, index) {
11326
11326
  if (!width || !height || width < 100 || height < 100) {
11327
11327
  throw new Error(`target.viewports[${index}] requires numeric width and height >= 100.`);
11328
11328
  }
11329
+ const hasTouch = booleanValue2(valueFromOwn(input, "hasTouch", "has_touch"));
11330
+ const isMobile = booleanValue2(valueFromOwn(input, "isMobile", "is_mobile"));
11329
11331
  return {
11330
11332
  name: normalizeName(input.name || input.label, `viewport-${index + 1}`),
11331
11333
  width: Math.round(width),
11332
- height: Math.round(height)
11334
+ height: Math.round(height),
11335
+ ...hasTouch === void 0 ? {} : { hasTouch },
11336
+ ...isMobile === void 0 ? {} : { isMobile }
11333
11337
  };
11334
11338
  }
11335
11339
  function normalizeViewports(value) {
package/dist/index.js CHANGED
@@ -63,11 +63,11 @@ import {
63
63
  buildRiddleProofHandoffPrCommentMarkdown,
64
64
  buildRiddleProofPrCommentMarkdown,
65
65
  summarizeRiddleProofPrComment
66
- } from "./chunk-6T6ZAK77.js";
66
+ } from "./chunk-7OAETQU3.js";
67
67
  import {
68
68
  RIDDLE_PROOF_PROFILE_SUGGESTIONS_VERSION,
69
69
  suggestRiddleProofProfileChecks
70
- } from "./chunk-A4EF4M3B.js";
70
+ } from "./chunk-FW7CKARF.js";
71
71
  import {
72
72
  RIDDLE_PROOF_CHANGE_CONTRACT_VERSION,
73
73
  RIDDLE_PROOF_CHANGE_RECEIPT_V1_VERSION,
@@ -82,7 +82,7 @@ import {
82
82
  parseRiddleProofHandoffReceipt,
83
83
  riddleProofChangeReceiptHtml,
84
84
  riddleProofChangeReceiptMarkdown
85
- } from "./chunk-IL7MLYB5.js";
85
+ } from "./chunk-LR4UYJDY.js";
86
86
  import {
87
87
  RIDDLE_PREVIEW_RECEIPT_VERSION,
88
88
  RIDDLE_PROOF_OBSERVATION_RECEIPT_VERSION,
@@ -122,7 +122,7 @@ import {
122
122
  resolveRiddleProofProfileTimeoutSec,
123
123
  slugifyRiddleProofProfileName,
124
124
  summarizeRiddleProofProfileResult
125
- } from "./chunk-ZNVYJFR7.js";
125
+ } from "./chunk-2K3DIK7A.js";
126
126
  import {
127
127
  createCodexExecAgentAdapter,
128
128
  createCodexExecJsonRunner,
@@ -3,10 +3,10 @@ import {
3
3
  buildRiddleProofHandoffPrCommentMarkdown,
4
4
  buildRiddleProofPrCommentMarkdown,
5
5
  summarizeRiddleProofPrComment
6
- } from "./chunk-6T6ZAK77.js";
7
- import "./chunk-IL7MLYB5.js";
6
+ } from "./chunk-7OAETQU3.js";
7
+ import "./chunk-LR4UYJDY.js";
8
8
  import "./chunk-MEVVL4TI.js";
9
- import "./chunk-ZNVYJFR7.js";
9
+ import "./chunk-2K3DIK7A.js";
10
10
  import "./chunk-ZAR7BWMN.js";
11
11
  import "./chunk-MLKGABMK.js";
12
12
  export {
@@ -1200,10 +1200,14 @@ function normalizeViewport(input, index) {
1200
1200
  if (!width || !height || width < 100 || height < 100) {
1201
1201
  throw new Error(`target.viewports[${index}] requires numeric width and height >= 100.`);
1202
1202
  }
1203
+ const hasTouch = booleanValue(valueFromOwn(input, "hasTouch", "has_touch"));
1204
+ const isMobile = booleanValue(valueFromOwn(input, "isMobile", "is_mobile"));
1203
1205
  return {
1204
1206
  name: normalizeName(input.name || input.label, `viewport-${index + 1}`),
1205
1207
  width: Math.round(width),
1206
- height: Math.round(height)
1208
+ height: Math.round(height),
1209
+ ...hasTouch === void 0 ? {} : { hasTouch },
1210
+ ...isMobile === void 0 ? {} : { isMobile }
1207
1211
  };
1208
1212
  }
1209
1213
  function normalizeViewports(value) {
@@ -30,7 +30,7 @@ import {
30
30
  resolveRiddleProofProfileTimeoutSec,
31
31
  slugifyRiddleProofProfileName,
32
32
  summarizeRiddleProofProfileResult
33
- } from "../chunk-ZNVYJFR7.js";
33
+ } from "../chunk-2K3DIK7A.js";
34
34
  import "../chunk-MLKGABMK.js";
35
35
  export {
36
36
  RIDDLE_PROOF_HOSTED_PROFILE_ARTIFACTS,
@@ -1,8 +1,8 @@
1
1
  import {
2
2
  RIDDLE_PROOF_PROFILE_SUGGESTIONS_VERSION,
3
3
  suggestRiddleProofProfileChecks
4
- } from "./chunk-A4EF4M3B.js";
5
- import "./chunk-ZNVYJFR7.js";
4
+ } from "./chunk-FW7CKARF.js";
5
+ import "./chunk-2K3DIK7A.js";
6
6
  import "./chunk-MLKGABMK.js";
7
7
  export {
8
8
  RIDDLE_PROOF_PROFILE_SUGGESTIONS_VERSION,
package/dist/profile.cjs CHANGED
@@ -1198,10 +1198,14 @@ function normalizeViewport(input, index) {
1198
1198
  if (!width || !height || width < 100 || height < 100) {
1199
1199
  throw new Error(`target.viewports[${index}] requires numeric width and height >= 100.`);
1200
1200
  }
1201
+ const hasTouch = booleanValue(valueFromOwn(input, "hasTouch", "has_touch"));
1202
+ const isMobile = booleanValue(valueFromOwn(input, "isMobile", "is_mobile"));
1201
1203
  return {
1202
1204
  name: normalizeName(input.name || input.label, `viewport-${index + 1}`),
1203
1205
  width: Math.round(width),
1204
- height: Math.round(height)
1206
+ height: Math.round(height),
1207
+ ...hasTouch === void 0 ? {} : { hasTouch },
1208
+ ...isMobile === void 0 ? {} : { isMobile }
1205
1209
  };
1206
1210
  }
1207
1211
  function normalizeViewports(value) {
@@ -137,6 +137,8 @@ interface RiddleProofProfileViewport {
137
137
  name: string;
138
138
  width: number;
139
139
  height: number;
140
+ hasTouch?: boolean;
141
+ isMobile?: boolean;
140
142
  }
141
143
  interface RiddleProofProfileSetupAction {
142
144
  type: RiddleProofProfileSetupActionType;
package/dist/profile.d.ts CHANGED
@@ -137,6 +137,8 @@ interface RiddleProofProfileViewport {
137
137
  name: string;
138
138
  width: number;
139
139
  height: number;
140
+ hasTouch?: boolean;
141
+ isMobile?: boolean;
140
142
  }
141
143
  interface RiddleProofProfileSetupAction {
142
144
  type: RiddleProofProfileSetupActionType;
package/dist/profile.js CHANGED
@@ -30,7 +30,7 @@ import {
30
30
  resolveRiddleProofProfileTimeoutSec,
31
31
  slugifyRiddleProofProfileName,
32
32
  summarizeRiddleProofProfileResult
33
- } from "./chunk-ZNVYJFR7.js";
33
+ } from "./chunk-2K3DIK7A.js";
34
34
  import "./chunk-MLKGABMK.js";
35
35
  export {
36
36
  RIDDLE_PROOF_HOSTED_PROFILE_ARTIFACTS,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@riddledc/riddle-proof",
3
- "version": "0.8.80",
3
+ "version": "0.8.81",
4
4
  "description": "Reusable Riddle Proof contracts and helpers for evidence-backed agent changes.",
5
5
  "license": "MIT",
6
6
  "author": "RiddleDC",