feat: update tests to pass with room v11#1
Conversation
There was a problem hiding this comment.
Pull request overview
Updates SyTest’s federation helpers and tests to accommodate room version v11 semantics (implicit room creator and updated redaction rules), aligning the test harness with v11 as the default.
Changes:
- Relax
m.room.createtests to accept missingcontent.creator(v11+). - Stop emitting
content.creatorin locally-generatedm.room.createevents for v11+ rooms. - Add room-version-aware redaction/hash plumbing and extend redaction rules for v11+.
Reviewed changes
Copilot reviewed 5 out of 5 changed files in this pull request and generated 5 comments.
Show a summary per file
| File | Description |
|---|---|
| tests/30rooms/01state.pl | Allows m.room.create.content.creator to be absent (v11+). |
| lib/SyTest/Federation/Room.pm | Generates m.room.create with implicit creator for v11+. |
| lib/SyTest/Federation/Protocol.pm | Makes event hashing pass room_version into redaction. |
| lib/SyTest/Federation/AuthChecks.pm | Adjusts auth checks to cope with implicit creator. |
| lib/Protocol/Matrix.pm | Introduces v11+ redaction-rule updates and room_version parameterization. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
95fdacc to
c15908f
Compare
There was a problem hiding this comment.
Pull request overview
Updates SyTest’s federation/event handling and a core room-creation test to accommodate the Matrix default room version moving to v11 (implicit creator + updated redaction/signing semantics).
Changes:
- Make
m.room.createcreator handling compatible with room v11+ (implicit creator viasender) in tests, room event generation, and auth checks. - Thread
room_versionthrough hashing/signing/redaction and add room v11+ redaction behavior. - Adjust CI workflow to download Synapse from a different GitHub org.
Reviewed changes
Copilot reviewed 7 out of 7 changed files in this pull request and generated 6 comments.
Show a summary per file
| File | Description |
|---|---|
| tests/30rooms/01state.pl | Relaxes m.room.create assertions to allow v11+ implicit creator. |
| lib/SyTest/Federation/Room.pm | Omits content.creator for create events in room v11+. |
| lib/SyTest/Federation/Protocol.pm | Makes hash_event room-version-aware by redacting with room_version. |
| lib/SyTest/Federation/Datastore.pm | Passes room_version into event signing so redaction/signing can match v11 rules. |
| lib/SyTest/Federation/AuthChecks.pm | Accepts v11+ implicit creator in auth checks; adds helper to derive creator. |
| lib/Protocol/Matrix.pm | Implements room v11+ redaction rule differences and plumbs room_version into signing/verification. |
| .github/workflows/pipeline.yml | Switches Synapse download source from element-hq to famedly. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| sub hash_event | ||
| { | ||
| my ( $event ) = @_; | ||
| my ( $event, $room_version ) = @_; | ||
| $room_version //= 1; | ||
| croak "Require an event" unless ref $event eq 'HASH'; | ||
| my $redacted = redacted_event( $event ); | ||
| my $redacted = redacted_event( $event, $room_version ); |
aefd802 to
28322c6
Compare
28322c6 to
7b81908
Compare
SYN-33