pj
859eae53d4
ci: run the Chrome-driven browser suite in a separate job
2026-06-01 22:01:36 +05:30
pj
87e9719a8a
chore(make): add test-browser target for the Chrome-driven suite
2026-06-01 22:01:36 +05:30
pj
bafedcbb92
test(integration): drive web fixtures through the real pipeline in headless Chrome
2026-06-01 22:01:36 +05:30
pj
a3047a87f4
test(integration): add specs for the web fixtures
2026-06-01 22:01:32 +05:30
pj
b8b3c9b8f7
test(integration): add throwing and counter web fixtures
2026-06-01 22:01:32 +05:30
pj
f26ede7151
feat(web-runtime): capture uncaught errors into state.exceptions
2026-06-01 22:01:25 +05:30
pj
b4ab121fcb
test(runner): golden snapshots for trace stream and violation summary
2026-06-01 21:59:55 +05:30
pj
e820cff60d
refactor(runner): extract RenderSummary for snapshot testing
2026-06-01 21:58:43 +05:30
pj
f27e66c152
test(ltl): drop Verdict.String tautology tests
2026-06-01 21:56:12 +05:30
pj
5df421956c
test(mock): drop default-field-value assertion test
2026-06-01 21:56:12 +05:30
pj
87506f4b74
test(sidecar): drop stub-mode placeholder tautology tests
2026-06-01 21:56:12 +05:30
pj
19950dffe1
test(driverpb): drop proto getter round-trip tautology
2026-06-01 21:56:08 +05:30
pj
93f1e94098
test(runner): MaxSteps stops after exactly N steps
2026-06-01 21:55:53 +05:30
pj
8001de6728
feat(runner): add MaxSteps bound to Options
2026-06-01 21:55:53 +05:30
pj
b6a306286a
test(web-runtime): assert uncaught cross-extractor read aborts evaluateExtractors
2026-06-01 21:24:38 +05:30
pj
451d8c6751
test(spec): install fake runtime via defineProperty to survive locked global
2026-06-01 21:24:38 +05:30
pj
80e7e71e7a
fix(web-runtime): propagate extractor getter throws and unpoison locked global
...
Stop swallowing getter errors in evaluateExtractors so the cross-extractor read guard aborts loudly, matching goja's PushSnapshot. Make the __sanderling__ lock configurable (still non-writable) so a shared test process can reinstall a fake.
2026-06-01 21:24:34 +05:30
pj
d673e4b785
refactor(folio-web): name extractors so violation witnesses are readable
2026-06-01 21:14:09 +05:30
pj
2c410780fa
refactor(folio-web): weight valid generators against edgeCaseText for names/amounts
2026-06-01 21:13:33 +05:30
pj
3aba528c87
fix(folio-web): seed card/txn-type selection via from().generate() for reproducible runs
2026-06-01 21:12:29 +05:30
pj
b58023a434
refactor(folio-web): drop manual globalThis trailer (bundler injects it)
2026-06-01 21:12:11 +05:30
pj
04aabbe4c7
refactor(folio): seed txn amounts via integers().between(1,500)
2026-06-01 21:12:03 +05:30
pj
b824af967e
refactor(folio): drop manual globalThis trailer (bundler injects it)
2026-06-01 21:11:33 +05:30
pj
bef9a58743
test(web-runtime): named() and cross-extractor read guard
2026-06-01 21:10:10 +05:30
pj
c408580297
test(web-runtime): export runtime and extractors for tests
2026-06-01 21:09:01 +05:30
pj
725b2fe1a8
test(verifier): cross-extractor read guard and named()
2026-06-01 21:08:40 +05:30
pj
973ada4983
feat(verifier): named() and cross-extractor read guard in goja
2026-06-01 21:08:06 +05:30
pj
fe86e91aff
feat(web-runtime): named() and cross-extractor read guard
2026-06-01 21:06:55 +05:30
pj
159bcb6dce
feat(spec): add named() to Extracted handle type
2026-06-01 21:06:23 +05:30
pj
955d0a67ff
test(bundler): cover named-export globalThis registration
2026-06-01 21:04:19 +05:30
pj
e156fbc5f6
refactor(bundler): reuse registration trailer in web bundler
2026-06-01 21:04:17 +05:30
pj
868ab78c8e
refactor(bundler): inject globalThis trailer from spec named exports
2026-06-01 21:04:14 +05:30
pj
9a2cb61561
test(spec): cover fluent value generators determinism and chaining
2026-06-01 21:02:26 +05:30
pj
d65c0cd448
feat(spec): add fluent seeded value generators (strings/integers/emails/edgeCaseText)
2026-06-01 21:01:50 +05:30
pj
02d884c9b9
refactor(spec): extract samplerRng into shared sampler-rng module
2026-06-01 21:01:47 +05:30
pj
f249581792
docs(spec): rename pressKey generator to pressKeys
2026-06-01 20:59:17 +05:30
pj
3509156ea1
test(spec): update pressKeys generator export name
2026-06-01 20:59:05 +05:30
pj
fbab57f722
refactor(spec): update barrel re-exports for pressKeys
2026-06-01 20:58:53 +05:30
pj
4b4aa9f74e
refactor(spec): rename pressKey generator export to pressKeys
2026-06-01 20:58:23 +05:30
pj
0526ac4bfa
test(verifier): assert goja picker against the same cross-runtime golden
...
Drop the node-subprocess coupling: the goja side now installs a stub
__sanderlingHost__ with the fixed candidate list and asserts the committed
golden, matching pkg/spec/test/parity.test.ts.
2026-06-01 17:27:18 +05:30
pj
e3bb9aeeb2
test(spec): golden-fixture cross-runtime parity gate for the node picker
...
Replace the env-driven parity harness with a shared scenario module and a
committed golden the node picker asserts independently. The goja side asserts
the same golden, so neither runtime invokes the other at test time.
2026-06-01 17:27:14 +05:30
pj
0fa6968a5a
test(runner): summary reports no unsupported verbs on a clean run
2026-06-01 17:20:09 +05:30
pj
58b57d8f3c
test(verifier): unsupported verbs collected deduped in first-seen order
2026-06-01 17:20:09 +05:30
pj
65ba5345a3
test(verifier): cross-runtime goja/node parity gate on the shared picker
2026-06-01 17:20:04 +05:30
pj
dba182b96f
feat(testrun): surface unsupported verbs in run report
2026-06-01 17:14:39 +05:30
pj
1a17734ce0
refactor(runner): collapse WebDriver forks behind ActionSource/ExtractorSource
2026-06-01 17:14:35 +05:30
pj
0436c6094e
feat(verifier): collect unsupported verbs for the run report
2026-06-01 17:14:32 +05:30
pj
26f638f021
test(runner): bundle authored specs with the goja runtime entry
2026-06-01 16:59:23 +05:30
pj
aee5d8110a
test(verifier): author specs through the shared picker path
2026-06-01 16:59:23 +05:30
pj
f8e3baf439
refactor(runner): decode V8 actions via the unified DecodeAction; wire goja runtime
2026-06-01 16:59:18 +05:30