Backlog: V2 done 59171dcff221 resolution
- Author
- Andy McCall @andymccall <[email protected]>
- When
- · 2026-09-28 05:47 UTC
- Signature
- ✔ signed by Andy McCall
- Hash
59171dcff221179761d3e4fbeaa1c398cbfa253be6b27f76f3dadd84f6d5cf45- Depends on
- 13a0f400dff9 1d360c91a289 75036530b621 b38ece2cb6b5
- Depended on by
- 978470f76e66 b8a0399319fc 07eb99be126e
- In bookmarks
- agents-in-readme bare-hashes carried-not-removed carry-identical doctor-trust identical-sides keyless-tags main merge-remote-bookmark only-help-103 paths-for-resolutions-and-amend push-notes show-stat subrepo-pin-state switch-says
- In tags
- v0.1.0 v0.10.0 v0.11.0 v0.2.0 v0.3.0 v0.3.1 v0.4.0 v0.4.1 v0.4.2 v0.4.3 v0.4.4 v0.4.5 v0.4.6 v0.5.0 v0.5.1 v0.6.0 v0.7.0 v0.8.0 v0.9.0
- Edits
- 5 atoms, 0 tree operations, 1 file
Browse the tree at this change
modified docs/backlog-overnight-2.md +3 −2
| … | 28 unchanged lines |
||
| 29 | 29 | ## VS Code (oxygen-vscode, oxygenhub-vscode) |
|
| 30 | 30 | ||
| 31 | 31 | - [x] V1 oxygenhub-vscode: proposal files in native diff editors (target state against projected state through a content provider), with review threads in them. |
|
| 32 | - | - [ ] V2 oxygenhub-vscode: notifications count in the status bar and an inbox quick pick that opens the item. |
|
| 32 | + | - [x] V2 oxygenhub-vscode: notifications count in the status bar and an inbox quick pick that opens the item. |
|
| 33 | 33 | - [ ] V3 oxygenhub-vscode: completion of `#N` and `@user` in the Oxygen commit box and in comments; hover on `#N` shows the title. |
|
| 34 | 34 | - [ ] V4 oxygenhub-vscode: create an issue from the editor selection or a TODO line, with a permalink. |
|
| 35 | 35 | - [ ] V5 oxygenhub-vscode: releases view; draft a release from a tag. |
|
| … | 8 unchanged lines |
||
| 44 | 44 | - [x] O2 `oxy fsck`: verify every object's hash, every change's references and signatures, the op log chain, and report precisely. |
|
| 45 | 45 | - [x] O3 Crash safety audit: every write goes through write_atomic or the store's batch; a test that interrupts commit and push at each step and proves the repository still opens and fscks. |
|
| 46 | 46 | - [x] O4 Benchmarks with thresholds: 10 000 files, 5 000 changes; status, commit, log, blame, push, clone; record numbers in docs. |
|
| 47 | - | <<<<<<< oxy conflict 1 of 1, side 1 of 2: deleted by change 223f1dc6 "Backlog: O4 done, O10 added" |
|
| 47 | + | - [ ] O10 Snapshot fast path (found by O4; do next on the oxy track): at 10 000 files and 5 000 changes a commit takes 3.8 s and a clean status 3.0 s, because every snapshot loads and materializes the whole base state (about 75 ms load, 75 ms materialize, 50 ms walk at 4 000 files). Skip load and materialize when every file's stat matches a manifest written for the same base; make the base state lazy for callers that need it; cache the materialized snapshot per state. Target the spec §25 numbers. |
|
| 48 | 48 | ------- |
|
| 49 | 49 | - [ ] O4 Benchmarks with thresholds: 10 000 files, 5 000 changes; status, commit, log, blame, push, clone; record numbers in docs. |
|
| 50 | 50 | ======= oxy conflict 1 of 1, side 2 of 2: change 7b93639c "Benchmark harness and first numbers" |
|
| … | 10 unchanged lines |
||
| 61 | 61 | - 2026-09-28 H1 done: signed-in dashboard at `/` (review queue, own proposals, assigned issues, repositories, activity feed filtered to visible repositories); test `dashboard_shows_what_needs_the_viewer`; deployed to Earth. |
|
| 62 | 62 | - 2026-09-28 O1 done: `crates/oxy-core/tests/commutativity.rs` (proptest, 32 cases): diverging clones with random edits, rebuilt in shuffled and random dependency orders, checkpoint round trip, and push in random order to a fresh clone; all give identical checkpoints, heads and trees. About 80% of generated cases conflict. No defects found. Workspace tests all green (oxy-core 129 + new). |
|
| 63 | 63 | - 2026-09-28 H2 done: empty repositories show a quickstart (remote named after the host, e.g. `earth`; CA download and `remote.X.ca` when self-signed; token placeholder; push; start from nothing; `oxy git import`); readers get a plain notice. Tests: `empty_repository_shows_a_quickstart` and a remote-naming unit test; hub spec §6 row updated; deployed. |
|
| 64 | + | - 2026-09-28 V2 done: hub API `GET /notifications`, `POST /notifications/{id}/read`, `POST /notifications/read` (scope user:read; deployed). oxygenhub-vscode 0.3.0: status-bar bell with unread count across hubs, new-notification messages, Open Inbox quick pick that marks read and opens proposals/issues in the editor. Installed in both profiles (Reload Window). Tests: hub api test extended; extension pass 7 fail 0. |
|
| 64 | 65 | - 2026-09-28 O2 done: `oxy fsck [--json]` (objects, op log through all parents, references and change closure with identities/blobs/chunks/signatures, bookmark states, checkpoints re-derived, ref and tag attestations verified); spec Draft 0.8h §21.1, guide updated. Test `fsck_passes_a_sound_repository_and_names_each_fault` (corrupt object, missing change, missing blob, broken op head). Clean on oxygen, oxygenhub, oxygen-vscode, oxygenhub-vscode, hellooxy. Release binary rebuilt. |
|
| 65 | 66 | - 2026-09-28 V1 done: hub API `GET /proposals/{n}/files` and `/proposals/{n}/content/{base|head}/{path}`, and anchored comments now carry their current `line` (deployed). oxygenhub-vscode 0.2.0: proposals expand to files, native diff editor per file, View Changes multi-diff, review threads on the projected side; installed in Default and Rust profiles (Developer: Reload Window to pick it up). Tests: hub api test extended; extension pass 6 fail 0 against a real hub. |
|
| 66 | 67 | - 2026-09-28 O3 done: new `oxy_core::durable` (unique temp, fsync, rename, directory fsync) for every durable write; **real bug fixed**: inside a write batch the op head moved before the batch (including the new op object) was on disk, so a crash there left an unopenable repository; `Store::flush` now runs before the head moves. Test stops commit (20 steps) and push (32 steps) at every step: both repos open, fsck clean, command retries. Spec §13.6. Hub rebuilt and redeployed with the fix. Not covered: working-copy file writes during checkout are still plain writes (user files, recoverable by snapshot). |
|
| … | 2 unchanged lines |