feat(reports): leftover-map complete-case coverage on grouping comparison strip (v2.46.0) - #821
Conversation
…ison strip (v2.46.0)
Caption persisted leftover-map post complete-case coverage on GET /api/reports/compare/{period} through leftoverMapCoverageCounts (ADR 0289). Distinct aria-label Leftover map comparison coverage. Omit when counts are unusable. Do not invent coverage from leftover pair count. No SQL. No leftover score or theta.
|
Write-retry this cycle (seonghobae MCP). #821 is leftover-map v2.46 grouping comparison complete-case coverage at Do not merge #808 without independent APPROVE. Issues #79 and #87 stay open. #96 is already closed. |
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Plus Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
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 |
|
Stacked #822 ( |
|
Write-retry this cycle (seonghobae gh). Standing leftover-map constraint: grouping comparison strip (ADR 0149) stays on its reduced leftover payload and does not gain leftover-map captions. This cycle stacked leftover-map singular values on graphic axes as #820 (v2.46 / ADR 0289) and leftover-axis badges as #823 (v2.47 / ADR 0290) onto #819 instead. Do not squash-merge onto an unprotected leftover base. Do not self-approve. Independent APPROVE still required. Do not merge #808 without independent APPROVE. |
Summary
make seed, closest and farthest leftover pairs sit above the member list with the Gabriel biplot of already-named coordinates, leftover-map axis share when finite, axis ticks that matchξ (x, y) ζ (x, y)on the pair row, pair segments that matchdon the pair row, pair segments that matchR̂on the pair row, pair segments that matchR̂²/R²on the pair row, pair segments that matchU²/R²on the pair row, pair segments that match2R̂U/R²on the pair row, pair segments that matchUon the pair row, pair segments that matchRon the pair row, pair segments that matchYon the pair row, pair segments that matchEon the pair row, pair segments that match leftover-map rank on the pair row, a plot caption that matches leftover-map complete-case coverage above the pair list, a plot caption that matches leftover-map item complete-case coverage, a plot caption that matches leftover-map incomplete post coverage, a plot caption that matches leftover-map incomplete item coverage, a pair-list note that matches leftover-map post complete-case coverage, a pair-list note that matches leftover-map item complete-case coverage, a pair-list note that matches leftover-map incomplete post coverage, a pair-list note that matches leftover-map incomplete item coverage, and a grouping comparison note that matches leftover-map post complete-case coverage; click a post marker or a pair button opens that post.d, and any leftover-map distance, reconstruction, explained leftover share, unexplained leftover share, leftover-map cross share, unexplained leftover, leftover residual, leftover observed, leftover expected, leftover-map rank, leftover-map post coverage, leftover-map item coverage, leftover-map incomplete post, or leftover-map incomplete item caption on the pair list and graphic. Coverage0 of Mis shown when that persisted used count is a non-negative integer and scored is a positive integer. Do not invent post coverage from leftover pair count, plotted marker count, leftover-map distance, leftover-map rank, leftover-map item coverage, leftover-map incomplete post coverage, leftover-map incomplete item coverage, or the count of unused axes.Leftover map comparison coverage. The strip does not gain leftover-map item coverage, leftover-map incomplete post coverage, leftover-map incomplete item coverage, or the leftover-map graphic. Never invent a leftover score. Never invent a theta. Do not persist leftover-map inner product, cosine, or length.feat/leftover-map-list-post-coverage-helper-v2450/ feat(reports): fail-close leftover-map pair-list post coverage (v2.45.0) #819 @a2c96551). Leave this PR open for independent review. Do not squash-merge onto the unprotected leftover base. Do not self-approve. After independent review, retarget onto leftover-coordinates (feat/leftover-map-coordinates-v2240/ feat(reports): persist leftover-map coordinates (v2.24.0) #782) rather than squash-merging here.Verification
pnpm exec vitest run src/leftoverMapCoverage.test.ts src/i18n.test.ts src/App.test.tsx: 3 files, 287 passed.pnpm exec oxlinton changed frontend files: 0 warnings, 0 errors.python3 -m py_compile backend/app/report_ingestion.py backend/tests/test_api.py.Evidence boundary
Authenticated PostgreSQL API and k6 runtime acceptance are not claimed. No real records or credentials. Synthetic fixtures only.
Independent approval is required. No self-approval, admin bypass, or force push.
Jeon, M., Jin, I. H., Schweinberger, M., & Baugh, S. (2021). Mapping unobserved item–respondent interactions: A latent space item response model with interaction map. Psychometrika, 86(2), 378–403.
Gabriel, K. R. (1971). The biplot graphic display of matrices with application to principal component analysis. Biometrika, 58(3), 453–467.