Commit Graph
4 Commits
Author SHA1 Message Date
can1357 c69c048361 ci: stabilized test runs by resetting settings and shrinking UI/TUI chunks
- Initialized in-memory settings in the repro issue test by resetting settings before theme setup.
- Reduced the UI/TUI CI test bucket chunk size from 10 to 5 to avoid cumulative Bun GC heap aborts.
2026-07-13 18:51:34 +02:00
can1357 1936705df8 Merge PR #1956: fix(coding-agent): render extension sendMessage(display:true) once during session_start (@roboomp) 2026-06-21 17:16:27 +02:00
roboomp 7bd123d16a test(coding-agent): used Bun.sleep instead of setTimeout for microtask drain
Conforms to the repo Bun-over-Node guidance in AGENTS.md: 'NEVER use new Promise(r => setTimeout(r, ms))'. Drains the .then(applyCustomMessageDisplay) microtask chain via 'await Bun.sleep(0)' in the issue #1955 regression test.
2026-06-05 19:11:47 +00:00
roboomp e625b9bcab fix(coding-agent): rendered extension sendMessage(display:true) once during session_start
ExtensionUiController.#applyCustomMessageDisplay rebuilt the chat from the freshly-persisted session entry as soon as the extension's session_start handler fired sendMessage({display:true}). main.ts then called mode.renderInitialMessages(undefined, {preserveExistingChat:true}), which snapshotted the chat children, cleared, re-rendered from session entries (adding the same custom message again), and re-appended the snapshot — leaving the message visible twice.

Gate the rebuild on a new InteractiveModeContext.initialChatRendered flag that UiHelpers.renderInitialMessages flips on first run. Before the initial transcript render, applyCustomMessageDisplay skips: renderInitialMessages will pick up the new session entry once. After it, the rebuild runs as today, so post-init extension sends (tool_result, agent_end, …) still surface immediately.

Fixes #1955
2026-06-05 19:08:06 +00:00