timedout
3764faeefc
style: Reformat
2026-05-25 17:18:25 +01:00
timedout
5d4b7bfea3
fix: Store PDUs as outliers even when rejected
...
This prevents future network lookups if we've already rejected an event and see a reference to it again
2026-05-25 17:18:24 +01:00
timedout
a97f91e079
fix: Don't hard fail on events which depend on soft-failed events
2026-05-25 17:18:24 +01:00
timedout
f0401b4fc7
fix: Mark events as rejected in more places, correct soft-fail extremity behaviour
2026-05-25 17:18:24 +01:00
timedout
1f6cab9e2e
feat: Implement event rejection
...
Co-Authored-By: star <star@nexy7574.co.uk >
2026-05-25 17:18:23 +01:00
Ginger
e34fd76dc0
fix: Re-add support for MSC4293
2026-04-28 09:16:57 -04:00
Ginger
e70004c98f
chore: Clippy fixes
2026-04-28 09:16:56 -04:00
Ginger
bf9c9716eb
refactor: Add function to state_accessor to get create event
2026-04-28 09:16:51 -04:00
Ginger
24f7e1d658
chore: Clippy fixes
2026-04-28 09:16:51 -04:00
Ginger
d62eeda130
refactor: Replace more uses of RoomVersionId with RoomVersionRules
2026-04-28 09:16:51 -04:00
Jade Ellis
a4e64383b7
refactor: Ruma upstraming, bake a little more
2026-04-28 09:16:51 -04:00
Ginger
204bc1367e
refactor: Ruma upstreaming, half-baked edition
...
Co-authored-by: Jade Ellis <jade@ellis.link >
2026-04-28 09:16:51 -04:00
timedout
5f4cd47d88
fix: Add workaround for handling malformed PDUs
...
Signed-off-by: timedout <git@nexy7574.co.uk >
Reviewed-On: https://forgejo.ellis.link/continuwuation/continuwuity-sec/pulls/7
Reviewed-By: Jade Ellis <jade@ellis.link >
2026-04-23 20:48:11 +01:00
31a05b9c
8dd4b71e0e
fix: make dropped PDU warning less useless
2026-03-04 14:58:01 +00:00
timedout
b507898c62
fix: Bump ruwuma again
2026-03-03 18:10:28 +00:00
Ginger
dc6bd4e541
fix: Silence unnecessary policy server errors in debug builds
2026-02-15 18:05:42 +00:00
Jade Ellis
117c581948
fix: Correct incorrectly inverted boolean expression
2026-02-15 16:11:19 +00:00
timedout
cb846a3ad1
style: Invert pending_invite_state check
2026-02-15 16:11:19 +00:00
timedout
81b984b2cc
style: Compress should_rescind_invite
2026-02-15 16:11:19 +00:00
timedout
e2961390ee
feat: Support rescinding invites over federation
2026-02-15 16:11:19 +00:00
timedout
082ed5b70c
feat: Use info level logs for residency check failures
2026-02-03 20:09:41 +00:00
timedout
a047199fb4
perf: Don't handle PDUs for rooms we aren't in
2026-02-03 20:09:41 +00:00
timedout
52a51f1de0
fix: Remove useless timestamp check in outlier upgrade process
2026-01-09 02:50:04 +00:00
Jade Ellis
aed15f246a
refactor: Clean up logging issues
...
Primary issues: Double escapes (debug fmt), spans without levels
2026-01-05 18:28:57 +00:00
timedout
86450da705
style: Run clippy
2025-12-18 19:48:26 +00:00
timedout
8538b21860
feat: Check for incoming signatures
2025-12-18 19:03:32 +00:00
timedout
63e4aacd2b
style: Reword TODO comment
2025-12-18 18:24:00 +00:00
timedout
72f0eb9493
feat: Fetch policy server signatures
2025-12-18 18:23:54 +00:00
timedout
1631c0afa4
fix: Perform additional validation on events
2025-12-13 21:36:20 +00:00
timedout
d189004d65
feat: Add more granular controls for policy server calling ( #1127 )
...
Adds two new toggles to the configuration, the first of which allows disabling the policy server checks entirely, and the second of which allows disabling checking events created locally. They're both enabled by default for maximum PS efficacy but allowing them to be disabled allows people who frequently cannot contact policy servers, for example those in censored countries, to be able to still use rooms with pace, allows single-user/trusted-only homeservers to disable the preliminary check on their own events, and also gives an escape hatch in case an issue like #1060 happens again, especially with MSCs not in FCP being moving targets.
In future, I think we should gate all MSC implementations behind config flags, even if they default to on.
Reviewed-on: https://forgejo.ellis.link/continuwuation/continuwuity/pulls/1127
Reviewed-by: Jade Ellis <jade@ellis.link >
Co-authored-by: timedout <git@nexy7574.co.uk >
Co-committed-by: timedout <git@nexy7574.co.uk >
2025-10-16 22:45:23 +00:00
timedout
26b700bf51
fix: Policy server calls use the correct JSON object ( #1126 )
...
Fixes #1060
Reviewed-on: https://forgejo.ellis.link/continuwuation/continuwuity/pulls/1126
Reviewed-by: Jacob Taylor <aranjedeath@noreply.forgejo.ellis.link >
Co-authored-by: timedout <git@nexy7574.co.uk >
Co-committed-by: timedout <git@nexy7574.co.uk >
2025-10-16 21:06:54 +00:00
nexy7574
c66f6f8900
fix(stateres): Correctly fetch missing auth events for incoming PDUs
2025-09-25 02:54:00 +01:00
nexy7574
7e4071c117
Implement room v12 ( #943 )
...
**Does not yet work!** Currently, state resolution does not correctly resolve conflicting states. Everything else appears to work as expected, so stateres will be fixed soon, then we should be clear for takeoff.
Also: a lot of things currently accept a nullable room ID that really just don't need to. This will need tidying up before merge. Some authentication checks have also been disabled temporarily but nothing important.
A lot of things are tagged with `TODO(hydra)`, those need resolving before merge. External contributors should PR to the `hydra/public` branch, *not* ` main`.
---
This PR should be squash merged.
Reviewed-on: https://forgejo.ellis.link/continuwuation/continuwuity/pulls/943
Co-authored-by: nexy7574 <git@nexy7574.co.uk >
Co-committed-by: nexy7574 <git@nexy7574.co.uk >
2025-09-17 20:46:03 +00:00
nexy7574
f32f60d056
fix(policy-server): Return the correct result when an event is marked as spam
2025-07-23 18:01:46 +01:00
nexy7574
fe06d78c8e
fix(policy-server): Update ask_policy_server docstring
2025-07-23 17:58:33 +01:00
nexy7574
f335f45017
feat(policy-server): Add configurable timeout
2025-07-23 17:49:08 +01:00
nexy7574
1726633c0f
fix(policy-server): Fixup refactor
2025-07-23 17:49:08 +01:00
nexy7574
dfda27fadc
feat(policy-server): Don't fail-closed & refactor references
2025-07-23 17:49:08 +01:00
Jade Ellis
9465c5df1f
style: Improve logging and comments
2025-07-23 17:49:07 +01:00
nexy7574
2d475b1220
style(policy-server): Run clippy
2025-07-23 17:49:07 +01:00
nexy7574
d7fa624fd2
feat(policy-server): Optimise policy server lookups
2025-07-23 17:49:07 +01:00
nexy7574
cc9202b0c4
feat(policy-server): Limit policy server request timeout to 10 seconds
2025-07-23 17:49:07 +01:00
nexy7574
78b7175677
feat(policy-server): Soft-fail redactions for failed events
2025-07-23 17:49:07 +01:00
nexy7574
74d60f256b
style(policy-server): Restructure logging
2025-07-23 17:49:07 +01:00
nexy7574
732c69f5ca
fix(policy-server): Avoid unnecessary database lookup
2025-07-23 17:49:07 +01:00
nexy7574
8e7801f323
chore: Update ruwuma & fix lints
2025-07-23 17:49:06 +01:00
nexy7574
9017efe45b
feat(policy-server): Policy server following
2025-07-23 17:49:06 +01:00
Jade Ellis
6d29098d1a
refactor: Replace remaining std RwLocks
2025-07-20 16:33:36 +01:00
Jason Volk
364293608d
Post-formatting aesthetic and spacing corrections
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-07-02 19:17:06 +01:00
Jason Volk
116f85360f
Toward abstracting Pdu into trait Event.
...
Co-authored-by: Jade Ellis <jade@ellis.link >
Signed-off-by: Jason Volk <jason@zemos.net >
2025-07-02 19:03:26 +01:00