OXYGENHUB

Backlog: F4b done; every repository is built by OxygenFlow on push 3498fb471800

Author
Andy McCall @andymccall <[email protected]>
When
· 2026-09-28 19:47 UTC
Signature
✔ signed by Andy McCall
Hash
3498fb471800c4ae75d9a76cedea289ef4c3db93444ee2099c4804d1ee9f00f1
Depends on
75036530b621 9ce6f08451b1
Depended on by
9a8ede1e609f 9a239f064f76
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
3 atoms, 0 tree operations, 1 file

Browse the tree at this change

modified docs/backlog-overnight-2.md +10 −1
…
59 unchanged lines
60 60
- [x] F2 oxygen pipeline (.flow/pipeline.kdl): fmt, clippy -D warnings, tests, release build; green on a real push.
61 61
- [x] F3 oxygenhub pipeline: needs oxygen alongside (path dependencies), so the job checks out oxygen at a pinned change; fmt, clippy, tests, build.
62 62
- [x] F4a oxygenflow's pipeline gains fmt, clippy and tests, with oxygen as its pinned subrepo; oxygenhub builds against the oxygen that oxygenflow pins (one oxy-core), and claims follow subrepos of subrepos.
63 -
- [ ] F4b Extension pipelines (oxygen-vscode, oxygenhub-vscode): typecheck, bundle, tests and package, offline. Needs the npm packages in the build image, and `oxy` for oxygen-vscode's tests (built in the job from a pinned oxygen). The hub client tests skip without a hub binary.
63 +
- [x] F4b Extension pipelines (oxygen-vscode, oxygenhub-vscode): typecheck, bundle, tests and package, offline. Needs the npm packages in the build image, and `oxy` for oxygen-vscode's tests (built in the job from a pinned oxygen). The hub client tests skip without a hub binary.
64 64
- [ ] F6 Faster runs: the runner takes one job at a time (oxygenhub is about 14.5 min to green, 8.5 of them the release build), so run independent jobs in parallel within the runner's CPU and memory, and reuse a build tree between jobs of one run (clippy, test and build compile the same crates).
65 65
- [ ] F5 Required checks: each repository's default bookmark requires its pipeline's checks to land, and the work loop pushes and waits for green instead of gating only locally.
66 66
- [x] O10e Checkpoint payload version 2: large file graphs as shared blobs named from an index, read and decoded in parallel; readers accept both versions (spec §11). Agreed by Andy on 2026-09-28.
…
311 unchanged lines
378 378
  - **Nested subrepos.** Hub claims follow subrepos of subrepos, parents first, joined paths, up to 3 deep, with the same read check. The hub test covers a pin inside a pin.
379 379
  - **Result.** oxygenhub run #15 fetched deps/oxygenflow and deps/oxygenflow/deps/oxygen and passed: fmt 2 s, clippy 1 min 37 s, test 3 min 44 s, build 6 min 25 s.
380 380
  - **Also fixed** for Andy: `oxy identity export` failed in a new repository, because identity lookups ignored the key directory. It now falls back to it, checked against the key, and the help names the file it writes (oxygen#9).
381 +
- 2026-09-28 F4b done (oxygen-vscode#5, closed by the change; oxygenhub-vscode references it).
382 +
  - **Image.** The build image (now `85c744e5…`) also carries an npm cache of both extensions' lock files. `npm ci --offline --cache /opt/npm-cache` installs from it read-only; checked locally before building.
383 +
    - oxygen, oxygenhub and oxygenflow still pin the previous image `3ba0779a…`; they move on their next re-pin.
384 +
    - Rebuild the image when a package-lock.json or Cargo.lock changes.
385 +
  - **oxygen-vscode** pins oxygen as deps/oxygen (kept out of the .vsix). Its `check` job builds oxy from the pin on a scratch disk and runs typecheck, bundle and the 18 tests against it; then `package`.
386 +
  - **oxygenhub-vscode:** check and package. Its hub-client tests skip in the VM, since there is no hub binary there.
387 +
  - **First runs:** `package` failed in both, because a job starts from a fresh workspace and had no dist/. It now builds first.
388 +
  - **Green:** oxygen-vscode #21 (check 1 min 8 s, package 6 s), oxygenhub-vscode #22 (check 7 s, package 5 s). oxygenflow #20 passed all 8 jobs.
389 +
  - All five repositories are now linted, tested and built by OxygenFlow on every push.