Sign in

Search issue titles and bodies, change requests and comments. Private repositories you cannot read are not included.

vole
Clone

Read only, no credentials:

https://rodent.software/git/vole.git

Write over SSH with a registered key:

git clone ssh://git@0.0.0.0:2222/vole.git

A free and open-source forge that lives in your Git repo.

README.md

History on main · 65 commit(s)

75708127 update readme and agents Keenan Nemetz 2d ago
e73d453f Rewrite the README around the new tagline Keenan Nemetz 2d ago
b8e7a567 Document deploying to a server, one guide per path Keenan Nemetz 3d ago
41dd571f Ask the build for FTS5 Keenan Nemetz 9d ago
95425af7 Link SQLite dynamically through cgo Keenan Nemetz 10d ago
b312e166 Store CI run records in the database, not the repository Keenan Nemetz 10d ago
e698b495 Add CONTRIBUTING guide and simplify agent instructions Keenan Nemetz 13d ago
22db80e2 Add agent workflow guide for Vole Keenan Nemetz 13d ago
2e024cc9 Unify account terminology and clarify ACL commands Keenan Nemetz 14d ago
ab326d3a Unify terminology across the web UI and docs Keenan Nemetz 14d ago
5b814e99 Add instance-wide roles and refine access UI Keenan Nemetz 14d ago
642e5994 Add automatic HTTPS with ACME Keenan Nemetz 14d ago
91e6a33a Name the CI workflow and image for what they do Keenan Nemetz 14d ago
3b39a84c Add packaging, a CI workflow, and containerised local runs Keenan Nemetz 14d ago
30a72490 Add the Apache License 2.0 Keenan Nemetz 14d ago
70b70264 Require an image for every CI job Keenan Nemetz 15d ago
f920a9f1 Allow opt-in open registration Keenan Nemetz 15d ago
6c84d387 Add browser auth, contributor access, and gated CI Keenan Nemetz 15d ago
c36d5073 Create accounts with a key and find the instance config Keenan Nemetz 15d ago
3abbe749 Add remote administration and local workflow runs Keenan Nemetz 16d ago
520470e1 Docs: rewrite the README and organize the guides Keenan Nemetz 16d ago
c5902451 refactor Keenan Nemetz 16d ago
f50f6fab One trust model: attribution at the boundary, and a log of what it decided Keenan Nemetz 16d ago
65b88b3b Phase 5: an object is served only through a repository that holds it Keenan Nemetz 16d ago
bf1e027c Phase 5: file locking, for the repositories git cannot merge Keenan Nemetz 16d ago
6c03e461 Phase 4: a job can name the machine it needs Keenan Nemetz 16d ago
d798eaac Phase 4: record the queue's new shape, and let the pins be tested while running Keenan Nemetz 16d ago
ec5c519c Phase 4: access rules live in the instance database Keenan Nemetz 16d ago
90fdaf39 Phase 4: the runner publishes its result as a signed commit Keenan Nemetz 16d ago
96cbb6fa Use flags for acl runner edits, not signs Keenan Nemetz 16d ago
852c067d Phase 4: only allowed runners green-light a branch Keenan Nemetz 16d ago
5d6db024 Delete the instance signing key Keenan Nemetz 16d ago
22528ac3 Phase 4: the runner signs the result it reports Keenan Nemetz 16d ago
86fe5bb4 Phase 4: the runner uploads the log, so the server cannot write it Keenan Nemetz 16d ago
9cc2f087 Phase 3: a review comment points at a line, and stays glued to it Keenan Nemetz 16d ago
7c6e52e7 Phase 3: a change request can be discussed Keenan Nemetz 17d ago
3c5d11fa Phase 3: a request says whether it would actually land Keenan Nemetz 17d ago
a63475ce Phase 7: the CLI knows who you are and where you wrote it Keenan Nemetz 17d ago
79c88d72 Phase 2: a comment is editable, by the person who wrote it Keenan Nemetz 17d ago
67dd8854 Phase 2: an assignee is a person you can click Keenan Nemetz 17d ago
307cbc2a Issues and requests are frontmatter, not JSON Keenan Nemetz 17d ago
427c4761 The roster is a database, not a repository Keenan Nemetz 17d ago
0f442b1c Phase 7 slice 8: a tag push builds the release Keenan Nemetz 17d ago
88e980b0 Phase 7 slice 7: the build deploys the site Keenan Nemetz 17d ago
213f4d6d Phase 7 slice 6: a job declares its outputs, the runner publishes them Keenan Nemetz 17d ago
4c0f2aef Phase 7 slice 5: pages are a build directory you can publish Keenan Nemetz 17d ago
948a6d7d Phase 7 slice 4: a published release cannot change under its link Keenan Nemetz 17d ago
85cc89fe Phase 7 slice 3: artifacts attach over SSH and are one pointer deep Keenan Nemetz 17d ago
c56911e2 Phase 7 slice 2: a release is a tag the web can read Keenan Nemetz 17d ago
f76c635b Releases: a tag and a pointer; the tarball is generated, not stored Keenan Nemetz 17d ago
78912785 Phase 7 slice 1: review on the web, so approving does not start with a clone Keenan Nemetz 17d ago
9bea7f11 Phase 6 is done: sites ride the instance's domain, TLS stays in front Keenan Nemetz 17d ago
d3296cda Phase 6 slice 1: the tree is the site Keenan Nemetz 17d ago
64ac5071 Phase 5: LFS objects, over SSH for writes and the proxy for reads Keenan Nemetz 17d ago
36293228 Close the approval-forgery hole: check every write, not just additions Keenan Nemetz 17d ago
1eeca4e6 Phase 3: change requests, with approvals bound to the commit they reviewed Keenan Nemetz 17d ago
92b37587 One metadata branch: refs/heads/vole, linear history, audited rewrites Keenan Nemetz 17d ago
f9568748 Make the CLI speak git's dialect Keenan Nemetz 17d ago
c1e3e3ca Phase 2: issue CLI, cross-references, backlinks, filter and search Keenan Nemetz 17d ago
37c01e5a Phase 2, first slice: issues as files on a branch Keenan Nemetz 17d ago
197ecaa2 Replace the git-backed roster with a trusted keys directory Keenan Nemetz 17d ago
a5f19b3c Move writes to SSH, drop web authentication, keep identity in git Keenan Nemetz 17d ago
653e0cfc Phase 1: a working git remote with access control Keenan Nemetz 17d ago
17311880 Add phased implementation roadmap Keenan Nemetz 18d ago
e4a9dc50 Initial commit Keenan Nemetz 18d ago