Replies: 2 comments
|
I've also hit this problem. This can pollute agent context when told to audit things @Bil0000 @juliusmarminge |
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Current behaviour
Every turn writes a snapshot commit and a ref named
refs/t3/checkpoints/<base64 thread id>/turn/<n>. The refs are neverremoved. Deleting or archiving a thread leaves its refs in place, and I
found no setting to turn checkpointing off.
In one repository, nine days of use produced 257 checkpoint refs across
16 threads. Most of those threads are finished and their branches are
merged and deleted.
Why it matters
The refs sit outside
refs/heads, sogit branchdoes not list them andthey are never pushed. Git GUIs are a different story. TortoiseGit's
revision graph walks every ref and shows each checkpoint as a labelled
node, and its log dialog shows them in "All refs" mode. After a few
weeks the graph is unreadable. Other tools that draw all refs will behave
the same way.
There is also a robustness angle: #10905 reports zero-byte checkpoint
ref files after an unclean restart. The more refs there are, the larger
that surface.
Today the only workaround is a manual
git update-ref -dloop overrefs/t3/checkpoints, which also discards the revert history of threadsstill in use.
Proposal
Any of these would solve it, in order of preference:
optionally when it is archived.
"prune now" action in the project settings.
never use turn revert.
Related
growth" asks for the same kind of retention for the local database.
revival stays possible. A thread-deletion hook would not conflict with
that, since a deleted thread has nothing left to revive.
Observed on T3 Code 0.0.42 on Windows 11 with TortoiseGit 2.19.1.
All reactions