[Bug] Review attachment links overflow without scroll or detail access #59

Closed
opened 2026-07-14 20:08:39 +02:00 by zemion · 3 comments
Owner

Problem / User Need

In the first campaign review step, linked attachment lists can exceed the available space. Only a limited number of linked attachments is visible, and the list is not scrollable or paginated.

Acceptance Criteria

  • Long linked-attachment lists remain accessible without clipping.
  • The review step has a detail surface for attachment links, preferably opened from the statistics/count affordance.
  • The detail surface supports keyboard and screen-reader access.
  • The compact review panel stays readable for campaigns with many attachments.

Notes / Decisions

A modal/overlay from the attachment statistics button is suggested by the source note.

## Problem / User Need In the first campaign review step, linked attachment lists can exceed the available space. Only a limited number of linked attachments is visible, and the list is not scrollable or paginated. ## Acceptance Criteria - Long linked-attachment lists remain accessible without clipping. - The review step has a detail surface for attachment links, preferably opened from the statistics/count affordance. - The detail surface supports keyboard and screen-reader access. - The compact review panel stays readable for campaigns with many attachments. ## Notes / Decisions A modal/overlay from the attachment statistics button is suggested by the source note.
Author
Owner

Implemented locally as the first Campaign interface-pattern pilot:

  • all unique attachment matches remain available in a bounded, keyboard-focusable scrolling list; the count opens an accessible full-detail dialog
  • message preview geometry now has a stable header/body/footer, bounded responsive dimensions, scrolling body, keyboard navigation, and accessible close behavior
  • dynamic labels/counts use i18nMessage; the slice has stable English/German SHA-1 keys

Validation: npm run test:review-preview-ui, Campaign policy/template/import focused tests, Core structural i18n audit, Campaign-only production build (3,759 modules), and git diff --check passed. Kept open/in progress because the changes are local and share a larger unintegrated Campaign worktree.

<!-- codex-progress-review-preview-2026-07-20 --> Implemented locally as the first Campaign interface-pattern pilot: - all unique attachment matches remain available in a bounded, keyboard-focusable scrolling list; the count opens an accessible full-detail dialog - message preview geometry now has a stable header/body/footer, bounded responsive dimensions, scrolling body, keyboard navigation, and accessible close behavior - dynamic labels/counts use `i18nMessage`; the slice has stable English/German SHA-1 keys Validation: `npm run test:review-preview-ui`, Campaign policy/template/import focused tests, Core structural i18n audit, Campaign-only production build (3,759 modules), and `git diff --check` passed. Kept open/in progress because the changes are local and share a larger unintegrated Campaign worktree.
Author
Owner

Codex State: progress

Summary

  • The no-truncation list/detail refinement is implemented locally and its combined focused test passes, but it cannot be isolated cleanly against current HEAD.
  • Its dependency closure includes the uncommitted candidate-preview/link/validate-lock baseline across Campaign API/backend and Files integration, including #75 policy-sensitive behavior.

Verification

  • Read-only hunk/dependency audit completed; git diff --check passes.

Next / Blocked

  • First isolate and review the attachment-preview/linking baseline and settle #75 policy precedence/override semantics; then commit the #59 refinement without pulling in #63/#65/#69/#74/#76 WIP.

Suggested status label: status/in-progress

## Codex State: progress ### Summary - The no-truncation list/detail refinement is implemented locally and its combined focused test passes, but it cannot be isolated cleanly against current HEAD. - Its dependency closure includes the uncommitted candidate-preview/link/validate-lock baseline across Campaign API/backend and Files integration, including #75 policy-sensitive behavior. ### Verification - `Read-only hunk/dependency audit completed; git diff --check passes.` ### Next / Blocked - First isolate and review the attachment-preview/linking baseline and settle #75 policy precedence/override semantics; then commit the #59 refinement without pulling in #63/#65/#69/#74/#76 WIP. Suggested status label: `status/in-progress`
Author
Owner

Codex State: done

Summary

  • Attachment-link overflow and detail access are integrated on remote main; commit 724ca77 is an ancestor of origin/main.
  • The compact view retains a bounded scrolling list and the count opens the shared accessible Dialog with the complete link set.

Verification

  • npm run test:review-preview-ui
  • node tests/message-preview-overlay-structure.test.mjs
## Codex State: done ### Summary - Attachment-link overflow and detail access are integrated on remote main; commit 724ca77 is an ancestor of origin/main. - The compact view retains a bounded scrolling list and the count opens the shared accessible Dialog with the complete link set. ### Verification - `npm run test:review-preview-ui` - `node tests/message-preview-overlay-structure.test.mjs`
Sign in to join this conversation.
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: GovOPlaN/govoplan-campaign#59
No description provided.