OXYGENHUB

OxygenFlow 0.5.0 9296a15494d3

Author
Andy McCall @andymccall <[email protected]>
via
agent agent:claude@andymccall <[email protected]> · keyless, under your grant for changes,refs,seal · key bdae49fa846f
When
· 2026-10-27 06:09 UTC
Signature
◈ sealed by agent:claude@andymccall
Hash
9296a15494d32cb275e486b7a099bf3bd76f9ac9111343ec48aab88f02defdb3
Depends on
1215f05ff8d0 33682a3988fc 59078d2b8d46 c3db750ed96e cce63af9ec54 e0918b887850 eb8e445f27b6 f849c7889471 fe128fa67a06
Depended on by
3029d39be772 8302cca90c95 48ed8a1db369 5544c8998aa7
In bookmarks
main
In tags
v0.5.0 v0.5.1 v0.5.2 v0.5.3
Edits
11 atoms, 0 tree operations, 4 files

Browse the tree at this change

modified CHANGELOG.md +2 −0
…
3 unchanged lines
4 4
5 5
## Unreleased
6 6
7 +
## 0.5.0 (2026-10-27)
8 +
7 9
- **A job's report says where its time went (#35).** The finish report carries `phases` in milliseconds: `image` (fetching its image, when the runner lacked it), `prepare` (its workspace and disks), `run` (the sandbox from start to stop) and `finish` (outputs, caches and receipt), so a slow job shows whether it waited on an image, a fetch or itself.
8 10
- **The swarm reads images in order (#97).** A fetcher took equally rare chunks at random, so a peer read its whole image in random order, a seek per chunk on a spinning disk: plex-1 got 2.3 GiB from earth-1 at about 2 MB/s. Neighbouring chunks now come in runs, shuffled so runners starting together still spread, and the picker no longer rescans what it has: picking a 142,244-chunk image went from 19 s to 0.35 s.
9 11
- **The swarm moves an image nobody pushed (#94).** A runner that serves its peers tells the hub, at start and every ten minutes, which images it holds, and sends the manifest of each the hub keeps none of: the manifest alone, not the image. With a hub that keeps such manifests (oxygenhub#342), runners in the same site fetch the image from it. A fetch told the hub holds no chunks asks peers alone, and fails plainly when none can serve it. Design: docs/jetstream.md §8.1.1.
…
114 unchanged lines
modified Cargo.lock +6 −6
…
816 unchanged lines
817 817
818 818
[[package]]
819 819
name = "flow"
820 -
version = "0.4.0"
820 +
version = "0.5.0"
821 821
dependencies = [
822 822
 "anyhow",
823 823
 "blake3",
…
20 unchanged lines
844 844
845 845
[[package]]
846 846
name = "flow-casfs"
847 -
version = "0.4.0"
847 +
version = "0.5.0"
848 848
dependencies = [
849 849
 "anyhow",
850 850
 "fuser",
…
4 unchanged lines
855 855
856 856
[[package]]
857 857
name = "flow-core"
858 -
version = "0.4.0"
858 +
version = "0.5.0"
859 859
dependencies = [
860 860
 "blake3",
861 861
 "globset",
…
8 unchanged lines
870 870
871 871
[[package]]
872 872
name = "flow-init"
873 -
version = "0.4.0"
873 +
version = "0.5.0"
874 874
dependencies = [
875 875
 "libc",
876 876
 "serde",
…
398 unchanged lines
1275 1275
1276 1276
[[package]]
1277 1277
name = "jet"
1278 -
version = "0.4.0"
1278 +
version = "0.5.0"
1279 1279
dependencies = [
1280 1280
 "blake3",
1281 1281
 "hex",
…
284 unchanged lines
1566 1566
1567 1567
[[package]]
1568 1568
name = "oxy-core"
1569 -
version = "0.7.0"
1569 +
version = "0.8.0"
1570 1570
dependencies = [
1571 1571
 "blake3",
1572 1572
 "ed25519-dalek",
…
1676 unchanged lines
modified Cargo.toml +1 −1
…
4 unchanged lines
5 5
resolver = "2"
6 6
7 7
[workspace.package]
8 -
version = "0.4.0"
8 +
version = "0.5.0"
9 9
edition = "2021"
10 10
license = "MIT OR Apache-2.0"
11 11
…
15 unchanged lines
replaced deps/oxygen +0 −0

No line changes.