Skip to content

Commit a2e7f57

Browse files
author
Delta Team
committed
PR_26175_DELTA_008: add replay clone service tests
1 parent 41eaa1d commit a2e7f57

10 files changed

Lines changed: 1245 additions & 251 deletions
Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,59 @@
1+
# PR_26175_DELTA_008-replay-clone-service-tests
2+
3+
## Summary
4+
5+
Team Delta moved `ReplayTimeline` clone operations onto the shared runtime clone helper and added replay service tests for the no-`structuredClone` fallback path.
6+
7+
The replay model and replay system already used `cloneRuntimeValue(...)`; this PR finishes the timeline surface so replay snapshots, returned entries, and replacement frames use the same shared clone behavior.
8+
9+
## Scope
10+
11+
- Team: Delta
12+
- Branch: `PR_26175_DELTA_008-replay-clone-service-tests`
13+
- Runtime file changed: `src/engine/replay/ReplayTimeline.js`
14+
- Test file changed: `tests/replay/ReplayTimeline.test.mjs`
15+
- Service test command added: `npm run test:service:replay-clone`
16+
- Site-wide command preserved: `npm test`
17+
18+
## Runtime Impact
19+
20+
PASS - Replay timeline cloning remains backward compatible and now works when `structuredClone` is unavailable.
21+
22+
## Requirement Checklist
23+
24+
| Requirement | Status | Notes |
25+
|---|---|---|
26+
| One PR purpose only | PASS | Replay clone service testability only. |
27+
| Team Delta ownership only | PASS | Replay runtime and shared runtime test coverage are Delta-owned. |
28+
| No team-specific test runner | PASS | No Delta-named runner or command added. |
29+
| No `scripts/run-delta-runtime-validation.mjs` | PASS | File was not added. |
30+
| No `test:delta-runtime` | PASS | Script was not added. |
31+
| Testing organized by service/page level | PASS | Added `test:service:replay-clone`. |
32+
| Keep `npm test` as site-wide command | PASS | Existing `npm test` is unchanged. |
33+
| No UI changes | PASS | No UI files changed. |
34+
| No browser-owned product data | PASS | Replay tests use in-memory runtime snapshots only. |
35+
| No silent fallbacks or hidden defaults | PASS | Fallback clone path is explicit through `cloneRuntimeValue(...)`. |
36+
37+
## Validation Lane Report
38+
39+
| Command | Status | Notes |
40+
|---|---|---|
41+
| `node --check src/engine/replay/ReplayTimeline.js` | PASS | Replay timeline syntax valid. |
42+
| `node --check tests/replay/ReplayTimeline.test.mjs` | PASS | Replay test syntax valid. |
43+
| `npm run test:service:replay-clone` | PASS | 2 targeted replay test files passed. |
44+
| `git diff --check` | PASS | No whitespace errors before report generation. |
45+
| `npm run codex:review-artifacts` | PASS | Regenerated `codex_review.diff` and `codex_changed_files.txt`. |
46+
47+
## Manual Validation Notes
48+
49+
- Confirmed `ReplayTimeline` no longer calls `structuredClone` directly.
50+
- Confirmed returned timeline entries are cloned and cannot mutate stored snapshots.
51+
- Confirmed replacement snapshots are cloned before storage.
52+
- Playwright was not run; this is Node replay service coverage.
53+
54+
## ZIP
55+
56+
Expected repo-structured delta ZIP:
57+
58+
`tmp/PR_26175_DELTA_008-replay-clone-service-tests_delta.zip`
59+
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
# PR_26175_DELTA_008 Branch Validation
2+
3+
| Check | Status | Evidence |
4+
|---|---|---|
5+
| Returned to `main` before branch | PASS | Checked out `main` after PR_26175_DELTA_007 draft PR creation. |
6+
| Pulled latest `main` | PASS | `git pull --ff-only` fast-forwarded to `41eaa1dcd`. |
7+
| Local/origin sync before branch | PASS | `git rev-list --left-right --count main...origin/main` returned `0 0`. |
8+
| Worktree clean before branch | PASS | `git status --short` returned no entries. |
9+
| Working branch | PASS | `PR_26175_DELTA_008-replay-clone-service-tests`. |
10+
| Direct commit to `main` avoided | PASS | Changes were made only on the PR branch. |
11+
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
# PR_26175_DELTA_008 Manual Validation Notes
2+
3+
- Reviewed changed files for replay clone scope.
4+
- Confirmed no UI files changed.
5+
- Confirmed no persisted browser-owned product data was introduced.
6+
- Confirmed no `scripts/run-delta-runtime-validation.mjs` file was added.
7+
- Confirmed no `test:delta-runtime` script was added.
8+
- Confirmed `npm test` remains the site-wide/all-tests command.
9+
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
# PR_26175_DELTA_008 Requirements Checklist
2+
3+
| Requirement | Status | Notes |
4+
|---|---|---|
5+
| Branch from updated main | PASS | Branch created after pull and sync check. |
6+
| Build smallest scoped change | PASS | Updated replay timeline clone path and focused replay tests. |
7+
| Validate targeted tests | PASS | `npm run test:service:replay-clone` passed. |
8+
| Required reports created | PASS | PR report, branch validation, checklist, validation lane, manual notes, review diff, changed files. |
9+
| Repo-structured ZIP created | PASS | `tmp/PR_26175_DELTA_008-replay-clone-service-tests_delta.zip`. |
10+
| Open PR | PENDING | Opened after commit and push. |
11+
| Stop before merge approval | PASS | This PR is draft/open only; no merge performed. |
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
# PR_26175_DELTA_008 Validation Lane
2+
3+
## Targeted Lane
4+
5+
`npm run test:service:replay-clone`
6+
7+
## Results
8+
9+
| Command | Result |
10+
|---|---|
11+
| `node --check src/engine/replay/ReplayTimeline.js` | PASS |
12+
| `node --check tests/replay/ReplayTimeline.test.mjs` | PASS |
13+
| `npm run test:service:replay-clone` | PASS |
14+
| `git diff --check` | PASS |
15+
16+
## Notes
17+
18+
- The service lane is replay-focused and not named for Team Delta.
19+
- Full `npm test` was not run because this PR is scoped to replay clone service coverage.
20+
Lines changed: 23 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -1,31 +1,26 @@
1-
# git diff --name-only pr/26177-CHARLIE-034-startup-runtime-report-cleanup --
2-
assets/theme-v2/css/status.css
3-
assets/theme-v2/css/tables.css
4-
docs_build/dev/reports/PR_26177_CHARLIE_035-system-health-ui-polish.md
5-
docs_build/dev/reports/PR_26177_CHARLIE_035-system-health-ui-polish_branch-validation.md
6-
docs_build/dev/reports/PR_26177_CHARLIE_035-system-health-ui-polish_manual-validation-notes.md
7-
docs_build/dev/reports/PR_26177_CHARLIE_035-system-health-ui-polish_requirements-checklist.md
8-
docs_build/dev/reports/PR_26177_CHARLIE_035-system-health-ui-polish_validation-lane.md
9-
docs_build/dev/reports/codex_changed_files.txt
10-
docs_build/dev/reports/codex_review.diff
11-
docs_build/dev/reports/coverage_changed_js_guardrail.txt
12-
docs_build/dev/reports/playwright_v8_coverage_report.txt
13-
141
# git status --short
15-
M docs_build/dev/reports/PR_26177_CHARLIE_035-system-health-ui-polish.md
2+
M docs_build/dev/reports/codex_changed_files.txt
163
M docs_build/dev/reports/codex_review.diff
17-
M docs_build/dev/reports/coverage_changed_js_guardrail.txt
4+
M package.json
5+
M src/engine/replay/ReplayTimeline.js
6+
M tests/replay/ReplayTimeline.test.mjs
7+
?? docs_build/dev/reports/PR_26175_DELTA_008-replay-clone-service-tests.md
8+
?? docs_build/dev/reports/PR_26175_DELTA_008-replay-clone-service-tests_branch-validation.md
9+
?? docs_build/dev/reports/PR_26175_DELTA_008-replay-clone-service-tests_manual-validation-notes.md
10+
?? docs_build/dev/reports/PR_26175_DELTA_008-replay-clone-service-tests_requirements-checklist.md
11+
?? docs_build/dev/reports/PR_26175_DELTA_008-replay-clone-service-tests_validation-lane.md
12+
13+
# git ls-files --others --exclude-standard
14+
docs_build/dev/reports/PR_26175_DELTA_008-replay-clone-service-tests.md
15+
docs_build/dev/reports/PR_26175_DELTA_008-replay-clone-service-tests_branch-validation.md
16+
docs_build/dev/reports/PR_26175_DELTA_008-replay-clone-service-tests_manual-validation-notes.md
17+
docs_build/dev/reports/PR_26175_DELTA_008-replay-clone-service-tests_requirements-checklist.md
18+
docs_build/dev/reports/PR_26175_DELTA_008-replay-clone-service-tests_validation-lane.md
1819

19-
# git diff --stat pr/26177-CHARLIE-034-startup-runtime-report-cleanup --
20-
assets/theme-v2/css/status.css | 52 ++
21-
assets/theme-v2/css/tables.css | 37 ++
22-
...PR_26177_CHARLIE_035-system-health-ui-polish.md | 25 +
23-
...35-system-health-ui-polish_branch-validation.md | 14 +
24-
...tem-health-ui-polish_manual-validation-notes.md | 8 +
25-
...stem-health-ui-polish_requirements-checklist.md | 12 +
26-
..._035-system-health-ui-polish_validation-lane.md | 10 +
27-
docs_build/dev/reports/codex_changed_files.txt | 57 +-
28-
docs_build/dev/reports/codex_review.diff | 617 +++++++--------------
29-
.../dev/reports/coverage_changed_js_guardrail.txt | 4 +-
30-
.../dev/reports/playwright_v8_coverage_report.txt | 10 +-
31-
11 files changed, 382 insertions(+), 464 deletions(-)
20+
# git diff --stat
21+
docs_build/dev/reports/codex_changed_files.txt | 51 +-
22+
docs_build/dev/reports/codex_review.diff | 794 ++++++++++++++++++-------
23+
package.json | 1 +
24+
src/engine/replay/ReplayTimeline.js | 7 +-
25+
tests/replay/ReplayTimeline.test.mjs | 25 +
26+
5 files changed, 628 insertions(+), 250 deletions(-)

0 commit comments

Comments
 (0)