- [x] Tests: unit tests per module and an end-to-end test that pushes with a real `oxy-core` client and fetches every page.
16
- [x] Oxygen changes it needed (in the Oxygen plan, phase 4): bare repositories, embeddable server, unbound repositories, adoption of anonymous changes by seals, `oxy seal`.
17
- [ ] Developer edition running on Earth with `oxygen`, `oxygen-vscode` and `oxygenhub` hosted (docs/deploy.md).
18
19
##0.2 Accounts and access
20
21
-[ ] Registration, sessions, TOTP, profile, organisations, teams, roles, visibility enforcement by viewer, personal access tokens with scopes, linked identities with challenge signing (`oxy identity sign-challenge`), audit log, settings pages, pushes attributed to keys.
22
23
##Later
24
25
-0.3 proposals and review · 0.4 issues and notifications · 0.5 API, webhooks, checks · 0.6 web edits, releases, mirror · 0.7 runner · 1.0 hardening.
26
27
##Notes
28
29
-State caching (spec §16.3) is not started: pages load the state they need per request; the overview loads it once and reuses it. Measured on the `oxygen` repository (88 changes): overview ~0.5 s, tree ~0.14 s, history ~0.13 s, a 2 000-line file ~0.7 s. A per-heads cache is the first performance item for 0.2.
30
-`State` holds `Rc` values, so a cross-thread cache needs a `Send` snapshot type in `oxy-core` first.