diff --git a/packages/ai/test/remote-auth-store.test.ts b/packages/ai/test/remote-auth-store.test.ts index 56b203664..d730efce7 100644 --- a/packages/ai/test/remote-auth-store.test.ts +++ b/packages/ai/test/remote-auth-store.test.ts @@ -1110,7 +1110,7 @@ describe("RemoteAuthCredentialStore + AuthStorage integration", () => { test("broker invalidation drops server-side last-good usage reports", async () => { const credential = serverStore!.listAuthCredentials("anthropic")[0]; - if (!credential || credential.credential.type !== "oauth") throw new Error("expected OAuth credential"); + if (credential?.credential.type !== "oauth") throw new Error("expected OAuth credential"); serverStore!.updateAuthCredential(credential.id, { ...credential.credential, expires: Date.now() + 3_600_000, diff --git a/packages/coding-agent/CHANGELOG.md b/packages/coding-agent/CHANGELOG.md index 6f6108547..4f1257b04 100644 --- a/packages/coding-agent/CHANGELOG.md +++ b/packages/coding-agent/CHANGELOG.md @@ -2,6 +2,10 @@ ## [Unreleased] +### Fixed + +- Fixed the `/hotkeys` table describing Ctrl+D (`app.exit`) as "Exit (when editor is empty)" when it actually exits unconditionally and saves the current prompt as a resumable draft ([#8530](https://github.com/can1357/oh-my-pi/issues/8530)). + ## [17.3.3] - 2026-08-14 ### Fixed diff --git a/packages/coding-agent/src/modes/utils/hotkeys-markdown.ts b/packages/coding-agent/src/modes/utils/hotkeys-markdown.ts index ed8bb035e..c16270ad9 100644 --- a/packages/coding-agent/src/modes/utils/hotkeys-markdown.ts +++ b/packages/coding-agent/src/modes/utils/hotkeys-markdown.ts @@ -39,7 +39,7 @@ export function buildHotkeysMarkdown(bindings: HotkeysMarkdownBindings): string "| `Tab` | Path completion / accept autocomplete |", `| \`${appKey(bindings, "app.interrupt")}\` | Cancel autocomplete / interrupt active work |`, `| \`${appKey(bindings, "app.clear")}\` | Clear editor (first) / exit (second) |`, - `| \`${appKey(bindings, "app.exit")}\` | Exit (when editor is empty) |`, + `| \`${appKey(bindings, "app.exit")}\` | Exit (saves current prompt as draft) |`, `| \`${appKey(bindings, "app.suspend")}\` | Suspend to background |`, `| \`${appKey(bindings, "app.display.reset")}\` | Reset terminal display |`, `| \`${appKey(bindings, "app.thinking.cycle")}\` | Cycle thinking level |`,