fix(dashboard): finish lookbook V2 Costs reflow and typed states - #1534
Closed
ScriptedAlchemy wants to merge 3 commits into
Closed
ScriptedAlchemy wants to merge 3 commits into
ScriptedAlchemy wants to merge 3 commits into
Conversation
Container-query the spend field so the legend sits beside the chart only when its panel is wide enough; widen the ledger to nine columns; move the priced total out of the panel header so narrow widths do not clip it; stop the query register from shrinking under the grid; and read a served usage aggregate without a coverage word as unknown rather than partial. Fixture overview now names its aggregate coverage the way the daemon does. Co-authored-by: Zack Jackson <ScriptedAlchemy@users.noreply.github.com>
The unavailable attribution block carries every grouping empty and no pricing revision; an unsupported range answers 400 with the typed empty body that names the rejected window. Co-authored-by: Zack Jackson <ScriptedAlchemy@users.noreply.github.com>
Co-authored-by: Zack Jackson <ScriptedAlchemy@users.noreply.github.com>
|
Owner
Author
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
274392afd8/b79de0e347(from the closed #1525). These three commits were on that branch after the integration point and are rebased here onto the current tip.partial./api/plugins/savings/modelsattribution block and its 400 typed refusal.Costs at 1440 on the V2 shell, 30-day range
Hover inspects codex without changing the query
Scoped provider in the ledger and inspector
320 CSS px
Motivation
The lookbook brief requires 200%-zoom/320 reflow without clipped truth state, a legend that is also the scope control, and typed states that never claim a coverage the wire did not report. All four defects were visible only through the shipped entry point, not the DOM tests.
Changes
CostsPage.tsx: register isshrink-0; aperture regrouped to spend field (7) · usage (2) · authority (3) / ledger (9) · inspector (3); usage readout breakdown wraps instead of truncating;usageStateswitches on the aggregate's coverage word (complete→ ready,partial→ partial,null/other → unknown with the reason); register spend state derived from the ledger.ProviderSpendField.tsx:@containeron a wrapper,@3xl:flex-rowon the child; priced total moved into the field's own header row; chart 280 px with room for the last axis label.CostsInspector.tsx,PricingAuthority.tsx: two-column facts so nothing truncates in a 3-column panel.stories/fixtures/data.ts: the overview fixture names its aggregate coverage (complete) the waysavings_api::provider_usage_overviewdoes.tests/dashboard_api_test/savings.rs: unavailable attribution block carries every grouping empty with null revision;range=fortnightanswers 400 with the typed empty body naming the rejected window.Test plan
npm run typecheck,npm teston this head — 177 files / 1704 tests/api, new V2 shell): 44 checks — range from URL, hover inspects without writing the URL, Enter/Escape scope and clear, arrow/Home/End traversal, visible focus ring, series-as-table names gaps and unpriced buckets, 1440/768/320 and 200% zoom with no page-level overflow, all operable targets ≥ 44 px, reduced motion, typed unavailable attribution, no console/page errorscargo test -p tracedecay --features test-transport --test dashboard_api_test savingson this head (passed on the pre-rebase head; rebuild in progress)cargo fmt --check; clippy ontracedecay-dashboard-apiand thedashboard_api_testtarget was clean on the pre-rebase headGaps
by_provider/by_provider_dayare proven at unit level against the real bundled price table and through the browser fixture.audit-baselines/costs__*.pngare stale by design.Checklist
CHANGELOG.md— release-please generates it from conventional commits.envfiles includedTo show artifacts inline, enable in settings.