Phase 4a hotfix: pin resolves stamped refs #44

Merged
osobh merged 1 commits from phase-4a-pin-versioned into main 2026-07-13 20:59:16 +00:00
+5 -1
View File
@@ -778,7 +778,11 @@ async fn cmd_pin(args: PinArgs) -> Result<()> {
// to pin something that isn't cached yet — otherwise the tag // to pin something that isn't cached yet — otherwise the tag
// would point at a value that no producer ever put there. // would point at a value that no producer ever put there.
let key = *fp.as_bytes(); let key = *fp.as_bytes();
let blob_id = match call_get_ref(&conn, &key).await? { let resolved_v = match call_get_ref_versioned(&conn, &key).await? {
Some(stamped) => Some(stamped.value),
None => call_get_ref(&conn, &key).await?,
};
let blob_id = match resolved_v {
Some(v) => BlobId::from_bytes(v), Some(v) => BlobId::from_bytes(v),
None => { None => {
conn.close(quinn::VarInt::from_u32(0), b"done"); conn.close(quinn::VarInt::from_u32(0), b"done");