Add Frappe and Macchiato, unify themed pane surfaces, and default to opaque
backgrounds without blur while preserving explicit appearance settings.
Keep default dividers one physical pixel wide at high display scaling.
Align rounded box strokes with adjacent cells and preserve modern Grok
console rendering for new local Windows terminals unless overridden.
Include the regression coverage and synchronized bilingual release notes.
The settings picker mixed a brand PNG (24 px), a `dev-terminal` glyph
(~0.7 em) and a `cod-terminal` glyph (~0.9 em), so icons rendered at three
different sizes; the new-tab palette passed no glyph at all, leaving zsh,
csh, ksh, sh, dash and tcsh without any icon.
Both surfaces now fall back to the shared id-keyed glyph from
`shell_detect::icon_for_id`, all at `FALLBACK_ICON_SCALE` so the glyph ink
matches the brand artwork's 12% safe margin (roughly 0.77 of the slot). The
picker also reserves one fixed icon slot per row, which removes the row
overlap, and spaces rows by exactly `SHELL_ROW_GAP` — the component's
virtual list has no item `gap_y`, so the measured first row is padded to act
as the slot height. A selected row no longer touches the row above it.
Settings -> Terminal's Default shell picker and the new-tab shell palette
fell back to a hard-coded `powershell` when no `shell=` was saved, so a Mac
with no saved value displayed and recommended PowerShell instead of its
login shell.
All four call sites now go through one authority,
`platform::shell::effective_shell_id`: it keeps a configured id and
otherwise resolves the host default (`zsh` on macOS). The settings picker's
empty-detection fallback also stops hard-coding PowerShell/Git Bash.
Codex's turn-complete notification carries the model's
`last-assistant-message` (bounded only at 4 000 chars in `ai_hook`) and an
OSC 9 body is unbounded. Rendered at a fixed 440 px width that became a card
taller than the window: anchored bottom-right it overflowed off the top,
taking its hover-only close button out of reach, and covered a split pane
for the whole 90 s banner TTL.
Notification bodies are now clamped to `TOAST_BODY_MAX_CHARS`; the full text
stays in the log and in the terminal's answer reader. The notification layer
clips to the window, and plain banners dismiss on click.
File tabs now save Markdown, code and text edits through one document
lifecycle, with dirty indicators, close protection, external-change checks,
and BOM/newline preservation. Markdown gains heading navigation and file
information alongside preview and source editing.
Add named tab/window layout recipes using the existing session schema,
remember quick-terminal dimensions, and allow the global hotkey to recall
an existing window. Dock previews and insertion use the hovered pane, with
an outer-edge target for a full row or column.
Add Breeze and Mint light/dark themes, filter settings navigation as the
query changes, expose a font dropdown arrow, and redraw the command icon.
Validated on the isolated commit snapshot with Windows GPUI compilation,
editor and settings interaction tests, workspace/theme tests, shared
settings/split and i18n contracts, architecture checks, and formatting.
Enable the native font backend, fit initial windows inside the usable display, and require terminal text in installed macOS screenshots. Isolate POSIX launch groups and reject runtime endpoints outside the current launch so AppImage restarts cannot reconnect to orphaned instances.
Run Weston with its X11 backend inside one private Xvfb session, retaining compositor cleanup and a cleared DISPLAY for the actual Wayland application. This supplies the wl_seat absent from the headless backend without changing conformance assertions.
Use a marked metadata-only directory for both Cargo target and intermediate outputs, reject native targets and output/config overrides, and keep Cargo.lock fixed. Preserve peer scripts while preventing stub files from entering ordinary build caches. Add ten behavior regressions to Preview preparation; these tests record commands and do not substitute for native CI.
The Intel native job completed tests and the release build but hdiutil reported ENOSPC. Drop only the completed Nebula dev artifacts, retain dependency caches, and record source size and filesystem capacity around DMG creation. Keep native packaging errors and verification authoritative.
Consolidate the existing active-mode flag helper in term/keyboard.rs without changing its logic. Tighten the term module allowance to 2713 lines, preserving the stricter peer baseline and all keyboard state regressions. Verified 209 core tests and architecture checks against a3d25c9.
Retain the verified keyboard protocol, native input and notification adapters, GPUI revisions, CI fixes, and existing regression tests when reconciling parallel work. Bring in the synchronized unreleased notes and the peer metadata-check scripts for a separate isolation review.
Advance the synchronized Zed and component pins to drain XCB-buffered map events on an explicitly awakened idle callback. Preserve checked request errors and defer processing until window construction releases the App borrow.
Build completion markers from fragments so command echo cannot satisfy output waits. Assign each Windows launch gate to an owned Job Object before starting the app, then reap retained member handles during restart and close. Preserve existing history and close limits and test unrelated-process survival.
Treat ps names such as -bash and -zsh as their known interactive shells without extending git/plumbing exemptions or command parsing. Keep non-shell descendants visible so a running editor or build still blocks a close.
Adopt the shared source budgets, local dependency rules and tested Python
checkers. Add the architecture workflow and metadata-only cross-target
tools, and make existing filesystem test waits deterministic.
Document contributor checks in both unreleased notes without claiming
server-side branch protection or native platform validation.
Preserve compact and pretty JSON while handling broken output pipes in
responses and subscriptions. Continue reporting unrelated I/O errors.
Update English and Chinese unreleased notes.
Honor negotiated key modifiers and report the current keyboard flags.
Keep completion navigation and pointer scrolling aligned with visible rows.
Deliver completion and attention notifications to the live source pane,
with request-bound binary confirmation actions that reject stale input.
Synchronize bilingual changelog and release-note entries.
Wait for PTY and shell confirmation, cancel pending startup, and retain
unexpected-disconnect failures without reviving connection overlays.
Preserve the remote directory when duplicating tabs and improve host
editing, username suggestions, icon selection and pinned indicators.
Update both unreleased language sections.
Keep resize assertions strict while preserving before/after observations, bounded prepaint traces, and Linux kernel PTY geometry after a failure. Cover diagnostic failures and cleanup; retain dependency caches when later conformance checks fail.
Use the narrowly patched GPUI TestWindow contract so macOS password input tests reach the existing no-native-handle path. Synchronize all application and component GPUI revisions, with the original baseline and removal condition recorded in Cargo.toml.
Keep a process-owned session snapshot across window close and quit,
retry failed writes, and preserve explicit all-tabs-closed behavior.
Integrate Settings with top tabs and restore sidebar layout consistently.
Synchronize English and Chinese unreleased notes.
Identify launcher aliases and distinguish current work, idle prompts and
permission requests from old scrollback. Share logo bytes and tinting
between shells, retain source colors, and keep the existing logo tests.
Record the icon source and update both unreleased language sections.