feat(bridge): UnifiedTimeline K-way merge-sort + badge icônes (#54, #50, #52) #137

Merged
charles merged 2 commits from feat/54-50-52-unified-timeline into main 2026-04-06 02:22:17 +00:00
Owner

Résumé

Timeline unifiée multi-sources dans fractal-bridge :

  • UnifiedEvent : événement taggé BridgeType + room_id + timestamp_ms
  • RoomTimelineSource : source triée par timestamp pour un salon Matrix
  • UnifiedTimeline::next_batch(n) : K-way merge-sort via min-heap BinaryHeap
  • BridgeType::badge_icon() : nom d'icône GTK symbolique par réseau
  • Pagination : remaining() expose le compte restant
  • 4 tests unitaires (ordre chronologique, pagination, épuisement des sources)

Closes #50, #52, #54

Plan de test

  • cargo test -p fractal-bridge passe
  • Merge de 2 sources avec timestamps entrelacés donne un ordre chronologique strict
  • next_batch(3) sur 10 événements laisse 7 restants
## Résumé Timeline unifiée multi-sources dans `fractal-bridge` : - `UnifiedEvent` : événement taggé `BridgeType` + `room_id` + `timestamp_ms` - `RoomTimelineSource` : source triée par timestamp pour un salon Matrix - `UnifiedTimeline::next_batch(n)` : K-way merge-sort via min-heap `BinaryHeap` - `BridgeType::badge_icon()` : nom d'icône GTK symbolique par réseau - Pagination : `remaining()` expose le compte restant - 4 tests unitaires (ordre chronologique, pagination, épuisement des sources) Closes #50, #52, #54 ## Plan de test - [ ] `cargo test -p fractal-bridge` passe - [ ] Merge de 2 sources avec timestamps entrelacés donne un ordre chronologique strict - [ ] `next_batch(3)` sur 10 événements laisse 7 restants
feat(bridge): expose timeline module in lib.rs
Some checks failed
CI / cargo check (pull_request) Has been cancelled
CI / cargo test (pull_request) Has been cancelled
CI / clippy + rustfmt (pull_request) Has been cancelled
670ac95598
charles deleted branch feat/54-50-52-unified-timeline 2026-04-06 02:22:18 +00:00
Sign in to join this conversation.
No description provided.