Skip to content

feat(reports): leftover-map comparison graphic leftover-map axis leftover-map singular values as leftoverMapComparePlotAxisBadge (v2.83.0) - #867

Draft
seonghobae wants to merge 24 commits into
feat/leftover-map-plot-axis-singular-v2810from
feat/leftover-map-compare-plot-axis-badge-v2830
Draft

seonghobae wants to merge 24 commits into
feat/leftover-map-plot-axis-singular-v2810from
feat/leftover-map-compare-plot-axis-badge-v2830

Conversation

@seonghobae

@seonghobae seonghobae commented Aug 31, 2026 •

Copy link
Copy Markdown
Contributor

Current exact authority — 2026-09-21

This lane preserves its comparison-axis badge product semantics on the current source-repaired #861 ancestry. Exact ancestry from #861 through current #876 has merge-base 69bdb2fc... and behind_by=0; the parent coordinate-tick identity and responsive axis-caption repairs are inherited rather than replayed here.

Fresh exact-head repository/rendered/a11y/security evidence and qualifying independent review remain required. No predecessor receipt transfer, force push, destructive rebase, self-approval, gate weakening, merge, or release is claimed.

…over-map singular values as leftoverMapComparePlotAxisBadge (v2.83.0)

Caption leftover-map comparison graphic leftover-map axes with persisted leftover-map singular values σ_k through leftoverMapComparePlotAxisBadge (ADR 0326). Comparison graphic copy stays leftover map comparison graphic leftover-map axis {k} σ {value} when share is omitted so it stays distinct from leftover-axis leftover axis {k} σ {value}, from hyphen leftover-map axis {k} σ {value}, and from comparison leftover-axis leftover map comparison leftover axis {k} σ {value}. Rank-0 unused axes still name σ 0.00. Share and singular value omit independently. Do not invent σ_k from leftover-map axis share. Do not invent leftover-map axis share from σ_k. Never invent a leftover score. Never invent a theta.
@coderabbitai

coderabbitai Bot commented Aug 31, 2026 •

Copy link
Copy Markdown

Review Change StackReview Change Stack

📝 Walkthrough

Walkthrough

비교 그래프 축 배지 생성 함수가 추가되었습니다. 함수는 singular 값과 share 값을 독립적으로 포맷하고, 값 조합에 따라 배지 템플릿을 선택합니다. 관련 소스 계약 테스트도 추가되었습니다.

Changes

비교 그래프 축 배지

Layer / File(s) Summary
축 배지 포맷팅 및 계약 테스트
frontend/src/leftoverMapPlotAxisSingular.ts, tests/test_grouping_comparison_graphic_axis_badge_contract.py
leftoverMapComparePlotAxisBadge가 singular 값과 share 값을 각각 포맷합니다. 두 값이 없으면 null을 반환합니다. 값 조합에 따라 share 전용, singular 전용 또는 결합 템플릿을 사용합니다. 테스트는 관련 함수와 상수의 존재, singular 포맷팅의 Number.isFinite 사용을 확인합니다.

Priority: ⬇️ Low

Estimated code review effort: 2 (Simple) | ~10 minutes

Change: Feature

Merge Risk: 🔵 Low · up to 6d556

The comparison graphic continues to show the existing strip-style captions rather than the new graphic-specific labels. Connect the helper and cover its supported value states before merging.

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 75.00% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 4 functions across 2 files. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed 제목은 leftoverMapComparePlotAxisBadge를 추가하는 주요 변경을 정확히 설명합니다. 다만 동일한 용어가 반복되어 길고 읽기 어렵습니다.
  • Fix all pre-merge checks with AI
✨ Finishing Touches 💡 1
📝 Generate docstrings 💡
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feat/leftover-map-compare-plot-axis-badge-v2830

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.

@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 1 potential issue.

Devin Review

Comment on lines +121 to +144
export function leftoverMapComparePlotAxisBadge(
axisIndex: number,
leftoverSingular: number | null | undefined,
leftoverShare: number | null | undefined,
): LeftoverMapCompareAxisBadge | null {
const singular = formatLeftoverMapPlotAxisSingular(leftoverSingular);
const percent = formatLeftoverMapPlotAxisShare(leftoverShare);
if (singular === null && percent === null) {
return null;
}
if (singular === null && percent !== null) {
return { key: LEFTOVER_MAP_COMPARE_PLOT_AXIS_SHARE, values: { axis: axisIndex, share: percent } };
}
if (singular !== null && percent === null) {
return {
key: LEFTOVER_MAP_COMPARE_PLOT_AXIS_SINGULAR,
values: { axis: axisIndex, value: singular },
};
}
return {
key: LEFTOVER_MAP_COMPARE_PLOT_AXIS_SINGULAR_SHARE,
values: { axis: axisIndex, value: singular as string, share: percent as string },
};
}

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: Badge decision table remains equivalent

leftoverMapComparePlotAxisBadge preserves all four prior singular-value and share combinations. Existing localization keys and fallback text therefore remain unchanged.

Devin Review

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

Copy link
Copy Markdown
Contributor Author

Cycle 2026-08-31 12:16 KST. Writes work as seonghobae. Exact head cf7bb55 (v2.83.0 / ADR 0326). Caption leftover-map comparison graphic leftover-map axes with persisted leftover-map singular values σ_k through leftoverMapComparePlotAxisBadge. Distinct copy leftover map comparison graphic leftover-map axis {k} σ {value} when share is omitted. Rank-0 unused axes still name σ 0.00. Share and singular omit independently. Do not invent σ_k from leftover-map axis share. Do not invent leftover-map axis share from σ_k. Independent APPROVE required. Do not self-approve. Leave stacked leftover PRs open. Do not squash-merge onto the unprotected leftover base. After independent review, retarget onto leftover-coordinates (#782, MERGED). Issues #79 and #87 stay open. Do not merge #808 without independent APPROVE. Synthetic fixtures only.

Copy link
Copy Markdown
Contributor Author

Cycle 2026-08-31 12:16 KST. Writes work. Exact head cf7bb55 (v2.83.0 / ADR 0326). Frontend oxlint 0/0, tsc -b, vitest 597 passed locally. Do not wait on Checks. Devin/Copilot COMMENTED is not independent APPROVE. Leave #867 open. Do not squash-merge. Do not self-approve. Issues #79 and #87 stay open. Do not merge #808 without independent APPROVE. Independent APPROVE required on this exact head.

Next buyer increment after this stacked σ_k surface: leftover-map graphic leftover-map axis ticks naming persisted σ_k independently of leftover-map axis share (named helper leftoverMapPlotTickAxisBadge matching leftoverMapComparePlotAxisBadge / leftoverMapPlotAxisBadge / leftoverMapCompareAxisBadge / leftoverMapAxisBadge), or leftover-map comparison graphic leftover-map axis ticks naming persisted σ_k independently of leftover-map axis share, or the next already-persisted leftover-map quantity that still has no buyer caption. Do not persist leftover-map inner product, cosine, or length. Synthetic fixtures only.

Copy link
Copy Markdown
Contributor Author

Queue cycle 2026-08-31T12:17 KST: leftover-map comparison graphic leftover-map axis leftover-map singular values as leftoverMapComparePlotAxisBadge (v2.83.0) stays open for independent review on exact head cf7bb55. Do not self-approve. Do not squash-merge onto the unprotected leftover base. Issues #79 and #87 stay open.

Adopt exact reconstructed #866 as the current tree while preserving historical #867 as first parent. Retain the v2.83 product delta as executable RED: comparison-graphic axes must preserve persisted σ when share is missing and keep σ/share states independent, without inference or clamping. Exact #866 is the second parent. No force update or destructive rebase.
seonghobae added a commit that referenced this pull request Sep 10, 2026
Adopt exact reconstructed #867 as the current tree while preserving historical #868 as first parent. Retain the v2.84 product delta as executable RED: report-graphic ticks may name persisted σ independently of share, invalid σ falls back to the ordinary tick, and no share or σ is inferred. Exact #867 is the second parent. No force update or destructive rebase.
Adopt exact converged #866 head 265e91e without force-updating or replaying stale historical source. Preserve the existing #867 reconstruction as first parent, retain its comparison-graphic axis-badge RED unchanged, and take the converged parent tree as the second parent.
seonghobae added a commit that referenced this pull request Sep 11, 2026
Adopt exact converged #867 head d9f3a11 without force-updating or replaying stale historical source. Preserve the existing #868 reconstruction as first parent, retain its report-tick singular RED unchanged, and take the converged parent tree as the second parent.
…ed parent

Adopt exact converged #866 head e26f523 without force-updating or replaying stale source. Preserve the existing #867 convergence as first parent, retain its comparison-graphic axis-badge RED unchanged, and take the updated parent tree as second parent.
seonghobae added a commit that referenced this pull request Sep 11, 2026
Adopt exact converged #867 head 862a6e5 without force-updating or replaying stale source. Preserve the existing #868 convergence as first parent, retain its report-tick singular RED unchanged, and take the updated parent tree as second parent.
chore(stack): converge #867 onto repaired #866 head
seonghobae added a commit that referenced this pull request Sep 12, 2026
chore(stack): converge #868 onto repaired #867 head
Ordinary non-force ancestry adoption. Preserve #867 comparison-graphic axis-badge contract delta while inheriting repaired comparison-distance assertions.
Ordinary non-force ancestry adoption. Preserve the #867 comparison-graphic axis badge contract while inheriting the repaired singular projection chain.
seonghobae added a commit that referenced this pull request Sep 15, 2026
Ordinary non-force ancestry adoption. Preserve the #868 report-graphic tick singular contract while inheriting the repaired singular projection chain.
Ordinary non-force ancestry adoption. Preserve the #867 comparison-graphic axis-badge contract as the local delta while inheriting the repaired report-axis singular foundation through #866.
seonghobae added a commit that referenced this pull request Sep 15, 2026
Ordinary non-force ancestry adoption. Preserve the #868 report-graphic tick singular contract as the local delta while inheriting the repaired singular-evidence foundation through #867.
seonghobae added a commit that referenced this pull request Sep 16, 2026
seonghobae added a commit that referenced this pull request Sep 20, 2026
@seonghobae
seonghobae changed the base branch from feat/leftover-map-axis-singular-only-v2820 to feat/leftover-map-plot-axis-singular-v2810 September 20, 2026 15:15
Preserve the v2.83 comparison-graphic axis badge delta while inheriting the repaired report/comparison axis, responsive-label, and persisted tick-identity contracts.

Signed-off-by: Seongho Bae <seonghobae@users.noreply.github.com>
seonghobae added a commit that referenced this pull request Sep 20, 2026
Preserve the v2.84 report-tick persisted-sigma delta while inheriting the repaired comparison badge, responsive-axis, and persisted tick-identity contracts.

Signed-off-by: Seongho Bae <seonghobae@users.noreply.github.com>

This branch has not been deployed

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

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant