Skip to content

feat(reports): leftover observed on grouping comparison graphic (v2.73.0) - #856

Open
seonghobae wants to merge 1 commit into
feat/leftover-map-compare-plot-residual-v2720from
feat/leftover-map-compare-plot-observed-v2730
Open

feat(reports): leftover observed on grouping comparison graphic (v2.73.0)#856
seonghobae wants to merge 1 commit into
feat/leftover-map-compare-plot-residual-v2720from
feat/leftover-map-compare-plot-observed-v2730

Conversation

@seonghobae

@seonghobae seonghobae commented Aug 30, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Caption leftover observed on the grouping comparison leftover-map graphic from already-named observed_response (ADR 0316 / v2.73.0).
  • After 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, leftover-map complete-case coverage when leftoverMapCoverageCounts returns usable complete-case integers, leftover-map item complete-case coverage when leftoverMapItemCoverageCounts returns usable complete-case integers, leftover-map incomplete post coverage when leftoverMapIncompletePostCount returns a usable dropped integer, leftover-map incomplete item coverage when leftoverMapIncompleteItemCount returns a usable dropped integer, leftover-map reconstruction R̂ when formatLeftoverMapReconstruction returns a usable signed badge, leftover-map explained leftover share e when formatLeftoverMapExplainedShare returns a usable badge, leftover-map unexplained leftover share s when formatLeftoverMapUnexplainedShare returns a usable badge, leftover-map cross share x when formatLeftoverMapCrossShare returns a usable badge, leftover-map unexplained leftover U when formatLeftoverMapUnexplained returns a usable badge, leftover residual R when formatLeftoverMapResidual returns a usable badge, and leftover observed Y on that comparison graphic when formatLeftoverMapObserved returns a usable badge; click a post marker or a pair button opens that post.
  • Comparison copy uses accessible name leftover map comparison graphic leftover observed {label} so it stays distinct from leftover observed {label} on the period-report graphic and from strip Leftover map comparison observed. Vietnamese copy names the leftover map. A missing or non-finite Y omits that leftover-map comparison graphic leftover observed caption and keeps leftover residual R, leftover-map unexplained leftover U, leftover-map cross share x, leftover-map unexplained leftover share s, leftover-map explained leftover share e, leftover-map reconstruction , leftover-map distance d, leftover-map comparison graphic coverage, leftover-map comparison graphic item coverage, leftover-map comparison graphic incomplete posts, and leftover-map comparison graphic incomplete items when those helpers return usable integers. Rank-0 origin cells still name Y 0.00 when that persisted leftover observed is finite.
  • Leftover observed omits independently of leftover residual, leftover-map unexplained leftover, leftover-map cross share, leftover-map unexplained leftover share, leftover-map explained leftover share, leftover-map reconstruction, leftover-map distance, and coverage notes. This increment does not caption leftover expected on the comparison graphic with a distinct name.
  • Do not invent Y from R and E, leftover residual, leftover-map reconstruction, leftover-map unexplained leftover, leftover-map distance, plotted coordinates, leftover-map rank, leftover-map axis share, leftover expected, leftover-map post coverage, leftover-map item coverage, leftover-map incomplete post coverage, leftover-map incomplete item coverage, leftover pair count, or the count of unused axes. A finite negative leftover is shown, never clamped. Never invent a leftover score. Never invent a theta. No new columns.

Stack

Rebased onto #855 (feat/leftover-map-compare-plot-residual-v2720 @ 1087b16). Head cf3b6d4. Do not mix into other stacks. Leave open for independent review. Do not self-approve. Do not squash-merge without independent APPROVE + exact-head required success.

Test plan

  • Frontend leftover observed, leftover-map plot, leftover residual, i18n, and App grouping-comparison tests (502 passed locally). oxlint clean on the changed files.
  • CI Full test suite and Frontend lint, test, build on this exact head.
  • After make seed, grouping comparison leftover pairs name leftover observed Y on the comparison graphic; click opens that post.

@coderabbitai

coderabbitai Bot commented Aug 30, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: f473b473-8ca8-4784-9f75-7a11f39f5516

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

Copy link
Copy Markdown
Contributor Author

Cycle 2026-08-31 08:52 KST: exact head 1a2f11cf (v2.73.0 / ADR 0316 leftover observed on grouping comparison leftover-map graphic). Stacked on #855 @ 4ffed4ae. Independent APPROVE required. Do not self-approve. Do not squash-merge without independent APPROVE + exact-head required success. Copilot review requested this cycle. Next buyer increment: leftover expected E on that comparison graphic (ADR 0317 / v2.74.0).

@devin-ai-integration devin-ai-integration Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Note

This report is out of date. Scroll down for Devin Review's latest report on this PR.

✅ Devin Review: No Issues Found

Devin Review analyzed this PR and found no bugs or issues to report.

Devin Review

@seonghobae
seonghobae force-pushed the feat/leftover-map-compare-plot-observed-v2730 branch from 1a2f11c to c7a8680 Compare August 30, 2026 23:55

Copy link
Copy Markdown
Contributor Author

Exact head now c7a8680 stacked on #855 @ 1087b16 (v2.72.0 leftover residual a11y name). Comparison graphic leftover observed uses leftover map comparison graphic leftover observed {label} so it stays distinct from hyphen leftover observed {label} and strip Leftover map comparison observed. Independent APPROVE still required on this leftover-observed increment before squash-merge. Do not self-approve. Do not squash-merge onto the unprotected leftover base. Issues #79 and #87 stay open. Next buyer increment is leftover expected E on this comparison graphic (ADR 0317 / v2.74.0), stacked here — not mixed into #74/#92.

…3.0)

Name leftover observed Y on grouping comparison leftover-map pair
segments (ADR 0316). After make seed, closest and farthest leftover
pairs sit above the member list with leftover observed Y next to
leftover residual R on that comparison graphic; click opens that post.
Rank-0 unused axes still name Y 0.00 when that persisted leftover
observed is finite. A missing or non-finite Y omits that leftover-map
comparison graphic observed caption and keeps leftover residual R.
Never invent a leftover score. Never invent a theta.
@seonghobae
seonghobae force-pushed the feat/leftover-map-compare-plot-observed-v2730 branch from c7a8680 to cf3b6d4 Compare August 31, 2026 00:00

Copy link
Copy Markdown
Contributor Author

Rebased onto #855 @ 1087b16 after the leftover residual a11y rename. Head is now cf3b6d4.

Comparison-graphic leftover observed uses distinct accessible name leftover map comparison graphic leftover observed {label} (same leftover-qualifier pattern as residual). Vietnamese copy names the leftover map. Local oxlint 0; 502 tests passed (App 103, LeftoverMapPlot 55, leftoverMapPlotLayout 58, i18n 272, leftoverObservedExpected 9, leftoverResidual 5).

Leave open for independent review. Do not self-approve. Do not squash-merge without independent APPROVE + exact-head required success. Next buyer increment after this residual: leftover expected E on the comparison graphic (ADR 0317 / v2.74.0).

Copy link
Copy Markdown
Contributor Author

Independent APPROVE still required on this leftover-observed head c7a8680 (v2.73.0). #857 leftover expected (v2.74.0) is stacked here at 9f34d2c. Do not self-approve. Do not squash-merge onto the unprotected leftover base. Issues #79 and #87 stay open.

@devin-ai-integration devin-ai-integration Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Devin Review found 2 new potential issues.

Devin Review

Comment on lines +433 to +438
aria-label={tf(
variant === "comparison"
? LEFTOVER_MAP_COMPARE_PLOT_SEGMENT_OBSERVED
: LEFTOVER_MAP_PLOT_SEGMENT_OBSERVED,
{ label: segment.observedLabel },
)}

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

📝 Info: Observed values remain data-backed

observedLabel still uses persisted observed_response through its finite-value formatter. The variant branch changes only the accessible name, preserving independent omission.

Devin Review

Was this helpful? React with 👍 or 👎 to provide feedback.

Comment on lines +433 to +438
aria-label={tf(
variant === "comparison"
? LEFTOVER_MAP_COMPARE_PLOT_SEGMENT_OBSERVED
: LEFTOVER_MAP_PLOT_SEGMENT_OBSERVED,
{ label: segment.observedLabel },
)}

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

📝 Info: Plot variants keep separate labels

The comparison branch receives the new translation key. Report plots retain LEFTOVER_MAP_PLOT_SEGMENT_OBSERVED, so their accessible contract stays unchanged.

Devin Review

Was this helpful? React with 👍 or 👎 to provide feedback.

Copy link
Copy Markdown
Contributor Author

Cycle 2026-08-31 08:19 KST: exact head cf3b6d4 (v2.73.0 / ADR 0316 leftover observed on grouping comparison leftover-map graphic). Independent APPROVE still required on this leftover-map stack before any squash-merge. Do not self-approve. Issues #79 and #87 stay open. Do not merge #808 without independent APPROVE. Next buyer increment is leftover-map rank on this comparison graphic after leftover expected (#857 / ADR 0317 / v2.74.0).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant