Conversation
…s the firing The live firing scenario pressed ctrl+t while Home still selected the settled reminder exchange. That chord acts only on a conversation row, so the test stayed on Home and reported a delivered `said:` row as missing (#1344). The scenario now walks onto the existing conversation, opens it, and proves the transition before the standing pass. Two focused tests pin the boundaries the report implicated: a real session agent over the loopback wire delivers one standing update to the client lane, and the drawn `said:` row survives the reply its wake produces. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
santoshkumarradha
added a commit
that referenced
this pull request
Sep 23, 2026
TestAStandingFiringReachesTheHostedConversation (from dev's #1377) opened the lane through WatchTaskUpdates, whose ask is made off the loop, and then repeated the ask synchronously as its receipt. When the door's own ask reached the engine after the firing, it replaced the far subscription the firing had gone down and the row was lost. Under parallel load this failed on dev and on this branch alike. The test now installs the client lane and makes the one ask itself, answered before the firing.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #1344 — which turned out not to be a product defect: the firing row is drawn.
What was true
TestTUIE2E/the_firing_reaches_the_personwent red on 17ae56d withDEFECT: the firing reached the conversation but was never DRAWN in it.#1071 had changed the scenario's way back into the conversation from Escape toctrl+t, but at that moment Home's keyboard is on the settled reminder exchange row, andctrl+tacts only on a conversation row, so the chord was a silent no-op and the test polled Home for a row that was drawn in the conversation. The journal, the model's answer and the row were all in place.What is true now
The scenario walks Up onto the already-open conversation, presses Enter, and waits for that conversation's own footer before the standing pass. Two focused tests pin the boundaries the report implicated so this cannot hide again: a real
session.Agentover the loopback wire delivers exactly one standing update to the client's task lane (internal/remote/tasklane_test.go), and the drawn· said:row survives the reply its wake produces, once and once only (internal/tui3/standing_test.go). No product line changed.Verified
the firing is drawn in the conversationwithremind me in 1 minute to · said: Time to drink wateron the open conversation; the closed-window drain and home'ssince you leftstay green.ctrl+ton Home does nothing, silently, when the selection is an exchange row.🤖 Generated with Claude Code