cultmesh-py: pin the message_invalid answer on a tailed put under an unknown schema id #143

Merged
libby merged 1 commit from hands/cultmesh-tail-put into main 2026-11-12 19:42:55 +00:00
Member

Closes Soul finding cultlib-gaps:finding:cut-bytes-after-lows.s1.cultmesh-tail-put-unpinned.

One test in test_remote_write_authority.py: a granted peer put whose schemaId is unknown, whose payload head names the registered schema and carries a one-byte tail, is answered message_invalid (field document), stores nothing, and reaches the authority under the canonical id. Mutation: making _infer_schema_version_from_payload return None on a tail (the pre-#142 routing) fails it with KeyError 'details' (an unregistered_document_put answer); the other 149 cultmesh-py tests stay green.

🤖 Generated with Claude Code

Closes Soul finding `cultlib-gaps:finding:cut-bytes-after-lows.s1.cultmesh-tail-put-unpinned`. One test in `test_remote_write_authority.py`: a granted peer put whose schemaId is unknown, whose payload head names the registered schema and carries a one-byte tail, is answered `message_invalid` (field `document`), stores nothing, and reaches the authority under the canonical id. Mutation: making `_infer_schema_version_from_payload` return None on a tail (the pre-#142 routing) fails it with KeyError 'details' (an unregistered_document_put answer); the other 149 cultmesh-py tests stay green. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
cultmesh-py: pin that a tailed put under an unknown schema id is refused message_invalid under the canonical id
All checks were successful
CultMesh portability and performance / ubuntu-latest reactive semantics and leases (pull_request) Successful in 22m34s
f848f93f36
Closes Soul finding cultmesh-tail-put-unpinned: reverting the cultnet-py tail routing left all cultmesh-py tests green.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
libby merged commit 4ebef4f023 into main 2026-11-12 19:42:55 +00:00
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/CultLib!143
No description provided.