feat(reports): preserve grouping comparison unexplained-share delta for serialized successor - #829
Conversation
…mparison strip (v2.52.0) Caption persisted leftover-map unexplained leftover share s = U²/R² on grouping comparison leftover-pair buttons through formatLeftoverMapUnexplainedShare (ADR 0295). Distinct aria-label Leftover map comparison unexplained leftover share. Missing or non-finite s omits that badge and keeps e, R̂, d, and coverage notes. Do not invent s from U and R. UI-only; no new columns.
|
Important Draft PR not reviewedDraft PRs are not automatically reviewed by default.
To automatically review draft PRs, update your CodeRabbit configuration: reviews:
auto_review:
drafts: trueThanks 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 |
|
Cycle probe 2026-08-31 ~00:45 KST. Writes work (comment/close/create-PR/push). Token still empty X-OAuth-Scopes; GitHub App Grok has contents/PR/issues write as seonghobae. This PR (#829 / v2.52.0 / ADR 0295 / Verification: Leave open for independent review. Do not squash-merge onto the leftover base. Do not self-approve. Copilot review is not independent APPROVE. Stacked onto #827 @ Next buyer increment after this: leftover-map cross share |
seonghobae
left a comment
There was a problem hiding this comment.
Copilot review requested via GitHub App. Copilot review is not independent APPROVE. Leave this PR open.
seonghobae
left a comment
There was a problem hiding this comment.
Parent-first/capacity finding: this Ready PR is a dependent increment on still-open #827, while the current leftover-map foundation #802 has not merged and #811 is Draft/conflicting. Preserve the v2.52.0 unexplained-share delta, but keep this child Draft until prerequisite convergence provides a legal protected-main path. No close, squash, or evidence transfer.
seonghobae
left a comment
There was a problem hiding this comment.
Current-head stack-authority finding: live base already equals #827 exact 8b3011b03777822a23af831b4fddcc06e7837019, but the PR body still cites obsolete parent ead81bd, predecessor verification, and historical retarget guidance. Preserve ADR 0295/product semantics and Draft state; make live parent/head/evidence authoritative and do not transfer predecessor tests.
seonghobae
left a comment
There was a problem hiding this comment.
Serialized-descendant finding: #825's reconstructed identity and #826/#827 collision repairs make this PR's historical ADR0295/v2.52.0 non-authoritative. Preserve the unexplained-share delta and exact historical ancestry as evidence, but do not promote that identity. After #825→#826→#827 converge, reconstruct from exact promoted #827 with an unclaimed ADR/release identity and inherited authorization/UI contracts.
|
Fresh review finding on historical |
seonghobae
left a comment
There was a problem hiding this comment.
Verified current historical-head accessibility finding for successor reconstruction. The grouping-comparison pair button sets an explicit aria-label to Open leftover … pair from comparison: <title> · <criterion>, while the persisted unexplained-share value is rendered only inside a descendant badge with its own aria-label. Because the button already has an explicit accessible name, that descendant metric is not part of the actionable name. Preserve the valid unexplained-share delta, but on reconstruction after exact promoted #828 append the localized unexplained-share label and finite persisted value to the button name and make the duplicate visual badge non-name-bearing (aria-hidden). Add a regression that locates the button by an accessible name containing the persisted U²/R² value. Missing/non-finite share must remain absent; do not derive or clamp psychometric truth.
seonghobae
left a comment
There was a problem hiding this comment.
r3 run 34096383373 is a harness RED, not a product-conflict RED. Exact #828/live-head verification passed, then reconstruction exited before dependency setup. The failing guard quotes the i18n semantic key as grep -c '"'Leftover map comparison unexplained leftover share'"' ...; Bash splits the unquoted spaces into additional grep operands, so the guard exits 2 even when reconstruction is valid. Repair by replacing this shell-quoting assertion with a semantic Python count/assertion, start again from exact #828, and do not reuse failed staging. Preserve the planned realistic accessible-name RED, minimal parent-name/duplicate-badge fix, full exact-head GREEN, and non-force product promotion only after live-head re-verification.
Summary
Preserve the grouping-comparison persisted unexplained-leftover-share
s = U² / R²as the serialized successor of #828 and carry that persisted field through the authorized comparison read model. Missing/non-finitesomits only that metric; finite zero and values above 1 remain explicit and are never clamped. No new measurement authority, theta, derived score, or schema column.Current serialized authority
1472d98b7513c360ca1c7cf6da4a401a716bc53ccad63edba68981a1ae3223e2f525284fc9d4ef0fThe current head is a non-destructive convergence of the distinct #829 unexplained-share/read-model/ADR/release delta onto exact #828. This ancestry is current, but it is not acceptance GREEN.
Verified #829 causal repair
Earlier run
34160813983reproduced the real missing-SELECT defect on a prior parent and applied the minimumleftover_map_unexplained_shareSELECT/serialization repair. Focused tests, complete backend tests, authenticated PostgreSQL/Keycloak/Valkey comparison acceptance, frontend lint/test/build/Storybook, and narrow product-delta inspection passed on that prior candidate. Those receipts establish the causal delta but do not transfer to currentcad63ed...or across the pending #828 source movement.Inherited #828 owner RED
#828 exact
1472d98...contains the merged dedicated axis-share accessibility regression and exact product-head run34180159005proves its generic<span>still carries an authoraria-label. Fresh owner review also found the #828 repair boundary was incomplete: Proposed ADR0367 and the v2.54.0 changelog still require/claim distinct accessible naming, so the parent repair must update source, stale visible-text regression, normative ADR/changelog, and any dead label resource together. A synthetic role is not an acceptable shortcut.Therefore this PR stays Draft. After #828 advances to its repaired exact head, converge #829 non-force again and recollect exact-product evidence; no predecessor or current-parent receipt transfers.
Product invariants
leftover_map_unexplained_shareis transported from PostgreSQL throughfetch_period_comparisonand the authenticated comparison endpoint; it is not recomputed in the read model or frontend.U²/R² 0.00; finite values above 1 remain visible rather than clamped.sfromU,R, distance, plotted coordinates, reconstruction, residual, explained share, rank, coverage counts, or unused-axis count.Descendant boundary
#830 currently resolves to exact #829
cad63ed...and head367498ed59396f490ce9b475175d748f7c43fc31; #831 resolves to exact #830 but remains Draft/conflicting at historical product head8a12062cd8efef0c99abe794ef3e9f8dcbc31617. After repaired #828, reconverge this PR first, then #830, then reconstruct #831. Canonical KO/EN/JA/ZH/VI/ES/DE/FR translation-ledger authority remains #922/#929/#932.Keep Draft until repaired #828 is adopted, this head is freshly converged and exact-product backend/frontend/build/Storybook/security receipts are current, rendered responsive/keyboard/focus/a11y evidence exists, applicable authenticated performance evidence exists, and qualifying independent review/governance conditions are satisfied. No synthetic status, self-approval, parent bypass, force-push, destructive rebase, no-op validation churn, or gate weakening.