Repository navigation
Conversation
…t contract Both failed on main before #66 (abc4040) and after it (45b773e); the server source did not change between those commits. CI does not run this file, so neither failure showed. - "a background timeline listener…" called `DaemonClient.setAgentTimelineSubscription`, which was removed in 6f21959 (2026-09-11) before this case was added (b424206). The viewer now sends the same legacy set_subscription frame through the file's existing `setLegacyTimelineMembership`. The case still asserts that a viewer keeps the agent resident and a background listener does not. - "plugin items are gated…": since 6d1329e an older client's subagent timeline fetch replaces each item it cannot render with an upgrade line, so the rows and window still match. The case now expects that line and asserts that none of the plugin's data is sent. Mutations: forcing keepsAgentsResident off, or leaking the item into the upgrade line, makes these cases fail.
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.
Linked issue
None. Two selective-timeline e2e cases fail on main; another lane reconfirmed this on 45b773e.
Type of change
Reasoning
packages/server/src/server/selective-timeline-delivery.e2e.test.tshas two cases that fail on main both before #66 (abc4040) and after it (45b773e). Between those two commits the server, client and protocol sources are identical; #66 only appended one case to this file. CI does not run this file:test:unitexcludes*.e2e.test.ts, andtest:integrationdoes not list it. That is why neither failure was visible.DaemonClient.setAgentTimelineSubscription. That method was removed in 6f21959 (2026-09-11) before this case was added in b424206 (2026-09-23), so the case never ran. The viewer now sends the same legacyset_subscriptionframe through the file's existingsetLegacyTimelineMembership. The case still checks what it was written to check: a viewer keeps the agent resident, and a background listener does not.session.tslegacySubagentTimelineItem). The case expected the item to be dropped. It now expects the upgrade line and also asserts that none of the plugin's data reaches the older client.Impact assessment
plugin_timeline_itemsare affected; current Clisbot apps declare it.QA
session.ts(restored afterwards):keepsAgentsResidentto false fails the first case;Checklist
npm run typecheckpassesnpm run lintpassesnpm run formatpasses