Introduce isolated Transcript kernel and geometry models / 拆分会话滚动纯内核与几何模型 - #9893
Merged
SivanCola merged 1 commit intoSep 7, 2026
Merged
Conversation
Problem: PR esengine#9777 combines viewport state, renderer replacement, settings, and application lifecycle ownership in one large review surface. Root cause: the final renderer depends on generation-aware transactions, immutable measurement snapshots, and logical navigation that need their own executable contract before production integration. Fix: adopt the final pure kernel, timeline projection, measurement ledger, window geometry, history request and navigation models from esengine#9777. Keep production Transcript and its existing writer unchanged. Include deterministic race, native-travel retirement, immutable-prefix and 10,000-turn tests. Verification: production build and bundle budgets, production/test TypeScript, six focused model suites, and repository lint passed. Native rendering is qualified in the separate renderer cutover, not by these model-only tests.
This was referenced Sep 7, 2026
This was referenced Sep 7, 2026
SivanCola
added a commit
that referenced
this pull request
Sep 8, 2026
Problem: The generated draft referenced 30 of the 38 pull requests merged since v1.38.1, and no entry mentioned the transcript renderer replacement, the Standard/Deep session display setting, or the provider connection and model preference redesign, even though each pull request describes user-visible behavior. Fix: Add three bilingual entries with their pull-request references to both the highlights and the categorized changes lists - transcript renderer replacement (#9893, #9895, #9896, #9897), Standard and Deep session display (#9894), and independent model connections and model preferences (#9907). Verification: node scripts/release-notes.mjs validate (61 releases); node --test scripts/release-notes.test.mjs (10 pass); the rendered v1.38.2 notes inspected in both languages; git diff is additions only.
SivanCola
added a commit
that referenced
this pull request
Sep 8, 2026
Problem: The generated draft referenced 30 of the 38 pull requests merged since v1.38.1, and no entry mentioned the transcript renderer replacement, the Standard/Deep session display setting, or the provider connection and model preference redesign, even though each pull request describes user-visible behavior. Fix: Add three bilingual entries with their pull-request references to both the highlights and the categorized changes lists - transcript renderer replacement (#9893, #9895, #9896, #9897), Standard and Deep session display (#9894), and independent model connections and model preferences (#9907). Verification: node scripts/release-notes.mjs validate (61 releases); node --test scripts/release-notes.test.mjs (10 pass); the rendered v1.38.2 notes inspected in both languages; git diff is additions only.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This is slice 2 of #9777: the viewport state and pure geometry contracts, independently reviewable before switching the production renderer.
The kernel fences transactions by session, generation and geometry revision. The measurement ledger retires consumed native scroll travel and publishes complete snapshots. Timeline projection, bounded window geometry, history requests and question navigation share those contracts. Production Transcript still uses the existing engine and writer.
Adopted from @SivanCola's final repaired #9777 implementation. Renderer integration, DOM observers and App lifecycle changes remain in subsequent slices. This PR has no dependency on the session-settings slice.
Validation: six deterministic model suites, production and test TypeScript, production build with unchanged bundle budgets, and repository lint passed. Tests cover stale callbacks, ownership precedence, immutable lazy-prefix snapshots, invalid geometry fallback, protected ranges, and 10,000-turn reconstruction. Native rendering and full application heap attribution are outside this model-only qualification.
No provider-visible prompt, cache, network, credential, or persisted configuration changes.
Refs #9777.
Documentation-impact: none - Pure models are not connected to production rendering; existing user-facing behavior and documentation remain correct.
Cache-impact: none - No provider-visible request, prompt or history changes.
Cache-guard: N/A - Presentation-only changes; no provider serialization path is modified.
System-prompt-review: N/A