anvilsign in

collin/anvil · 89e731e4

docs: refresh TODO — artifact system sketch, branch/commit browsing question

Collin Richards · 2026-06-10 08:12 UTC · 89e731e4ddbb18faad73f7740967fd252af8739b · parent 28c75bf1 · browse files

modifiedTODO.md+18 −10
11 # Misc TODO
22
3-- [x] should show subject line of latest commit in repo page view
4- - we should mirror certain things like this from github ui
5-- [x] don't expose a users email on their profile page
6-- [x] don't include anvil before the breadcrumbs in the repo name i.e. anvil/collin/repo just do collin/repo
7-- [x] implement github action style CI feature _(done, including the (c) sandboxed broker — see "Session notes")_
8- - I want to get this to a sufficient state that we could bootstrap this app using this CI and automate deployments if we wished
9- - probably might want to have other isolated anvil workers or something running for CI jobs
10-- [x] implement github pages style hosting feature _(serves from a repo's `pages` branch; each top-level dir is its own site, so rustdoc + others coexist)_
11- - should support multiple generated build pages such as one for rustdoc, and one for other rhings
12-- [x] security audit _(threat model + recommendations recorded in `docs/untrusted-mode.md`; CI sandbox landed. The remaining hardening it lists — quotas, separate pages origin, open-registration anti-abuse — only matters for untrusted tenants, which stay unsupported.)_
3+- [ ] do we have a way to view the source in a repo by branch or at a given commit?
4+- [ ] design a CI artifact system, keyed by commit
5+ - every push triggers CI on the tip commit (already true); a run should be
6+ able to produce artifacts
7+ - artifacts are stored per-commit and served from anvil (download from the
8+ run page / commit page; latest-on-branch alias would be nice)
9+ - jobs can declare how to extract metadata from artifacts (e.g. sizes,
10+ test/coverage numbers, version strings) so it can be surfaced in the UI
11+ next to the run/commit
12+ - sketch needed: where artifacts live on disk, retention/GC, how
13+ `.anvil/ci.yml` declares artifact paths + metadata extractors, and how
14+ the broker gets files out of the sandboxed container
15+- [ ] repo mirroring to/from GitHub
16+ - push mirror: pushes to an anvil repo get forwarded to a configured
17+ GitHub remote
18+ - pull mirror (maybe): a repo that virtually mirrors a GitHub repo and
19+ just displays it here — periodically fetched, read-only on the anvil
20+ side
1321
1422 ---
1523
⋯ 137 unchanged lines