|
|
16d2a5035a
|
Enforce the email-forbid policy on gRPC Register and SetEmail
CI / check (push) Successful in 4m10s
|
2026-07-19 15:37:33 +00:00 |
|
|
|
03d39c1329
|
Guard the namespace on NickServ GROUP, gRPC GroupNick, and GroupServ REGISTER (confusable/forbid/cap)
CI / check (push) Has been cancelled
|
2026-07-19 15:34:35 +00:00 |
|
|
|
224bc78641
|
Detect homoglyphs in Cyrillic Supplement and other unlisted non-Latin blocks
CI / check (push) Successful in 4m9s
|
2026-07-19 14:50:54 +00:00 |
|
|
|
86444286d8
|
Test that SASL SCRAM honours the brute-force lockout
CI / check (push) Successful in 4m9s
|
2026-07-19 14:40:00 +00:00 |
|
|
|
c36341668c
|
Fix self-review regressions: throttle SASL SCRAM, key game target by UID, exclude keycard from password lockout
CI / check (push) Has been cancelled
|
2026-07-19 14:38:16 +00:00 |
|
|
|
4599c4834d
|
Bind game identity to UID (hijack + cap bypass) and warn on plaintext gossip
CI / check (push) Successful in 4m17s
|
2026-07-19 14:15:06 +00:00 |
|
|
|
e23240bf52
|
Converge remaining gossiped state: node-local news/reports/help and deterministic group registration
CI / check (push) Has been cancelled
|
2026-07-19 14:11:50 +00:00 |
|
|
|
fef4590f48
|
Update direct report_file/help_request test callers for the cooldown-key argument
CI / check (push) Successful in 4m32s
|
2026-07-19 13:57:03 +00:00 |
|
|
|
c2db3bad7e
|
Preserve Anope negative mode locks on import instead of dropping them
CI / check (push) Failing after 3m4s
|
2026-07-19 13:45:43 +00:00 |
|
|
|
d5bc2309c4
|
Bound gossip line length, add a handshake timeout, and compare the secret in constant time
|
2026-07-19 13:43:03 +00:00 |
|
|
|
3648c48d2e
|
Rate-limit REPORT and REQUEST on the real host instead of the spoofable nick
|
2026-07-19 13:39:03 +00:00 |
|
|
|
b2ffc01e52
|
Bound dice batches, game count, and report/help queues, and harden community votekick
|
2026-07-19 13:34:48 +00:00 |
|
|
|
64c4bbeae4
|
Cap certfp, channel access, and akick lists to bound attacker-driven log growth
|
2026-07-19 13:27:50 +00:00 |
|
|
|
d833dc28f0
|
Fix duration overflow, expiry-warned resets, DICT control-char injection, and HostServ TAKE forbid recheck
|
2026-07-19 13:24:46 +00:00 |
|
|
|
68df1e7078
|
Use the ircd's learned CHANMODES arities for FMODE/FJOIN param scanning
|
2026-07-19 13:22:00 +00:00 |
|
|
|
d0c7cb6905
|
Exempt service bots from ChannelOp secureops and bound the last-seen map
|
2026-07-19 13:17:54 +00:00 |
|
|
|
7528b78bf7
|
Gate OperServ EXCEPTION at admin tier and reject match-all SNLINE regex
|
2026-07-19 13:17:54 +00:00 |
|
|
|
e7f012726c
|
Stop a non-founder from granting the founder flag (channel takeover escalation)
|
2026-07-19 13:12:54 +00:00 |
|
|
|
18806c5fe7
|
Apply the IRC namespace guards (forbid, confusable, frozen) to gRPC account writes
|
2026-07-19 13:10:44 +00:00 |
|
|
|
660362a34b
|
Throttle every password-verify path (GROUP/GHOST/CERT/DROP/SASL) and key the lockout by resolved account
|
2026-07-19 13:06:50 +00:00 |
|
|
|
1ecb76affb
|
Report failed IDENTIFY against a password-less account to the auth feed
CI / check (push) Successful in 4m10s
|
2026-07-19 05:00:12 +00:00 |
|
|
|
876bc55e2b
|
Deliver node-local channel directory events to the gRPC subscribe stream
|
2026-07-19 04:54:48 +00:00 |
|
|
|
af5896743d
|
Restore the real ident when a HostServ ident@host vhost is turned off or deleted
|
2026-07-19 04:49:31 +00:00 |
|
|
|
384f222a22
|
Enforce cloned akicks with a standing +b for ircd-enforced masks
|
2026-07-19 04:49:31 +00:00 |
|
|
|
23960adc83
|
Route every handle() early return through the shared tail so swept unbans and incident stamps aren't dropped
|
2026-07-19 04:44:11 +00:00 |
|
|
|
b38cde945f
|
Persist CS TOPIC so KEEPTOPIC and TOPICLOCK keep the set topic
CI / check (push) Successful in 4m13s
|
2026-07-19 04:21:25 +00:00 |
|
|
|
75aa8bc096
|
Preserve channel last_used and LEVELS overrides across compaction
CI / check (push) Has been cancelled
|
2026-07-19 04:19:22 +00:00 |
|
|
|
ad8a3fe065
|
Add loopback health and Prometheus metrics endpoint
CI / check (push) Successful in 4m22s
|
2026-07-19 04:13:18 +00:00 |
|
|
|
381f706634
|
Test oper type shortcut resolves to its tier privileges
CI / check (push) Successful in 4m25s
|
2026-07-19 03:29:00 +00:00 |
|
|
|
baab04203d
|
Report oper tier by capability so a sub-floor grant isnt labelled a full operator
CI / check (push) Successful in 4m13s
|
2026-07-19 02:28:32 +00:00 |
|
|
|
fc214ab0d3
|
Add three-tier services operator model (operator, administrator, root)
CI / check (push) Successful in 4m22s
|
2026-07-19 02:19:51 +00:00 |
|
|
|
a10662bbc6
|
engine: persist the incident ring (LOGSEARCH) across restarts via a periodic + on-shutdown snapshot event, mirroring stat-counter persistence
CI / check (push) Successful in 3m44s
|
2026-07-19 00:46:14 +00:00 |
|
|
|
754c5d9e95
|
engine: staff-feed alerts are also recorded to the incident log, so a blocked look-alike registration is searchable via OperServ LOGSEARCH
CI / check (push) Successful in 3m45s
|
2026-07-19 00:29:55 +00:00 |
|
|
|
0d16240606
|
nickserv/chanserv: announce a blocked look-alike registration to the staff feed (ServiceCtx alert drained by dispatch)
CI / check (push) Successful in 3m44s
|
2026-07-19 00:24:27 +00:00 |
|
|
|
89ac01d0b0
|
nickserv/chanserv: catch styled/fullwidth look-alike names too, and add a [register] confusable_check toggle (REHASH-reloadable)
CI / check (push) Successful in 3m48s
|
2026-07-19 00:15:08 +00:00 |
|
|
|
c2b70f5004
|
nickserv/chanserv: reject look-alike / mixed-script registration names (homoglyph impersonation guard)
CI / check (push) Successful in 3m56s
|
2026-07-19 00:02:44 +00:00 |
|
|
|
03f9c2d3bd
|
dictserv: retry a transient lookup once, and end the read on a no-match/error status instead of blocking for a 250 that never comes
CI / check (push) Successful in 4m0s
|
2026-07-18 23:20:34 +00:00 |
|
|
|
623750e638
|
dictserv: opt-in DICT (RFC 2229) lookup service — bots and /msg answer dict/define/thes/acronym/law/etc via dict.org off-reactor
CI / check (push) Successful in 4m4s
|
2026-07-18 20:21:30 +00:00 |
|
|
|
76be932131
|
test: add an ignored engine throughput benchmark (botserv hot path + append/fsync write path)
CI / check (push) Successful in 3m56s
|
2026-07-18 19:43:45 +00:00 |
|
|
|
5859aaf888
|
engine: reuse the event-log append handle instead of reopening per event (~20% faster writes on disk)
|
2026-07-18 19:43:45 +00:00 |
|
|
|
e05c62c085
|
operserv: NOTIFY gains k/m/u/o flags and quit/part reasons; protocol carries kicker, mode-setter, oper-up, user modes
CI / check (push) Successful in 4m1s
|
2026-07-18 19:18:17 +00:00 |
|
|
|
617d3c7966
|
operserv: NOTIFY feed uses labelled fields (IP/DNS/Account/Server) and Service:verb
CI / check (push) Successful in 4m5s
|
2026-07-18 17:50:32 +00:00 |
|
|
|
4247df8844
|
operserv: notify_exclude gains server:<glob> to mute a whole relay server from the feed
CI / check (push) Successful in 4m1s
|
2026-07-18 17:35:04 +00:00 |
|
|
|
4d327c3f47
|
operserv: NOTIFY lines carry real IP, rdns, login and origin server for the oper feed
CI / check (push) Successful in 4m4s
|
2026-07-18 17:28:07 +00:00 |
|
|
|
2fb1970030
|
docs: notify_exclude comments cover channel masks
CI / check (push) Successful in 4m3s
|
2026-07-18 17:20:24 +00:00 |
|
|
|
29bedf0358
|
operserv: notify_exclude also mutes #channel masks, so a broad watch can skip specific channels
CI / check (push) Has been cancelled
|
2026-07-18 17:19:48 +00:00 |
|
|
|
bbdb34aa77
|
operserv: NOTIFY allows broad masks (it only observes) so a #* watch can match all joins
CI / check (push) Successful in 4m4s
|
2026-07-18 17:14:13 +00:00 |
|
|
|
1d30c9cfe3
|
operserv: note the log channel and notify exclude list are REHASH-reloadable in HELP
CI / check (push) Successful in 4m11s
|
2026-07-18 17:02:01 +00:00 |
|
|
|
8f19a94928
|
operserv: NOTIFY honours a config exclude list so relay/pylinked clients cannot flood the feed
|
2026-07-18 16:47:25 +00:00 |
|
|
|
c415117ec5
|
operserv: add NOTIFY oper watch list emitting matched-user events to the staff feed
|
2026-07-18 16:16:06 +00:00 |
|