fix(electrobun): address all 20 Codex review findings
CRITICAL: - PTY leak: Terminal.svelte now calls pty.close on destroy, not just unsubscribe - Agent session cleanup: clearSession() removes done/error sessions, backend deletes after 60s grace period HIGH: - Clone branch passthrough: user's branch name flows through callback - Circular imports: extracted rpc.ts singleton, broke main.ts ↔ App.svelte cycle - Settings wired to runtime: Terminal reads cursor/scrollback from settings - Security disclaimer: added "prototype — not system keyring" notice - ThemeEditor: fixed basePalette → initialPalette reference MEDIUM: - Clone race: UUID suffix instead of count-based index - Silent failures: structured error returns from PTY handlers - WebKitGTK mount: only current + previous group mounted - Debug listeners: gated behind DEBUG, cleanup on destroy - NDJSON residual buffer parsed on process exit - Codex adapter: deduplicated tool_call/tool_result - extraEnv: rejects CLAUDE*/CODEX*/OLLAMA* keys - settings-db: runMigrations() with version tracking - active_group: persisted via settings.set LOW: - Removed dead demo code, unused variables - color-mix() fallbacks added
This commit is contained in:
parent
ef0183de7f
commit
29a3370e79
18 changed files with 331 additions and 114 deletions
|
|
@ -4,6 +4,7 @@ import App from "./App.svelte";
|
|||
import { mount } from "svelte";
|
||||
import { Electroview } from "electrobun/view";
|
||||
import type { PtyRPCSchema } from "../shared/pty-rpc-schema.ts";
|
||||
import { setAppRpc } from "./rpc.ts";
|
||||
|
||||
/**
|
||||
* Set up Electroview RPC.
|
||||
|
|
@ -31,9 +32,12 @@ const rpc = Electroview.defineRPC<PtyRPCSchema>({
|
|||
},
|
||||
});
|
||||
|
||||
// Register the RPC singleton so all modules can import from rpc.ts
|
||||
setAppRpc(rpc);
|
||||
|
||||
export const electrobun = new Electroview({ rpc });
|
||||
|
||||
/** Exported for use by stores that need RPC access (theme-store, font-store). */
|
||||
/** @deprecated Import from './rpc.ts' instead. */
|
||||
export { rpc as appRpc };
|
||||
|
||||
const app = mount(App, {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue