Skip to content

feat: fingerprint-healed replay with checkpoints, offline HAR, and replay export via codegen - #2

Merged
cdg-me merged 2 commits into
mainfrom
cdg/replay-part-II
Aug 17, 2026
Merged

cdg-me merged 2 commits into
mainfrom
cdg/replay-part-II

Conversation

@cdg-me

@cdg-me cdg-me commented Aug 17, 2026

Copy link
Copy Markdown
Owner
  • store each recorded element interaction with its fingerprint and position among identical siblings, enabling identity-based relocation on replay
  • record expect calls as checkpoint events that replay enforces through the same wait loop as /expect
  • add record start --capture-har: network capture with bodies written as HAR alongside the recording
  • replay offline by default: recorded responses served via snapshot router; --live clears it and hits the network
  • replay with --session : restore a saved session (cookies restored) before running
  • report replay outcome as JSON: steps, checkpoints total/passed, healed substitutions (from → to selectors), failed step, duration; failures exit 1 at the CLI with the report rendered
  • heal through UI drift: selector no longer matching its fingerprint triggers relocation by fingerprint plus occurrence index, reported as healed
  • fail loudly on semantic change: replaced or relabelled elements stop replay at that step naming the original identity and prior checkpoint results
  • convert per-step panics into report errors (a failed navigation previously reported success)
  • fix replayed js events skipping bare-expression wrapping and type interpolating selectors into single-quoted JS
  • keep capture control commands out of recordings so replayed HAR flows don't replay capture itself
  • default replay speed to instant; recorded timing available via --speed 1
  • add record export: pure codegen to a Playwright spec with role-based locators, .nth() disambiguation for repeated elements, assertions with timeouts, routeFromHAR, and selector-provenance comments; verified passing under npx playwright test on both canonical and drifted UI
  • persist cookies in session save/resume
  • add shop fixture with canonical/drifted/broken variants; 10 replay e2e tests and 4 export unit goldens
  • document replay semantics in QUICKSTART and add a fingerprint-bearing recording preset

cdg-me added 2 commits August 16, 2026 22:30
…play export via codegen

- store each recorded element interaction with its fingerprint and position among identical siblings, enabling identity-based relocation on replay
- record expect calls as checkpoint events that replay enforces through the same wait loop as /expect
- add record start --capture-har: network capture with bodies written as HAR alongside the recording
- replay offline by default: recorded responses served via snapshot router; --live clears it and hits the network
- replay with --session <name>: restore a saved session (cookies restored) before running
- report replay outcome as JSON: steps, checkpoints total/passed, healed substitutions (from → to selectors), failed step, duration; failures exit 1 at the CLI with the report rendered
- heal through UI drift: selector no longer matching its fingerprint triggers relocation by fingerprint plus occurrence index, reported as healed
- fail loudly on semantic change: replaced or relabelled elements stop replay at that step naming the original identity and prior checkpoint results
- convert per-step panics into report errors (a failed navigation previously reported success)
- fix replayed js events skipping bare-expression wrapping and type interpolating selectors into single-quoted JS
- keep capture control commands out of recordings so replayed HAR flows don't replay capture itself
- default replay speed to instant; recorded timing available via --speed 1
- add record export: pure codegen to a Playwright spec with role-based locators, .nth() disambiguation for repeated elements, assertions with timeouts, routeFromHAR, and selector-provenance comments; verified passing under npx playwright test on both canonical and drifted UI
- persist cookies in session save/resume
- add shop fixture with canonical/drifted/broken variants; 10 replay e2e tests and 4 export unit goldens
- document replay semantics in QUICKSTART and add a fingerprint-bearing recording preset
@cdg-me
cdg-me merged commit 7de8162 into main Aug 17, 2026
3 checks passed
@cdg-me
cdg-me deleted the cdg/replay-part-II branch August 17, 2026 03:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant