You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Undo and older Homes fetch components by name, so they get the newest release's bytes #287
Found 7 Oct by Anders's real Undo (alpha.8 → alpha.7 with elastos update --rollback-to QmYtcAdb…): the alpha.7 Runtime binary and components.json downloaded and verified, then media-provider failed "Checksum mismatch … Expected a1775b32… (alpha.7), Got 3063acf4… (alpha.8)". The update refused and restored the alpha.8 files, as it should.
Root cause: the binary and components.json are fetched by their signed CID (update.rs ~1472, ~1515), which works. Support components are fetched by release name (setup.rs install_first_party_component_via_carrier; System staging prefers release-path:), and the seed holds only the newest file under each name.
Fix: fetch every component by its signed CID with the same existing content fetch the binary uses; the name is used only when a descriptor has no CID. Every published descriptor has a CID (131 of 131 in alpha.8) and the seed holds all of them. No server change.
Later, not part of this fix: offline Undo (keeping the replaced files) and a held-only streamed fetch so any host can serve (#281; work on branch fix/287-fetch-by-cid). Part of #89, #109.
Browser plan reconciliation — 2026-10-08
#288 and #217 consume the single content-fetch contract (exact CID plus signed checksum/size, bounded streaming, deterministic refusal of substituted or unavailable bytes) now owned by #281. Image acquisition uses that shared operation. Operator approval is needed for any seed work.
Found 8 Oct 00:18 UTC: one Carrier content_fetch for an unpublished CID (our refusal test) jammed the seed's ipfs-provider; content fetches hung for everyone until a restart at 00:52 (checks pass again on Linux and Jetson). content_fetch still asks the network for any CID, so it is part of this fix: held bytes only, bounded, never blocking.
Real proof (8 Oct, alpha.9): Jetson Undo 9 → 8 with --rollback-to alpha.8's head fetched every part by CID, checksums passed, Home is on alpha.8. Linux x86-64 Undo was refused cleanly (alpha.9 restored) because the 53 MB Kubo archive took longer than alpha.9's 30 s total download limit (#113, fixed in alpha.10); the seed served it in full.
Real proof on Mac (Anders, 8 Oct): Undo alpha.9 → alpha.8 fetched the old parts by CID, verified, Home and Chat kept. Jetson passed earlier today; Linux waits for alpha.10's slow-link fix (#113).
Activity
andersalm commentedon Oct 8, 2026
Found 8 Oct 00:18 UTC: one Carrier content_fetch for an unpublished CID (our refusal test) jammed the seed's ipfs-provider; content fetches hung for everyone until a restart at 00:52 (checks pass again on Linux and Jetson). content_fetch still asks the network for any CID, so it is part of this fix: held bytes only, bounded, never blocking.
Local Carrier smoke: name-only source carries no CIDs (#287)
Source test: local Carrier smoke source carries no CIDs (#287)
Merge pull request #294 from Elacity/train/alpha9b
andersalm commentedon Oct 8, 2026
Real proof (8 Oct, alpha.9): Jetson Undo 9 → 8 with
--rollback-toalpha.8's head fetched every part by CID, checksums passed, Home is on alpha.8. Linux x86-64 Undo was refused cleanly (alpha.9 restored) because the 53 MB Kubo archive took longer than alpha.9's 30 s total download limit (#113, fixed in alpha.10); the seed served it in full.andersalm commentedon Oct 8, 2026
Real proof on Mac (Anders, 8 Oct): Undo alpha.9 → alpha.8 fetched the old parts by CID, verified, Home and Chat kept. Jetson passed earlier today; Linux waits for alpha.10's slow-link fix (#113).
andersalm commentedon Oct 8, 2026
Done: every box ticked with evidence (8 Oct, alpha.9/alpha.10 real runs and merged PRs).