Repository navigation
Commit ab9855c
authored
Open a conversation at the bottom, keep it still while a Bot writes, and add a rail of turns (#882)
* Show a channel's history once it is all in, already at the bottom
* Wait for a channel's voice chats before showing its history
* Open a conversation without a cascade; animate only what arrives
* Glide only for messages sent after a conversation is open
* Open group chats at the bottom and follow only from there
* Show a new conversation's first message without waiting for voice chats
* Show a message typed while history loads under the placeholder
* Bring a person's own group message into view even when scrolled up
* Render a conversation's newest rows in with a short stagger as it opens
* Pass the opening stagger delay as a variable so reduced motion can drop it
* Keep a tool row and its key for its whole life as calls join and leave it
A lone foldable call is now a group of one under a group: key and is drawn as the same line it was. Existing grouping tests that asserted a lone call's own id or an unprefixed group id now assert the group: id.
* Draw gallery cards once and wait for grants instead of refusing
* Let a card that failed on half-sent arguments try again on the next chunk
* Keep gallery items in place while their labels stream, and hold a place for missing numbers
* Hold back a half-arrived number, link or colour until it is complete
* Keep a lone tool call's row when its answer turns it into a card
* Register decisions with one render so they are not rebuilt as grants load
* Draw a streaming table's complete rows while its last row is still arriving
* Draw a conversation's newest rows first and older ones as the reader scrolls up
* Decide whether to follow a reply from what the person does, not from where the view is
* Follow a streaming reply until the person scrolls up or selects text, and pick it up again when they come back
* Draw one older page per frame, after the scroller has put the reader back
* Don't stop following for keys typed into a field inside the transcript
* Count an upward scroll as the person's only when they are dragging the scrollbar
* Say which case drawing pages above does not cover
* Reveal a streaming reply at a steady pace and draw history as finished text
* Keep finished rows from re-rendering while a reply streams
* Draw generative UI that arrived before its renderer once the renderer is there
* Note the conversation polish in the changelog
* Redraw a running tool row as its arguments stream in
* Show a reply's last word once it stops growing, and text with no spaces as it streams
* Let a jump draw every page down to a turn and stop following
* Add a rail of turns beside a conversation, with a preview and a jump
* Mark the last turn as current at the end of a conversation, however short it is
* Hold back a card's last value only while its row can still receive arguments
* Hold the page boundary on rows, so rows added above never cross it
* Put the scroller back to following when somebody scrolls down at the end
* Count a press on an overlay or left-hand scrollbar as the person's
* Keep following when a jump from the rail leaves the view at the end
* Pick following up on a person's first message in a channel of firings
* Show a channel's history without its voice chats when they are slow or fail
* Draw nothing for a card that fails on arguments still arriving
* Keep the rail and its marks still while a reply streams, and read the current turn once a frame
* Listen for late activity renderers once per transcript, and look again for a few frames
* Remove a decision's renderer when it unmounts, as the SDK's own hook does
* Fix three stale comments and draw both kinds of tool row from one branch
* Keep one reveal loop across tokens, so each frame counts the time since the last frame
* Show a decision's failure while the run waits on it: a call is final once its arguments are complete
* Put two doc comments back above what they describe
* Draw a late voice chat from before the conversation opened at rest1 parent 9d80da0 commit ab9855c
51 files changed
Lines changed: 5741 additions & 471 deletions
File tree
- app
- src
- components
- channels
- gallery
- lib
- copilot
- voice
- tests
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
122 | 122 | | |
123 | 123 | | |
124 | 124 | | |
| 125 | + | |
| 126 | + | |
| 127 | + | |
| 128 | + | |
| 129 | + | |
| 130 | + | |
| 131 | + | |
| 132 | + | |
| 133 | + | |
| 134 | + | |
| 135 | + | |
125 | 136 | | |
126 | 137 | | |
127 | 138 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
91 | 91 | | |
92 | 92 | | |
93 | 93 | | |
| 94 | + | |
| 95 | + | |
| 96 | + | |
| 97 | + | |
| 98 | + | |
| 99 | + | |
| 100 | + | |
| 101 | + | |
| 102 | + | |
| 103 | + | |
| 104 | + | |
| 105 | + | |
| 106 | + | |
| 107 | + | |
| 108 | + | |
| 109 | + | |
| 110 | + | |
| 111 | + | |
| 112 | + | |
| 113 | + | |
| 114 | + | |
| 115 | + | |
| 116 | + | |
| 117 | + | |
| 118 | + | |
| 119 | + | |
| 120 | + | |
| 121 | + | |
| 122 | + | |
| 123 | + | |
| 124 | + | |
| 125 | + | |
| 126 | + | |
| 127 | + | |
| 128 | + | |
| 129 | + | |
| 130 | + | |
| 131 | + | |
| 132 | + | |
| 133 | + | |
| 134 | + | |
| 135 | + | |
94 | 136 | | |
95 | 137 | | |
96 | 138 | | |
| |||
549 | 591 | | |
550 | 592 | | |
551 | 593 | | |
552 | | - | |
| 594 | + | |
| 595 | + | |
| 596 | + | |
| 597 | + | |
| 598 | + | |
| 599 | + | |
| 600 | + | |
| 601 | + | |
| 602 | + | |
| 603 | + | |
| 604 | + | |
553 | 605 | | |
| 606 | + | |
| 607 | + | |
| 608 | + | |
| 609 | + | |
| 610 | + | |
| 611 | + | |
554 | 612 | | |
555 | 613 | | |
556 | 614 | | |
| |||
1091 | 1149 | | |
1092 | 1150 | | |
1093 | 1151 | | |
1094 | | - | |
| 1152 | + | |
1095 | 1153 | | |
1096 | 1154 | | |
1097 | 1155 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
320 | 320 | | |
321 | 321 | | |
322 | 322 | | |
323 | | - | |
324 | | - | |
| 323 | + | |
325 | 324 | | |
326 | 325 | | |
327 | 326 | | |
| |||
419 | 418 | | |
420 | 419 | | |
421 | 420 | | |
422 | | - | |
| 421 | + | |
| 422 | + | |
| 423 | + | |
| 424 | + | |
| 425 | + | |
| 426 | + | |
423 | 427 | | |
424 | 428 | | |
425 | 429 | | |
| |||
0 commit comments