Skip to content

git: send the first real state as the WATCH snapshot - #24

Open
mgasner wants to merge 1 commit into
fix/kick-reasonfrom
fix/git-status-snapshot
Open

mgasner wants to merge 1 commit into
fix/kick-reasonfrom
fix/git-status-snapshot

Conversation

@mgasner

@mgasner mgasner commented Sep 28, 2026

Copy link
Copy Markdown

Stacked on #23; the diff shows only this change.

run_git_watch opened every subscription with an empty snapshot. The real state arrived afterwards as a Reset. One-shot yas git status printed that empty snapshot, so it always said clean, while --watch showed the real state.

The server now sends the first real repository state as the WATCH snapshot. One-shot yas git status prints the branch and working-tree status and exits.

Testing

  • New protocol test git_watch_initial_snapshot_carries_worktree_status.
  • cargo test -p yas-server --lib git passes.
  • Checked by hand with a scratch repo.

View in Indent
Tag @indent to continue the conversation here.

run_git_watch opened every subscription with an empty snapshot and only
delivered repository state as a later Reset. One-shot `yas git status`
printed that empty snapshot, so it always said clean. The first native
snapshot now is the initial snapshot.
@github-actions

Copy link
Copy Markdown

Coverage

Crate Lines Functions Regions
alacritty-driver 85.6% (1081/1263) 89.4% (84/94) 89.3% (1746/1955)
browser 25.5% (309/1212) 30.4% (34/112) 27.7% (605/2183)
cli 35.0% (8379/23930) 36.0% (777/2159) 35.7% (12126/33975)
composite-transport 96.3% (526/546) 98.4% (60/61) 96.2% (884/919)
compositor 54.9% (11395/20760) 66.0% (832/1260) 54.7% (15781/28840)
desktop 78.4% (4460/5691) 71.6% (393/549) 75.1% (6211/8267)
edge 62.8% (796/1268) 50.9% (82/161) 57.4% (1033/1799)
fonts 77.3% (1257/1626) 82.7% (129/156) 78.9% (2424/3071)
fssync 84.9% (1590/1872) 84.0% (178/212) 86.1% (2801/3255)
git 70.5% (4468/6334) 68.7% (338/492) 67.3% (6318/9386)
guest 67.3% (6829/10148) 67.0% (488/728) 66.6% (8935/13416)
lsp 78.7% (3573/4542) 80.8% (336/416) 76.7% (5408/7054)
proxy 57.8% (1120/1937) 50.5% (104/206) 59.0% (1749/2965)
runtime-dir 93.6% (117/125) 100.0% (14/14) 94.8% (218/230)
sd-notify 73.9% (68/92) 100.0% (6/6) 83.2% (109/131)
server 69.0% (80220/116186) 70.8% (5745/8115) 66.6% (106107/159270)
ssh 42.6% (270/634) 51.5% (34/66) 42.9% (428/998)
terminal-model 49.9% (314/629) 62.3% (38/61) 50.3% (505/1004)
uplink 94.0% (581/618) 92.6% (50/54) 93.0% (1061/1141)
webrtc-forwarder 33.8% (1337/3961) 42.0% (136/324) 36.2% (2318/6409)
webserver 77.0% (1421/1846) 75.2% (179/238) 80.0% (2453/3067)
website 35.1% (355/1012) 34.4% (53/154) 35.8% (607/1694)
xtask 0.0% (0/5131) 0.0% (0/131) 0.0% (0/9124)
yas 87.8% (26484/30170) 93.2% (2036/2184) 82.7% (41699/50414)
Total 65.0% (156950/241533) 67.5% (12126/17953) 63.2% (221526/350567)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant