Adds tests/timeline_pipeline_tests.rs with end-to-end integration tests that exercise the complete timeline pipeline against an in-memory SQLite database with realistic data: - pipeline_seed_expand_collect_end_to_end: Full scenario with an issue closed by an MR, state changes, and label events. Verifies that seed finds entities via FTS, expand discovers the closing MR through the entity_references graph, and collect assembles a chronologically sorted event stream containing Created, StateChanged, LabelAdded, and Merged events. - pipeline_empty_query_produces_empty_result: Validates graceful degradation when FTS returns zero matches -- all three stages should produce empty results without errors. - pipeline_since_filter_excludes_old_events: Verifies that the since timestamp filter propagates correctly through collect, excluding events before the cutoff while retaining newer ones. - pipeline_unresolved_refs_have_optional_iid: Tests the Option<i64> target_iid on UnresolvedRef by creating cross-project references both with and without known IIDs. - shared_resolve_entity_ref_scoping: Unit tests for the new shared resolve_entity_ref helper covering project-scoped lookup, unscoped lookup, wrong-project rejection, unknown entity types, and nonexistent entity IDs. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
12 KiB
12 KiB