vole
Clone
Read only, no credentials:
https://rodent.software/vole.git
Write over SSH with a registered key:
git clone ssh://git@rodent.software:2222/vole.git
A free and open-source forge that lives in your Git repo.
Releases: a tag and a pointer; the tarball is generated, not stored
f76c635b898957a8ce1b5267a21fe887f8234a13 · Keenan Nemetz · 18d ago · parent ada367f1
Releases: a tag and a pointer; the tarball is generated, not stored Writes the release/artifact design into Phase 7 as three slices, with the spike's numbers behind each decision: - a release is an annotated tag plus releases/<tag>.json on refs/heads/vole - an artifact is a literal LFS pointer blob, so the existing sweep marks it (gc parses pointers and walks every ref) and pre-receive already checks its oid and size; a JSON list of sha256 strings would be swept as garbage - source archives are streamed per request: plain tar by default, compression a request option, semaphore only for compressed formats - slice 4 makes published releases immutable at the gate, because a download link that can change bytes is worse than no link Adds one Phase 7 exit criterion, marked unmet because nothing is built, and moves releases out of the README's implicit promises into "Not yet".
README.md +2−1
| @@ -60,7 +60,8 @@ Working today: | |||
| 60 | 60 | - An instance ed25519 key generated at first boot (used for metadata signing in | |
| 61 | 61 | Phase 7) | |
| 62 | 62 | ||
| 63 | Not yet: workflow artifact uploads, LFS locking. Signature verification is deferred, | ||
| 63 | Not yet: releases and release artifacts, workflow artifact uploads, LFS locking. | ||
| 64 | Signature verification is deferred, | ||
| 64 | 65 | not planned: the SSH handshake already establishes who pushed, so signing approvals | |
| 65 | 66 | would restate it for a verifier this deployment does not have (see the roadmap). | |
| 66 | 67 | ||