Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
# PR_26175_DELTA_008-replay-clone-service-tests

## Summary

Team Delta moved `ReplayTimeline` clone operations onto the shared runtime clone helper and added replay service tests for the no-`structuredClone` fallback path.

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.

## Scope

- Team: Delta
- Branch: `PR_26175_DELTA_008-replay-clone-service-tests`
- Runtime file changed: `src/engine/replay/ReplayTimeline.js`
- Test file changed: `tests/replay/ReplayTimeline.test.mjs`
- Service test command added: `npm run test:service:replay-clone`
- Site-wide command preserved: `npm test`

## Runtime Impact

PASS - Replay timeline cloning remains backward compatible and now works when `structuredClone` is unavailable.

## Requirement Checklist

| Requirement | Status | Notes |
|---|---|---|
| One PR purpose only | PASS | Replay clone service testability only. |
| Team Delta ownership only | PASS | Replay runtime and shared runtime test coverage are Delta-owned. |
| No team-specific test runner | PASS | No Delta-named runner or command added. |
| No `scripts/run-delta-runtime-validation.mjs` | PASS | File was not added. |
| No `test:delta-runtime` | PASS | Script was not added. |
| Testing organized by service/page level | PASS | Added `test:service:replay-clone`. |
| Keep `npm test` as site-wide command | PASS | Existing `npm test` is unchanged. |
| No UI changes | PASS | No UI files changed. |
| No browser-owned product data | PASS | Replay tests use in-memory runtime snapshots only. |
| No silent fallbacks or hidden defaults | PASS | Fallback clone path is explicit through `cloneRuntimeValue(...)`. |

## Validation Lane Report

| Command | Status | Notes |
|---|---|---|
| `node --check src/engine/replay/ReplayTimeline.js` | PASS | Replay timeline syntax valid. |
| `node --check tests/replay/ReplayTimeline.test.mjs` | PASS | Replay test syntax valid. |
| `npm run test:service:replay-clone` | PASS | 2 targeted replay test files passed. |
| `git diff --check` | PASS | No whitespace errors before report generation. |
| `npm run codex:review-artifacts` | PASS | Regenerated `codex_review.diff` and `codex_changed_files.txt`. |

## Manual Validation Notes

- Confirmed `ReplayTimeline` no longer calls `structuredClone` directly.
- Confirmed returned timeline entries are cloned and cannot mutate stored snapshots.
- Confirmed replacement snapshots are cloned before storage.
- Playwright was not run; this is Node replay service coverage.

## ZIP

Expected repo-structured delta ZIP:

`tmp/PR_26175_DELTA_008-replay-clone-service-tests_delta.zip`

Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
# PR_26175_DELTA_008 Branch Validation

| Check | Status | Evidence |
|---|---|---|
| Returned to `main` before branch | PASS | Checked out `main` after PR_26175_DELTA_007 draft PR creation. |
| Pulled latest `main` | PASS | `git pull --ff-only` fast-forwarded to `41eaa1dcd`. |
| Local/origin sync before branch | PASS | `git rev-list --left-right --count main...origin/main` returned `0 0`. |
| Worktree clean before branch | PASS | `git status --short` returned no entries. |
| Working branch | PASS | `PR_26175_DELTA_008-replay-clone-service-tests`. |
| Direct commit to `main` avoided | PASS | Changes were made only on the PR branch. |

Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
# PR_26175_DELTA_008 Manual Validation Notes

- Reviewed changed files for replay clone scope.
- Confirmed no UI files changed.
- Confirmed no persisted browser-owned product data was introduced.
- Confirmed no `scripts/run-delta-runtime-validation.mjs` file was added.
- Confirmed no `test:delta-runtime` script was added.
- Confirmed `npm test` remains the site-wide/all-tests command.

Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
# PR_26175_DELTA_008 Requirements Checklist

| Requirement | Status | Notes |
|---|---|---|
| Branch from updated main | PASS | Branch created after pull and sync check. |
| Build smallest scoped change | PASS | Updated replay timeline clone path and focused replay tests. |
| Validate targeted tests | PASS | `npm run test:service:replay-clone` passed. |
| Required reports created | PASS | PR report, branch validation, checklist, validation lane, manual notes, review diff, changed files. |
| Repo-structured ZIP created | PASS | `tmp/PR_26175_DELTA_008-replay-clone-service-tests_delta.zip`. |
| Open PR | PENDING | Opened after commit and push. |
| Stop before merge approval | PASS | This PR is draft/open only; no merge performed. |
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
# PR_26175_DELTA_008 Validation Lane

## Targeted Lane

`npm run test:service:replay-clone`

## Results

| Command | Result |
|---|---|
| `node --check src/engine/replay/ReplayTimeline.js` | PASS |
| `node --check tests/replay/ReplayTimeline.test.mjs` | PASS |
| `npm run test:service:replay-clone` | PASS |
| `git diff --check` | PASS |

## Notes

- The service lane is replay-focused and not named for Team Delta.
- Full `npm test` was not run because this PR is scoped to replay clone service coverage.

51 changes: 23 additions & 28 deletions docs_build/dev/reports/codex_changed_files.txt
Original file line number Diff line number Diff line change
@@ -1,31 +1,26 @@
# git diff --name-only pr/26177-CHARLIE-034-startup-runtime-report-cleanup --
assets/theme-v2/css/status.css
assets/theme-v2/css/tables.css
docs_build/dev/reports/PR_26177_CHARLIE_035-system-health-ui-polish.md
docs_build/dev/reports/PR_26177_CHARLIE_035-system-health-ui-polish_branch-validation.md
docs_build/dev/reports/PR_26177_CHARLIE_035-system-health-ui-polish_manual-validation-notes.md
docs_build/dev/reports/PR_26177_CHARLIE_035-system-health-ui-polish_requirements-checklist.md
docs_build/dev/reports/PR_26177_CHARLIE_035-system-health-ui-polish_validation-lane.md
docs_build/dev/reports/codex_changed_files.txt
docs_build/dev/reports/codex_review.diff
docs_build/dev/reports/coverage_changed_js_guardrail.txt
docs_build/dev/reports/playwright_v8_coverage_report.txt

# git status --short
M docs_build/dev/reports/PR_26177_CHARLIE_035-system-health-ui-polish.md
M docs_build/dev/reports/codex_changed_files.txt
M docs_build/dev/reports/codex_review.diff
M docs_build/dev/reports/coverage_changed_js_guardrail.txt
M package.json
M src/engine/replay/ReplayTimeline.js
M tests/replay/ReplayTimeline.test.mjs
?? docs_build/dev/reports/PR_26175_DELTA_008-replay-clone-service-tests.md
?? docs_build/dev/reports/PR_26175_DELTA_008-replay-clone-service-tests_branch-validation.md
?? docs_build/dev/reports/PR_26175_DELTA_008-replay-clone-service-tests_manual-validation-notes.md
?? docs_build/dev/reports/PR_26175_DELTA_008-replay-clone-service-tests_requirements-checklist.md
?? docs_build/dev/reports/PR_26175_DELTA_008-replay-clone-service-tests_validation-lane.md

# git ls-files --others --exclude-standard
docs_build/dev/reports/PR_26175_DELTA_008-replay-clone-service-tests.md
docs_build/dev/reports/PR_26175_DELTA_008-replay-clone-service-tests_branch-validation.md
docs_build/dev/reports/PR_26175_DELTA_008-replay-clone-service-tests_manual-validation-notes.md
docs_build/dev/reports/PR_26175_DELTA_008-replay-clone-service-tests_requirements-checklist.md
docs_build/dev/reports/PR_26175_DELTA_008-replay-clone-service-tests_validation-lane.md

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