Test message hashes across local delivery and federation - #21
Merged
Conversation
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.
Synchronize the daemon-owned bootstrap schema and cover SHA-256 identity from local-only delivery through later federation. Test 009 composes batch-hash replies through the API instead of injecting unhashed sent rows into PostgreSQL.
Test 015 checks immediate local hashes, local replies/reactions, compressed messages later sent through add-to, cross-host batch-hash replies, and notification-only code 11. The test stack supports forced challenges with
FMSG_CHALLENGE_MODE=ALWAYSand a separate network withFMSG_TEST_NETWORK.Initialization SQL is for new databases. Existing stacks stop the daemon/API and run the separate standalone
fmsg-backfillbinary, which embeds the schema upgrade and converts existing data atomically before the new services start. It is not bundled in the daemon image. The README documents this rollout and shared-payload retention.Depends on markmnl/fmsgd#44 and markmnl/fmsg-webapi#45; merge after both so default
mainbuilds use matching versions. Contract: markmnl/fmsg#37.Validation: all 15 integration tests passed using Podman, matching feature branches, isolated stacks, and forced challenge responses. Shell syntax checks pass. The schema copy matches
fmsgd/dd.sqlafter its required database-selection preamble. PR CI selects matching component branches when available; manual workflow inputs take precedence.