Repository navigation
#153 — surface the external-fixture cell diff in the golden diff-showcase - #214
Conversation
Surface the cute-dbt#126 external-fixture machinery in the committed
golden fixtures: test_mart_date_state_grid_cross_joins_months_and_states'
ref('stg_synthea__patients') given becomes rows:null + the resolved
fixture: tests/fixtures/mart_date_state_grid_patients.csv path (the
fusion wire shape), applied identically to BOTH playground manifests so
the conversion never reads as a baseline-vs-current change. The row data
moves verbatim into the new committed csv under playground-source; the
authored YAML switches to the bare-name fixture: form (dbt authoring
convention) BELOW the dq-test blocks so the existing patch hunk line
numbers are unshifted. The pr-diff patch gains a unified=0 EDIT hunk
against the csv (Connecticutt->Connecticut typo fix + Vermont->empty
NULL transition), + side byte-aligned to the committed csv per the
same-revision contract. MANIFEST.toml: new [[fixture]] entry + four
sha256/description refreshes.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…153) Byte-gated regen of all three example-report-check matrix rows. jaffle-shop is byte-identical; the diff-showcase + playground payload deltas all trace to the converted given (structural audit: non-payload HTML byte-identical in both; diff-showcase changes exactly 4 payload paths — given[1].fixture added, given[1].rows array->loaded file body, authoring_yaml fixture: line, and the NEW data_diff carrying the external old->new cell diff at ordinal 1 with two modified rows incl. a typed-NULL transition; playground changes the same 3 grid paths, no data_diff — baseline mode has no hunks). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
Warning Review limit reached
More reviews will be available in 19 minutes and 57 seconds. Learn how PR review limits work. Your organization has run out of usage credits. Purchase more in the billing tab. ⌛ How to resolve this issue?After more reviews become available, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. 🚦 How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans include higher PR review limits than trial, open-source, and free plans. In all cases, reviews become available again over time. During sustained high-volume PR review activity, CodeRabbit may temporarily slow when the next review becomes available. Please see our Fair Usage Limits Policy for further information. ℹ️ Review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: ⛔ Files ignored due to path filters (1)
📒 Files selected for processing (7)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
📄 Rendered report previewAll golden examples regenerated cleanly. 🟡 Golden examplesCommitted to
🐶 Live dogfood previewThis PR doesn't touch ▶ Open ↗ opens the report in your browser in one click — The Pages preview may take ~1 min to update after this comment Alternative: GitHub CLI# gh CLI >= 2.63 extracts into ./report-preview-playground/.
gh run download 27321505674 -R breezy-bays-labs/cute-dbt -n report-preview-playground
open report-preview-playground/playground-report.htmlPosted by |
There was a problem hiding this comment.
Code Review
This pull request externalizes the inline CSV row data for the stg_synthea__patients input in the mart_date_state_grid cross-join unit test into a dedicated external fixture file (mart_date_state_grid_patients.csv). It updates the test configuration in _analytics__models.yml to reference this new fixture, adjusts the MANIFEST.toml metadata and SHA-256 hashes accordingly, and appends an edit hunk to the playground-pr-diff.patch file to reflect corrections made to the CSV data. There are no review comments, and I have no feedback to provide.
Important
The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.
…howcase) + golden regen Conflict resolution by REGENERATION, never manual picking: all three examples re-rendered from the merged tree with the ci.yml recipe. Non-payload bytes are byte-identical to origin/main's goldens (the #213 template/CSS delta carries through untouched); the payload delta vs origin/main is exclusively the #200 contract fields — manifest_nodes, ModelPayload.description, the native-scalar overrides, and the three \u003c= escapes inside new description content. The #214 external-fixture given rides through unchanged (no existing payload key altered). Double-render byte-identity verified. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- tests/steps/world.rs: kept BOTH accumulators — main's ContextPlan (#216) and the explore fields/structs (#100). - tests/steps/report_generation.rs: the NEW #216 context-report invocation (landed on main pre-verb) gains the report verb. - examples: report goldens taken from main and verified byte-identical over the merged tree under the report verb; explore goldens REGENERATED over the merged tree (stale twice: #214 changed the playground manifest, #216 added payload fields tests.html embeds) + double-render byte-identity + leak-grep clean. - ci.yml/lefthook.yml auto-merged: verb-aware gate + tripwire + feature-count 16 intact (no upstream bump — no renumber). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Summary
Surfaces the cute-dbt#126 external-fixture cell diff in the committed golden
examples/diff-showcase-report.html— the machinery (ProjectFileReader,external_fixture_table,reconstruct_external_fixture_diff,merge_external_data_diffs) was fully shipped and test-verified in #126/#154, but the golden showcase never exercised it. Pure fixture surgery: nosrc/, no template changes.Closes #153
What changed (AC by AC)
giveninplayground-current.json—test_mart_date_state_grid_cross_joins_months_and_states'ref('stg_synthea__patients')given (ordinal 1) converted from inline csv rows to"rows":null,"format":"csv","fixture":"tests/fixtures/mart_date_state_grid_patients.csv"(the fusion resolved-path wire shape), spliced byte-style-faithfully into the minified dbt-core JSON. Applied identically toplayground-baseline.jsonso the conversion itself never reads as a baseline-vs-current change — the playground golden's curated changed-set story is untouched. The test is already in showcase scope (its declaring_analytics__models.ymlis in the patch's file set; the model is checksum-modified in the playground pair) — no scope surgery.tests/fixtures/playground-source/tests/fixtures/mart_date_state_grid_patients.csv(resolved by the ProjectFileReader under--project-root tests/fixtures/playground-source, the dbt<project-root>/tests/fixtures/convention). Same four fictitious Synthea-style patient rows the given previously inlined.[[fixture]]MANIFEST.toml entry with SHA-256 +synthetic_only = true; four sibling entries' sha256/descriptions refreshed.playground-pr-diff.patch— a unified=0 hunk against the csv:Connecticutt→Connecticut(typo fix) +Vermont→(empty ⇒ typed NULL). An edit, not all-added — the affordance the live dogfood structurally cannot show (renderer: read external unit-test fixture files (csv/sql) for cell-level diffing #126 added its dbt-project fixture as a NEW file)._analytics__models.ymlgiven[1] now authored asfixture: mart_date_state_grid_patients(bare-name dbt authoring convention), so the drawer shows the real authored form. The edit sits below the dq-test blocks: existing YAML hunk line numbers (1446/1450/1457) are unshifted.Patch-alignment evidence (same-revision contract)
+lines are byte-identical to committed file lines 3–4;block_aligns_with_hunksover the whole-file span (5 lines) holds,hunk_touches_block(1..5, @@ -3,2 +3,2 @@)holds.fct_provider_metrics.sql,_analytics__models.yml@1446/1450/1457) targets earlier lines, so the #64 — cross-join demo fixture from playground c8270a4 + example re-render #205 alignment is preserved (verified by the regen reconstructing the dq cell diff unchanged).Payload + DOM evidence (regenerated diff-showcase)
Embedded
cute-dbt-datapayload, cross-join test:given[1].fixture = "tests/fixtures/mart_date_state_grid_patients.csv",rows= loaded file body,tablepresent → the loaded-external grid path.data_diff.given[0].ordinal = 1with rows: 2unchanged, 2modified—Connecticutt→Connecticut(changed: true) andVermont→withnew.key = {"t":"null"}(a typed NULL — the NULL-aware cell affordance fires).ref('stg_synthea__patients')): provenance chipfrom tests/fixtures/mart_date_state_grid_patients.csvrenders besideformat: csv; thecell-diff-tableshowsTD.cell-changed | Connecticutt→ConnecticutandTD.cell-changed | Vermont→NULL(cell-nullmarkup) with the Diff/File toggle.Structural audit of
git diff -- examples/: non-payload HTML byte-identical in both reports; diff-showcase changes exactly 4 payload paths (the converted given'sfixture/rows, itsauthoring_yaml, + the NEW externaldata_diff); playground changes the same 3 grid paths and gains nodata_diff(baseline mode has no hunks). Every changed byte traces to the new external given/diff.Gates (run directly — lefthook skips in fresh worktrees)
cargo fmt --checkcargo clippy --all-targets --locked -- -D warningscargo nextest run --lockedcargo test --test bdd --lockedcargo test --test headless_zero_egress --locked -- --ignoredcargo test --test headless_toggle --locked -- --ignoredRUSTDOCFLAGS="-D warnings" cargo doc --no-deps --lockedcargo deny check🤖 Generated with Claude Code