ns-ui

Eval Regression Shear

Two eval runs compared as a shear profile — every case is a hairline anchored at the left and offset at its right end by the score delta, sorted so the whole suite resolves into one signed curve with a flat, quiet middle and two tapering tails.

Use when two runs of the same eval suite need to be compared case by case and the question is where the candidate moved rather than what the headline average is — the sorted shear profile makes the count of real gains and real regressions countable at a glance and shows how little of the suite actually moved; pick diff-unified-viewer or approval-inline-diff when the diff is textual rather than scored, compare-table-reach-rule when the comparison is a small table of named features, and stat-row-baseline-spark when a single aggregate metric against its baseline is all that matters.

Install

npx shadcn add https://design.helpmarq.com/r/eval-regression-shear.json
View source and playground

Nightly eval sweep · run 2481

Regression shear

candidate 2.4.1-rc3 vs baseline 2.3.0

9 improved9 regressed46 unchanged3 new failures

Each hairline is one case, anchored left and offset right by its score delta. Move the pointer down the stack — or Tab in and use the arrow keys — to fan the rows apart and read the cases under the caliper.

Props

PropTypeDefaultDescription
casesShearCase[]The two runs, one entry per eval case.
tieEps?number|delta| below this counts as unchanged. Default 0.005.
passThreshold?numberScore at or above which a case counts as passing. Default 0.5.
shearScale?numberPixels of shear per 1.0 of delta, clamped to +/-56px. Default 260.
label?stringAccessible name for the case list.
className?string