Hampus
|
8c05497c37
|
fix(auth): stop flagging dev instance signups as staff (#3469)
|
2026-10-14 17:09:14 +02:00 |
|
Hampus
|
d5ca5d8293
|
fix(auth): fix approval signups and auto-join invites (#3467)
|
2026-10-14 16:41:33 +02:00 |
|
ArcticWarmth
|
abcb5cb814
|
feat(admin): move pending registrations to their own page (#1388)
|
2026-10-14 13:45:27 +02:00 |
|
Hampus
|
78272521bb
|
feat(setup): add a setup token for first-run setup (#3437)
|
2026-10-13 00:17:24 +02:00 |
|
Hampus
|
c9fdf8fead
|
chore(repo): prune dead code and duplicate abstractions (#3413)
|
2026-10-12 13:09:42 +02:00 |
|
Hampus
|
c16d414d93
|
refactor(api): collapse single-impl interfaces and facades (#3382)
|
2026-10-10 23:04:42 +02:00 |
|
Hampus
|
1cd62eb661
|
chore(repo): remove dead code and useless tests (#3375)
|
2026-10-10 21:43:29 +02:00 |
|
Hampus
|
4db13b0375
|
fix(app,api): kick reasons, blocked counts and locale fallbacks (#3334)
|
2026-10-09 01:40:08 +02:00 |
|
Hampus
|
e0d7625c39
|
feat(api): hand desktop sign-in back with a deep link grant (#3278)
|
2026-10-08 17:23:28 +02:00 |
|
Hampus
|
cc5545c333
|
fix(api): sync stripe customer email on change (#3243)
|
2026-10-06 21:38:25 +02:00 |
|
Hampus
|
e1eecc3b6c
|
feat(auth): add username sign-in mode and recovery kits (#3215)
|
2026-10-05 14:10:07 +02:00 |
|
Hampus
|
da9e9ff0be
|
chore: tidy request handling across services (#3168)
|
2026-10-03 15:36:33 +02:00 |
|
Hampus
|
4e6b837ccc
|
fix: tighten edge cases across services (#3158)
|
2026-10-03 13:04:29 +02:00 |
|
Hampus
|
706c41aad9
|
fix(auth): check the TOTP setup code before asking for sudo (#3146)
|
2026-10-03 02:11:14 +02:00 |
|
Hampus
|
1ec8f31253
|
refactor: simplify account standing and verification levels (#3130)
|
2026-10-02 18:17:41 +02:00 |
|
Hampus
|
1abde06824
|
feat(admin): accept domain entries in the email blocklist (#3129)
|
2026-10-02 18:00:38 +02:00 |
|
Hampus
|
5040ae2c10
|
fix(sso): join provisioned users to the single community (#3118)
|
2026-10-02 17:23:03 +02:00 |
|
Hampus
|
c7bd1be3e4
|
fix(auth): offer every transport for passkeys stored without any (#3077)
|
2026-09-30 23:01:37 +02:00 |
|
Hampus
|
12bfaa83ba
|
fix(sso): route mobile sign-in through the web callback (#3060)
|
2026-09-30 14:48:24 +02:00 |
|
Hampus
|
4f968bbc47
|
feat(captcha): make ALTCHA the only captcha (#3035)
|
2026-09-29 17:00:15 +02:00 |
|
Hampus
|
364084c819
|
refactor(api): emit moderation events and apply account actions (#3031)
|
2026-09-29 12:24:15 +02:00 |
|
Hampus
|
7e1b934637
|
feat(captcha): add ALTCHA proof-of-work captcha experiment (#2986)
|
2026-09-27 21:02:55 +02:00 |
|
Hampus
|
841fb7af41
|
feat(auth): migrate passkeys to fluxer.com (#2964)
|
2026-09-25 22:33:50 +02:00 |
|
Hampus
|
6730a242db
|
feat(web): prepare the fluxer.com domain migration (#2952)
|
2026-09-25 13:43:34 +02:00 |
|
Hampus
|
dcd5f09d6a
|
feat(api): add env toggles for automatic phone flagging (#2927)
|
2026-09-24 03:36:35 +02:00 |
|
Hampus
|
18c303abf6
|
feat(push): relay notifications as encrypted web push (#2906)
|
2026-09-23 14:04:55 +02:00 |
|
Hampus
|
ba7d8781cf
|
feat(auth): make passkey two-factor authentication opt-in (#2857)
|
2026-09-20 05:06:50 +02:00 |
|
Hampus
|
f32356801d
|
feat(api): make tor and breached password lookups opt-in (#2834)
|
2026-09-19 01:22:17 +02:00 |
|
Hampus
|
56e04e7b53
|
test(backend): remove duplicate and useless tests (#2820)
|
2026-09-17 15:32:25 +02:00 |
|
Hampus
|
4cecbf1f43
|
fix(auth): disable TOTP with one code instead of two (#2816)
|
2026-09-17 04:21:50 +02:00 |
|
Hampus
|
84dcf6b8a8
|
refactor(imports): replace relative imports with path aliases (#2741)
|
2026-09-13 20:18:22 +02:00 |
|
Hampus
|
adab646d1e
|
fix(schema): preserve WebAuthn payloads and align fixtures (#2710)
|
2026-09-12 00:19:44 +02:00 |
|
Hampus
|
de1fd95a99
|
refactor(schema): simplify validation and OpenAPI generation (#2709)
|
2026-09-11 23:24:26 +02:00 |
|
Hampus
|
82859dc2f6
|
fix(api): keep a deferral while the phone gate state is unknown (#2554)
|
2026-09-06 23:41:29 +02:00 |
|
Hampus
|
7f8f09ee51
|
feat(admin)!: move the admin api to rest and fix its defects (#2515)
|
2026-09-06 15:36:41 +02:00 |
|
Hampus
|
cc110b9f5a
|
fix(api): raise coded errors for prerequisites and bounds (#2502)
|
2026-09-06 15:29:36 +02:00 |
|
Hampus
|
f8a04b8985
|
fix(api)!: enforce declared rate limits and correct route auth (#2500)
|
2026-09-06 15:28:32 +02:00 |
|
Hampus
|
f392636857
|
fix(auth): correct mfa errors, sudo methods and birth dates (#2498)
|
2026-09-06 15:27:30 +02:00 |
|
Hampus
|
bff29d8f07
|
fix(api)!: always send Retry-After and reclassify two limits (#2489)
|
2026-09-06 15:07:00 +02:00 |
|
Hampus
|
9b3773c1e6
|
feat(auth): let phone-gated accounts set the check aside (#2478)
|
2026-09-06 01:11:24 +02:00 |
|
Hampus
|
90c349392b
|
fix(auth): email code to view backup codes, fix login matching (#2433)
|
2026-09-03 21:06:30 +02:00 |
|
Hampus
|
f703969e80
|
fix(auth): require a hashed poll secret for desktop handoff (#2357)
|
2026-09-02 17:25:54 +02:00 |
|
Hampus
|
8dc2bad843
|
perf(auth): cache auth session lookups by token hash (#2225)
|
2026-08-31 01:04:51 +02:00 |
|
Hampus
|
6fd3177844
|
fix(auth): time-bound outbound fetches and re-key pwned cache (#2183)
|
2026-08-30 23:16:44 +02:00 |
|
Hampus
|
d297dc5805
|
feat(api): exempt APP_STORE_REVIEWER accounts from captcha (#2090)
|
2026-08-29 18:00:52 +02:00 |
|
Hampus
|
cf1a7d7a8a
|
fix(api): mask Tor blocks as administrator IP bans (#2023)
|
2026-08-26 16:07:19 +02:00 |
|
Hampus
|
9b0b703c9d
|
fix(api): identify session clients correctly and attribute handoff sessions (#1727)
|
2026-08-19 00:41:29 +02:00 |
|
Hampus
|
d7b2e67c35
|
feat(api): defer registration phone verification to community joins (#1709)
|
2026-08-18 05:13:41 +02:00 |
|
Hampus
|
6c68202222
|
fix(api): let SSO accounts without a password satisfy sudo verification (#1690)
|
2026-08-16 23:35:47 +02:00 |
|
 Sven Uhrenholdt FrenzelandHampus
|
a45693f581
|
feat: use client-provided SSO redirectUri (#1155)
Co-authored-by: Hampus <[email protected]>
|
2026-06-24 02:15:51 +02:00 |
|