Commit Graph
8 Commits
Author SHA1 Message Date
can1357 3829bff31a Merge PR #4637: feat(notifications): add error turn notifications (@Mathews-Tom)
# Conflicts:
#	packages/coding-agent/src/modes/controllers/event-controller.ts
#	packages/coding-agent/src/prompts/tools/eval.md
#	packages/coding-agent/src/session/agent-session.ts
#	packages/coding-agent/src/task/index.ts
2026-07-23 17:49:06 +02:00
can1357 58a2acd330 test(coding-agent): align ctx fixtures with settled-component cache and todo commit-on-execute
- Added transcriptMessageComponents to every InteractiveMode ctx test literal; #6033's reuse cache made the field required and addMessageToChat populates it unconditionally.
- Wired setTodoPhases into the eager-todo ToolSession fixture to mirror sdk.ts; the test relied on the stale message_end todo replay #6148 removed.
2026-07-22 21:32:12 +02:00
Mathews-Tom 37cc50f2a2 Merge remote-tracking branch 'upstream/main' into feat/error-notify 2026-07-14 05:18:35 +05:30
Mathews-Tom 7a2944ded7 test(coding-agent): init global Settings before renderInitialMessages calls
UiHelpers.renderInitialMessages() reads the module-level settings
singleton (display.collapseCompacted) added upstream. Tests exercising
it directly must call Settings.init() first or they fail with
"Settings not initialized" whenever no earlier test in the same
process happened to initialize it, which is bucket-order-dependent and
flaky.
2026-07-14 03:56:40 +05:30
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