Repository navigation
text: every step is reported, with the top, and only one hand's typing joins - #479
Merged
Merged
Conversation
…g joins The text half of plans/SHARED_HISTORY_PLAN.md's step 3. Text reports every step through Host.recordStep, not only while recording, so the host knows who made it (fizzy#474); it encodes the step's effect only while recording, as before. Each step carries the top (the last applied entry), so Undo can name whose step it takes back. History.end takes may_join, which the editor fills from Host.mayMerge on the step on top: an agent's typing never joins the person's run, nor theirs an agent's. Typing also tells the host it edited (documentEdited), as the doc comment always said. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
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.
Part of fizzyedit/plans#14:
plans/SHARED_HISTORY_PLAN.md, step 3 (text's half; pixi's follows in its repo).What changes
Host.recordStep, not only while recording. The host keeps who made each one (sdk: who made each step: Author, act, and the host's author map #474); working alone, it keeps nothing. Encoding a step'seffectstill happens only while the document is recorded, so a document nobody records costs one call per step.top: the last applied entry after it (History.lastApplied), for added, joined, undone and redone alike. The host knows the top step and its author without asking for the line, which Undo's "Undo Claude's …" label (step 5) needs.History.endtakesmay_join. The editor's edit hook fills it fromHost.mayMergeon the step on top. When that step is someone else's, VSCode's grouping rule doesn't get to fold the new keystroke into it: an agent typing doesn't extend the person's step, nor the person an agent's.documentEdited, as its doc comment always said it did. A person's typing runs no command, so it still raises no activity bubble.SDK impact
Verified
may_join = falsestarts a step of its own where VSCode's rule would have joined it. The existing history tests passtrueand behave as before.zig build test: 573/574 (1 skipped).check-tests-reachedpasses.test-integration: 53/53 steps, 556/556 tests. The whole-editor test's check from app: whose frame it is, and bubbles that say who #475, that the tour adds no unattributed step, now covers real steps: the tour's typing and commands are each attributed to the tape. Two warnings print, and both are on unmodifiedmaintoo (a demo replay mismatch and a float position).check-fmt,check-web,test-sdk-version.🤖 Generated with Claude Code