Repository navigation
Description
Note
GPT-6 Astra on behalf of PsychedelicShayna
Observed behavior
The owner reports Appearance freezing the entire interface for 6–12 seconds, sometimes longer, while navigating away is fast. This is distinct from the completed Providers catalog virtualization in #67/#99/#101. The report is accepted; no confirmation rerun is required.
At nightly 3c5789f, FontFamilyPicker.tsx:142-145 synchronously filters all installed fonts through isMonospaceFamily during render, even for closed pickers. Its permission probe can start discovery automatically on mount. Each monospace classification measures multiple strings/styles on canvas.
Acceptance
- Closed font controls perform no full-catalog synchronous monospace scan during Appearance mount.
- Opening font selection remains responsive; cancellation and repeated mount/open do not repeat unnecessary work.
- Saved choices, reset, typography editing and actual font previews continue working.
- Focused behavior checks and private real-client first-open/reopen/picker measurements are recorded.
NeoPi theme parity and the broader restyle are separate work, not prerequisites for this repair. Claimed by Mercury/AppearanceRepair.
Owner's words (verbatim)
2026-10-22 owner dictation — contiguous excerpt
Oh, appearance. By the way, is the one section that also gets really, really laggy. Whenever you click on appearance, it lags for like over, yeah, that took like six or seven seconds. And sometimes it doesn't stop, like it really is horrible. I have panel animations down to zero milliseconds. I'm gonna reset it. Oh, it's already at zero, okay. Well, I'm gonna set it to 150 to see if chat width wide, maybe. By the way, appearance should list the themes that the terminal user interface has, not whatever the fuck this is. Key bindings, again, should also be based around terminal user interface, but I-I won't blame you for that. General has workspace rules, yes, that makes sense. yeah, search on origin, this all, yeah, this is all fine. In legacy features, having plan mode in there and context window indicator, I hate that. Like, I like having information about what the fuck's happening. I like the new sidebar, I don't like the legacy sidebar, I think it sucks. So I think it's good there, but Jesus, I just clicked appearance again. And it appears like it it just freezes the whole fucking thing. That's so shit. Alright, now I've clicked on it, now I'm gonna click away. It's so dumb. And it just takes an instant to click away.
Complete unedited message: #125 . The owner's words take precedence over this summary.
Activity
docs(appearance): record the responsive font-picker seam
PsychedelicShayna commentedon Oct 22, 2026
Note
GPT-6 Astra on behalf of PsychedelicShayna
Installed nightly source
3ca07c37659338f9fde4142baf50d20f09e4c5d8, version0.0.42-nightly.20261022.39742893669.1. The NeoCode launcher now selects this versioned AppRun; the previous artifact and launcher backup remain available. AppImage SHA256:bde7d6dce6a2928cedf8104ffcf912d8dafb75d59b65f79a052aa65b671bc113.Proof used the actual installed Electron artifact, normal shell hydration and private state on Xvfb
:10. The owner's live window, database and wallet were not used or restarted.PR #131 is delivered. Same installed-font catalog in both measurements: 554 families, 2,817 faces.
This is one measured before/after case, not a general benchmark. The after-proof also typed into the opened monospace picker, closed it during classification, navigated away and back with no long tasks in that interaction window, completed classification, selected DejaVu Sans Mono, retained it across navigation, and restored the default Liberation Mono.
Three focused scheduler tests, web types, targeted lint and formatting passed. The initial bootstrap-root Vite runner failed before collecting tests; the corrected worktree-local runner passed.
Before image · After image · Interaction recording · Before profile · After profile · Installed receipt.
Exact tested Linux AppImage. Marking agent work finished; this issue remains open until promotion to main.