Commit Graph

  • e99e0e7862 fix(social): tighten comment on federated-stub filter Jannis Braun 2026-04-25 19:12:40 +02:00
  • b37d3bfa29 fix(social): apply discover-equivalent filters to /api/social/search Jannis Braun 2026-04-25 18:42:05 +02:00
  • 9aa40c0304 docs: refresh stale embed renderer descriptions after Task 1 Jannis Braun 2026-04-25 13:15:14 +02:00
  • 56830972f4 docs(embeds): document bidirectional dimension reservation contract Jannis Braun 2026-04-25 13:12:10 +02:00
  • d659637930 docs(message-list): note smooth-scroll exclusion; point sentinel comment at subsystem doc Jannis Braun 2026-04-25 13:11:05 +02:00
  • 4b040114ed docs: add docs/systems/message-list.md subsystem spec Jannis Braun 2026-04-25 13:06:44 +02:00
  • d18845acb5 fix(web): close handleScroll race that disabled auto-bottom on cold-cache image load Jannis Braun 2026-04-25 13:02:01 +02:00
  • 84ec8e04b7 fix(web): restore known-dimension reservation in ImageEmbed without letterbox fallback Jannis Braun 2026-04-25 12:53:11 +02:00
  • 7c6065c52b Merge branch 'feat/prelaunch-cleanup-bundle' Jannis Braun 2026-04-25 11:22:58 +02:00
  • f0d6bf2ed9 fix(federation): persist remote instance_name from approval-requests/:id/approve handshake response Jannis Braun 2026-04-25 11:18:12 +02:00
  • 4aced5654b docs(federation): document bidirectional instanceName exchange during peer handshake Jannis Braun 2026-04-25 01:00:26 +02:00
  • a9bf5aeb53 fix(dm): include federatedId in POST /api/dm idempotent existing-DM response Jannis Braun 2026-04-25 00:57:06 +02:00
  • 618056659e fix(federation): persist remote instance_name from /peer/initiate handshake response Jannis Braun 2026-04-25 00:48:42 +02:00
  • 18d6b0acfa fix(federation): persist remote instance_name when ensurePeered/performHandshake succeeds Jannis Braun 2026-04-25 00:45:06 +02:00
  • eba16e16a3 fix(federation): include own instanceName in /peer/accept response body Jannis Braun 2026-04-25 00:37:59 +02:00
  • 7fe9476e57 fix(federation): persist peer instance_name on /peer/accept activation paths Jannis Braun 2026-04-25 00:31:34 +02:00
  • 940a0f7ba9 Merge branch 'feat/migration-squash-phase-2' Jannis Braun 2026-04-24 23:57:41 +02:00
  • 798aa22690 docs(systems): rewrite database.md migration workflow section after migration squash Jannis Braun 2026-04-24 23:38:47 +02:00
  • ab5e7c8839 refactor(server): delete baseline + heal functions now unreachable under single-baseline history Jannis Braun 2026-04-24 23:33:35 +02:00
  • 707d3217f1 refactor(server): squash drizzle migrations 0000-0004 into single baseline Jannis Braun 2026-04-24 23:26:20 +02:00
  • a181b1ad10 Merge branch 'feat/remote-200-no-recipient' Jannis Braun 2026-04-24 22:35:39 +02:00
  • f6de72d556 chore(verify): #18 live Pi↔VM scenarios A-D pass Jannis Braun 2026-04-24 21:41:34 +02:00
  • 2dbd2b9b9f test(server): add undeliverable:[] to processRelayEvents mock (#18) Jannis Braun 2026-04-24 21:24:18 +02:00
  • 34622a4290 docs(systems): #18 review followups — bullet formatting + host_unreachable phase Jannis Braun 2026-04-24 21:22:21 +02:00
  • 6edf02cb33 docs(systems): document three-way ack classification + no_recipient (#18) Jannis Braun 2026-04-24 21:19:34 +02:00
  • b16ece93b8 feat(web): no_recipient toast copy arm (#18) Jannis Braun 2026-04-24 21:15:21 +02:00
  • 26a4925032 feat(server): reclassify undeliverable targeted-peer as no_recipient failure (#18) Jannis Braun 2026-04-24 21:11:11 +02:00
  • 7d2137b6d4 feat(server): sendCallRelay surfaces undeliverable messageIds (#18) Jannis Braun 2026-04-24 21:05:28 +02:00
  • 7533d8ca14 feat(server): Path A connection gate + undeliverable on zero ringee (#18) Jannis Braun 2026-04-24 21:01:19 +02:00
  • 792634c2cf feat(server): Path B zero-match → undeliverable ack (#18) Jannis Braun 2026-04-24 19:34:34 +02:00
  • 0057cb4d42 refactor(server): thread undeliverable collector through processRelayEvents (#18) Jannis Braun 2026-04-24 19:17:27 +02:00
  • 3988c5823a feat(shared): add no_recipient reason + undeliverable response field (#18) Jannis Braun 2026-04-24 19:12:54 +02:00
  • a68eab3edc Merge branch 'feat/remote-participant-host-unreachable' Jannis Braun 2026-04-24 01:09:35 +02:00
  • 5c94bc7669 refactor(server): remove unused admin_reset PeerDeactivationReason Jannis Braun 2026-04-24 01:07:47 +02:00
  • 7c0dd33123 docs(systems): document host_unreachable phase + onPeerDeactivated + sentinel Jannis Braun 2026-04-24 00:54:46 +02:00
  • 5e509cf3df feat(web): host_unreachable phase copy for dm_call_undeliverable (TDD) Jannis Braun 2026-04-24 00:51:30 +02:00
  • 314df6c5a1 feat(server): 30s federated-call sentinel worker (TDD) Jannis Braun 2026-04-24 00:49:04 +02:00
  • 71445c5f27 feat(server): wire onPeerDeactivated at admin revoke/reset sites Jannis Braun 2026-04-24 00:45:02 +02:00
  • 8e6639648e feat(server): wire onPeerDeactivated on performHandshake 403 rejection Jannis Braun 2026-04-24 00:43:32 +02:00
  • 743fdcac97 feat(server): wire onPeerDeactivated at federationWorker peer-deactivation sites Jannis Braun 2026-04-24 00:42:20 +02:00
  • 0a8949fbfb feat(server): onPeerDeactivated utility mirrors onPeerActivated (TDD) Jannis Braun 2026-04-24 00:40:42 +02:00
  • 3b61380a1e feat(server): ConnectionManager.evictFederatedCallsForHost (TDD) Jannis Braun 2026-04-24 00:37:44 +02:00
  • 942619f422 feat(shared): add 'host_unreachable' phase to DmCallPhase Jannis Braun 2026-04-24 00:34:05 +02:00
  • 726341f8f8 Merge branch 'feat/call-state-machine-hardening' Jannis Braun 2026-04-23 23:44:49 +02:00
  • 1e59e7012c fix(server): scope accept-rollback terminal to the acceptor only Jannis Braun 2026-04-23 23:38:31 +02:00
  • 1719e6d580 docs(systems): document federation call state machine hardening Jannis Braun 2026-04-23 23:23:06 +02:00
  • 6a5b02b1a0 feat(web): phase-aware dm_call_undeliverable toast copy (TDD) Jannis Braun 2026-04-23 23:21:40 +02:00
  • f6252b8ce1 feat(server): fan dm_call_end out on host ring timeout Jannis Braun 2026-04-23 23:19:42 +02:00
  • 6cd7728f3e feat(server): fanOutCallEvent returns failures; surface to host-side caller Jannis Braun 2026-04-23 23:14:50 +02:00
  • 3cb80d110d feat(server): aggregate Path-1 call fan-out failures and surface to originator Jannis Braun 2026-04-23 23:12:55 +02:00
  • 13241345de feat(server): surface dm_call_end relay failure to originator (TDD) Jannis Braun 2026-04-23 23:11:20 +02:00
  • 5170d316ba feat(server): surface dm_call_reject relay failure to rejector (TDD) Jannis Braun 2026-04-23 23:10:18 +02:00
  • 07c5b0e7de feat(server): surface dm_call_accept relay failure to acceptor (TDD) Jannis Braun 2026-04-23 23:09:18 +02:00
  • 06e1ed92e7 refactor(server): add buildFailureFromResult + CallFanoutFailure types Jannis Braun 2026-04-23 23:07:07 +02:00
  • 5e9b353124 feat(shared): add DmCallPhase to dm_call_undeliverable event Jannis Braun 2026-04-23 23:06:16 +02:00
  • fe01b94876 Merge branch 'fix/dev-db-rename-drift' Jannis Braun 2026-04-23 03:20:08 +02:00
  • 06c538b013 fix(server): rebuild empty drifted tables to heal pre-rename column drift Jannis Braun 2026-04-23 03:19:56 +02:00
  • 02a8b27d2b Merge branch 'fix/joinspace-tests-and-dev-db-drift' Jannis Braun 2026-04-23 03:00:49 +02:00
  • e703e29f8a fix(server): heal 0000-baseline schema drift after baselining existing installs Jannis Braun 2026-04-23 03:00:30 +02:00
  • 086158511c test(join-space): update stale assertions to match current UI and API Jannis Braun 2026-04-23 02:52:00 +02:00
  • 7220f4cbcd Merge branch 'fix/cross-store-resolver-tdz' Jannis Braun 2026-04-23 02:46:37 +02:00
  • 4d2e50b55b fix(web): extract cross-store resolvers into neutral utility to break TDZ Jannis Braun 2026-04-23 02:46:19 +02:00
  • 15d2a3f163 Merge branch 'fix/pre-existing-test-failures' Jannis Braun 2026-04-23 02:29:20 +02:00
  • ae5bdaa338 test(friends): drop stale origin arg from addDmChannel assertion Jannis Braun 2026-04-23 02:28:57 +02:00
  • 9fbe07571e test(web): polyfill localStorage/sessionStorage in jsdom env Jannis Braun 2026-04-23 02:23:05 +02:00
  • ff39ab077d Merge branch 'feat/dm-origin-failover' Jannis Braun 2026-04-23 02:04:21 +02:00
  • de0b6c2a42 docs(federation): document DM origin failover mechanism Jannis Braun 2026-04-23 01:31:22 +02:00
  • b1844e126f feat(federation): dmAlternatives fallback in dm_message_created Jannis Braun 2026-04-23 01:29:28 +02:00
  • cd1f5c2b64 feat(federation): trigger DM failover on user-initiated disconnect Jannis Braun 2026-04-23 01:25:42 +02:00
  • 1a23871367 feat(federation): trigger DM failover on setInstanceStatus transition Jannis Braun 2026-04-23 01:22:06 +02:00
  • d393a870c2 feat(federation): dmOriginFailover utility (rekey + failover) Jannis Braun 2026-04-23 01:13:48 +02:00
  • 678790b88b feat(federation): resolveDmChannelId for alternate-origin DM ids Jannis Braun 2026-04-23 01:06:46 +02:00
  • d66932362a feat(chat): rekeyChannelState moves channel state from oldId to newId Jannis Braun 2026-04-23 01:04:42 +02:00
  • e7430f1a54 feat(federation): prune dmAlternatives on removeInstanceSpaces Jannis Braun 2026-04-23 01:02:05 +02:00
  • 088fd40834 feat(federation): record DM origin alternatives in spaceStore Jannis Braun 2026-04-23 00:58:37 +02:00
  • f1827872aa Merge branch 'fix/outbox-duplicate-terminal' Jannis Braun 2026-04-23 00:12:13 +02:00
  • 6ff983b46c fix(federation): treat duplicate rejection as terminal in outbox worker Jannis Braun 2026-04-23 00:10:34 +02:00
  • 3252868152 Merge branch 'fix/sync-poison-pill-skip' Jannis Braun 2026-04-22 01:46:49 +02:00
  • 15e42a7cc1 fix(federation): per-event fault isolation in syncPeerMutationLog (#25) Jannis Braun 2026-04-22 01:45:14 +02:00
  • 091988c718 Merge branch 'feat/peer-activation-recovery' Jannis Braun 2026-04-22 01:35:32 +02:00
  • 911c7e3479 fix(federation): ensurePeered must not auto-heal needs_attention peers Jannis Braun 2026-04-22 01:27:07 +02:00
  • d5d56db254 docs(federation): document peer-activation recovery Jannis Braun 2026-04-22 00:57:57 +02:00
  • 3fe7500ff0 feat(federation): /sync serializers for 5 new event types Jannis Braun 2026-04-22 00:53:46 +02:00
  • a23e02339e feat(federation): capture dm_close/reopen/read_state/profile/file_rejected in mutation log Jannis Braun 2026-04-22 00:48:49 +02:00
  • 250596c0f6 feat(federation): wire onPeerActivated into 8 transition sites Jannis Braun 2026-04-22 00:39:58 +02:00
  • 57d7ca66d3 fix(federation): explicit per-status handling in queueOutboxEvent Jannis Braun 2026-04-22 00:34:43 +02:00
  • ae035eba9b fix(federation): remove dead processRelayEvents import Jannis Braun 2026-04-22 00:30:54 +02:00
  • 02a1ed73f4 refactor(federation): replace runInitialSyncForNewPeers with startupBootstrapSync Jannis Braun 2026-04-22 00:28:18 +02:00
  • cca2245cdf feat(federation): implement onPeerActivated with dedup Jannis Braun 2026-04-22 00:24:57 +02:00
  • 39c43032e8 fix(federation): address Task 3 review — pagination test + polish Jannis Braun 2026-04-22 00:21:34 +02:00
  • 5c1b42938e feat(federation): implement syncPeerMutationLog Jannis Braun 2026-04-22 00:15:48 +02:00
  • fd37e0c604 feat(federation): implement resetOutboxBackoff Jannis Braun 2026-04-22 00:10:27 +02:00
  • 14a96efa58 feat(federation): scaffold peer-activation recovery module Jannis Braun 2026-04-22 00:06:17 +02:00
  • 24c1d5f83d Merge branch 'fix/peer-initiate-202' Jannis Braun 2026-04-21 22:44:44 +02:00
  • 531104fecc fix(federation): handle 202 in admin /peer/initiate handshake Jannis Braun 2026-04-21 22:41:44 +02:00
  • 43f0c40685 Merge branch 'feat/federation-cleanup-sweep' Jannis Braun 2026-04-21 22:36:02 +02:00
  • 95c9666213 build(server): drop stale project reference to @backspace/shared Jannis Braun 2026-04-21 22:27:51 +02:00
  • 4b398cf45a types(web): unify FederationPeer with shared type Jannis Braun 2026-04-21 22:21:47 +02:00
  • 010aa7f7ca fix(schema): normalize federation_peers.consecutive_failures to NOT NULL Jannis Braun 2026-04-21 22:21:06 +02:00
  • 0d74d1d112 perf(federation-worker): tighten health-check cadence to 15 min Jannis Braun 2026-04-21 22:16:09 +02:00