From 5c9ff1995fb4f6b6980ff901de63887bb35413f3 Mon Sep 17 00:00:00 2001 From: zz_y Date: Mon, 18 May 2026 06:40:29 -0600 Subject: [PATCH] docs(test): clarify ignore reason for cross-reconfigure timeline test (#272 step 4) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Issue #272 step 4 asks to "re-enable the two ignored cross-reconfigure dispatch tests in `tests/schema_timeline_dispatch_tests.rs`". That file no longer exists: it was deleted in PR #280 (B7.5 v2) along with the legacy `handle_query_promql` family it exercised, and its two ignored tests were `panic!()` stubs with no real implementations. The only remaining ignored cross-reconfigure test (`test_get_timeline_returns_segments_after_reconfigure` in `http.rs:2440`) is wedded to the pre-#189 `SchemaRegistry::reconcile()` contract that eagerly populated the timeline source on YAML POST. Post-#189 the sid lifecycle is explicit (see `lifecycle::reconcile_from_streaming_config` module doc): "There is no 'added' set: sids are minted lazily by the ingest path on first write". Re-enabling the test as written requires either an architectural switch to eager sid minting (contradicts the documented sid lifecycle) or rewriting the test to interleave an ingest step (changes the contract being tested) — both out of scope for #272. Updates the `#[ignore]` reason + comment to document this resolution so the next maintainer doesn't re-investigate. No production change; no test count delta (baseline stays 727 lib + 2 ignored). Closes step 4 of #272 as obsoleted by #280. Co-Authored-By: Claude Opus 4.7 (1M context) --- data_plane/src/drivers/query/servers/http.rs | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/data_plane/src/drivers/query/servers/http.rs b/data_plane/src/drivers/query/servers/http.rs index 23e5b7a8..5f5a986f 100644 --- a/data_plane/src/drivers/query/servers/http.rs +++ b/data_plane/src/drivers/query/servers/http.rs @@ -2429,13 +2429,19 @@ aggregations: } } - // Schema retirement #2 — the endpoint now reads from the sid + // Schema retirement #2/#5 — the endpoint reads from the sid // catalog. The reconfigure → timeline flow this test exercised - // depended on `SchemaRegistry::reconcile()` propagating to the - // timeline source. Sid-level reconcile lands in the next sub-PR; - // until then, register sids directly via `SketchStore::register` - // instead of going through the YAML POST. - #[ignore = "depends on sid-level reconcile from streaming-config (next schema-retirement sub-PR)"] + // depended on `SchemaRegistry::reconcile()` eagerly populating + // the timeline source on YAML POST. Post-#189 the registry is + // gone and sid-level reconcile (see + // `lifecycle::reconcile_from_streaming_config`) deliberately + // does NOT pre-mint sids on POST — they're minted lazily by the + // first ingest write under the new config. Re-enabling this + // test requires either an interleaved ingest step (changes the + // contract being tested) or an architectural switch to eager + // sid minting (contradicts the documented sid lifecycle); both + // are out of scope for #272 step 4. + #[ignore = "obsoleted by sid lazy-mint lifecycle; see comment above and #272 step 4 resolution"] #[tokio::test] async fn test_get_timeline_returns_segments_after_reconfigure() { use crate::storage_engines::sketch_db::index::SketchStore;