Skip to content

feat(reports): leftover-map person coordinates on leftover-map pair leftover-map post independently of leftover-map pair leftover-map criterion leftover-map item coordinates (v2.96.0) - #881

Draft
seonghobae wants to merge 1 commit into
feat/leftover-map-plot-post-coordinates-v2950from
feat/leftover-map-list-post-coordinates-v2960
Draft

feat(reports): leftover-map person coordinates on leftover-map pair leftover-map post independently of leftover-map pair leftover-map criterion leftover-map item coordinates (v2.96.0)#881
seonghobae wants to merge 1 commit into
feat/leftover-map-plot-post-coordinates-v2950from
feat/leftover-map-list-post-coordinates-v2960

Conversation

@seonghobae

@seonghobae seonghobae commented Aug 31, 2026

Copy link
Copy Markdown
Contributor

Summary

Stacked on #880 @ c69459a (feat/leftover-map-plot-post-coordinates-v2950). leftoverMapListPostBadge (ADR 0339 / v2.96.0) names leftover-map pair leftover-map post leftover-map person coordinates independently of leftover-map pair leftover-map criterion leftover-map item coordinates.

  • Distinct accessible name leftover pair leftover-map post {title} at ξ {person} when leftover-map person coordinates are finite.
  • A missing or non-finite leftover-map person coordinate pair omits that leftover-map pair leftover-map post leftover-map person coordinate caption and keeps Open leftover {kind} pair: {title} · {criterion}.
  • Finite ξ still names when leftover-map pair leftover-map criterion leftover-map item coordinates ζ are missing (formatLeftoverMapCoordinates still requires both).
  • Rank-0 unused axes still name leftover-map person coordinates (0.00, 0.00).
  • Leftover-map graphic leftover-map post markers stay Open leftover-map post {title} at ξ {person}.
  • Leftover-map comparison graphic leftover-map post markers stay Open leftover map comparison graphic leftover-map post {title} at ξ {person}.
  • Do not invent leftover-map person coordinates from leftover-map item coordinates ζ. Do not invent leftover-map item coordinates ζ from leftover-map person coordinates ξ.
  • UI-only. No SQL. No new columns. Do not persist leftover-map inner product, cosine, or length. Never invent a leftover score. Never invent a theta.

Test plan

Leave open for independent review. Do not self-approve. Do not squash-merge.


Devin Review

…eftover-map post independently of leftover-map pair leftover-map criterion leftover-map item coordinates (v2.96.0)

ADR 0339 leftoverMapListPostBadge names leftover-map pair leftover-map post leftover-map person coordinates independently of leftover-map pair leftover-map criterion leftover-map item coordinates. Distinct accessible name leftover pair leftover-map post {title} at ξ {person}. Missing ξ omits independently so finite ξ still names when ζ is missing. Rank-0 still (0.00, 0.00). Do not invent leftover scores or thetas. Stack onto leftoverMapPlotPostBadge (ADR 0338 / v2.95.0).
@coderabbitai

coderabbitai Bot commented Aug 31, 2026

Copy link
Copy Markdown

Warning

Review limit reached

Next included review available in 16 minutes.

View limit details

Limit details: You’ve used the included review currently available.

You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository.

Learn how review limits work.

Review configuration:

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: fbffac46-ed5c-4e0c-ad49-7bff9bb87b36

📥 Commits

Reviewing files that changed from the base of the PR and between c69459a and 167888d.

📒 Files selected for processing (24)
  • AGENTS.md
  • ARCHITECTURE.md
  • CHANGELOG.d/2.96.0-leftover-map-list-post-coordinates.md
  • CHANGELOG.md
  • CLAUDE.md
  • docs/adr/0267-leftover-map-coordinates.md
  • docs/adr/0268-leftover-map-graphic-display.md
  • docs/adr/0304-leftover-map-compare-graphic.md
  • docs/adr/0334-leftover-map-axis-tick-share-badge.md
  • docs/adr/0337-leftover-map-compare-plot-post-coordinates.md
  • docs/adr/0338-leftover-map-plot-post-coordinates.md
  • docs/adr/0339-leftover-map-list-post-coordinates.md
  • docs/product-technical-gap-baseline.md
  • docs/storybook-inventory.md
  • frontend/package.json
  • frontend/src/App.test.tsx
  • frontend/src/components/LeftoverPairList.test.tsx
  • frontend/src/components/LeftoverPairList.tsx
  • frontend/src/i18n.test.ts
  • frontend/src/i18n.ts
  • frontend/src/leftoverMapCoordinates.test.ts
  • frontend/src/leftoverMapCoordinates.ts
  • frontend/src/leftoverMapPlotLayout.ts
  • pyproject.toml

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

@coderabbitai review

Independent review request for leftoverMapListPostBadge (ADR 0339 / v2.96.0) exact head 167888d stacked on #880 @ c69459a. Devin COMMENT is not independent APPROVE. Do not self-approve. Do not squash-merge. Do not mix #877. Issues #79 and #87 stay OPEN. Do not merge #808 without independent APPROVE.

@coderabbitai

coderabbitai Bot commented Aug 31, 2026

Copy link
Copy Markdown

@seonghobae I will review pull request #881 at exact head 167888d. I will not approve or merge the pull request.

⚠️ Action not completed

Review rate limited.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

@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 3 potential issues.

Devin Review

Comment on lines +304 to +306
aria-label={
listPostBadge !== null
? tf(listPostBadge.key, listPostBadge.values)

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🟡 Pair buttons become indistinguishable

When two pairs share a post, aria-label gives both its title and coordinates. Screen readers lose each pair’s direction and criterion.

Prompt for agents
Preserve the pair kind and criterion in the accessible name when finite person coordinates are added. LeftoverPairList can emit closest and farthest rows for the same post, and every row for one post shares its title and person coordinates. The new coordinate-only aria-label therefore creates duplicate button names. Update the ADR 0339 label contract, translation key and tests together so the coordinate is included without removing the existing pair identity.
Devin Review

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

Comment on lines +52 to +61
export function leftoverMapListPostBadge(
title: string,
axis1: number | null | undefined,
axis2: number | null | undefined,
): LeftoverMapListPostBadge | null {
const person = formatLeftoverMapCoordinatePair(axis1, axis2);
if (person === null) {
return null;
}
return { key: LEFTOVER_MAP_LIST_POST_ACTION, values: { title, person } };

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: Person coordinates remain independent

leftoverMapListPostBadge accepts finite zero and negative values. Missing item coordinates cannot suppress the person-coordinate caption.

Devin Review

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

Comment on lines +307 to +311
: tf("Open leftover {kind} pair: {title} · {criterion}", {
kind: pair.pair_kind,
title: pair.post_title,
criterion,
})

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: Older payloads retain labels

Missing or non-finite person coordinates preserve the existing pair direction, title, and criterion in the accessible name.

Devin Review

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

Copy link
Copy Markdown
Contributor Author

Cycle 2026-08-31T18:13 KST: write probe. Independent APPROVE still required on exact head 167888d. Do not self-approve. Do not squash-merge onto the unprotected leftover base. Issues #79 and #87 stay open.

Copy link
Copy Markdown
Contributor Author

Cycle 2026-08-31T18:28 KST: write probe. Independent APPROVE still required on exact head 167888d. Devin COMMENT is not independent APPROVE. Do not self-approve. Do not squash-merge onto the unprotected leftover base. Issues #79 and #87 stay open. Do not merge #808 without independent APPROVE. Next buyer increment is leftover-map pair leftover-map criterion leftover-map item coordinates independently of leftover-map pair leftover-map post leftover-map person coordinates (ADR 0340 / v2.97.0), stacked on this head.

Copy link
Copy Markdown
Contributor Author

Stacked leftover-map pair leftover-map criterion leftover-map item coordinates (v2.97.0 / ADR 0340 leftoverMapListCriterionBadge) on feat/leftover-map-list-criterion-coordinates-v2970 @ 094d1a0, based on this exact head 167888d.

This PR (#881) still needs independent APPROVE on this exact head. Devin COMMENT is not APPROVE. Do not self-approve. Do not squash-merge. Do not mix #877 origin-tick stack. Issues #79 and #87 stay OPEN.

Copy link
Copy Markdown
Contributor Author

Write probe 2026-08-31T09:45Z. Stacked leftover-map v2.96.0 still waiting independent APPROVE on exact head 167888d. Devin COMMENT is not independent APPROVE. Do not self-approve. Do not squash-merge. Do not mix #877. Issues #79 and #87 stay OPEN.

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