The Codex Changelog
All Episodes

Fixing Warp Mentions, Windows Crashes, and Phantom Quotas

This episode covers a critical Warp terminal hang caused by the new unified mentions menu, plus the immediate workaround and the reworked rendering approach now rolling out in alpha. It also breaks down a Windows desktop app crash and a strange Plus quota drain bug, along with a macOS workaround using CodexBar to detect and stop silent usage drift.


Chapter 1

Regaining Control of the Unified Mentions Menu

Ethan Park

So, I was in Warp yesterday, typing out a quick system prompt, and the moment I hit the @ key to pull up a file reference, my entire terminal process just... hung. Totally unresponsive. It turns out the new unified mentions menu, the mentions_v2 system that's supposed to merge files, plugins, and skills into one dropdown, has been absolutely wrecking terminal user interface keyboard navigation for a lot of devs.

Maya

Wait, the whole terminal hung? Just from typing an @ symbol? That's... that is a massive headache for a workflow. I'm guessing it's some kind of rendering loop conflict with the TUI?

Ethan Park

Exactly. It's a terminal emulator conflict, specifically with how the rich rendering in mentions_v2 handles keyboard focus. But look, if you're hitting this right now and just need your terminal back, there's an immediate, persistent fix. You just run codex features disable mentions_v2 directly in your shell. That drops you right back to the classic, file-only mention UI and instantly restores keyboard stability.

Maya

Okay, codex features disable mentions_v2. That's good to know. Thanks to Jellypod to help make this daily show a reality, because tracking down these breaking terminal bugs is basically a full-time job. But what's actually happening under the hood to cause that lockup? Is it just a bad keybind map?

Ethan Park

It's a bit of both. The root issue was how they were rendering the active selection in the terminal loop. They were using a heavy reverse-video styling to highlight the selected item in the menu. In terminal emulators, especially hardware-accelerated ones like Warp, that repaint cycle was fighting with the input focus loop. If you look at pull request #28959, which just hit the alpha channel in version 0.143.0-alpha.36, they completely re-engineered this.

Maya

Wait, they got rid of the reverse-video styling entirely? How do you even see what you're selecting then?

Ethan Park

They replaced it with a dedicated two-character gutter on the left side of the menu. Inside that gutter, they draw a simple > active pointer, combined with some subtle, theme-adaptive row accents that don't trigger the heavy repaint. Along with that, PR #28959 explicitly maps Ctrl-P, Ctrl-N, Tab, and Enter directly in the TUI input loop, so the terminal doesn't intercept those keys while the mention menu is active.

Maya

Ah, got it. So instead of forcing the terminal to redraw the entire background block of the selected text, it's just moving a tiny two-character pointer in the gutter. That makes so much more sense. It's way lighter on the terminal's rendering engine.

Ethan Park

Exactly. Much cleaner, and it stops the input loop from freezing up when you're trying to arrow through your files.

Chapter 2

Windows Client Crashes and Silent Plus Quota Drains

Maya

Well, speaking of things breaking, if you're on Windows or using the Plus API, there are two pretty nasty regressions that cropped up this week. The first is a straight-up crash in the Windows desktop app, and the second is a silent quota drain that's costing people money while they're literally asleep.

Ethan Park

Wait, a silent quota drain? Like, your ChatGPT Plus rate limit is ticking down even when you aren't sending requests?

Maya

Yes, exactly. But let's look at the Windows app first because that one is very loud. If you updated to version 26.623.101652, which rolled out on July 3, you've probably noticed the client just... vanishes. There's an unhandled exception in the wrapper that force-closes the entire desktop window almost exactly five minutes after you launch it, regardless of whether you're actively typing or if it's just sitting in the background.

Ethan Park

Five minutes? That's an incredibly specific window. Is it a memory leak in the Electron wrapper, or something with the session heartbeat?

Maya

It seems to be a heartbeat timeout check that fails silently and triggers a hard exit instead of a reconnect. They're working on a hotfix, but for now, you're better off rolling back or using the web interface. Now, the quota issue is weirder. People are checking their usage and finding their 5-hour ChatGPT Plus backend API quota is reporting one hundred percent usage, even after long idle periods where they haven't run a single session.

Ethan Park

That's incredibly frustrating, especially if you're trying to get work done and you hit an artificial ceiling. Is there a client-side workaround, or is this entirely a backend accounting bug?

Maya

It's mostly a backend reporting issue, but if you're on macOS, there's actually a really clever workaround using the third-party **CodexBar** utility. They just pushed an update with a built-in idle-climb detector. What it does is it actively polls the local file modification times, the mtimes, of your session cache and compares them against your OAuth token status. If it detects the backend is reporting a usage drift while those local mtimes are completely static, it flags the drift and can actually force-refresh your session token to halt the silent accounting drain.

Ethan Park

Huh. That's a remarkably clean way to handle a backend bug from the client side. Polling the local mtimes to prove you're idle, and then cycling the OAuth token to force the backend to reset its session state. I might have to pull down that CodexBar update tonight.

Maya

Yeah, it's a lifesaver if you're constantly hitting those weird, phantom rate limits. Definitely worth installing until the official API endpoint gets sorted out.

Ethan Park

For sure. Alright, I'm going to go apply that terminal fix to my config. Good chatting, talk soon.

Maya

Sounds good, catch you later.