-
4efa35f311
feat(federation): add soft-delete GC for empty group DMs with 24h grace period
Jannis Braun
2026-03-26 20:35:55 +01:00
-
62a16e884a
feat(federation): extend catch-up sync to include group DMs and membership mutations
Jannis Braun
2026-03-26 20:28:19 +01:00
-
f7ba391678
feat(federation): handle group DM messages via federatedId lookup in relay processor
Jannis Braun
2026-03-26 20:26:23 +01:00
-
242004e8ee
feat(federation): add membership mutation receiver processors
Jannis Braun
2026-03-26 20:23:40 +01:00
-
6a83b6c6a5
fix(federation): compute relay targets before member deletion in leave handler
Jannis Braun
2026-03-26 20:19:55 +01:00
-
f072568b8a
feat(federation): relay membership mutations from dm.ts to federation outbox
Jannis Braun
2026-03-26 20:14:52 +01:00
-
514d46c82e
feat(federation): add participant-aware fan-out routing for group DMs
Jannis Braun
2026-03-26 20:10:51 +01:00
-
0742c37ca1
refactor(federation): rename canonicalDmPairId to computeFederatedId
Jannis Braun
2026-03-26 20:08:37 +01:00
-
6f901f4a7a
feat(shared): add group DM federation event types and payloads
Jannis Braun
2026-03-26 20:05:47 +01:00
-
3b16d9e2ce
fix(schema): fix migration ordering hazard and FK guard for table rebuild
Jannis Braun
2026-03-26 20:04:34 +01:00
-
d9dc33bd36
feat(schema): rename canonical_pair_id to federated_id, add group DM columns
Jannis Braun
2026-03-26 19:59:44 +01:00
-
742d851aae
fix(federation): branching message lookup in reaction relay processors
Jannis Braun
2026-03-26 18:44:23 +01:00
-
92be236251
fix(federation): use canonical message identity in reaction outbox payloads
Jannis Braun
2026-03-26 18:41:18 +01:00
-
c3f342a411
feat(shared): add messageHomeInstance to FederationRelayReaction type
Jannis Braun
2026-03-26 18:40:05 +01:00
-
22664a6a14
refactor(federation): extract getOurOrigin() into shared federationAuth export
Jannis Braun
2026-03-26 18:36:26 +01:00
-
10d4ca0110
chore: remove unused broadcastDmMessage import from federation.ts
Jannis Braun
2026-03-26 17:58:24 +01:00
-
6bf2a2621c
fix(federation): skip broadcasting relay messages to source-instance users
Jannis Braun
2026-03-26 17:57:07 +01:00
-
523cb0c4b3
fix(federation): deduplicate relay DM messages in chatStore
Jannis Braun
2026-03-26 17:55:58 +01:00
-
62f1d637ac
feat(federation): surface sourceMessageId/sourceInstance in DM message payloads
Jannis Braun
2026-03-26 17:54:24 +01:00
-
f00dfe6e27
feat(shared): add sourceMessageId and sourceInstance to DmMessage type
Jannis Braun
2026-03-26 17:54:17 +01:00
-
6ccf7fedbb
fix(federation): stop destructive dm_messages migration from re-running on every deploy
Jannis Braun
2026-03-26 17:54:07 +01:00
-
f362f5530c
fix(federation): prevent duplicate DM sidebar entries from relay broadcasts
Jannis Braun
2026-03-26 14:45:04 +01:00
-
a21243256e
fix(federation): fix reaction relay using wrong ID for message lookup
Jannis Braun
2026-03-26 14:27:48 +01:00
-
086195aa7c
fix(federation): generate thumbnails for downloaded federated attachments
Jannis Braun
2026-03-26 06:46:14 +01:00
-
4ed9b30ce9
fix(federation): don't copy source thumbnail filename to relay attachments
Jannis Braun
2026-03-26 06:37:26 +01:00
-
ee8abc1022
fix(federation): file worker UPDATEs existing attachment rows + broadcasts
Jannis Braun
2026-03-26 06:23:12 +01:00
-
50f7a398dc
fix(federation): create attachment rows immediately in processCreateEvent
Jannis Braun
2026-03-26 06:21:01 +01:00
-
ca591024cf
refactor(federation): replace outbox hooks in events.ts with queueDmRelay()
Jannis Braun
2026-03-26 06:17:51 +01:00
-
b49be65dcd
refactor(federation): replace outbox hooks in dm.ts with queueDmRelay()
Jannis Braun
2026-03-26 06:15:13 +01:00
-
58e6dbabcd
feat(federation): add queueDmRelay() to consolidate relay payload construction
Jannis Braun
2026-03-26 06:12:56 +01:00
-
cf9fcb78ed
fix(federation): add participants array to relay events and fix recipient resolution
Jannis Braun
2026-03-26 05:36:41 +01:00
-
cb9a70d7a6
fix(federation): use canonical_pair_id for sync scope instead of home_instance matching
Jannis Braun
2026-03-26 04:41:00 +01:00
-
49f88c2552
fix(federation): actually remove source_instance IS NULL filter from sync SQL queries
Jannis Braun
2026-03-26 04:37:47 +01:00
-
277ff0e50c
fix(federation): sync ALL locally-created messages, not just local-home-user messages
Jannis Braun
2026-03-26 04:34:13 +01:00
-
ae004b72e1
feat(federation): trigger checkpoint sync on startup for peers that have never been synced
Jannis Braun
2026-03-26 04:30:54 +01:00
-
a3d41fd568
fix(federation): handle existing canonical_pair_id during backfill by merging duplicate first
Jannis Braun
2026-03-26 04:25:03 +01:00
-
306e26a525
fix(federation): remove require('crypto') — already imported as ESM at top of file
Jannis Braun
2026-03-26 04:22:08 +01:00
-
960ca1c97f
fix(federation): set correct homeInstance in relay payload and fix canonical backfill SQL
Jannis Braun
2026-03-26 04:19:18 +01:00
-
4a109f71da
fix(federation): backfill canonical_pair_id and merge duplicate DM channels
Jannis Braun
2026-03-26 04:15:12 +01:00
-
73a4b69fe6
fix(federation): auto-peering on reconnect and DM deduplication across origins
Jannis Braun
2026-03-26 03:59:59 +01:00
-
b34732e064
fix(federation): enable relay by default — it fixes a bug, not an optional feature
Jannis Braun
2026-03-26 03:54:20 +01:00
-
2b2f64e7f9
fix: prune stale Docker images and build cache after each deploy
Jannis Braun
2026-03-26 03:31:52 +01:00
-
c5188c1702
fix(federation): fix TypeScript strict mode error in parseFederationHeaders
Jannis Braun
2026-03-25 21:51:35 +01:00
-
46e6f8a7e2
feat(federation): add cleanup functions for outbox, mutation log, and file queue TTL
Jannis Braun
2026-03-25 21:48:46 +01:00
-
44de9b6f41
feat(federation): add client peering integration, transparency indicator, and admin federation settings
Jannis Braun
2026-03-25 21:47:10 +01:00
-
3898e4940a
feat(federation): add outbox delivery, file queue download, and health check workers
Jannis Braun
2026-03-25 21:39:32 +01:00
-
7f20a4517c
feat(federation): implement checkpoint sync endpoint using mutation log
Jannis Braun
2026-03-25 21:33:47 +01:00
-
5b9272e22b
feat(federation): implement relay receive endpoint with dedup, channel mapping, SSRF validation
Jannis Braun
2026-03-25 21:27:28 +01:00
-
fbdec82172
feat(federation): add peering handshake and admin peer management endpoints
Jannis Braun
2026-03-25 21:19:47 +01:00
-
32a0c2e618
feat(federation): hook outbox and mutation log into DM message and reaction handlers
Jannis Braun
2026-03-25 21:14:34 +01:00
-
88ad1c676d
feat(federation): add outbox coalescing writer, mutation log, and relay helpers
Jannis Braun
2026-03-25 21:07:16 +01:00
-
2ff53a3f9b
feat(federation): add HMAC signing and verification utilities
Jannis Braun
2026-03-25 21:03:03 +01:00
-
6afddab54e
feat(federation): add shared types for relay events, sync, and peer management
Jannis Braun
2026-03-25 21:01:26 +01:00
-
4726eeb097
feat(federation): add migrations for federation tables, indexes, and mutation log backfill
Jannis Braun
2026-03-25 21:00:10 +01:00
-
c80d565f7f
feat(federation): add federation tables and columns to schema
Jannis Braun
2026-03-25 20:53:43 +01:00
-
a1363a1ab3
fix: match GIF-only message size to standard media constraints
Jannis Braun
2026-03-25 14:42:27 +01:00
-
f7fa7371d6
fix: hide Open Original when sourceUrl is present to avoid redundancy
Jannis Braun
2026-03-25 05:13:14 +01:00
-
e0d45da97c
refactor: skip imageEmbedSourceUrl computation when isGifOnly is true
Jannis Braun
2026-03-25 05:05:49 +01:00
-
4fd72cd29b
fix: remove redundant !isEditing guard in image-embed-only branch
Jannis Braun
2026-03-25 05:02:38 +01:00
-
001d45da2b
feat: suppress URL text for image-only messages, add sourceUrl to context menu
Jannis Braun
2026-03-25 04:59:53 +01:00
-
5c45a55ef7
fix: add clipboard error handling for Copy Link context menu item
Jannis Braun
2026-03-25 04:58:27 +01:00
-
d1fad2b262
feat: add sourceUrl param to context menu with Copy Link and Open Link items
Jannis Braun
2026-03-25 04:55:44 +01:00
-
f433093777
fix: remove 150px threshold from scroll observers
Jannis Braun
2026-03-25 04:50:24 +01:00
-
6817f65e56
docs: update instance_settings schema in CLAUDE.md (add missing columns + allow_custom_bitrate)
Jannis Braun
2026-03-25 04:09:54 +01:00
-
f0104d19b7
feat: conditionally show bitrate slider based on instance allowCustomBitrate
Jannis Braun
2026-03-25 04:09:18 +01:00
-
3627974ba1
feat: add Allow Custom Bitrate toggle to admin streaming panel
Jannis Braun
2026-03-25 04:08:10 +01:00
-
de6db687c4
feat: enforce allowCustomBitrate flag in stream option builders
Jannis Braun
2026-03-25 04:07:15 +01:00
-
64d919c765
feat: add allowCustomBitrate to DEFAULT_LIMITS in settingsStore
Jannis Braun
2026-03-25 04:05:50 +01:00
-
b4582a53f1
feat: wire allowCustomBitrate through rowToLimits and PATCH handler in settings route
Jannis Braun
2026-03-25 04:05:48 +01:00
-
f02cb4e52a
feat: add allow_custom_bitrate column to instance_settings schema and migration
Jannis Braun
2026-03-25 04:05:43 +01:00
-
35573c9f37
feat: add allowCustomBitrate to InstanceStreamingLimits shared type
Jannis Braun
2026-03-25 04:05:40 +01:00
-
c60fb5af6d
fix: resolve chat scroll race condition on channel open
Jannis Braun
2026-03-25 04:03:14 +01:00
-
dae6f2d518
fix: remove forced 4/3 aspect ratio and dark background from image containers
Jannis Braun
2026-03-25 03:37:18 +01:00
-
c255b0066a
fix: copy GIF URLs as text to preserve animation
Jannis Braun
2026-03-25 03:28:00 +01:00
-
aeb4ea6e1d
fix: exclude embed thumbnails from image context menu actions
Jannis Braun
2026-03-25 03:23:23 +01:00
-
4ea319646a
feat: add save/copy buttons to image preview modal
Jannis Braun
2026-03-25 03:19:17 +01:00
-
91ffbb5d0a
fix: add noopener to window.open fallback in saveImage
Jannis Braun
2026-03-25 03:15:54 +01:00
-
97f0ebc915
feat: add image actions to message context menu
Jannis Braun
2026-03-25 03:13:58 +01:00
-
74939f045f
feat: add data-avatar attribute for image context menu exclusion
Jannis Braun
2026-03-25 03:10:37 +01:00
-
6bd2100e04
feat: add saveImage and copyImageToClipboard utilities
Jannis Braun
2026-03-25 03:09:51 +01:00
-
78555a43f8
fix(voice): stabilize grid layout across focus-mode and fullscreen transitions
Jannis Braun
2026-03-25 03:08:45 +01:00
-
7240aac2e0
fix(social): allow single-char search and prefer native federated profiles
Jannis Braun
2026-03-25 02:26:33 +01:00
-
f0e72dc257
fix(social): deduplicate federated search results by canonical identity
Jannis Braun
2026-03-25 02:19:51 +01:00
-
d59ec4abf2
Merge branch 'feature/unified-friend-search'
Jannis Braun
2026-03-25 02:07:29 +01:00
-
-
277b69a732
test(friends): update tests for unified friend search UI
Jannis Braun
2026-03-25 02:06:01 +01:00
-
a9266a3ad8
feat(friends): rewrite AddFriendTab with unified search
Jannis Braun
2026-03-25 02:01:44 +01:00
-
30c3b9b352
fix(web): add aspect-ratio fallback for markdown inline images
Jannis Braun
2026-03-25 01:56:33 +01:00
-
970af77169
refactor(friends): extract onRelationshipChange prop from UserDiscoverCard
Jannis Braun
2026-03-25 01:56:25 +01:00
-
995c71367e
fix(web): add aspect-ratio fallback for bare GIF URL messages
Jannis Braun
2026-03-25 01:56:08 +01:00
-
234ee9cd23
fix(web): add 16:9 aspect-ratio reservation to direct video embeds
Jannis Braun
2026-03-25 01:55:41 +01:00
-
b96c16b622
fix(web): add dimension reservation to ImageEmbed component
Jannis Braun
2026-03-25 01:55:12 +01:00
-
4e170f0b69
feat(social): add TaggedUser type and origin-tag searchUsers results
Jannis Braun
2026-03-25 01:54:36 +01:00
-
123e40bb9a
feat(server): populate embed width/height from OG tags and image probing
Jannis Braun
2026-03-25 01:53:39 +01:00
-
-
bbb2c8bd19
feat(server): extract og:image:width/height from HTML metadata
Jannis Braun
2026-03-25 01:51:31 +01:00
-
2f883c6f63
refactor(server): extract SSRF validation into shared ssrf.ts utility
Jannis Braun
2026-03-25 01:48:18 +01:00
-
d9094fabe1
feat(ws): re-push activities on new instance connections
Jannis Braun
2026-03-24 22:00:28 +01:00
-
9705304be9
feat(activity): fan out activity updates to all connected instances
Jannis Braun
2026-03-24 21:55:45 +01:00
-
38ffc214f0
test(context-menu): add tests for reactive checkbox behavior
Jannis Braun
2026-03-24 21:53:46 +01:00
-
7f4f40a1e5
feat(ws): add wsSendAll utility for multi-instance broadcast
Jannis Braun
2026-03-24 21:52:51 +01:00
-
0d91df166a
fix(context-menu): update all checkbox call sites to reactive subscribe+getChecked
Jannis Braun
2026-03-24 21:48:26 +01:00