Skip to content

release(40.0.2): persist v53.1.1 — the baked final-genesis bundle, the chunk→manifest link, a withdrawn DAG refused from every door - #807

Merged
emooreatx merged 3 commits into
mainfrom
release-40.0.2
Oct 5, 2026
Merged

emooreatx merged 3 commits into
mainfrom
release-40.0.2

Conversation

@emooreatx

Copy link
Copy Markdown
Contributor

Release PR for v40.0.2 (PATCH from v40.0.1; verify v19.0.0 unchanged; no edge API change). This is what CIRISServer 0.5.221 pins for the final genesis.

  • Pin: persist tag = "v53.1.1" → bd6f604e (certified 34/34 on 31acc749; the merge differs from it by one test file, persist's recorded test-only exception), version = "53", wheel floor >=53.1.1,<54. v53.1.x brings the baked final-genesis bundle and import door, and CIRISPersist#979's chunk→manifest link.
  • The one edge fix: under #979 a withdrawn DAG answers Withdrawn from every door that reads it. Edge's serve gate swallowed that on its cold membership path (a stream_chunks error was skipped; the manifest-serve fallback read Withdrawn as "not a DAG"), so one door answered Withdrawn warm and a false ChunkNotInNamedDag cold (self_dag_field_path_717 failed on the bare pin). chunk_in_named_dag now answers Member / NotMember / Withdrawn.
  • Test fix: family_files_wire_736's forwarder leg waits (bounded) for Q1's key after holding the bytes; the key arrives 11–46 ms after them, and the immediate open raced it in 1 of 3 runs.
  • Version 40.0.2, evidence TSV regenerated, notes in docs/RELEASE_NOTES.md § v40.0.2.

Gates on the pinned commit: full lib suite (1869 in two halves), clippy -D warnings on both feature sets, and all ten integration suites (blob_federation_e2e, family_files_wire_736, delivery_receipts_738, self_dag_field_path_717, chat_message_federates, public_group_reach_762, group_record_reach_758, membership_first_contact_756, first_contact_ladder_659, relay_roster_752). Known flake: #800 (the forwarder stall, 2 of 7 runs on this commit, unrelated to the persist range).

Not in this patch: the #771 adoption proper (dag_contains_chunk replacing the #766 cache; the two-node withdraw-and-evict witness), a MINOR later.

🤖 Generated with Claude Code

https://claude.ai/code/session_011ksniaWCvWoUwFQHRG3HQL

emooreatx and others added 3 commits October 4, 2026 16:36
…'s chunk on the cold path too; persist tag v53.1.0 (#979 link)

persist v53.1 (#979) refuses a withdrawn DAG's stream and manifest through
its chunk→manifest link. The serve gate's membership check swallowed that
refusal on its cold path (a stream_chunks error was skipped, and the
serve_blob_to_peer fallback read Withdrawn as 'not a DAG'), answering
ChunkNotInNamedDag, while a warm per-file cache reached persist's serve door
and answered Withdrawn: one door, two answers (self_dag_field_path_717 failed
on the unmodified pin: held set -> Withdrawn, cold -> ChunkNotInNamedDag).
chunk_in_named_dag now answers Member / NotMember / Withdrawn, and Withdrawn
maps to ChunkSourceRefusal::Withdrawn, the refusal the fetcher aborts on.

Pin: persist tag v53.1.0 (98e46078; tree == certified 1d27b25d + CHANGELOG),
wheel floor >=53.1.0,<54. No other edge change was needed for #979.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_011ksniaWCvWoUwFQHRG3HQL
… bytes; persist rev bd6f604e (the v53.1.1 merge commit)

Through a non-member forwarder the family file's bytes land 11–16 ms (inline)
to 37–46 ms (DAG) before Q1's key_grant does, and the test opened the file the
instant it was held: not_granted in 1 of 3 runs on bd6f604e. The open is now
waited for, bounded at 15 s, and a key that never comes still fails. The
#800 stall (Q1 never holds the DAG through the forwarder) is unchanged by this
and was seen in 2 of 7 runs on this commit; tracked there.

Pin: persist rev bd6f604e909e78188e2fe493277fe32e158b87b0 (v53.1.1's merge
commit; the tag object is not on origin yet), wheel floor >=53.1.1,<54.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_011ksniaWCvWoUwFQHRG3HQL
…e chunk→manifest link, a withdrawn DAG refused from every door

PATCH from v40.0.1. persist tag = "v53.1.1" (bd6f604e), version 53, wheel
floor >=53.1.1,<54; verify v19.0.0 unchanged; no edge API change. Evidence
TSV at ciris-edge@v40.0.2. Notes: docs/RELEASE_NOTES.md § v40.0.2.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_011ksniaWCvWoUwFQHRG3HQL
@emooreatx
emooreatx merged commit e7baa93 into main Oct 5, 2026
26 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant