Repository navigation
feat(pretty): integrated native Pretty display mode across FilesEditor and ChatContentPage (FMT01-FMT05) - #2063
Open
chris-beckman wants to merge 18 commits into
Open
chris-beckman wants to merge 18 commits into
chris-beckman wants to merge 18 commits into
Conversation
…verage (FMT01-FMT05) Signed-off-by: Chris Beckman <chris@paintedwolf.ai>
Signed-off-by: Chris Beckman <chris@paintedwolf.ai>
…tainability budget Signed-off-by: Chris Beckman <chris@paintedwolf.ai>
…mentState and SecretScreen APIs Signed-off-by: Chris Beckman <chris@paintedwolf.ai>
… dropping host handlers Signed-off-by: Chris Beckman <chris@paintedwolf.ai>
chris-beckman
marked this pull request as ready for review
November 9, 2026 21:59
chris-beckman
marked this pull request as draft
November 9, 2026 22:03
…remental budgets, and O(1) suffix reuse Signed-off-by: Chris Beckman <chris@paintedwolf.ai>
…elimiter Signed-off-by: Chris Beckman <chris@paintedwolf.ai>
…y and Wrap toggles (FMT02) Signed-off-by: Chris Beckman <chris@paintedwolf.ai>
…gray inset chrome Signed-off-by: Chris Beckman <chris@paintedwolf.ai>
…SX tag edit Signed-off-by: Chris Beckman <chris@paintedwolf.ai>
…alidation test Signed-off-by: Chris Beckman <chris@paintedwolf.ai>
…changed lines and verify partial-parse completion Signed-off-by: Chris Beckman <chris@paintedwolf.ai>
…tion after if(cond) Signed-off-by: Chris Beckman <chris@paintedwolf.ai>
Signed-off-by: Chris Beckman <chris@paintedwolf.ai>
…X rescan test Signed-off-by: Chris Beckman <chris@paintedwolf.ai>
chris-beckman
marked this pull request as ready for review
November 10, 2026 02:06
This was referenced Nov 10, 2026
Draft
Draft
Resolve conflicts with main's Files editor status bar tooltip removal (#2069): status chips and the new Pretty toggle render without tooltips, keeping the Pretty toggle immediately before Wrap. Drop the now-unused Pretty tip plumbing and fix a pre-existing floating promise in the Pretty editor test. Signed-off-by: Chris Beckman <chris@paintedwolf.ai>
Wrap four comment lines exceeding the 120-character commentlint limit in pretty-native-layout.test.ts. Comments only; no code or test semantics change. Signed-off-by: Chris Beckman <chris@paintedwolf.ai>
--den-tint-2 is a color-mix over var(--den-plane), so declaring --den-plane: var(--den-tint-2) is self-referential and violates the plane discipline invariant. Drop the override; the pressed rule's var(--den-surface-offset) plane still applies while hovering and the tint wash derives from it. Signed-off-by: Chris Beckman <chris@paintedwolf.ai>
github-actions
Bot
removed this pull request from the merge queue due to a manual request
Nov 10, 2026
github-merge-queue
Bot
removed this pull request from the merge queue due to failed status checks
Nov 10, 2026
This branch has not been deployed
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.
Pretty displays dense text with structural line breaks and indentation while CodeMirror retains the raw source document. FilesEditor remains editable: deleting punctuation, Enter/Tab, undo and save use the existing document/replica path. Read-only content keeps its existing permissions and raw-offset annotations. The status bar adds Pretty immediately before Wrap; both use compact shared gray pressed chrome. Tab icons stay unchanged.
This integration replaces the earlier formatted-document projection and Pretty-specific recovery machinery. Common-blob layout covers JSON/JSONL, supported JSON-like data, XML/HTML, dense JS/TS, CSS and bounded mixed content; other formats retain ordinary source/wrap/highlighting. Grammar variants have documented limitations; universal structural formatting is not claimed.
Delivery: this is the combined delivery PR for #2045, #2046, #2047 and #2062. Their changes are included here; they do not require separate prerequisite landings. Do not land duplicate constituent PRs independently. Preserve their branches and PRs until delivery is verified on main. No merge or enqueue is authorized by this description.
Reviewed source heads:
Verification: managed remote typecheck, budgets and focused tests passed on the combined tree. Remote Chromium proofs cover native editing, malformed punctuation, raw offsets, IME, incremental/fresh layout equivalence, background parser completion, and real FilesEditor/ChatContentPage components with replica/history, tab cleanup, read-only authority and redactions. Corrected screenshots use actual app styles in a correctly sized flex host. Source, receipts and reproducible browser probes are preserved in the planning folder.
Limits: the browser component harness uses a stubbed host client; save proof captures the callback payload. Full installed desktop/backend persistence and cross-platform release qualification are not claimed. GitHub CI remains required; local/component evidence does not replace it.