Commit graph

  • ea7bba4f16
    migrate: map channel access from any Anope provider, report unmapped tiers Jean 2026-07-16 16:04:15 +00:00
  • b8265661f0
    migrate: derive protect/memo-notify from Anope flags, report unmodellable channel flags Jean 2026-07-16 15:57:40 +00:00
  • 847f51db15
    gitignore local operator notes (*.local.md may hold uplink secrets) Jean 2026-07-16 15:35:20 +00:00
  • 0bc65097bf
    migrate: report every Anope record echo cannot model Jean 2026-07-16 15:26:23 +00:00
  • 9d94dd5eb0
    chanserv: support param mode locks (+f flood, +j joinflood) Jean 2026-07-16 15:23:09 +00:00
  • 3f97a66dbb
    migrate: carry channel SET flags, noexpire, and account hide-status Jean 2026-07-16 15:03:54 +00:00
  • 062eae703e
    add Anope->Echo migration importer (echo import) Jean 2026-07-16 13:05:45 +00:00
  • b23bf5d8a9
    test: property-test gossip convergence between two nodes Jean 2026-07-16 11:17:43 +00:00
  • 56cac370eb
    test: cover removal/mutation events in the parity property tests Jean 2026-07-16 11:15:57 +00:00
  • 289470ca0c
    db: compaction was silently dropping channel and jupe state Jean 2026-07-16 11:08:55 +00:00
  • 8c55347d80
    test: broaden the fold-parity property test to the full event surface Jean 2026-07-16 11:02:07 +00:00
  • 90167dd46f
    db: persist jupes across restart (event-source them) Jean 2026-07-16 10:56:22 +00:00
  • 61005f52f5
    services: throttle emailed codes to stop RESEND/RESETPASS email-bombing Jean 2026-07-16 10:41:52 +00:00
  • 320a591ae3
    engine: track the server tree so a hub SQUIT cascades Jean 2026-07-16 10:31:29 +00:00
  • e5e04b4130
    engine: reintroduce a killed service agent Jean 2026-07-16 10:16:48 +00:00
  • 4aff734340
    engine: forget a split server's users on SQUIT Jean 2026-07-16 10:10:20 +00:00
  • 63ecd79b12
    engine: handle inbound KILL — forget users, reintroduce bots Jean 2026-07-16 10:06:36 +00:00
  • a9a3408de0
    engine: a kicked services bot rejoins its assigned channel Jean 2026-07-16 10:03:00 +00:00
  • 7e868babc3
    inspircd: restore logins from replayed accountname metadata Jean 2026-07-16 09:54:35 +00:00
  • 99df7baf10
    engine: apply gossiped network bans to the ircd immediately Jean 2026-07-16 09:28:56 +00:00
  • 886fe65e4d
    engine: log out local sessions on a gossiped account suspension Jean 2026-07-16 09:13:53 +00:00
  • 58af1187fc
    engine: part orphaned-channel bots on a gossiped account removal Jean 2026-07-16 08:57:38 +00:00
  • bbea17e848
    engine: part a bot when its channel expires Jean 2026-07-16 08:27:59 +00:00
  • fa55bc3e3a
    db: purge all references to a dropped account Jean 2026-07-16 03:51:01 +00:00
  • dc23a44f57
    engine: apply auto-join, vhost and memo notice on SASL connect Jean 2026-07-16 03:35:32 +00:00
  • dabb18abd4
    HostServ: re-check the forbidden list when activating a vhost request Jean 2026-07-16 03:25:27 +00:00
  • b749cd2969
    OperServ: enforce FORBID EMAIL at registration and SET EMAIL Jean 2026-07-16 03:11:57 +00:00
  • 01ea0fa95e
    ChanServ: add SET EMAIL channel contact address Jean 2026-07-16 03:06:08 +00:00
  • 7eb1adce5e
    ChanServ: add SET URL channel homepage Jean 2026-07-16 02:58:44 +00:00
  • 053f8cf832
    NickServ: add SET HIDE STATUS for last-seen privacy Jean 2026-07-16 02:33:55 +00:00
  • 39d7421c06
    NickServ: show last-seen (and online status) in INFO Jean 2026-07-16 01:56:51 +00:00
  • 2c4bc9079c
    NickServ: add SET KILL to toggle nick protection Jean 2026-07-16 01:43:10 +00:00
  • 87e21ff85f
    NickServ: add SET AUTOOP per-account auto-op opt-out Jean 2026-07-16 01:37:31 +00:00
  • 0027decdb7
    OperServ: add SET READONLY lockdown Jean 2026-07-16 01:05:48 +00:00
  • b2442f85e6
    OperServ: add SHUTDOWN and RESTART Jean 2026-07-16 01:02:10 +00:00
  • dd43b9a331
    BotServ: add BOTLIST and AUTOASSIGN default bot Jean 2026-07-16 00:57:06 +00:00
  • cd6d8b1b93
    ChanServ: add SYNC as an alias for ENFORCE Jean 2026-07-16 00:50:42 +00:00
  • 961dc870da
    MemoServ: add STAFF to memo all operators Jean 2026-07-16 00:48:50 +00:00
  • c646ccc0ec
    NickServ: add SASET for operator account edits Jean 2026-07-16 00:45:18 +00:00
  • d819b2c75f
    MemoServ: add RSEND read receipts Jean 2026-07-16 00:43:01 +00:00
  • 2850620be1
    ChanServ: add SET AUTOOP Jean 2026-07-16 00:36:19 +00:00
  • 2c282d036f
    MemoServ: add SET NOTIFY and SET LIMIT Jean 2026-07-16 00:29:33 +00:00
  • 125b8c7701
    NickServ: RECOVER regains your nick Jean 2026-07-16 00:21:07 +00:00
  • b5e08c33cf
    MemoServ: add IGNORE Jean 2026-07-16 00:10:34 +00:00
  • ccbbb91fda
    OperServ: add SVSPART Jean 2026-07-16 00:00:18 +00:00
  • 53d3d63464
    NickServ GETEMAIL + ChanServ SET RESTRICTED Jean 2026-07-15 19:25:41 +00:00
  • be4860c9a8
    OperServ: add FORBID (nick/channel/email registration bans) Jean 2026-07-15 19:14:07 +00:00
  • ac50af92fc
    ChanServ: add SET SUCCESSOR with founder inheritance Jean 2026-07-15 18:58:08 +00:00
  • 6e3a758cc1
    ChanServ: add OWNER/PROTECT/HALFOP status commands Jean 2026-07-15 18:40:19 +00:00
  • 30e91bb295
    MemoServ SENDALL + ChanServ AKICK CLEAR Jean 2026-07-15 18:32:46 +00:00
  • 21efbd32c1
    NickServ: add UPDATE and LIST Jean 2026-07-15 18:24:52 +00:00
  • 959d085e7a
    ChanServ: add UP and DOWN Jean 2026-07-15 18:14:39 +00:00
  • 98ecbca414
    MemoServ: add CANCEL, CHECK, and INFO Jean 2026-07-15 18:09:33 +00:00
  • a26ee722d1
    Add nick-protection enforcement: prompt then rename an unidentified user on a registered nick Jean 2026-07-15 17:41:33 +00:00
  • 54ad013e49
    Wire account registration to the ircd's ENCAP SWACCTREG/SWACCTRES relay Jean 2026-07-15 16:34:20 +00:00
  • 994e8c7347
    Make the SCRAM verifier the sole password credential; finish the account-registration relay Jean 2026-07-15 15:47:41 +00:00
  • 9ed40a2e7f
    License (AGPL-3.0) and graceful shutdown Jean 2026-07-15 12:05:39 +00:00
  • e551a01cbf
    Harden for production: fsync writes, deployment + backup tooling Jean 2026-07-15 11:45:50 +00:00
  • 7d1edefb70
    CI: install cmake for aws-lc-sys (rustls crypto backend) Jean 2026-07-15 00:12:57 +00:00
  • 23fac5eb39
    Vendor protoc so the build needs no system protobuf compiler Jean 2026-07-15 00:11:26 +00:00
  • 2994cbbfea
    CI: run on a Node image and install Rust on top Jean 2026-07-15 00:04:44 +00:00
  • 0ed6684522
    Validate config on load; document the SDK's core traits Jean 2026-07-14 23:31:44 +00:00
  • 955e55d47f
    Add per-service integration tests Jean 2026-07-14 23:28:08 +00:00
  • d9c0878b00
    Log store write failures at the source; share the oper guard Jean 2026-07-14 23:19:00 +00:00
  • 081d90ad68
    Add CI: build, clippy (-D warnings), and test on push Jean 2026-07-14 23:14:52 +00:00
  • fcca8e4e3b
    Front the whole network's help through HelpServ Jean 2026-07-14 18:37:45 +00:00
  • 69a93198ff
    Wire centralized HELP into the remaining services Jean 2026-07-14 17:23:40 +00:00
  • c9e392630b
    Add centralized HELP with per-command subcommands Jean 2026-07-14 17:12:14 +00:00
  • 973d2826de
    Rework the README and move the guides to the wiki Jean 2026-07-14 16:15:28 +00:00
  • 993f5b2eea
    Rename the project to Echo (was fedserv) Jean 2026-07-14 15:24:41 +00:00
  • e7037572e5
    config.example: note the default is the full service suite Jean 2026-07-14 15:03:22 +00:00
  • dfc11bd1c4
    Make every pseudo-client a first-class default service Jean 2026-07-14 15:02:13 +00:00
  • de11939f2e
    List every pseudo-client as a first-class service in the README Jean 2026-07-14 15:00:18 +00:00
  • 92383cee0e
    Split DiceServ command out of lib.rs Jean 2026-07-14 14:49:42 +00:00
  • a29becb8b9
    Split ReportServ into one file per command Jean 2026-07-14 14:48:12 +00:00
  • 0ba736615b
    Split InfoServ into one file per command Jean 2026-07-14 14:46:56 +00:00
  • 368e6ba090
    Split HelpServ into one file per command Jean 2026-07-14 14:45:22 +00:00
  • 1916e5fce5
    Split GroupServ into one file per command Jean 2026-07-14 14:43:18 +00:00
  • feba6700cb
    Split ChanFix into one file per command Jean 2026-07-14 14:40:43 +00:00
  • a803177f8b
    Nest the ircd link under modules/protocol/ Jean 2026-07-14 14:28:18 +00:00
  • ad2a623120
    Group the module crates under modules/ Jean 2026-07-14 14:19:43 +00:00
  • 6f76f9722c
    Reorganise the engine into a concern-split module tree Jean 2026-07-14 14:05:56 +00:00
  • 0c7976e80d
    Reorganise the store into a domain-split module tree Jean 2026-07-14 13:57:05 +00:00
  • 5e6bc4334c
    Fantasy !roll: DiceServ answers, the bot speaks it in-channel Jean 2026-07-14 07:38:58 +00:00
  • a47dd6bda3
    Add HelpServ: a help-desk ticket queue Jean 2026-07-14 04:39:45 +00:00
  • 06227e73da
    Add ChanFix: recover opless channels from op-time scores Jean 2026-07-14 04:33:48 +00:00
  • 09be99785e
    Add GroupServ, with groups that grant channel access Jean 2026-07-14 04:26:07 +00:00
  • c7a4d5be27
    Add a shared channel-access FLAGS model Jean 2026-07-14 04:15:28 +00:00
  • 5b023c22a4
    Add ReportServ, wired into the audit trail Jean 2026-07-14 04:02:51 +00:00
  • 8d495a948e
    Add InfoServ, unifying network bulletins onto the news store Jean 2026-07-14 03:56:09 +00:00
  • 1e8a5eab36
    Add DiceServ: dice-roll and math-expression service Jean 2026-07-14 03:46:34 +00:00
  • 3f8649414f
    gRPC Accounts: Provision from pre-derived SCRAM verifiers Jean 2026-07-14 03:33:17 +00:00
  • fba91b4d62
    Add opt-in external-account mode (delegate identity to the website) Jean 2026-07-14 03:12:59 +00:00
  • 4c899d80b0
    OperServ: DEFCON network defence levels Jean 2026-07-14 02:35:09 +00:00
  • 85d01b3ebf
    OperServ: temporary OPER grants that auto-expire Jean 2026-07-14 02:29:03 +00:00
  • 90824513a7
    OperServ: CBAN — ban a channel name Jean 2026-07-14 02:24:13 +00:00
  • a7aacf347e
    OperServ: LOGSEARCH — search the action log Jean 2026-07-14 02:16:59 +00:00
  • dc2331f439
    Loosen two exact kick-reason assertions for the incident-id suffix Jean 2026-07-14 02:12:27 +00:00
  • d2a8d0ef05
    Stamp a traceable incident id into every kick and kill Jean 2026-07-14 02:09:45 +00:00
  • 1f7591778f
    OperServ: SHUN and CHANKILL Jean 2026-07-14 02:00:17 +00:00