@shapeshift-labs/frontier-runtime-proof 0.1.0 → 0.1.2

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
@@ -2,7 +2,7 @@
2
2
 
3
3
  Runtime-neutral proof capsule, telemetry, and admission primitives for Frontier merge and review evidence.
4
4
 
5
- `frontier-runtime-proof` does not launch browsers, run Playwright, read files, inspect Git, or decide whether code is semantically equivalent. It defines the small evidence contract that higher packages can use after a runtime probe has already run: what fixture mode was used, which command/probe produced the evidence, which source-bound signals were observed, and which telemetry artifacts make the proof reviewable.
5
+ The root `frontier-runtime-proof` import does not launch browsers, run Playwright, read files, inspect Git, or decide whether code is semantically equivalent. It defines the small evidence contract that higher packages can use after a runtime probe has already run: what fixture mode was used, which command/probe produced the evidence, which source-bound signals were observed, and which telemetry artifacts make the proof reviewable. The optional `./playwright` subpath can turn an already-owned Playwright `page` into that capsule without adding Playwright to the root dependency graph.
6
6
 
7
7
  ## Install
8
8
 
@@ -63,6 +63,71 @@ const validation = validateRuntimeProofEvidence(proof, {
63
63
 
64
64
  The return value is machine-checkable. Missing commands, probes, evidence hashes, required signals, telemetry hashes, failing statuses, blocked environments, and excessive cumulative layout shift all produce explicit reason codes.
65
65
 
66
+ ## Source-Bound Proofs
67
+
68
+ Semantic merge callers usually need more than "a browser test passed." They need proof that the runtime evidence applies to the exact source versions being merged. The source-bound helpers normalize `base` / `worker` / `head` / `output` hashes, bind them to the runtime capsule, and reject broad proof claims.
69
+
70
+ ```js
71
+ import {
72
+ createSourceBoundRuntimeProof,
73
+ validateSourceBoundRuntimeProof
74
+ } from '@shapeshift-labs/frontier-runtime-proof';
75
+
76
+ const sourceProof = createSourceBoundRuntimeProof({
77
+ sourcePath: 'src/view.html',
78
+ reasonCode: 'html-event-handler-runtime-boundary',
79
+ boundaryKey: 'button:onClick',
80
+ requiredSignals: ['html-event-handler-runtime'],
81
+ baseSourceHash: 'source:base',
82
+ workerSourceHash: 'source:worker',
83
+ headSourceHash: 'source:head',
84
+ outputSourceHash: 'source:output',
85
+ runtimeProofCapsule: proof.runtimeProofCapsule
86
+ });
87
+
88
+ const admission = validateSourceBoundRuntimeProof(sourceProof, {
89
+ sourcePath: 'src/view.html',
90
+ reasonCode: 'html-event-handler-runtime-boundary',
91
+ boundaryKey: 'button:onClick',
92
+ sourceHashes: {
93
+ base: 'source:base',
94
+ worker: 'source:worker',
95
+ head: 'source:head',
96
+ output: 'source:output'
97
+ },
98
+ requiredSourceRoles: ['base', 'worker', 'head', 'output'],
99
+ requiredSignals: ['html-event-handler-runtime']
100
+ });
101
+ ```
102
+
103
+ The proof object keeps `autoMergeClaim`, `semanticEquivalenceClaim`, `runtimeEquivalenceClaim`, `renderEquivalenceClaim`, `browserRuntimeEquivalenceClaim`, and `browserRenderEquivalenceClaim` false. Downstream merge packages can admit a specific boundary after checking the source hashes, reason code, boundary key, runtime signals, and telemetry constraints.
104
+
66
105
  ## Boundary
67
106
 
68
107
  This package owns only the runtime-neutral proof record and admission helpers. Browser execution belongs in adapters such as Playwright harnesses, app-specific test runners, or coordinator packages. Semantic merge packages can depend on this package without importing browser automation or app runtime code.
108
+
109
+ ## Optional Playwright Helper
110
+
111
+ The root import stays runtime-neutral. The optional `./playwright` subpath accepts a Playwright-compatible `page` object structurally, so Playwright remains an app/test-runner dependency rather than a root package dependency.
112
+
113
+ ```js
114
+ import { capturePlaywrightRuntimeProof } from '@shapeshift-labs/frontier-runtime-proof/playwright';
115
+
116
+ const proof = await capturePlaywrightRuntimeProof(page, {
117
+ mode: 'isolated-fixture',
118
+ command: 'playwright test runtime-proof.spec.ts',
119
+ probeId: 'html-css:runtime-proof:#root',
120
+ signals: ['html-css-browser-runtime'],
121
+ sourcePath: 'src/view.html',
122
+ sourceHash: 'source-hash',
123
+ cssHash: 'css-hash',
124
+ selectors: ['#root'],
125
+ screenshot: true,
126
+ maxCumulativeLayoutShift: 0.01,
127
+ async exercise(page) {
128
+ await page.getByRole('button', { name: 'Save' }).click();
129
+ }
130
+ });
131
+ ```
132
+
133
+ The helper installs bounded event and layout-shift probes, captures DOM, computed-style, layout, event-trace, optional screenshot, browser, viewport, and telemetry hashes, then returns a normal `runtimeProofCapsule`. If the page cannot be prepared or captured, it returns an `environment-blocked` proof that fails closed.
package/dist/index.d.ts CHANGED
@@ -2,12 +2,16 @@ export declare const FRONTIER_RUNTIME_PROOF_CAPSULE_KIND = "frontier.runtime-pro
2
2
  export declare const FRONTIER_RUNTIME_PROOF_CAPSULE_VERSION = 1;
3
3
  export declare const FRONTIER_RUNTIME_PROOF_EVIDENCE_KIND = "frontier.runtime-proof.evidence";
4
4
  export declare const FRONTIER_RUNTIME_PROOF_EVIDENCE_VERSION = 1;
5
+ export declare const FRONTIER_SOURCE_BOUND_RUNTIME_PROOF_KIND = "frontier.runtime-proof.source-bound-proof";
6
+ export declare const FRONTIER_SOURCE_BOUND_RUNTIME_PROOF_VERSION = 1;
5
7
  export declare const FRONTIER_RUNTIME_PROOF_MODES: readonly ["isolated-fixture", "app-shell-fixture", "full-app-replay"];
6
8
  export declare const FRONTIER_RUNTIME_PROOF_BLOCKED_MODES: readonly ["environment-blocked"];
9
+ export declare const FRONTIER_RUNTIME_PROOF_SOURCE_ROLES: readonly ["base", "worker", "head", "output"];
7
10
  export type FrontierRuntimeProofMode = typeof FRONTIER_RUNTIME_PROOF_MODES[number];
8
11
  export type FrontierRuntimeProofBlockedMode = typeof FRONTIER_RUNTIME_PROOF_BLOCKED_MODES[number];
12
+ export type FrontierRuntimeProofSourceRole = typeof FRONTIER_RUNTIME_PROOF_SOURCE_ROLES[number];
9
13
  export type FrontierRuntimeProofStatus = 'passed' | 'failed' | 'blocked' | 'skipped' | string;
10
- export type FrontierRuntimeProofReasonCode = 'runtime-proof-capsule-mode-missing' | 'runtime-proof-capsule-mode-invalid' | 'runtime-proof-capsule-not-passed' | 'runtime-proof-environment-blocked' | 'runtime-proof-command-missing' | 'runtime-proof-probe-missing' | 'runtime-proof-evidence-hash-missing' | 'runtime-proof-required-signal-missing' | 'runtime-proof-capsule-missing' | 'runtime-proof-telemetry-hash-missing' | 'runtime-proof-cumulative-layout-shift-exceeded';
14
+ export type FrontierRuntimeProofReasonCode = 'runtime-proof-capsule-mode-missing' | 'runtime-proof-capsule-mode-invalid' | 'runtime-proof-capsule-not-passed' | 'runtime-proof-environment-blocked' | 'runtime-proof-command-missing' | 'runtime-proof-probe-missing' | 'runtime-proof-evidence-hash-missing' | 'runtime-proof-required-signal-missing' | 'runtime-proof-capsule-missing' | 'runtime-proof-telemetry-hash-missing' | 'runtime-proof-cumulative-layout-shift-exceeded' | 'source-bound-runtime-proof-kind-invalid' | 'source-bound-runtime-proof-not-passed' | 'source-bound-runtime-proof-source-path-mismatch' | 'source-bound-runtime-proof-source-hash-missing' | 'source-bound-runtime-proof-source-hash-mismatch' | 'source-bound-runtime-proof-reason-mismatch' | 'source-bound-runtime-proof-boundary-mismatch' | 'source-bound-runtime-proof-record-mismatch' | 'source-bound-runtime-proof-broad-claim-present';
11
15
  export interface FrontierRuntimeProofViewport {
12
16
  width?: number;
13
17
  height?: number;
@@ -18,6 +22,9 @@ export interface FrontierRuntimeProofViewport {
18
22
  export interface FrontierRuntimeProofCapsuleInput {
19
23
  kind?: string;
20
24
  version?: number;
25
+ runtimeProofCapsule?: FrontierRuntimeProofCapsuleInput;
26
+ proofCapsule?: FrontierRuntimeProofCapsuleInput;
27
+ fixtureCapsule?: FrontierRuntimeProofCapsuleInput;
21
28
  mode?: FrontierRuntimeProofMode | FrontierRuntimeProofBlockedMode | string;
22
29
  status?: FrontierRuntimeProofStatus;
23
30
  command?: string;
@@ -73,7 +80,126 @@ export interface FrontierRuntimeProofCapsuleInput {
73
80
  layoutShiftHash?: string;
74
81
  screenshotHash?: string;
75
82
  cumulativeLayoutShift?: number;
83
+ runtimeEvidence?: {
84
+ capsule?: FrontierRuntimeProofCapsuleInput;
85
+ };
86
+ browserEvidence?: {
87
+ capsule?: FrontierRuntimeProofCapsuleInput;
88
+ };
89
+ }
90
+ export type FrontierRuntimeProofSourceHashMap = Partial<Record<FrontierRuntimeProofSourceRole | 'merged', string>>;
91
+ export type FrontierRuntimeProofSourceTextMap = Partial<Record<FrontierRuntimeProofSourceRole | 'merged', string>>;
92
+ export interface FrontierRuntimeProofSourceBindingInput {
93
+ base?: string;
94
+ worker?: string;
95
+ head?: string;
96
+ output?: string;
97
+ merged?: string;
98
+ baseSourceText?: string;
99
+ workerSourceText?: string;
100
+ headSourceText?: string;
101
+ outputSourceText?: string;
102
+ mergedSourceText?: string;
103
+ sourceTexts?: FrontierRuntimeProofSourceTextMap;
104
+ sources?: FrontierRuntimeProofSourceTextMap;
105
+ baseSourceHash?: string;
106
+ workerSourceHash?: string;
107
+ headSourceHash?: string;
108
+ outputSourceHash?: string;
109
+ mergedSourceHash?: string;
110
+ sourceHashes?: FrontierRuntimeProofSourceHashMap;
111
+ hashes?: FrontierRuntimeProofSourceHashMap;
112
+ }
113
+ export interface FrontierRuntimeProofSourceHashes {
114
+ base?: string;
115
+ worker?: string;
116
+ head?: string;
117
+ output?: string;
118
+ }
119
+ export interface FrontierSourceBoundRuntimeProofInput extends FrontierRuntimeProofCapsuleInput, FrontierRuntimeProofSourceBindingInput {
120
+ id?: string;
121
+ sourcePath?: string;
122
+ reasonCode?: string;
123
+ reasonCodes?: readonly string[];
124
+ boundaryKey?: string;
125
+ boundaryKeys?: readonly string[];
126
+ recordKey?: string;
127
+ recordKeys?: readonly string[];
128
+ requiredSignals?: readonly string[];
129
+ sourceBoundRuntimeProofHash?: string;
130
+ autoMergeClaim?: boolean;
131
+ semanticEquivalenceClaim?: boolean;
132
+ runtimeEquivalenceClaim?: boolean;
133
+ renderEquivalenceClaim?: boolean;
134
+ browserRuntimeEquivalenceClaim?: boolean;
135
+ browserRenderEquivalenceClaim?: boolean;
136
+ }
137
+ export interface FrontierSourceBoundRuntimeProof {
138
+ kind: typeof FRONTIER_SOURCE_BOUND_RUNTIME_PROOF_KIND;
139
+ version: typeof FRONTIER_SOURCE_BOUND_RUNTIME_PROOF_VERSION;
140
+ id?: string;
141
+ status: 'passed';
142
+ sourcePath?: string;
143
+ reasonCode?: string;
144
+ reasonCodes: string[];
145
+ boundaryKey?: string;
146
+ boundaryKeys: string[];
147
+ recordKey?: string;
148
+ recordKeys: string[];
149
+ baseSourceHash?: string;
150
+ workerSourceHash?: string;
151
+ headSourceHash?: string;
152
+ outputSourceHash?: string;
153
+ runtimeCommand: string;
154
+ runtimeProbeId: string;
155
+ runtimeEvidenceHash: string;
156
+ runtimeSignals: string[];
157
+ requiredRuntimeSignals: string[];
158
+ runtimeProofCapsule?: FrontierRuntimeProofCapsule;
159
+ runtimeProofMode?: FrontierRuntimeProofMode;
160
+ runtimeProofCapsuleHash?: string;
161
+ runtimeBrowserName?: string;
162
+ runtimeBrowserVersion?: string;
163
+ runtimeViewport?: FrontierRuntimeProofViewport;
164
+ runtimeTelemetryHash?: string;
165
+ runtimeDomSnapshotHash?: string;
166
+ runtimeComputedStyleHash?: string;
167
+ runtimeLayoutSnapshotHash?: string;
168
+ runtimeEventTraceHash?: string;
169
+ runtimeLayoutShiftHash?: string;
170
+ runtimeScreenshotHash?: string;
171
+ runtimeCumulativeLayoutShift?: number;
172
+ runtimeEvidenceBound: true;
173
+ autoMergeClaim: false;
174
+ semanticEquivalenceClaim: false;
175
+ runtimeEquivalenceClaim: false;
176
+ renderEquivalenceClaim: false;
177
+ browserRuntimeEquivalenceClaim: false;
178
+ browserRenderEquivalenceClaim: false;
179
+ hash: string;
180
+ }
181
+ export interface FrontierSourceBoundRuntimeProofOptions extends FrontierRuntimeProofValidationOptions {
182
+ sourcePath?: string;
183
+ reasonCode?: string | readonly string[];
184
+ boundaryKey?: string | readonly string[];
185
+ recordKey?: string | readonly string[];
186
+ sourceHashes?: FrontierRuntimeProofSourceHashes;
187
+ requiredSourceRoles?: readonly FrontierRuntimeProofSourceRole[];
188
+ sourceTextHash?: (sourceText: string) => string;
189
+ allowedKinds?: readonly string[];
190
+ rejectBroadClaims?: boolean;
76
191
  }
192
+ export type FrontierSourceBoundRuntimeProofValidation = {
193
+ ok: true;
194
+ proof: FrontierSourceBoundRuntimeProof | UnknownRecord;
195
+ metadata: FrontierRuntimeEvidenceMetadata;
196
+ sourceHashes: FrontierRuntimeProofSourceHashes;
197
+ } | {
198
+ ok: false;
199
+ reasonCodes: FrontierRuntimeProofReasonCode[];
200
+ metadataValidation: FrontierRuntimeProofValidation;
201
+ sourceHashes: FrontierRuntimeProofSourceHashes;
202
+ };
77
203
  export interface FrontierRuntimeProofCapsule {
78
204
  kind: string;
79
205
  version: number;
@@ -143,6 +269,9 @@ export declare function normalizeRuntimeProofCapsule(input: unknown): FrontierRu
143
269
  export declare function runtimeProofSignals(input: unknown, capsule?: FrontierRuntimeProofCapsuleResult): string[];
144
270
  export declare function runtimeEvidenceMetadataFromProof(input: unknown, options?: FrontierRuntimeProofValidationOptions): FrontierRuntimeEvidenceMetadata | undefined;
145
271
  export declare function validateRuntimeProofEvidence(input: unknown, options?: FrontierRuntimeProofValidationOptions): FrontierRuntimeProofValidation;
272
+ export declare function runtimeProofSourceHashes(input: unknown, sourceTextHash?: (sourceText: string) => string): FrontierRuntimeProofSourceHashes;
273
+ export declare function createSourceBoundRuntimeProof(input: FrontierSourceBoundRuntimeProofInput, options?: FrontierSourceBoundRuntimeProofOptions): FrontierSourceBoundRuntimeProof;
274
+ export declare function validateSourceBoundRuntimeProof(input: unknown, options?: FrontierSourceBoundRuntimeProofOptions): FrontierSourceBoundRuntimeProofValidation;
146
275
  export declare function stableRuntimeProofJson(value: unknown): string;
147
276
  export declare function hashRuntimeProofValue(value: unknown): string;
148
277
  export declare function compactRuntimeProofRecord<T extends UnknownRecord>(record: T): Partial<T>;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -2,6 +2,8 @@ export const FRONTIER_RUNTIME_PROOF_CAPSULE_KIND = 'frontier.runtime-proof.capsu
2
2
  export const FRONTIER_RUNTIME_PROOF_CAPSULE_VERSION = 1;
3
3
  export const FRONTIER_RUNTIME_PROOF_EVIDENCE_KIND = 'frontier.runtime-proof.evidence';
4
4
  export const FRONTIER_RUNTIME_PROOF_EVIDENCE_VERSION = 1;
5
+ export const FRONTIER_SOURCE_BOUND_RUNTIME_PROOF_KIND = 'frontier.runtime-proof.source-bound-proof';
6
+ export const FRONTIER_SOURCE_BOUND_RUNTIME_PROOF_VERSION = 1;
5
7
  export const FRONTIER_RUNTIME_PROOF_MODES = [
6
8
  'isolated-fixture',
7
9
  'app-shell-fixture',
@@ -10,6 +12,12 @@ export const FRONTIER_RUNTIME_PROOF_MODES = [
10
12
  export const FRONTIER_RUNTIME_PROOF_BLOCKED_MODES = [
11
13
  'environment-blocked'
12
14
  ];
15
+ export const FRONTIER_RUNTIME_PROOF_SOURCE_ROLES = [
16
+ 'base',
17
+ 'worker',
18
+ 'head',
19
+ 'output'
20
+ ];
13
21
  const runtimeProofModes = new Set(FRONTIER_RUNTIME_PROOF_MODES);
14
22
  const blockedRuntimeProofModes = new Set(FRONTIER_RUNTIME_PROOF_BLOCKED_MODES);
15
23
  export function createRuntimeProofCapsule(input) {
@@ -159,6 +167,154 @@ export function validateRuntimeProofEvidence(input, options = {}) {
159
167
  })
160
168
  };
161
169
  }
170
+ export function runtimeProofSourceHashes(input, sourceTextHash) {
171
+ const record = asRecord(input);
172
+ if (!record)
173
+ return {};
174
+ return compactRecord({
175
+ base: sourceHashForRole(record, 'base', sourceTextHash),
176
+ worker: sourceHashForRole(record, 'worker', sourceTextHash),
177
+ head: sourceHashForRole(record, 'head', sourceTextHash),
178
+ output: sourceHashForRole(record, 'output', sourceTextHash)
179
+ });
180
+ }
181
+ export function createSourceBoundRuntimeProof(input, options = {}) {
182
+ const requiredSignals = uniqueStrings(options.requiredSignals ?? input.requiredSignals ?? []);
183
+ const metadata = runtimeEvidenceMetadataFromProof(input, {
184
+ ...options,
185
+ requiredSignals,
186
+ requireRuntimeProofCapsule: options.requireRuntimeProofCapsule ?? true
187
+ });
188
+ if (!metadata) {
189
+ throw new Error('source-bound runtime proof requires valid runtime evidence metadata');
190
+ }
191
+ const sourceHashes = runtimeProofSourceHashes(input, options.sourceTextHash);
192
+ const requiredSourceRoles = options.requiredSourceRoles ?? FRONTIER_RUNTIME_PROOF_SOURCE_ROLES;
193
+ const missingSourceRole = requiredSourceRoles.find((role) => !sourceHashes[role]);
194
+ if (missingSourceRole) {
195
+ throw new Error(`source-bound runtime proof is missing ${missingSourceRole} source hash`);
196
+ }
197
+ const status = firstString(input.status) ?? 'passed';
198
+ if (status !== 'passed') {
199
+ throw new Error(`source-bound runtime proof status is not passed: ${status}`);
200
+ }
201
+ const capsule = metadata.capsule;
202
+ const proof = compactRecord({
203
+ kind: FRONTIER_SOURCE_BOUND_RUNTIME_PROOF_KIND,
204
+ version: FRONTIER_SOURCE_BOUND_RUNTIME_PROOF_VERSION,
205
+ id: input.id,
206
+ status: 'passed',
207
+ sourcePath: input.sourcePath,
208
+ reasonCode: input.reasonCode,
209
+ reasonCodes: uniqueStrings(input.reasonCodes ?? []),
210
+ boundaryKey: input.boundaryKey,
211
+ boundaryKeys: uniqueStrings(input.boundaryKeys ?? []),
212
+ recordKey: input.recordKey,
213
+ recordKeys: uniqueStrings(input.recordKeys ?? []),
214
+ baseSourceHash: sourceHashes.base,
215
+ workerSourceHash: sourceHashes.worker,
216
+ headSourceHash: sourceHashes.head,
217
+ outputSourceHash: sourceHashes.output,
218
+ runtimeCommand: metadata.command,
219
+ runtimeProbeId: metadata.probeId,
220
+ runtimeEvidenceHash: metadata.evidenceHash,
221
+ runtimeSignals: metadata.signals,
222
+ requiredRuntimeSignals: requiredSignals,
223
+ runtimeProofCapsule: capsule,
224
+ runtimeProofMode: capsule?.mode,
225
+ runtimeProofCapsuleHash: capsule?.hash,
226
+ runtimeBrowserName: capsule?.browserName,
227
+ runtimeBrowserVersion: capsule?.browserVersion,
228
+ runtimeViewport: capsule?.viewport,
229
+ runtimeTelemetryHash: capsule?.telemetryHash,
230
+ runtimeDomSnapshotHash: capsule?.domSnapshotHash,
231
+ runtimeComputedStyleHash: capsule?.computedStyleHash,
232
+ runtimeLayoutSnapshotHash: capsule?.layoutSnapshotHash,
233
+ runtimeEventTraceHash: capsule?.eventTraceHash,
234
+ runtimeLayoutShiftHash: capsule?.layoutShiftHash,
235
+ runtimeScreenshotHash: capsule?.screenshotHash,
236
+ runtimeCumulativeLayoutShift: capsule?.cumulativeLayoutShift,
237
+ runtimeEvidenceBound: true,
238
+ autoMergeClaim: false,
239
+ semanticEquivalenceClaim: false,
240
+ runtimeEquivalenceClaim: false,
241
+ renderEquivalenceClaim: false,
242
+ browserRuntimeEquivalenceClaim: false,
243
+ browserRenderEquivalenceClaim: false
244
+ });
245
+ return {
246
+ ...proof,
247
+ hash: input.sourceBoundRuntimeProofHash ??
248
+ hashRuntimeProofValue({ ...proof, fingerprintKind: 'frontier.runtime-proof.source-bound-proof.fingerprint.v1' })
249
+ };
250
+ }
251
+ export function validateSourceBoundRuntimeProof(input, options = {}) {
252
+ const proof = asRecord(input);
253
+ const sourceHashes = runtimeProofSourceHashes(input, options.sourceTextHash);
254
+ const metadataValidation = validateRuntimeProofEvidence(input, {
255
+ ...options,
256
+ requiredSignals: options.requiredSignals,
257
+ requireRuntimeProofCapsule: options.requireRuntimeProofCapsule ?? true
258
+ });
259
+ const reasonCodes = metadataValidation.ok
260
+ ? []
261
+ : [...metadataValidation.reasonCodes];
262
+ const allowedKinds = options.allowedKinds ?? [FRONTIER_SOURCE_BOUND_RUNTIME_PROOF_KIND];
263
+ if (!proof || !allowedKinds.includes(firstString(proof?.kind) ?? '')) {
264
+ reasonCodes.push('source-bound-runtime-proof-kind-invalid');
265
+ }
266
+ if ((firstString(proof?.status) ?? '') !== 'passed') {
267
+ reasonCodes.push('source-bound-runtime-proof-not-passed');
268
+ }
269
+ if (options.sourcePath !== undefined && firstString(proof?.sourcePath) !== options.sourcePath) {
270
+ reasonCodes.push('source-bound-runtime-proof-source-path-mismatch');
271
+ }
272
+ const requiredSourceRoles = options.requiredSourceRoles ?? [];
273
+ for (const role of requiredSourceRoles) {
274
+ if (!sourceHashes[role])
275
+ reasonCodes.push('source-bound-runtime-proof-source-hash-missing');
276
+ }
277
+ const expectedSourceHashes = options.sourceHashes ?? {};
278
+ for (const role of FRONTIER_RUNTIME_PROOF_SOURCE_ROLES) {
279
+ const expected = expectedSourceHashes[role];
280
+ if (expected === undefined)
281
+ continue;
282
+ if (!sourceHashes[role])
283
+ reasonCodes.push('source-bound-runtime-proof-source-hash-missing');
284
+ else if (sourceHashes[role] !== expected)
285
+ reasonCodes.push('source-bound-runtime-proof-source-hash-mismatch');
286
+ }
287
+ const expectedReasons = optionStrings(options.reasonCode);
288
+ if (expectedReasons.length > 0 && !coversAny(firstString(proof?.reasonCode), stringArray(proof?.reasonCodes), expectedReasons)) {
289
+ reasonCodes.push('source-bound-runtime-proof-reason-mismatch');
290
+ }
291
+ const expectedBoundaries = optionStrings(options.boundaryKey);
292
+ if (expectedBoundaries.length > 0 && !coversAny(firstString(proof?.boundaryKey), stringArray(proof?.boundaryKeys), expectedBoundaries)) {
293
+ reasonCodes.push('source-bound-runtime-proof-boundary-mismatch');
294
+ }
295
+ const expectedRecords = optionStrings(options.recordKey);
296
+ if (expectedRecords.length > 0 && !coversAny(firstString(proof?.recordKey), stringArray(proof?.recordKeys), expectedRecords)) {
297
+ reasonCodes.push('source-bound-runtime-proof-record-mismatch');
298
+ }
299
+ if (options.rejectBroadClaims !== false && hasBroadEquivalenceClaim(proof)) {
300
+ reasonCodes.push('source-bound-runtime-proof-broad-claim-present');
301
+ }
302
+ const uniqueReasonCodes = uniqueStrings(reasonCodes);
303
+ if (uniqueReasonCodes.length > 0 || !metadataValidation.ok) {
304
+ return {
305
+ ok: false,
306
+ reasonCodes: uniqueReasonCodes,
307
+ metadataValidation,
308
+ sourceHashes
309
+ };
310
+ }
311
+ return {
312
+ ok: true,
313
+ proof: proof,
314
+ metadata: metadataValidation.metadata,
315
+ sourceHashes
316
+ };
317
+ }
162
318
  export function stableRuntimeProofJson(value) {
163
319
  if (value === null || typeof value !== 'object') {
164
320
  const serialized = JSON.stringify(value);
@@ -206,6 +362,68 @@ function looksLikeRuntimeProofCapsule(record) {
206
362
  record.artifacts !== undefined ||
207
363
  record.capsuleHash !== undefined;
208
364
  }
365
+ function sourceHashForRole(record, role, sourceTextHash) {
366
+ const directHashFields = role === 'output'
367
+ ? ['outputSourceHash', 'mergedSourceHash']
368
+ : [`${role}SourceHash`];
369
+ for (const field of directHashFields) {
370
+ const value = firstString(record[field]);
371
+ if (value)
372
+ return value;
373
+ }
374
+ const aliases = sourceRoleAliases(role);
375
+ const sourceHashes = asRecord(record.sourceHashes);
376
+ const hashes = asRecord(record.hashes);
377
+ for (const alias of aliases) {
378
+ const value = firstString(sourceHashes?.[alias], hashes?.[alias]);
379
+ if (value)
380
+ return value;
381
+ }
382
+ if (!sourceTextHash)
383
+ return undefined;
384
+ const sourceTexts = asRecord(record.sourceTexts);
385
+ const sources = asRecord(record.sources);
386
+ const directTextFields = role === 'output'
387
+ ? ['outputSourceText', 'mergedSourceText', 'output', 'merged']
388
+ : [`${role}SourceText`, role];
389
+ for (const field of directTextFields) {
390
+ const value = firstSourceString(record[field]);
391
+ if (value !== undefined)
392
+ return sourceTextHash(value);
393
+ }
394
+ for (const alias of aliases) {
395
+ const value = firstSourceString(sourceTexts?.[alias], sources?.[alias]);
396
+ if (value !== undefined)
397
+ return sourceTextHash(value);
398
+ }
399
+ return undefined;
400
+ }
401
+ function sourceRoleAliases(role) {
402
+ return role === 'output' ? ['output', 'merged'] : [role];
403
+ }
404
+ function optionStrings(value) {
405
+ if (typeof value === 'string' && value.length > 0)
406
+ return [value];
407
+ if (Array.isArray(value))
408
+ return uniqueStrings(value);
409
+ return [];
410
+ }
411
+ function stringArray(value) {
412
+ return Array.isArray(value) ? value.filter((item) => typeof item === 'string' && item.length > 0) : [];
413
+ }
414
+ function coversAny(value, values, expected) {
415
+ return expected.some((item) => value === item || values.includes(item));
416
+ }
417
+ function hasBroadEquivalenceClaim(record) {
418
+ if (!record)
419
+ return false;
420
+ return record.autoMergeClaim === true ||
421
+ record.semanticEquivalenceClaim === true ||
422
+ record.runtimeEquivalenceClaim === true ||
423
+ record.renderEquivalenceClaim === true ||
424
+ record.browserRuntimeEquivalenceClaim === true ||
425
+ record.browserRenderEquivalenceClaim === true;
426
+ }
209
427
  function invalidCapsule(reasonCode, reason, mode, status) {
210
428
  return compactRecord({
211
429
  valid: false,
@@ -250,6 +468,9 @@ function firstObject(...values) {
250
468
  function firstString(...values) {
251
469
  return values.find((value) => typeof value === 'string' && value.length > 0);
252
470
  }
471
+ function firstSourceString(...values) {
472
+ return values.find((value) => typeof value === 'string');
473
+ }
253
474
  function firstNumber(...values) {
254
475
  return values.find((value) => typeof value === 'number' && Number.isFinite(value));
255
476
  }
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,81 @@
1
+ import { type FrontierRuntimeProofCapsule, type FrontierRuntimeProofMode, type FrontierRuntimeProofValidation, type FrontierRuntimeProofViewport } from './index.ts';
2
+ export declare const FRONTIER_PLAYWRIGHT_RUNTIME_PROOF_KIND = "frontier.runtime-proof.playwright-evidence";
3
+ export declare const FRONTIER_PLAYWRIGHT_RUNTIME_PROOF_VERSION = 1;
4
+ export interface FrontierPlaywrightLikePage {
5
+ evaluate<Result, Arg>(pageFunction: (arg: Arg) => Result | Promise<Result>, arg: Arg): Promise<Result>;
6
+ viewportSize?(): {
7
+ width: number;
8
+ height: number;
9
+ } | null;
10
+ screenshot?(options?: Record<string, unknown>): Promise<Uint8Array | string>;
11
+ context?(): {
12
+ browser?(): {
13
+ version?(): string;
14
+ browserType?(): {
15
+ name?(): string;
16
+ };
17
+ } | null;
18
+ };
19
+ }
20
+ export interface FrontierPlaywrightRuntimeProofOptions {
21
+ mode?: FrontierRuntimeProofMode;
22
+ command: string;
23
+ probeId: string;
24
+ signals: readonly string[];
25
+ requiredSignals?: readonly string[];
26
+ sourcePath?: string;
27
+ sourceHash?: string;
28
+ bundleHash?: string;
29
+ cssHash?: string;
30
+ jsHash?: string;
31
+ environmentHash?: string;
32
+ fixtureHash?: string;
33
+ evidenceHash?: string;
34
+ browserName?: string;
35
+ browserVersion?: string;
36
+ viewport?: FrontierRuntimeProofViewport;
37
+ selectors?: readonly string[];
38
+ styleProperties?: readonly string[];
39
+ eventTypes?: readonly string[];
40
+ maxElements?: number;
41
+ maxDepth?: number;
42
+ maxTextLength?: number;
43
+ maxEvents?: number;
44
+ includeText?: boolean;
45
+ screenshot?: boolean | Record<string, unknown>;
46
+ maxCumulativeLayoutShift?: number;
47
+ exercise?: (page: FrontierPlaywrightLikePage) => Promise<void> | void;
48
+ }
49
+ export interface FrontierPlaywrightRuntimeTelemetry {
50
+ environment?: Record<string, unknown>;
51
+ domSnapshot: unknown;
52
+ computedStyleSnapshot: unknown;
53
+ layoutSnapshot: unknown;
54
+ eventTrace: unknown;
55
+ layoutShift: {
56
+ cumulativeLayoutShift: number;
57
+ entries: unknown[];
58
+ };
59
+ }
60
+ export interface FrontierPlaywrightRuntimeProof {
61
+ kind: typeof FRONTIER_PLAYWRIGHT_RUNTIME_PROOF_KIND;
62
+ version: typeof FRONTIER_PLAYWRIGHT_RUNTIME_PROOF_VERSION;
63
+ status: 'passed' | 'blocked';
64
+ mode: FrontierRuntimeProofMode | 'environment-blocked';
65
+ command: string;
66
+ probeId: string;
67
+ signals: string[];
68
+ sourcePath?: string;
69
+ runtimeProofCapsule: FrontierRuntimeProofCapsule | Record<string, unknown>;
70
+ telemetry?: FrontierPlaywrightRuntimeTelemetry;
71
+ validation: FrontierRuntimeProofValidation;
72
+ error?: {
73
+ name?: string;
74
+ message: string;
75
+ };
76
+ }
77
+ export declare function capturePlaywrightRuntimeProof(page: FrontierPlaywrightLikePage, options: FrontierPlaywrightRuntimeProofOptions): Promise<FrontierPlaywrightRuntimeProof>;
78
+ export declare function installPlaywrightRuntimeProofTrace(page: FrontierPlaywrightLikePage, options?: Pick<FrontierPlaywrightRuntimeProofOptions, 'eventTypes' | 'maxEvents'>): Promise<void>;
79
+ export declare function capturePlaywrightRuntimeTelemetry(page: FrontierPlaywrightLikePage, options?: Pick<FrontierPlaywrightRuntimeProofOptions, 'selectors' | 'styleProperties' | 'maxElements' | 'maxDepth' | 'maxTextLength' | 'includeText'>): Promise<FrontierPlaywrightRuntimeTelemetry>;
80
+ export declare function createEnvironmentBlockedPlaywrightRuntimeProof(options: Pick<FrontierPlaywrightRuntimeProofOptions, 'command' | 'probeId' | 'signals' | 'sourcePath'>, error: unknown): FrontierPlaywrightRuntimeProof;
81
+ //# sourceMappingURL=playwright.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"playwright.d.ts","sourceRoot":"","sources":["../src/playwright.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,442 @@
1
+ import { createRuntimeProofCapsule, hashRuntimeProofValue, validateRuntimeProofEvidence } from "./index.js";
2
+ export const FRONTIER_PLAYWRIGHT_RUNTIME_PROOF_KIND = 'frontier.runtime-proof.playwright-evidence';
3
+ export const FRONTIER_PLAYWRIGHT_RUNTIME_PROOF_VERSION = 1;
4
+ const defaultStyleProperties = Object.freeze([
5
+ 'display',
6
+ 'position',
7
+ 'visibility',
8
+ 'opacity',
9
+ 'z-index',
10
+ 'box-sizing',
11
+ 'width',
12
+ 'height',
13
+ 'margin-top',
14
+ 'margin-right',
15
+ 'margin-bottom',
16
+ 'margin-left',
17
+ 'padding-top',
18
+ 'padding-right',
19
+ 'padding-bottom',
20
+ 'padding-left',
21
+ 'border-top-width',
22
+ 'border-right-width',
23
+ 'border-bottom-width',
24
+ 'border-left-width',
25
+ 'color',
26
+ 'background-color',
27
+ 'font-family',
28
+ 'font-size',
29
+ 'font-weight',
30
+ 'line-height',
31
+ 'transform',
32
+ 'overflow',
33
+ 'pointer-events'
34
+ ]);
35
+ const defaultEventTypes = Object.freeze([
36
+ 'click',
37
+ 'input',
38
+ 'change',
39
+ 'submit',
40
+ 'keydown',
41
+ 'keyup',
42
+ 'pointerdown',
43
+ 'pointerup',
44
+ 'focus',
45
+ 'blur'
46
+ ]);
47
+ export async function capturePlaywrightRuntimeProof(page, options) {
48
+ try {
49
+ await installPlaywrightRuntimeProofTrace(page, options);
50
+ await options.exercise?.(page);
51
+ const telemetry = await capturePlaywrightRuntimeTelemetry(page, options);
52
+ const screenshotHash = await captureScreenshotHash(page, options);
53
+ const browser = browserMetadata(page, options);
54
+ const viewport = viewportMetadata(page, options, telemetry);
55
+ const telemetryHashes = {
56
+ domSnapshotHash: hashRuntimeProofValue(telemetry.domSnapshot),
57
+ computedStyleHash: hashRuntimeProofValue(telemetry.computedStyleSnapshot),
58
+ layoutSnapshotHash: hashRuntimeProofValue(telemetry.layoutSnapshot),
59
+ eventTraceHash: hashRuntimeProofValue(telemetry.eventTrace),
60
+ layoutShiftHash: hashRuntimeProofValue(telemetry.layoutShift),
61
+ screenshotHash,
62
+ cumulativeLayoutShift: telemetry.layoutShift.cumulativeLayoutShift
63
+ };
64
+ const telemetryHash = hashRuntimeProofValue({
65
+ kind: 'frontier.runtime-proof.telemetry.v1',
66
+ ...telemetryHashes
67
+ });
68
+ const artifacts = {
69
+ sourceHash: options.sourceHash,
70
+ bundleHash: options.bundleHash,
71
+ cssHash: options.cssHash,
72
+ jsHash: options.jsHash
73
+ };
74
+ const evidenceHash = options.evidenceHash ?? hashRuntimeProofValue({
75
+ kind: FRONTIER_PLAYWRIGHT_RUNTIME_PROOF_KIND,
76
+ version: FRONTIER_PLAYWRIGHT_RUNTIME_PROOF_VERSION,
77
+ mode: options.mode ?? 'isolated-fixture',
78
+ command: options.command,
79
+ probeId: options.probeId,
80
+ signals: uniqueStrings(options.signals),
81
+ sourcePath: options.sourcePath,
82
+ artifacts,
83
+ browser,
84
+ viewport,
85
+ telemetryHash
86
+ });
87
+ const runtimeProofCapsule = createRuntimeProofCapsule({
88
+ mode: options.mode ?? 'isolated-fixture',
89
+ status: 'passed',
90
+ command: options.command,
91
+ probeId: options.probeId,
92
+ evidenceHash,
93
+ signals: uniqueStrings(options.signals),
94
+ browser,
95
+ viewport,
96
+ environmentHash: options.environmentHash,
97
+ fixtureHash: options.fixtureHash,
98
+ artifacts,
99
+ telemetry: {
100
+ hash: telemetryHash,
101
+ ...telemetryHashes
102
+ }
103
+ });
104
+ const proof = {
105
+ kind: FRONTIER_PLAYWRIGHT_RUNTIME_PROOF_KIND,
106
+ version: FRONTIER_PLAYWRIGHT_RUNTIME_PROOF_VERSION,
107
+ status: 'passed',
108
+ mode: runtimeProofCapsule.mode,
109
+ command: options.command,
110
+ probeId: options.probeId,
111
+ signals: runtimeProofCapsule.signals,
112
+ sourcePath: options.sourcePath,
113
+ runtimeProofCapsule,
114
+ telemetry
115
+ };
116
+ return {
117
+ ...proof,
118
+ validation: validateRuntimeProofEvidence(proof, validationOptions(options))
119
+ };
120
+ }
121
+ catch (error) {
122
+ return createEnvironmentBlockedPlaywrightRuntimeProof(options, error);
123
+ }
124
+ }
125
+ export async function installPlaywrightRuntimeProofTrace(page, options = {}) {
126
+ await page.evaluate(installBrowserTrace, {
127
+ traceKind: 'frontier.runtime-proof.playwright.trace.v1',
128
+ eventTypes: uniqueStrings(options.eventTypes ?? defaultEventTypes),
129
+ maxEvents: boundedInteger(options.maxEvents, 200)
130
+ });
131
+ }
132
+ export async function capturePlaywrightRuntimeTelemetry(page, options = {}) {
133
+ return page.evaluate(captureBrowserTelemetry, {
134
+ captureKind: 'frontier.runtime-proof.playwright.capture.v1',
135
+ selectors: uniqueStrings(options.selectors ?? ['body']),
136
+ styleProperties: uniqueStrings(options.styleProperties ?? defaultStyleProperties),
137
+ maxElements: boundedInteger(options.maxElements, 120),
138
+ maxDepth: boundedInteger(options.maxDepth, 8),
139
+ maxTextLength: boundedInteger(options.maxTextLength, 80),
140
+ includeText: options.includeText === true
141
+ });
142
+ }
143
+ export function createEnvironmentBlockedPlaywrightRuntimeProof(options, error) {
144
+ const normalizedError = normalizeError(error);
145
+ const evidenceHash = hashRuntimeProofValue({
146
+ kind: 'frontier.runtime-proof.playwright-environment-blocked.v1',
147
+ command: options.command,
148
+ probeId: options.probeId,
149
+ signals: uniqueStrings(options.signals),
150
+ error: normalizedError
151
+ });
152
+ const proof = {
153
+ kind: FRONTIER_PLAYWRIGHT_RUNTIME_PROOF_KIND,
154
+ version: FRONTIER_PLAYWRIGHT_RUNTIME_PROOF_VERSION,
155
+ status: 'blocked',
156
+ mode: 'environment-blocked',
157
+ command: options.command,
158
+ probeId: options.probeId,
159
+ signals: uniqueStrings(options.signals),
160
+ sourcePath: options.sourcePath,
161
+ runtimeProofCapsule: {
162
+ mode: 'environment-blocked',
163
+ status: 'blocked',
164
+ command: options.command,
165
+ probeId: options.probeId,
166
+ evidenceHash,
167
+ signals: uniqueStrings(options.signals)
168
+ },
169
+ error: normalizedError
170
+ };
171
+ return {
172
+ ...proof,
173
+ validation: validateRuntimeProofEvidence(proof, {
174
+ requiredSignals: uniqueStrings(options.signals),
175
+ requireRuntimeProofCapsule: true
176
+ })
177
+ };
178
+ }
179
+ function installBrowserTrace(input) {
180
+ const global = window;
181
+ global.__frontierRuntimeProofEventTrace = [];
182
+ if (!global.__frontierRuntimeProofTraceInstalled) {
183
+ global.__frontierRuntimeProofTraceInstalled = true;
184
+ for (const type of input.eventTypes) {
185
+ window.addEventListener(type, (event) => {
186
+ const trace = global.__frontierRuntimeProofEventTrace ?? [];
187
+ if (trace.length >= input.maxEvents)
188
+ return;
189
+ const target = event.target instanceof Element ? event.target : undefined;
190
+ trace.push(compactBrowserRecord({
191
+ sequence: trace.length,
192
+ type: event.type,
193
+ target: target ? cssPath(target) : undefined,
194
+ defaultPrevented: event.defaultPrevented,
195
+ key: event instanceof KeyboardEvent ? event.key : undefined,
196
+ button: event instanceof MouseEvent ? event.button : undefined,
197
+ valueHash: target instanceof HTMLInputElement || target instanceof HTMLTextAreaElement
198
+ ? hashBrowserString(target.value)
199
+ : undefined,
200
+ checked: target instanceof HTMLInputElement && (target.type === 'checkbox' || target.type === 'radio')
201
+ ? target.checked
202
+ : undefined
203
+ }));
204
+ }, { capture: true });
205
+ }
206
+ }
207
+ global.__frontierRuntimeProofLayoutShifts = [];
208
+ if (!global.__frontierRuntimeProofLayoutObserverInstalled && 'PerformanceObserver' in window) {
209
+ global.__frontierRuntimeProofLayoutObserverInstalled = true;
210
+ try {
211
+ const observer = new PerformanceObserver((list) => {
212
+ const shifts = global.__frontierRuntimeProofLayoutShifts ?? [];
213
+ for (const entry of list.getEntries()) {
214
+ if (entry.hadRecentInput)
215
+ continue;
216
+ shifts.push({
217
+ value: roundBrowserNumber(entry.value),
218
+ sources: entry.sources?.map((source) => compactBrowserRecord({
219
+ node: source.node instanceof Element ? cssPath(source.node) : undefined,
220
+ previousRect: rectRecord(source.previousRect),
221
+ currentRect: rectRecord(source.currentRect)
222
+ })) ?? []
223
+ });
224
+ }
225
+ });
226
+ observer.observe({ type: 'layout-shift', buffered: true });
227
+ }
228
+ catch {
229
+ global.__frontierRuntimeProofLayoutObserverInstalled = false;
230
+ }
231
+ }
232
+ }
233
+ function captureBrowserTelemetry(input) {
234
+ const global = window;
235
+ const roots = selectRoots(input);
236
+ const elements = collectElements(roots, input.maxElements);
237
+ const layoutShiftEntries = global.__frontierRuntimeProofLayoutShifts ?? [];
238
+ return {
239
+ environment: compactBrowserRecord({
240
+ url: location.href,
241
+ userAgentHash: hashBrowserString(navigator.userAgent),
242
+ deviceScaleFactor: window.devicePixelRatio,
243
+ viewport: {
244
+ width: window.innerWidth,
245
+ height: window.innerHeight
246
+ },
247
+ colorScheme: window.matchMedia?.('(prefers-color-scheme: dark)').matches ? 'dark' : 'light',
248
+ reducedMotion: window.matchMedia?.('(prefers-reduced-motion: reduce)').matches ? 'reduce' : 'no-preference'
249
+ }),
250
+ domSnapshot: roots.map((root) => snapshotElement(root, input, 0)),
251
+ computedStyleSnapshot: elements.map((element) => computedStyleRecord(element, input.styleProperties)),
252
+ layoutSnapshot: elements.map((element) => layoutRecord(element)),
253
+ eventTrace: global.__frontierRuntimeProofEventTrace ?? [],
254
+ layoutShift: {
255
+ cumulativeLayoutShift: roundBrowserNumber(layoutShiftEntries.reduce((sum, entry) => {
256
+ const value = typeof entry.value === 'number' ? entry.value : 0;
257
+ return sum + value;
258
+ }, 0)),
259
+ entries: layoutShiftEntries
260
+ }
261
+ };
262
+ }
263
+ function selectRoots(input) {
264
+ const roots = [];
265
+ for (const selector of input.selectors) {
266
+ roots.push(...Array.from(document.querySelectorAll(selector)));
267
+ }
268
+ if (roots.length === 0 && document.body)
269
+ roots.push(document.body);
270
+ return roots.slice(0, input.maxElements);
271
+ }
272
+ function collectElements(roots, maxElements) {
273
+ const elements = [];
274
+ const seen = new Set();
275
+ for (const root of roots) {
276
+ if (!seen.has(root)) {
277
+ seen.add(root);
278
+ elements.push(root);
279
+ }
280
+ for (const element of Array.from(root.querySelectorAll('*'))) {
281
+ if (elements.length >= maxElements)
282
+ return elements;
283
+ if (seen.has(element))
284
+ continue;
285
+ seen.add(element);
286
+ elements.push(element);
287
+ }
288
+ }
289
+ return elements.slice(0, maxElements);
290
+ }
291
+ function snapshotElement(element, input, depth) {
292
+ const children = depth >= input.maxDepth
293
+ ? []
294
+ : Array.from(element.children).slice(0, input.maxElements).map((child) => snapshotElement(child, input, depth + 1));
295
+ return compactBrowserRecord({
296
+ path: cssPath(element),
297
+ tag: element.tagName.toLowerCase(),
298
+ attributes: Array.from(element.attributes)
299
+ .map((attribute) => [attribute.name, attribute.value])
300
+ .sort(([left], [right]) => left.localeCompare(right)),
301
+ textHash: input.includeText ? hashBrowserString((element.textContent ?? '').trim().slice(0, input.maxTextLength)) : undefined,
302
+ childElementCount: element.childElementCount,
303
+ children
304
+ });
305
+ }
306
+ function computedStyleRecord(element, properties) {
307
+ const style = getComputedStyle(element);
308
+ return {
309
+ path: cssPath(element),
310
+ properties: Object.fromEntries(properties.map((property) => [property, style.getPropertyValue(property)]))
311
+ };
312
+ }
313
+ function layoutRecord(element) {
314
+ const rect = element.getBoundingClientRect();
315
+ return compactBrowserRecord({
316
+ path: cssPath(element),
317
+ rect: rectRecord(rect),
318
+ scrollWidth: roundBrowserNumber(element.scrollWidth),
319
+ scrollHeight: roundBrowserNumber(element.scrollHeight),
320
+ clientWidth: roundBrowserNumber(element.clientWidth),
321
+ clientHeight: roundBrowserNumber(element.clientHeight)
322
+ });
323
+ }
324
+ function rectRecord(rect) {
325
+ if (!rect)
326
+ return undefined;
327
+ return {
328
+ x: roundBrowserNumber(rect.x),
329
+ y: roundBrowserNumber(rect.y),
330
+ width: roundBrowserNumber(rect.width),
331
+ height: roundBrowserNumber(rect.height),
332
+ top: roundBrowserNumber(rect.top),
333
+ right: roundBrowserNumber(rect.right),
334
+ bottom: roundBrowserNumber(rect.bottom),
335
+ left: roundBrowserNumber(rect.left)
336
+ };
337
+ }
338
+ function cssPath(element) {
339
+ if (element.id)
340
+ return `#${cssEscape(element.id)}`;
341
+ const parts = [];
342
+ let current = element;
343
+ while (current && current.nodeType === Node.ELEMENT_NODE && parts.length < 8) {
344
+ const tag = current.tagName.toLowerCase();
345
+ const parent = current.parentElement;
346
+ if (!parent) {
347
+ parts.unshift(tag);
348
+ break;
349
+ }
350
+ const sameTagSiblings = Array.from(parent.children)
351
+ .filter((child) => child instanceof Element && child.tagName === current?.tagName);
352
+ const index = sameTagSiblings.indexOf(current) + 1;
353
+ parts.unshift(sameTagSiblings.length > 1 ? `${tag}:nth-of-type(${index})` : tag);
354
+ current = parent;
355
+ }
356
+ return parts.join(' > ');
357
+ }
358
+ function cssEscape(value) {
359
+ return typeof CSS !== 'undefined' && typeof CSS.escape === 'function'
360
+ ? CSS.escape(value)
361
+ : value.replace(/[^a-zA-Z0-9_-]/g, (character) => `\\${character}`);
362
+ }
363
+ function compactBrowserRecord(record) {
364
+ return Object.fromEntries(Object.entries(record).filter(([, value]) => value !== undefined));
365
+ }
366
+ function hashBrowserString(value) {
367
+ let hash = 0x811c9dc5;
368
+ for (let index = 0; index < value.length; index += 1) {
369
+ hash ^= value.charCodeAt(index);
370
+ hash = Math.imul(hash, 0x01000193);
371
+ }
372
+ return `fnv1a32:${(hash >>> 0).toString(16).padStart(8, '0')}`;
373
+ }
374
+ function roundBrowserNumber(value) {
375
+ return Math.round(value * 1000) / 1000;
376
+ }
377
+ function validationOptions(options) {
378
+ return {
379
+ requiredSignals: uniqueStrings(options.requiredSignals ?? options.signals),
380
+ requireRuntimeProofCapsule: true,
381
+ requireTelemetryHash: true,
382
+ maxCumulativeLayoutShift: options.maxCumulativeLayoutShift
383
+ };
384
+ }
385
+ function browserMetadata(page, options) {
386
+ const browser = page.context?.().browser?.();
387
+ const name = options.browserName ?? browser?.browserType?.().name?.();
388
+ const version = options.browserVersion ?? browser?.version?.();
389
+ return name || version ? { name, version } : undefined;
390
+ }
391
+ function viewportMetadata(page, options, telemetry) {
392
+ if (options.viewport)
393
+ return options.viewport;
394
+ const viewport = page.viewportSize?.();
395
+ const environment = telemetry.environment;
396
+ const environmentViewport = environment?.viewport;
397
+ const width = viewport?.width ?? numberOrUndefined(environmentViewport?.width);
398
+ const height = viewport?.height ?? numberOrUndefined(environmentViewport?.height);
399
+ const deviceScaleFactor = numberOrUndefined(environment?.deviceScaleFactor);
400
+ const colorScheme = stringOrUndefined(environment?.colorScheme);
401
+ const reducedMotion = stringOrUndefined(environment?.reducedMotion);
402
+ return width || height || deviceScaleFactor || colorScheme || reducedMotion
403
+ ? { width, height, deviceScaleFactor, colorScheme, reducedMotion }
404
+ : undefined;
405
+ }
406
+ async function captureScreenshotHash(page, options) {
407
+ if (!options.screenshot || typeof page.screenshot !== 'function')
408
+ return undefined;
409
+ const screenshotOptions = options.screenshot === true ? {} : options.screenshot;
410
+ const screenshot = await page.screenshot(screenshotOptions);
411
+ if (typeof screenshot === 'string')
412
+ return hashRuntimeProofValue({ screenshot });
413
+ return hashBytes(screenshot);
414
+ }
415
+ function hashBytes(bytes) {
416
+ let hash = 0x811c9dc5;
417
+ for (const byte of bytes) {
418
+ hash ^= byte;
419
+ hash = Math.imul(hash, 0x01000193);
420
+ }
421
+ return `fnv1a32:${(hash >>> 0).toString(16).padStart(8, '0')}`;
422
+ }
423
+ function boundedInteger(value, fallback) {
424
+ return typeof value === 'number' && Number.isFinite(value) && value > 0
425
+ ? Math.min(Math.floor(value), 10_000)
426
+ : fallback;
427
+ }
428
+ function uniqueStrings(values) {
429
+ return [...new Set(values.filter((value) => typeof value === 'string' && value.length > 0))];
430
+ }
431
+ function normalizeError(error) {
432
+ if (error instanceof Error)
433
+ return { name: error.name, message: error.message };
434
+ return { message: String(error) };
435
+ }
436
+ function numberOrUndefined(value) {
437
+ return typeof value === 'number' && Number.isFinite(value) ? value : undefined;
438
+ }
439
+ function stringOrUndefined(value) {
440
+ return typeof value === 'string' && value.length > 0 ? value : undefined;
441
+ }
442
+ //# sourceMappingURL=playwright.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"playwright.js","sourceRoot":"","sources":["../src/playwright.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@shapeshift-labs/frontier-runtime-proof",
3
- "version": "0.1.0",
3
+ "version": "0.1.2",
4
4
  "description": "Runtime-neutral proof capsule, telemetry, and admission primitives for Frontier merge and review evidence.",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -21,6 +21,11 @@
21
21
  "import": "./dist/index.js",
22
22
  "default": "./dist/index.js"
23
23
  },
24
+ "./playwright": {
25
+ "types": "./dist/playwright.d.ts",
26
+ "import": "./dist/playwright.js",
27
+ "default": "./dist/playwright.js"
28
+ },
24
29
  "./package.json": "./package.json"
25
30
  },
26
31
  "files": [