Repository navigation
Conversation
added 2 commits
October 19, 2026 15:53
Thread an optional branch/uncommitted scope through the batched and per-file Code Collab diff requests. Uncommitted compares HEAD with disk, reports explicit non-Git/unborn states, and never falls back to turn evidence snapshots. The diff header shows the scope and resolved base, gated by the codeCollabAllChangesScope capability. Refs LodyAI#1664 Model: claude-sonnet-5[1m]
liyown
marked this pull request as ready for review
October 19, 2026 08:03
This branch has not been deployed
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.
Related issue
Closes #1664
Problem / pressure
The workspace All Changes diff compared
merge-base(base, HEAD)with disk, sowork that had already been committed on the branch stayed in the diff after a
commit. The UI never named the base, so users could not tell branch-cumulative
changes from edits that were still uncommitted. Deferred files also re-resolved
the base independently, which made a scoped view impossible to keep consistent.
Summary
branch | uncommittedscope to the batched All Changes diffand to the per-file
open-current-diffrequest.uncommittedcomparesHEADwith disk, including staged, unstaged anduntracked non-ignored files.
not_a_git_worktree/no_commitsreasons instead of silently falling backto an untracked-only list.
control is gated by the
codeCollabAllChangesScopeprotocol capability.the file set returned by the selected scope.
Visual explanation
Before / after
HEAD · abcdef1,Branch base · 1234567, orSession changes).HEADsilently listed only untracked files.no_commitsstate.Test plan
pnpm --dir apps/cli exec vitest run— 4392 passed, 4 skipped on the merged base.pnpm --dir packages/components exec vitest run tests/code-collab-session-file-provider-v2.test.ts tests/session-conversation-diff-panel.test.tsx tests/use-session-conversation-diff-data.test.tsx— 41 passed.pnpm --filter @lody/components typecheck,pnpm --filter @lody/shared typecheck,pnpm --filter @lody/loro-streams-rpc typecheck— passed.pnpm --filter lody typecheckfails onorigin/main(796f42c) inapps/cli/src/lib/loro/doc.tsbecause the pinnedloro-repo@0.23.2type has norunLegacy/acquireScopeLegacy. The same failure reproduces on a cleanorigin/maincheckout and is unrelated to this change.pnpm lint:i18n,oxlint,oxfmt --check,pnpm run docs check,pnpm check:code-collab-imports,pnpm check:platform-boundaries— passed.AllChangesScopeSwitchin a browser; the base label changed toHEAD · abcdef1and the file set shrank to the uncommitted entries.tests/boot-shell.test.tsx, reproduced on cleanorigin/mainwith the changes stashed.Context handoff
Original user prompt
Show original prompt
Shared conversation
Status: unavailable
Reason: Claude desktop app (Code tab) — the author reports that surface cannot publish a public conversation link.