Hampus
|
3b552e00ef
|
chore(deps): upgrade all dependencies, toolchains and images (#2825)
|
2026-09-17 21:08:56 +02:00 |
|
Tarek
|
f753659899
|
feat(instance): make the status page URL configurable (#1159)
|
2026-09-16 15:20:37 +02:00 |
|
Hampus
|
910db6734b
|
feat(experiments): ship seven treatments to everyone (#2798)
|
2026-09-15 18:03:35 +02:00 |
|
Hampus
|
951e39da3d
|
feat(api): add expression source guild routes (#2786)
|
2026-09-15 00:31:47 +02:00 |
|
Hampus
|
b693d84d2b
|
fix(openapi): restore named discriminated union branches (#2785)
|
2026-09-14 23:42:26 +02:00 |
|
Hampus
|
c212d315f4
|
fix(app): gate reworked typing indicators behind an experiment (#2782)
|
2026-09-14 21:54:52 +02:00 |
|
Hampus
|
d0c6146429
|
feat(app): gate a collapsing guild header behind an experiment (#2779)
|
2026-09-14 21:15:31 +02:00 |
|
Hampus
|
8ee2279b4b
|
feat(donations): add Nordic currencies, raise amount ceilings (#2775)
|
2026-09-14 20:27:24 +02:00 |
|
Hampus
|
6339c3b8ad
|
feat(app): gate the expression info card behind an experiment (#2773)
|
2026-09-14 20:14:58 +02:00 |
|
Hampus Kraft
|
a3d6cf37cb
|
fix(guild): render activity log entries deterministically (#2766)
|
2026-09-14 17:39:19 +02:00 |
|
Hampus
|
ed10f9d323
|
fix(app): gate blocked group rendering behind an experiment (#2763)
|
2026-09-14 16:08:19 +02:00 |
|
Hampus
|
4b278a0da8
|
fix(app): gate one-Tab message focus behind an experiment (#2762)
|
2026-09-14 15:55:00 +02:00 |
|
Hampus
|
1281045648
|
fix(app): gate single-source message hover behind an experiment (#2761)
|
2026-09-14 15:37:37 +02:00 |
|
Hampus
|
84dcf6b8a8
|
refactor(imports): replace relative imports with path aliases (#2741)
|
2026-09-13 20:18:22 +02:00 |
|
Hampus
|
5afbf67a70
|
refactor(api): tidy the api and shared packages (#2733)
|
2026-09-13 17:37:48 +02:00 |
|
Hampus
|
3affd295e8
|
feat(guild): require opt-in for emoji and sticker cloning (#2712)
|
2026-09-12 00:33:23 +02:00 |
|
Hampus
|
de1fd95a99
|
refactor(schema): simplify validation and OpenAPI generation (#2709)
|
2026-09-11 23:24:26 +02:00 |
|
Hampus
|
172791316b
|
feat(voice): add noise suppression backends and rollout (#2706)
|
2026-09-11 22:24:05 +02:00 |
|
Hampus
|
258fe6f742
|
feat(voice): add audio bitrate guild features and 96 kbps cap (#2703)
|
2026-09-11 22:00:15 +02:00 |
|
Hampus
|
3af43b3366
|
feat(api): add SEK, DKK and NOK as localized currencies (#2684)
|
2026-09-11 15:48:56 +02:00 |
|
Hampus
|
f708586c59
|
feat(api)!: always use localized pricing where it is offered (#2646)
|
2026-09-10 21:22:32 +02:00 |
|
Hampus
|
4a93b677af
|
feat(api): retire prices safely and add a self-serve switch (#2637)
|
2026-09-10 17:28:16 +02:00 |
|
Hampus
|
fbf0f6adfe
|
fix(app): load more bookmarks as the list scrolls (#2556)
|
2026-09-06 21:05:57 +02:00 |
|
Hampus
|
d07f520b13
|
fix(api)!: correct pagination and locking, drop toggle routes (#2505)
|
2026-09-06 15:31:13 +02:00 |
|
Hampus
|
f8a04b8985
|
fix(api)!: enforce declared rate limits and correct route auth (#2500)
|
2026-09-06 15:28:32 +02:00 |
|
Hampus
|
d5bfa5a73d
|
fix(api)!: align error codes with throw sites and image bounds (#2488)
|
2026-09-06 15:21:38 +02:00 |
|
Hampus
|
bec34ea147
|
fix(api)!: correct declared bounds and hide public bot mfa (#2485)
|
2026-09-06 15:06:15 +02:00 |
|
Hampus Kraft
|
5bcaa7cfac
|
fix(config)!: validate and derive config, drop the unread keys (#2482)
|
2026-09-06 15:02:20 +02:00 |
|
Hampus
|
ea93ef5352
|
fix(api): find every live route when generating openapi.json (#2484)
|
2026-09-06 14:54:21 +02:00 |
|
Hampus
|
8734956d86
|
fix(auth): explain why a phone number was rejected (#2480)
|
2026-09-06 03:09:26 +02:00 |
|
Hampus
|
9b3773c1e6
|
feat(auth): let phone-gated accounts set the check aside (#2478)
|
2026-09-06 01:11:24 +02:00 |
|
Hampus
|
ab68b61653
|
refactor: remove the CTP_MEMBER user flag (#2465)
|
2026-09-05 01:13:34 +02:00 |
|
Hampus
|
3f1f899b23
|
fix(api): keep a deprecated nsfw field for older clients (#2463)
|
2026-09-04 23:08:34 +02:00 |
|
Hampus
|
51cb750502
|
feat(api): drop NSFW classification for emojis and stickers (#2462)
|
2026-09-04 22:55:58 +02:00 |
|
Hampus
|
16ae98e189
|
fix(auth): regenerate backup codes with the emailed challenge (#2436)
|
2026-09-03 21:29:16 +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
|
a74f1b0e7b
|
fix(ci): clear knip, refresh openapi, close kv schema race (#2409)
|
2026-09-02 18:12:48 +02:00 |
|
Hampus
|
ef8d1225b5
|
refactor(api): split webhook attachment schemas (#2268)
|
2026-08-31 19:13:51 +02:00 |
|
Hampus
|
a5395b0109
|
fix(api): support presigned webhook attachments (#2264)
|
2026-08-31 18:54:25 +02:00 |
|
Hampus
|
b8f8d8d859
|
feat(expressions): remove the unfinished packs feature (#2250)
|
2026-08-31 16:34:22 +02:00 |
|
Hampus
|
eb1ed69489
|
chore(api): drop scheduled messages from the openapi spec (#2247)
|
2026-08-31 15:43:34 +02:00 |
|
Hampus
|
5f6f9428ac
|
build(api): bundle the api instead of transpiling at boot (#2227)
|
2026-08-31 01:26:30 +02:00 |
|
Hampus
|
21b1e4e719
|
perf(ready): stop sending read state twice per session (#2223)
|
2026-08-31 01:04:43 +02:00 |
|
Hampus
|
b4d9cdc584
|
refactor(voice): remove heartbeat and debug logging sessions (#2121)
|
2026-08-30 21:08:46 +02:00 |
|
Hampus
|
805acf4e5e
|
feat(ban): accept delete_message_seconds and app options (#2086)
|
2026-08-29 16:22:12 +02:00 |
|
Hampus
|
cf1a7d7a8a
|
fix(api): mask Tor blocks as administrator IP bans (#2023)
|
2026-08-26 16:07:19 +02:00 |
|
Hampus
|
bd4117fa0a
|
feat(api): stream harvest downloads from the configured s3 bucket (#1979)
|
2026-08-24 14:39:05 +02:00 |
|
Hampus
|
735ecc1cca
|
fix(api): distinguish a deleted reply target from no reply (#1884)
|
2026-08-24 12:39:11 +02:00 |
|
Hampus
|
591e9fe2ba
|
fix(api): only finalize self-serve refunds once the provider confirms (#1731)
|
2026-08-19 02:57:58 +02:00 |
|
Hampus
|
d148b4e5b7
|
feat(app): show 25 unread messages per channel in the inbox (#1729)
|
2026-08-19 01:06:00 +02:00 |
|