# Issue 24083: server checkpoint cleanup evidence

Scope: existing [GitCafe PR #24141](https://git.cafe/pingdotgg/t3code/pull/24141), mirrored as [GitHub PR #24140](https://github.com/pingdotgg/t3code/pull/24140), for [issue #24083](https://github.com/pingdotgg/t3code/issues/24083).

## Source revisions

- Runtime before: main [a46f80ee28](https://github.com/pingdotgg/t3code/commit/a46f80ee28d9b498bb8b407c8b60bd4e93bbe2e3), full SHA `a46f80ee28d9b498bb8b407c8b60bd4e93bbe2e3`.
- Runtime after / tested PR head: [0c13691d9a](https://github.com/pingdotgg/t3code/commit/0c13691d9adaa78cb65a42bcd96c35e64ec7600c), full SHA `0c13691d9adaa78cb65a42bcd96c35e64ec7600c`.
- Supplied PR base: main; merge base [66ee628e08](https://github.com/pingdotgg/t3code/commit/66ee628e0875b2b735b199f42e6151e347833637), full SHA `66ee628e0875b2b735b199f42e6151e347833637`. This differs from the runtime-before main revision.

## Recorded runtime

Lead observations on 2026-10-24, fs-22 Linux x64: real `vp run dev`, Chromium via T3 preview at localhost:7171, server port 15211, worktree `/home/ubuntu/wt/issue-24083`, isolated `.t3` state and disposable Git repository `/tmp/issue-24083-runtime/repo`. Live developer state was not used.

Authenticated browser RPC created a project and `thread:repro24083`, then dispatched a real Codex gpt-6.1-sol turn requesting “Reply OK only. Do not run tools or edit files.” Completion produced two real v2 checkpoint refs. One additional legacy checkpoint ref was deliberately seeded with `git update-ref`; it was synthetic, not provider-created legacy output.

Before: thread deletion succeeded; explicit storage cleanup reported removed=0 kept=0 failed=0, leaving all three refs. After: starting the PR head with `vp run dev --no-seed` against the same state logged cleanup of three refs. Ref enumeration was empty and disposable repository HEAD was unchanged. No repack/GC or manual ref deletion occurred between observations.

- [Before transcript, sanitized](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/d765f799bd3d747a/before-public.txt)
- [After transcript, sanitized](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/52921066b6f655a5/after-public.txt)

These are recorded lead observations, not a newly executed test or fabricated replay. Runtime identifiers are replaced with descriptive placeholders; source revisions remain exact. The numbered before transcript records the RPC sequence; no executable browser driver is supplied because complete wire payloads were not captured.

## Automated regression evidence supplied by lead

- [Green PR-head log: 125 existing tests passed](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/57061b6af8e07fb6/green-pr-head.log).
- [Red regression log](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/33c97bce85188bf7/red-main-storageCleanup.log): replacing only the storageCleanup implementation with main made the existing test fail, observing 11 refs versus 7 expected. This is a controlled implementation swap, not a claim that the full main checkout ran the PR suite.

## Limits and friction

Visual fixture matrix=[]; rows 0/0. Server-only exception was confirmed by the proof auditor (lead-supplied). No render changes, images, or recordings required.

Unverified: reporter's macOS heavy-load multi-minute fetch duration; Claude hook timeout; later integrated-main head. Active-ref retention is covered by automated tests, not this runtime. This evidence packager did not rerun tests or start a server/browser.

FRICTION: switching older PR revisions left workspace dependency links stale. First PR web startup reported missing `@t3tools/source-control-azure-devops/client/definition`; server cleanup still succeeded. Lead stopped the server and successfully ran `vp install` to repair links. This was environment setup, not a checkpoint regression.
