Skip to content

Reuse the validated Replay host update tree - #189

Merged
snkmcb merged 1 commit into
mainfrom
codex/reuse-replay-host-tree
Nov 9, 2026
Merged

snkmcb merged 1 commit into
mainfrom
codex/reuse-replay-host-tree

Conversation

@snkmcb

@snkmcb snkmcb commented Nov 9, 2026

Copy link
Copy Markdown
Member

Summary

  • Replay host updates built a replacement tree for the loading-owner check, then built the same tree again through reload.
  • Hand off the validated tree to the shared reload path. This removes one document validation, copy and indexing pass for each accepted host update.
  • Cover a malformed replacement document in the host replay test, including the diagnostic path, the retained snapshot and a retry.

Compatibility

The public API, Replay v1/v2 encoding and the layout/paint commit boundary stay the same. Each replacement still has a fresh tree identity and expires earlier handles. A host update now allocates one tree identity for its candidate.

Verification

  • Core Debug with examples off: all 64 contract tests passed, including Replay, host updates, serialization and offscreen capture.
  • Hierarchy / Inspector Debug window-free smoke passed.
  • Changed-file formatting, formatter self-check, documentation, release metadata and CI selection checks passed.

For the refactoring baseline, one clean local Core Debug run on 45e651f used Visual Studio 2026 x64, 2 build workers and 4 test workers. Configure took 2.10 s, build 106.33 s, and CTest 30.25 s. The recent hosted source-only PR spent 299 s in the Core contracts step. These are baseline observations.

@snkmcb
snkmcb merged commit 00ba051 into main Nov 9, 2026
3 checks passed
@snkmcb
snkmcb deleted the codex/reuse-replay-host-tree branch November 9, 2026 16:37
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