···4141 }
42424343 // return whatever we last recorded; if we haven't synced at all yet, we have nothing to give
4444- let (Some(data), Some(rev_db)) = (state.data, state.rev) else {
4444+ let Some(commit) = state.root else {
4545 return Err(XrpcErrorResponse {
4646 status: StatusCode::NOT_FOUND,
4747 error: XrpcError::Xrpc(GetLatestCommitError::RepoNotFound(Some(CowStr::Borrowed(
···5151 };
52525353 Ok(Json(GetLatestCommitOutput {
5454- cid: Cid::from(data),
5555- rev: rev_db.to_tid(),
5454+ cid: Cid::from(commit.data),
5555+ rev: commit.rev.to_tid(),
5656 extra_data: None,
5757 }))
5858}
+1-1
src/api/xrpc/get_repo_status.rs
···3232 let (active, status) = repo_status_to_api(state.status);
33333434 // rev is only meaningful when the repo is active and has been synced at least once
3535- let rev = active.then(|| state.rev.map(|r| r.to_tid())).flatten();
3535+ let rev = active.then(|| state.root.map(|c| c.rev.to_tid())).flatten();
36363737 Ok(Json(GetRepoStatusOutput {
3838 active,
+3-3
src/api/xrpc/list_repos.rs
···3434 let (did, state) = item?;
35353636 // skip repos that haven't been synced at least once
3737- let (Some(data), Some(rev_db)) = (state.data, state.rev) else {
3737+ let Some(commit) = state.root else {
3838 continue;
3939 };
4040···4242 repos.push(Repo {
4343 active: Some(active),
4444 did: did.clone(),
4545- head: Cid::from(data),
4646- rev: rev_db.to_tid(),
4545+ head: Cid::from(commit.data),
4646+ rev: commit.rev.to_tid(),
4747 status,
4848 extra_data: None,
4949 });