Commit graph

  • 1daebc94a5
    OperServ: JUPE — hold a server name against a rogue link Jean 2026-07-14 01:51:07 +00:00
  • 76a7162227
    OperServ: per-IP session limiting with exceptions Jean 2026-07-14 01:46:09 +00:00
  • 78ad909706
    OperServ: SNLINE realname bans Jean 2026-07-14 01:36:08 +00:00
  • a67409e0d3
    OperServ: OPER — runtime operator management Jean 2026-07-14 01:33:30 +00:00
  • e45eab2cd6
    OperServ: NEWS — logon and oper announcements Jean 2026-07-14 01:26:12 +00:00
  • 51d4ebf789
    OperServ: INFO staff notes on accounts and channels Jean 2026-07-14 01:15:00 +00:00
  • 8ccc9fa8ea
    OperServ: SVSNICK and SVSJOIN Jean 2026-07-14 01:08:46 +00:00
  • f9aea30f81
    OperServ: STATS enforcement overview Jean 2026-07-14 01:02:14 +00:00
  • ab5dc2e931
    OperServ: IGNORE — silence a user across all services Jean 2026-07-14 01:00:05 +00:00
  • c5d93f29c1
    OperServ: MODE override and KICK Jean 2026-07-14 00:54:29 +00:00
  • 930198b826
    Expand OperServ: SQLINE nick bans, GLOBAL, and KILL Jean 2026-07-14 00:45:52 +00:00
  • 57e104e510
    Email owners before inactivity-expiry drops their account or channel Jean 2026-07-14 00:18:43 +00:00
  • 3a6239bbd9
    README: list the full pseudo-client set incl OperServ Jean 2026-07-14 00:14:01 +00:00
  • d2c1d076fb
    Add OperServ with AKILL network bans Jean 2026-07-14 00:12:29 +00:00
  • 253d4c2a2d
    Add lazy inactivity-expiry for accounts and channels Jean 2026-07-14 00:02:36 +00:00
  • 698d604954
    Add a staff audit feed for notable service actions Jean 2026-07-13 23:48:23 +00:00
  • 34892dbba7
    Harden gRPC startup and the votekick tally map Jean 2026-07-13 23:39:49 +00:00
  • 5d67133295
    Strip CR/LF/NUL from every outbound s2s line Jean 2026-07-13 23:34:51 +00:00
  • 2fd5676ff2
    Clippy sweep: clean across the workspace Jean 2026-07-13 23:30:51 +00:00
  • 790ec51b28
    hostserv: keep the code comment neutral Jean 2026-07-13 23:06:18 +00:00
  • 31d23cf6b3
    HostServ: normalise vhosts + enforce uniqueness Jean 2026-07-13 23:05:41 +00:00
  • 271e06fa77
    HostServ: temporary vhosts (expiry) Jean 2026-07-13 22:53:04 +00:00
  • 87bad7fbcc
    HostServ: throttle vhost requests Jean 2026-07-13 22:47:02 +00:00
  • 6a8e02f004
    HostServ: forbidden-vhost patterns + auto-vhost template Jean 2026-07-13 22:42:25 +00:00
  • 2c32dcdc63
    HostServ: vhost OFFER menu, plus SETALL/DELALL/GROUP Jean 2026-07-13 22:11:58 +00:00
  • 898461d1c2
    HostServ: ident@host vhosts (CHGIDENT) Jean 2026-07-13 22:04:16 +00:00
  • 1edf250952
    HostServ: vhost request/approval flow Jean 2026-07-13 21:30:58 +00:00
  • 1227e26b95
    Add HostServ: virtual hosts Jean 2026-07-13 21:26:38 +00:00
  • 540d2f39d1
    jsonrpc: optional TLS termination (HTTP/2) Jean 2026-07-13 21:10:26 +00:00
  • 92417e7a7c
    jsonrpc: CORS for browser access from multiple sites Jean 2026-07-13 20:36:22 +00:00
  • 07eb9939d7
    Add a JSON-RPC stats endpoint for websites Jean 2026-07-13 20:21:41 +00:00
  • 04f927d3db
    Promote BotServ BOTSTATS to a StatServ pseudo-service Jean 2026-07-13 20:04:03 +00:00
  • ad61addb84
    BotServ: community !votekick / !voteban Jean 2026-07-13 19:32:25 +00:00
  • 374748b1f9
    BotServ: richer TRIGGERs — capture groups + cooldown Jean 2026-07-13 19:25:35 +00:00
  • 766ef6ca47
    BotServ: BOTSTATS per-channel activity Jean 2026-07-13 19:20:52 +00:00
  • bddf13459d
    Wire NickServ + ChanServ into the shared stats registry Jean 2026-07-13 19:15:40 +00:00
  • d4e2c905f2
    Shared stats registry + gRPC Stats API Jean 2026-07-13 19:13:31 +00:00
  • 5d1bfb3144
    BotServ: DONTKICKVOICES, plus neutral code comments Jean 2026-07-13 18:19:37 +00:00
  • 929a4cdd92
    BotServ: TRIGGER — regex auto-responses Jean 2026-07-13 18:03:46 +00:00
  • 47b1fd351e
    BotServ: KICK <#channel> WARN — one warning before the first kick Jean 2026-07-13 17:57:40 +00:00
  • c8be5b4e95
    BotServ: COPY <#src> <#dst> to clone bot config Jean 2026-07-13 17:55:19 +00:00
  • 0edc4d4e87
    BotServ: KICK <#channel> TEST <message> dry-run Jean 2026-07-13 17:53:13 +00:00
  • 9f5f0ed0d2
    BotServ: BOT DEL * mass removal (Anope #315) Jean 2026-07-13 17:50:50 +00:00
  • 0e90dd8020
    BotServ: richer INFO Jean 2026-07-13 17:38:51 +00:00
  • 5bc41f2e60
    BotServ: NOBOT and PRIVATE assignment protections Jean 2026-07-13 17:36:34 +00:00
  • 1cc438f4ed
    BotServ: BOT CHANGE Jean 2026-07-13 17:30:27 +00:00
  • ec3205bf75
    BotServ kickers: times-to-ban (TTB) + BANEXPIRE Jean 2026-07-13 17:12:12 +00:00
  • ca95184359
    BotServ BADWORDS: user-configurable regex kicker Jean 2026-07-13 16:16:44 +00:00
  • 43def8ee23
    BotServ kickers: FLOOD and REPEAT Jean 2026-07-13 15:18:39 +00:00
  • ed7da9c713
    BotServ kickers: caps + formatting, with DONTKICKOPS Jean 2026-07-13 14:54:14 +00:00
  • ad8041bd9d
    BotServ GREET + NickServ SET GREET Jean 2026-07-13 14:43:48 +00:00
  • 801bfc5c96
    BotServ: fantasy commands in-channel Jean 2026-07-13 14:22:49 +00:00
  • c7d05a8b77
    BotServ: add SAY and ACT Jean 2026-07-13 14:15:20 +00:00
  • 6a37d010b8
    BotServ: add INFO command Jean 2026-07-13 14:07:47 +00:00
  • 6a794eabff
    Split BotServ and MemoServ into one-file-per-command modules Jean 2026-07-13 14:01:59 +00:00
  • b25870e14b
    botserv: ASSIGN / UNASSIGN a bot to a channel Jean 2026-07-13 13:42:14 +00:00
  • f94b0afcd9
    botserv: introduce bots as live pseudo-clients (slice 2) Jean 2026-07-13 13:23:51 +00:00
  • 577c05ad2e
    memoserv: complete + improve the memo service Jean 2026-07-13 04:50:27 +00:00
  • 651cb683de
    botserv: bot registry + BOT ADD/DEL/LIST (first slice) Jean 2026-07-13 04:33:27 +00:00
  • cb081a2e95
    chanserv: channel SUSPEND / UNSUSPEND (oper-gated) Jean 2026-07-13 04:17:17 +00:00
  • bbbe2c6cb8
    nickserv: account SUSPEND / UNSUSPEND (oper-gated) Jean 2026-07-13 04:01:30 +00:00
  • f1415bedb2
    engine: services-operator privilege foundation Jean 2026-07-13 03:42:59 +00:00
  • 4600ee062c
    chanserv: SET TOPICLOCK and KEEPTOPIC (topic subsystem) Jean 2026-07-13 03:30:04 +00:00
  • d2c6448c6b
    chanserv: SET SECUREOPS (strip ops from users without access) Jean 2026-07-13 03:14:43 +00:00
  • 3bf6b2be77
    chanserv: SET PEACE (block acting against equal-or-higher access) Jean 2026-07-13 03:06:58 +00:00
  • 75019c867a
    chanserv: SET SIGNKICK and PRIVATE (typed channel settings) Jean 2026-07-13 02:54:46 +00:00
  • f388e3d650
    nickserv/security: password policy, auth throttle, unguessable codes Jean 2026-07-13 02:28:47 +00:00
  • 75ba9b35b4
    nickserv: AJOIN auto-join list Jean 2026-07-13 02:09:03 +00:00
  • e0bb3a1fea
    modules: [modules] config + example service crate + SDK guide Jean 2026-07-13 01:48:09 +00:00
  • 596630df53
    modules: split services and the ircd link into external crates Jean 2026-07-13 01:33:56 +00:00
  • 8ed1a9ab70
    modules: capability-scoped Store/NetView boundary (Tier 2) Jean 2026-07-13 01:04:07 +00:00
  • 931b8727e9
    modules: extract fedserv-api leaf crate (protocol + service vocabulary) Jean 2026-07-13 00:36:42 +00:00
  • d99eb16dab
    grpc: full account-authority write API (Register through UngroupNick) Jean 2026-07-12 23:57:55 +00:00
  • e5a0d2acdf
    grpc: directory replication API for websites to mirror accounts/channels Jean 2026-07-12 23:10:21 +00:00
  • bdcce01f11
    email: optional logo image in the header Jean 2026-07-12 16:36:06 +00:00
  • 98630c7d36
    email: premium HTML template with accent colour and copy affordance Jean 2026-07-12 16:07:36 +00:00
  • 06e9da4dc8
    email: HTML templates and multipart messages Jean 2026-07-12 15:57:34 +00:00
  • fbcf0eaac7
    nickserv: email confirmation (CONFIRM) on registration Jean 2026-07-12 15:36:30 +00:00
  • a2957ffe02
    email: outbound mail subsystem and RESETPASS Jean 2026-07-12 15:28:15 +00:00
  • 020e9bd576
    nickserv: grouped nicks (GROUP/GLIST/UNGROUP) and GHOST Jean 2026-07-12 14:59:23 +00:00
  • ef89f97158
    nickserv: add SET (password/email) and DROP Jean 2026-07-12 14:32:53 +00:00
  • 0427819f86
    nickserv: add INFO and ALIST Jean 2026-07-12 14:19:29 +00:00
  • 9d6cf3bb08
    nickserv: split into one file per command Jean 2026-07-12 14:05:59 +00:00
  • 921088bfca
    chanserv: require channel-operator status to register Jean 2026-07-12 13:57:29 +00:00
  • 0681c7a3b2
    chanserv: drop a lost account's channels on takeover Jean 2026-07-12 13:45:07 +00:00
  • aab64baf86
    nickserv: log out the loser of a registration conflict Jean 2026-07-12 13:34:38 +00:00
  • f46662db90
    gossip: deterministic winner for a concurrently-registered account Jean 2026-07-12 13:11:22 +00:00
  • 4408281d20
    nickserv: IDENTIFY reports an unregistered account distinctly Jean 2026-07-12 12:38:09 +00:00
  • 914c3874ce
    nickserv: accept IDENTIFY [account] <password> Jean 2026-07-12 12:30:16 +00:00
  • d4b9172455
    gossip: replicate account state only, keep channels node-local Jean 2026-07-12 12:20:24 +00:00
  • e8b55bdb27
    chanserv: entrymsg, enforce, getkey, seen, clone, aop/sop/vop Jean 2026-07-12 11:53:48 +00:00
  • 674f543b40
    chanserv: SET founder and description Jean 2026-07-12 11:33:33 +00:00
  • ba3803e01c
    chanserv: topic, invite, akick, list, status Jean 2026-07-12 11:30:07 +00:00
  • acd0e60946
    chanserv: op, deop, voice, devoice, kick, ban, unban Jean 2026-07-12 11:21:35 +00:00
  • f0ce2d9d1b
    Add ChanServ ACCESS list with auto-op/voice on join Jean 2026-07-12 10:59:15 +00:00
  • b299c4f02e
    Move the ChanServ MODE command into modules/chanserv/mode.rs Jean 2026-07-12 10:46:27 +00:00
  • 677963924a
    Reorganize protocol and pseudoclients into a modules/ tree Jean 2026-07-12 10:31:09 +00:00
  • dbc45a0b6a
    Add ChanServ MODE command Jean 2026-07-12 10:25:01 +00:00
  • f15c9998be
    Source channel mode changes from ChanServ Jean 2026-07-12 10:18:07 +00:00
  • e785c9d8ac
    Auto-op the founder on join Jean 2026-07-12 10:07:02 +00:00