timedout
a05d7a8cf3
style: Condense repeated code into a reusable function
2026-10-14 10:32:35 +01:00
timedout
af8ca8580e
fix: Correctly sum total_queried_keys
2026-10-14 10:32:35 +01:00
timedout
7050ea84e3
feat: Strip extraneous signatures to avoid leaking our own notaries
2026-10-14 10:32:35 +01:00
timedout
441ab78c4e
feat: Notary server
2026-10-14 10:32:34 +01:00
Erwan Leboucher
ea3ec965ed
fix(metrics): Address review feedback
2026-10-12 10:03:15 +01:00
Erwan Leboucher
5185045cb6
feat(metrics): Record metrics with OpenTelemetry and export over OTLP
2026-10-12 10:03:14 +01:00
timedout
3af5302dd8
feat: Add more useful errors to send_join
...
See also: #2340
2026-10-10 02:23:39 +01:00
Jade Ellis
7ce47be4de
feat: Send read receipts and typing indicators to appservices
2026-10-06 23:56:28 +01:00
timedout
550dd0160a
fix: SEC8
...
Reviewed-By: Ginger <ginger@gingershaped.computer >
Reviewed-By: Jade <jade@ellis.link >
Reviewed-By: Jacob Taylor <jacob@explodie.org >
2026-09-28 02:00:37 +01:00
timedout
89eecd2bf7
fix: Record redacted_because_id instead of redacted_because
2026-09-27 17:32:46 +01:00
timedout
b2072baf59
perf: Strip unsigned over federation and generate it on the fly locally
2026-09-27 17:32:46 +01:00
Ginger
9fbabe2210
chore: Reformat with latest nightly
2026-09-01 12:55:05 -04:00
timedout
dbe4d0035a
style: Don't log warnings when receiving unrecognised PDUs
2026-08-30 21:16:07 +01:00
Renovate Bot and Ginger
746a2686e3
chore(deps): Update ruma digest to 83d80c8
...
Co-authored-by: Ginger <ginger@gingershaped.computer >
2026-08-25 13:53:39 +00:00
Erwan Leboucher
df95abf5ab
fix(federation): Queue PDUs during remote joins
2026-08-22 18:29:54 +00:00
timedout
2dc6051d67
fix(federation): Make transactions infallible
...
Previously, a transaction panicking in the handle() call would cause the
transaction to be indefinitely logged as "running" in the transaction
handler. This means subsequent transactions from the sending server
would be met with the "You're still sending me a txn!" 429 response,
forever, effectively causing defederation between the two servers, until
continuwuity is fully restarted.
I could just fix the known panics in the handle function and internal
calls, however there's so many subsystems that could reasonably panic
that it is just better to have a safer approach and ensure that the
handle call is infallible.
2026-08-15 16:10:39 +00:00
Ginger
ad182417da
fix: SEC26
...
Reviewed-By: timedout <git@nexy7574.co.uk >
Reviewed-By: Ginger <ginger@gingershaped.computer >
2026-08-11 17:56:29 -04:00
Logan Devine
480e975877
chore: clean up unused imports of ClientIp
2026-07-21 14:31:16 +00:00
timedout
789589ef37
chore: Remove redundant client IP extractions on individual routes
2026-07-17 12:57:48 +00:00
Erwan Leboucher
3a74ce6151
fix(client-ip): Fall back to peer IP instead of returning 500
2026-07-17 12:46:11 +00:00
Erwan Leboucher
8945cc9e10
fix(federation): Sign restricted join events before verification
2026-07-16 19:46:42 +00:00
timedout
4001b99261
style: Make send_join's docstring more useful
2026-07-12 02:11:50 +00:00
timedout
fbf81fcdeb
fix: Opportunistically re-use room format rules when parsing incoming PDUs
2026-07-12 02:11:50 +00:00
timedout
87030a3a22
fix: Ensure PDU returned by create_hash_and_sign_event is itself signed
2026-07-12 02:11:50 +00:00
timedout
4f509fa113
fix: Convert room summary to federation format when sending invites
2026-07-12 02:11:50 +00:00
timedout
aa7ed885c0
fix: Check correct field name when determining event type
2026-07-12 02:11:50 +00:00
timedout
d5e6e617d1
fix: Remove redundant banned room server checks
...
These don't make sense here anyway
2026-07-12 02:11:50 +00:00
timedout
1f7680ad5f
feat: Give send_join the invite treatment
2026-07-12 02:11:50 +00:00
timedout
0c37a542d4
feat: Give send_leave the invite treatment
2026-07-12 02:11:50 +00:00
timedout
efd07da0d7
feat: Give send_knock the invite treatment
2026-07-12 02:11:50 +00:00
timedout
f0590e882a
fix: Only run ACL checks when we know we have live state
...
Prevents a potential bug where we might inadvertently reject valid invites because we have a stale state cache that blocks the sender or even ourselves
Also fixes the banned remote server room check by using the create event instead of room ID
2026-07-12 02:11:50 +00:00
timedout
7225bf25ae
feat: Persist create events received during the invite process
2026-07-12 02:11:50 +00:00
timedout
e52bb5db69
style: Move invite validation into own functions
2026-07-12 02:11:50 +00:00
timedout
995726923b
feat: Enforce new federation invite checks
...
These were introduced in spec v1.16 however we didn't implement them until now for compatibility.
2026-07-12 02:11:50 +00:00
timedout
9d2ce72f73
style: Remove redundant length check for dag build
2026-07-11 17:27:42 +01:00
timedout
5868510df1
fix: Remove redundant "correct room ID" filter
2026-07-11 17:27:42 +01:00
timedout
b51a34c1c1
fix: Address review feedback
2026-07-11 17:27:42 +01:00
timedout
64a08262ca
perf: Change signature of build_local_dag to remove refmap hacks
2026-07-11 17:27:42 +01:00
timedout
99a5f2a9fb
refactor: Reduce complexity of incoming PDU handling
...
* Ignores any events pushed without a room ID
* Removes needless clones for PDU size checking
* Removes incorrect ACL check in incoming handler
* Fast-path handling already handled outlier events
* Remove redundant same-room checks, replace with useful ones
* Combine event rejection and persistence in a single function
* Additional safety assertions in upgrade task
* Split upgrade task into multiple subroutines for reduced cognitive complexity
* Only mutate current state and forward extremities in tandem
* Improve code documentation to better explain the logic flow
2026-07-11 17:27:42 +01:00
timedout
f9b532162f
fix: SEC20
...
Reviewed-By: Ginger <ginger@gingershaped.computer >
2026-07-09 17:58:59 +01:00
Ginger
3467dffd94
fix: Adjust sync watcher logic to be more explicit
2026-07-05 00:42:44 +00:00
Ginger
53d6887b86
refactor: Move profile field setting logic into users service
2026-07-02 16:34:38 -04:00
Ginger
69163b5391
refactor: Split remote and deactivated users into their own columns
2026-07-02 16:24:07 -04:00
Jade Ellis
eee4ef50d2
chore: merge 1818 nex/perf/get-missing-events
2026-07-01 18:45:08 +00:00
timedout
9b80a99aa7
style: De-duplicate build_local_dag definitions, replace outdated comment on unwrap safety
2026-07-01 19:15:22 +01:00
Ginger
33be65a865
feat: Implement a web-based account management dashboard
2026-06-29 09:35:45 -04:00
timedout
d719fe2048
chore: Merge origin/main into nex/perf/get-missing-events
2026-06-28 01:29:23 +01:00
timedout
ba0ffee7cf
fix: Style errors and compile problems
2026-06-27 18:36:44 +01:00
timedout
c54e56a73e
style: Remove implement for AccessCheck, rename check to assert
2026-06-27 18:36:44 +01:00
timedout
c141503ccb
style: Re-use GET_MISSING_EVENTS_MAX_BATCH_SIZE
2026-06-20 17:08:00 +01:00