https://gitlab.synchro.net/main/sbbs/-/commit/6438bb9448ce0f45ac86548e
Added Files:
exec/tests/ircd/services-compat.js services-relay.js services-routing.js services-sjoin.js shutdown.js
Modified Files:
exec/ircd.js exec/load/ircd/PROTOCOL.md config.js core.js server.js services.md unregistered.js
Log Message:
ircd: preserve services authority and refresh trust for 2.10
Refresh connected servers' and remote users' U-line status on REHASH, using
one case-insensitive lookup for live trust changes and introductions.
Service aliases become available or lose authority without reconnecting.
Allow validated services SJOINs to name known users on any route, including local users. Preserve their source, status and timestamp authority through relaying hubs, retaining origin route checks and ordinary member limits.
Relay complete services MODE, TOPIC and membership corrections even when
an intermediate hub already has matching state. Honor saved services topic timestamps and preserve the services prefix downstream. Keep the services JOIN/MODE timestamp protections and TS-zero parsing.
Do not require services links to be hubs for reserved bot introductions, cross-route KILLs or JUPE's SQUIT/SERVER sequence. Remove the old subtree before introducing its JUPE replacement, without inheriting its services
trust. Permit global services notices without user mode +o, and relay
remote global notices beyond their first receiver. Validate source routes before granting services privileges for INVITE/KILL/AKILL/RAKILL/SQUIT.
Stop embedded services before the final synchronous shutdown queue flush
so their QUIT/SQUIT messages survive DIE, RESTART and service shutdown.
Keep shutdown bounded and idempotent, including blocked or broken links.
Bump the IRCd version to 2.10 and document the routing rules. Add focused services, spoofing and shutdown regressions, plus a live services-to-edge- to-hub-to-leaf test using IRCServices 5.1.24's Bahamut wire forms.
Validation: 273 tests across 15 isolated native JSexec suites, 30 tests in
the six-server integration suite, and seven live services relay tests pass
(310 total). git diff --check is clean. No mixed-version process run was performed for these changes; older hubs retain their implementation limits.
---
� Synchronet � Vertrauen � Home of Synchronet � [vert/cvs/bbs].synchro.net