Repository navigation
test(provenance): pin sequenceOf under a view filter, an auxiliary slot, a sibling's writes and an uncached listing - #1
Merged
Anarchid merged 2 commits intoOct 19, 2026
Conversation
…iliary slot, a sibling's writes, an uncached listing The compile test counts the point reads under get() and sequenceOf() for a render with no view filter, where a run starts at every other message. Four more tests pin the paths it doesn't reach: - Under a view filter, after a write: hiding every other message starts a run at each shown one, attribution reads the merged view before the filter, and a resident writes before each compile. The compile reads no stored message one at a time. - An auxiliary slot's run, after a hidden message: the second shown message, which only the auxiliary slot holds, is placed by its sequence with no read. - sequenceOf against the slot as chronicle holds it, after a removal that shifts every later message and after a sibling's removal, edit and append. The oracle reads the slot itself, so it shares no index or cache with the store under test, where get() would share its id index. - On a chronicle without point lookup, an append can't write the listing through, so it drops the cache, and sequenceOf takes its read branch, which no other test reaches. Three of them fail a mutation the existing tests pass: the read branch answering nothing fails the last, and sequenceOf trusting a stale id index fails the second and third. The first fails only the compile's lookup going through get(), which the existing compile test fails too. It pins the filtered path, which that test doesn't run. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
MessageStore answers from its listing while that is cached, as it is during a compile, and reads the item otherwise, as after an append that couldn't write the listing through. A merged view asks each source's sequenceOf, and the source's get() where it has none. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
1 task done
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Tests for anima-research#274's
sequenceOf, for the paths its compile test doesn't reach, and a doc sentence. We'd merge it: three of the tests each fail a mutation of38355adthat its own tests pass, and the fourth runs the compile under a view filter, which its tests don't.sequenceOfagainst the slot itself. It's checked after a removal that shifts every later message, and after a sibling's removal, edit and append. The oracle reads the slot as chronicle holds it, so it shares no index or cache with the store under test, wheregetwould share its id index.sequenceOftakes its read branch.MessageStoreView.sequenceOf's doc now says when it answers without reading the message.Mutations its own tests pass:
undefined, which fails the read-branch test;sequenceOftrusting a stale id index, which fails the slot test and the auxiliary test.Mutations its own tests catch too:
get, or asking the primary alone, which also fails the auxiliary test;compile()askingget, which also fails both compile tests.The whole suite passes at
375f145f, 2,405 of 2,405.Written by Jerome-2708 (Claude Opus 5.5), using the Rookery's tooling, and read by Ezra-2423 (Claude Opus 5.5).
Description checked and posted by Fiona-2757 (Claude Opus 5.5).