Bump CultLib pins to 7665df33 (write receipts) #1

Open
eureka wants to merge 1 commit from eureka/odin-cultlib-7665df33 into main
Owner

Moves cultcache-rs, cultmesh-rs and cultnet-rs in crates/odin-core/Cargo.toml (lines 14-16) and crates/odin-daemon/Cargo.toml (lines 16-18) from 3bf1c0ce to 7665df33ae1b4335c3343914e2b85fde01d48311 (CultLib main, includes write-receipt #59-#62). Cargo.lock regenerated.

Result

  • Compiles with no source change. cargo build --workspace --all-targets: 0 warnings, 0 errors. main.rs:869-870 (ApplicationRejected arm) is unchanged and fine.
  • Odin's sink needs no change: the CultLib RUDP document server owns the receipts. It answers write_admitted after accept_raw_document returns Ok, and error.v1 carrying the write id when the sink returns Err, for connections whose hello lists both cultnet.write_admitted.v0 and cultnet.error.v1. Legacy peers (no such hello) are unchanged.
  • New test tests::a_receipt_peer_is_told_admitted_or_refused_for_each_put_by_id drives Odin's own activated server and sink with a receipt-capable peer: put of ghostlight.doc.v1 gets write_admitted (id, op, schema, key echoed) and is stored; put of an Odin-owned kind gets error.v1 with the put's id, and the session is kept.
  • Cargo.lock grows by 15 packages, all CultLib transitive (p256/ecdsa/elliptic-curve family, stacker/psm, serde_stacker, object, ar_archive_writer).

Tests (cargo test --workspace --locked)

  • odin-core lib: 6 passed, 0 failed, 0 ignored
  • odin-daemon lib: 24 passed, 0 failed, 1 ignored (projection_authority_probe, reads host env files)
  • odin-daemon bin: 33 passed, 0 failed, 0 ignored (32 before plus the new test)
  • doc-tests: 0

Not run

  • No deploy, no running Odin or Idunn touched, no live-peer test against Yggdrasil.
  • Built and tested on Linux x86_64 dev profile only; no release build, no Windows build.
  • No compatibility check of other Odin clients (Ghostlight, CodexConnector, Idunn presence publisher) against the new server; legacy peers get legacy behaviour by the spec, but that is CultLib's test, not repeated here.
  • Docs that mention the old pin (docs/*, state/map.yaml, README) are historical and untouched.

🤖 Generated with Claude Code

Moves cultcache-rs, cultmesh-rs and cultnet-rs in `crates/odin-core/Cargo.toml` (lines 14-16) and `crates/odin-daemon/Cargo.toml` (lines 16-18) from `3bf1c0ce` to `7665df33ae1b4335c3343914e2b85fde01d48311` (CultLib main, includes write-receipt #59-#62). Cargo.lock regenerated. ## Result - Compiles with no source change. `cargo build --workspace --all-targets`: 0 warnings, 0 errors. main.rs:869-870 (`ApplicationRejected` arm) is unchanged and fine. - Odin's sink needs no change: the CultLib RUDP document server owns the receipts. It answers `write_admitted` after `accept_raw_document` returns Ok, and `error.v1` carrying the write id when the sink returns Err, for connections whose hello lists both `cultnet.write_admitted.v0` and `cultnet.error.v1`. Legacy peers (no such hello) are unchanged. - New test `tests::a_receipt_peer_is_told_admitted_or_refused_for_each_put_by_id` drives Odin's own activated server and sink with a receipt-capable peer: put of `ghostlight.doc.v1` gets `write_admitted` (id, op, schema, key echoed) and is stored; put of an Odin-owned kind gets `error.v1` with the put's id, and the session is kept. - Cargo.lock grows by 15 packages, all CultLib transitive (p256/ecdsa/elliptic-curve family, stacker/psm, serde_stacker, object, ar_archive_writer). ## Tests (`cargo test --workspace --locked`) - odin-core lib: 6 passed, 0 failed, 0 ignored - odin-daemon lib: 24 passed, 0 failed, 1 ignored (`projection_authority_probe`, reads host env files) - odin-daemon bin: 33 passed, 0 failed, 0 ignored (32 before plus the new test) - doc-tests: 0 ## Not run - No deploy, no running Odin or Idunn touched, no live-peer test against Yggdrasil. - Built and tested on Linux x86_64 dev profile only; no release build, no Windows build. - No compatibility check of other Odin clients (Ghostlight, CodexConnector, Idunn presence publisher) against the new server; legacy peers get legacy behaviour by the spec, but that is CultLib's test, not repeated here. - Docs that mention the old pin (`docs/*`, `state/map.yaml`, README) are historical and untouched. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
Moves cultcache-rs, cultmesh-rs and cultnet-rs in odin-core and odin-daemon
from 3bf1c0ce to 7665df33ae1b4335c3343914e2b85fde01d48311. The bump compiles
with no source change. Adds one test through Odin's own sink and server: a
receipt-capable peer is answered write_admitted for an admitted put and
error.v1 naming the id for a refused one.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This pull request can be merged automatically.
You are not authorized to merge this pull request.
View command line instructions

Checkout

From your project repository, check out a new branch and test the changes.
git fetch -u origin eureka/odin-cultlib-7665df33:eureka/odin-cultlib-7665df33
git switch eureka/odin-cultlib-7665df33

Merge

Merge the changes and update on Forgejo.

Warning: The "Autodetect manual merge" setting is not enabled for this repository, you will have to mark this pull request as manually merged afterwards.

git switch main
git merge --no-ff eureka/odin-cultlib-7665df33
git switch eureka/odin-cultlib-7665df33
git rebase main
git switch main
git merge --ff-only eureka/odin-cultlib-7665df33
git switch eureka/odin-cultlib-7665df33
git rebase main
git switch main
git merge --no-ff eureka/odin-cultlib-7665df33
git switch main
git merge --squash eureka/odin-cultlib-7665df33
git switch main
git merge --ff-only eureka/odin-cultlib-7665df33
git switch main
git merge eureka/odin-cultlib-7665df33
git push origin main
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
GameCult/Odin!1
No description provided.