Skip to content

Commit 37bda41

Browse files
committed
T1.25b rebase: onto the new phase head, the base in the tracker
Rebased onto de247a3 (T1.24b part 1's landing); the tree differs from acbbf11, which both reviewers approved, only in that landing's bridge_freeze.py and selftest.py. Refs: T1.24b Signed-off-by: Adi Wadaskar <awadaskar@nvidia.com>
1 parent f4d127a commit 37bda41

1 file changed

Lines changed: 1 addition & 1 deletion

File tree

‎docs/design/rust-core/phase-1/tracker.md‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ A task's checks are active from the moment it lands, as listed in the design's t
5252
| T1.24 `Schema.from_source` core route | 1b | done | Landed at e93c707; candidate run 38152766196 green at e54c1b1; landing runs 38155031201 (lane) and 38155031064 (phase) green; `BASE_SHA` and `CHECKPOINT_SHA` e7950b3, rebased from e2d86b0; both approve at e54c1b1 (1 fix round) | Contract version 13 (E61): `Schema.from_source` with tables named on the core, the bridges' option refusals passed through and refused by name in the core, a time column cleared taken, `table_source` lifted, `Schema` pickles held; the AdventureWorks map's three T1.24 entries gone and its probes' masked inputs restored; split at its natural seam, the edit semantics and `schema_edited` to T1.24b (E61(d)); P1B-2 to P1B-5, P1B-10 and P1B-11 rewritten as measured and P1B-12 added (fix round 1), proposed; as built in [as-built.md](as-built.md#t124), notes in [Fix-round histories](#fix-round-histories) |
5353
| T1.24b The schema's edit semantics in `sdm-schema` | 1b | not started | | Unblocked by the owner 2026-10-11 (E66(g)), on lane 1b after T1.26b: a core `edit_schema` operation and an allowance for the glue in the frozen setters. Split from T1.24 at T1.24 (E61(d)): the live object's edit semantics (E59(e)) and `schema_edited`'s pass-through; the shape (a small `edit_schema` operation, recommended, or deferring to `materialize`'s consistency check) for the owner to confirm, and how the frozen setters route a core-built schema's edit (an owner-approved allowance, or subclasses in `_rust/`); refused edits' cross-host parity cases with shared loader vectors; the freeze's helpers moved or reviewed |
5454
| T1.25 Time module on `jiff` | 1b | done | Landed at 4207083; candidate run 38167322273 green at b2d791c; landing runs 38169167110 (lane) and 38169166908 (phase, green on its second attempt after an infrastructure image-pull failure) green; `BASE_SHA` and `CHECKPOINT_SHA` e93c707; both approve at b2d791c (1 fix round) | Contract version 14 (E62): `Instant`, `Span` and civil arithmetic, zones by 400-year cycles past `jiff`'s range (range-end vectors in every vendored zone, DT-10); `text_shapes` from `date-rules.md` and the engine's two readings of text times, held to pandas by `text-times.json`, the SQL source's picked by the provider's `text_times` capability (DT-7); inference reads text as dates, the day-first format warned of; `materialize` reads dates, zoned timestamps and text times, a zoned anchor in the core (the ledger's row moved); the session zone settled as the reference's machine zone (DT-13); the maps' `text_time` and `time_type` gone, the source's CAST failure registered (DT-12) and mixed offsets refused by name (DT-11); T1.26 split into T1.26a and T1.26b; as built in [as-built.md](as-built.md#t125), notes in [Fix-round histories](#fix-round-histories) |
55-
| T1.25b Text times by a fixed list of formats | 1a | in progress | Started on lane `rust-core-phase-1-lane-1a` at b455b94; `BASE_SHA` and `CHECKPOINT_SHA` b455b94; candidate complete, for review; lands by its landing commit, whose SHA and CI run the next package records (E25) | Added by the owner 2026-10-11 (E66(h)). `sdm-engine::time::text` reads text by `date-rules.md`'s "The core's text formats" (ISO 8601 and RFC 3339 and the client's two shapes, parsed by `jiff`'s `strtime`, the client's order and two-digit year rules), everything else refused by name (`text_time`; an open order `text_time_order`); inference scores at fewest and at most; DT-7's capability and `DATES_READ_DAY_FIRST` kept; contract unchanged (E68). `text.rs` 884 to 624 lines. Vectors: `text-times.json` from the spec apart from the reader (2,360 columns), `text-times-differential.json` the reference against the core over T1.25's 13,456 columns, classified. Register: DT-6 rejected, DT-15 approved by the owner's T1.25b answer, DT-16 (in the list, read otherwise) and DT-17 (inference's text outside the shapes) approved by the owner 2026-10-11 (relayed at fix round 1), no contract case affected. Measured locally: `gate.sh --base b455b94 --run python-core,python-old,rust-host` passes in `ref-pandas3` with no transition (protected paths changed: `ci.yml`, `protected-paths.txt`, `register.yaml`, the client's `test_the_schema_route.py`, `text-times.json`, `text-times-differential.json`, `text_times.rs`, `text_times_record.py`, `tests/test_contract_ci_gate.py`); the family maps and the AdventureWorks journey unchanged on both hosts. E49 probes: the reader equals the spec's Python reading on all 13,456 old columns; six seeded faults each fail the vectors; 60 generated DuckDB sources old against core (24 the reference's, 10 DT-12, 13 DT-15, 13 DT-16); no new reader of outside JSON. Carried: T1.18's floor-cell waiver removed with a control (E49 bug fix); T1.18's row says E66(f) answered T1.15's cut. Fix round 1: an open order is `text_time_order` in inference too, and class `a` needs a value outside the list (41 inference decisions to DT-16); the year written held to 1 to 9999 (see [Fix-round histories](#fix-round-histories)) |
55+
| T1.25b Text times by a fixed list of formats | 1a | in progress | Started on lane `rust-core-phase-1-lane-1a` at b455b94, rebased onto T1.24b part 1's landing; `BASE_SHA` and `CHECKPOINT_SHA` de247a3; candidate complete, both approve at acbbf11 (round 2); lands by its landing commit, whose SHA and CI run the next package records (E25) | Added by the owner 2026-10-11 (E66(h)). `sdm-engine::time::text` reads text by `date-rules.md`'s "The core's text formats" (ISO 8601 and RFC 3339 and the client's two shapes, parsed by `jiff`'s `strtime`, the client's order and two-digit year rules), everything else refused by name (`text_time`; an open order `text_time_order`); inference scores at fewest and at most; DT-7's capability and `DATES_READ_DAY_FIRST` kept; contract unchanged (E68). `text.rs` 884 to 624 lines. Vectors: `text-times.json` from the spec apart from the reader (2,360 columns), `text-times-differential.json` the reference against the core over T1.25's 13,456 columns, classified. Register: DT-6 rejected, DT-15 approved by the owner's T1.25b answer, DT-16 (in the list, read otherwise) and DT-17 (inference's text outside the shapes) approved by the owner 2026-10-11 (relayed at fix round 1), no contract case affected. Measured locally: `gate.sh --base b455b94 --run python-core,python-old,rust-host` passes in `ref-pandas3` with no transition (protected paths changed: `ci.yml`, `protected-paths.txt`, `register.yaml`, the client's `test_the_schema_route.py`, `text-times.json`, `text-times-differential.json`, `text_times.rs`, `text_times_record.py`, `tests/test_contract_ci_gate.py`); the family maps and the AdventureWorks journey unchanged on both hosts. E49 probes: the reader equals the spec's Python reading on all 13,456 old columns; six seeded faults each fail the vectors; 60 generated DuckDB sources old against core (24 the reference's, 10 DT-12, 13 DT-15, 13 DT-16); no new reader of outside JSON. Carried: T1.18's floor-cell waiver removed with a control (E49 bug fix); T1.18's row says E66(f) answered T1.15's cut. Fix round 1: an open order is `text_time_order` in inference too, and class `a` needs a value outside the list (41 inference decisions to DT-16); the year written held to 1 to 9999 (see [Fix-round histories](#fix-round-histories)) |
5656
| T1.26a Provider sampling-policy capabilities | 1b | done | Landed at 30d27a2; candidate run 38173187192 green at fc458d7; landing runs 38175050328 (lane) and 38175050165 (phase) green; `BASE_SHA` and `CHECKPOINT_SHA` 4207083; both approve at fc458d7 (1 review round, 0 fix rounds) | Contract version 15 (E63): the tie-break's null order (`null_order`) and the index advice (`index_advice`) declared by the provider, `sdm-data` declaring DuckDB's (`last`, `single_column`), no dialect in domain code; no null order refused by name (`null_order`), no advice no index read and no warning; an index the reader cannot resolve (DuckDB's comma, a host's null name) `Unresolved`, covering nothing, as the reference counts it; DuckDB's statements, warnings and payloads unchanged (51 generated sources on all four runners); T1.25's carries (two `text-times.json` columns pinned, P1B-2's wording, the reader unchanged); the fix-round histories moved to [fix-round-history.md](fix-round-history.md); as built in [as-built.md](as-built.md#t126a) |
5757
| T1.26b Sampling | 1b | in progress | Started on lane `rust-core-phase-1-lane-1b` at 30d27a2; `BASE_SHA` and `CHECKPOINT_SHA` 30d27a2; candidate complete, for review; lands by its landing commit, whose SHA and CI run the next package records (E25) | Contract version 16 (E64): the subgraph walked as the reference's SQL sampler walks it (`sdm-core`'s `subgraph`: foreign keys looked up by key and example, the tables referring read up to each anchor, asked together; `deeper_hop` and `parent_lookup` lifted), a text feature sent as the reference's words (`sdm_engine::words`, held by `words.json`; `text_column` lifted), both `neighbors` forms held on DuckDB to the reference's rows by L1 vectors (`neighbors.json`, ORD-2, the zoned case per DT-13); the sampler's requests and null order refused before any fetch (T1.26a's review P3); a null where the walk tells rows apart read as no link (P1B-13, the owner's decision (b), E66); E52's state value (`SamplerState`, left done or failed, handed back; H9's counts on a second call 6 then 4 on `python-core`, the old route and `rust-host`), the coverage warning once in a process in `sdm-host` (`context_coverage` lifted); the ledger's two rows gone, the bridge's changes declared moved; the AdventureWorks map's T1.26b entries gone, its journey reaching `predict` without `inference_config` on both hosts; 112 generated sources against the reference; the gate passing with no transition; as built in [as-built.md](as-built.md#t126b) |
5858
| T1.27 Labels | 1b | not started | | In Rust over fetched Arrow, compared exactly (E19); a tolerance rule goes to the owner only if exactness proves costly. Scope from T1.21b (E51(e)): the refusal map has no T1.27 entry, so, from T1.21e (E57), the family maps' T1.27 entries (`static_target`, with `base.binary`'s condition target, `COUNT(*)`, `orders.*` and boolean label masked behind it; `target_type`); a rule no map needs stays refused (P1B) |

0 commit comments

Comments
 (0)