Backlog: M5 done 73609c9f7f50
- Author
- Andy McCall @andymccall <[email protected]>
- When
- · 2026-09-29 00:43 UTC
- Signature
- ✔ signed by Andy McCall
- Hash
73609c9f7f50a9d4d5ac26f5a45b5231ff9e266cf9445ea09d63118d33d28a50- Depends on
- 75036530b621 c1fe1fb25021 ce3e73ce9020
- Depended on by
- 08b388841556
- 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 +9 −1
| … | 71 unchanged lines |
||
| 72 | 72 | - [x] M14 (feedback 7a) `oxy show`'s summary lists every path the change touches with its kind (added, modified, removed, renamed, mode), not only additions. |
|
| 73 | 73 | - [x] M3 Start a run without moving a bookmark (feedback 9): "Run pipeline" on a state and "Re-run" on a finished run, in the web and the API. |
|
| 74 | 74 | - [x] M4 Guest `/dev/fd`, `/dev/stdin|stdout|stderr` links in flow-init (feedback 15), and job variables `FLOW_STATE`, `FLOW_HEADS`, `FLOW_BOOKMARK`, `FLOW_RUN`, `FLOW_REPO` (feedback 17). |
|
| 75 | - | - [ ] M5 Sandbox-level `env` in pipeline.kdl, and the image's environment kept through `flow rootfs import` (feedback 16). |
|
| 75 | + | - [x] M5 Sandbox-level `env` in pipeline.kdl, and the image's environment kept through `flow rootfs import` (feedback 16). |
|
| 76 | 76 | - [ ] M6 Flow API: `GET /repos/{o}/{n}/flow/runs`, `/flow/runs/{n}` with jobs, a job's log; checks by head hash as well as state (feedback 11). JSON 404s under `/api/v1` (feedback 13). Per-repository run numbers, or a note (feedback 12). |
|
| 77 | 77 | - [ ] M7 Server push errors name the operation and bookmark and log the error chain (feedback 2). |
|
| 78 | 78 | - [ ] M8 `merge` updates a working copy that is clean against the pre-merge base; `checkout` tells "removed by you" from "not yet written"; `bookmark switch --help` says what happens to uncommitted work (feedback 3). |
|
| … | 432 unchanged lines |
||
| 511 | 511 | - **Runner:** tries 5xx answers again after 1, 2 and 4 s; a 4xx is final. Tested against a fake hub. |
|
| 512 | 512 | - **Hub:** busy timeout 30 s. |
|
| 513 | 513 | - No lock errors in the runs since, including a full oxygenhub run. |
|
| 514 | + | - 2026-09-29 **M5 done** (oxygenflow#9; feedback 16). |
|
| 515 | + | - **Sandbox env.** A sandbox takes an `env` block that every job in it starts from; a job's own `env` overrides it. |
|
| 516 | + | - It is canonical field 6, only when set, so existing pipelines keep their hashes. |
|
| 517 | + | - **Image environment.** `flow rootfs import --env NAME=value` writes the image's own environment to `/etc/flow/env`: what a Dockerfile's `ENV` sets and `docker export` loses. It is covered by the image's hash. |
|
| 518 | + | - **Layers in flow-init:** `PATH` and `HOME`, then the image's environment, then the job's. The program is found in the resulting `PATH`. |
|
| 519 | + | - **Tests** for parsing, precedence, hashing, layering and `--env` checks. |
|
| 520 | + | - Hub pinned and deployed, since it parses pipelines. Runner deployed. |
|
| 521 | + | - **Proved in a microVM on Earth:** a program found only through the sandbox's `PATH` ran, with the job's value winning. The image layer is unit-tested; nothing was re-imported on Earth. |