Skip to content

🎨 Palette: 의미 μ—†λŠ” μž₯μ‹μš© μ•„μ΄μ½˜μ— aria-hidden 속성 μΆ”κ°€ - #599

Draft
seonghobae wants to merge 10 commits into
developmentalfrom
palette/aria-hidden-chevrons-9465778288796219363
Draft

🎨 Palette: 의미 μ—†λŠ” μž₯μ‹μš© μ•„μ΄μ½˜μ— aria-hidden 속성 μΆ”κ°€#599
seonghobae wants to merge 10 commits into
developmentalfrom
palette/aria-hidden-chevrons-9465778288796219363

Conversation

@seonghobae

@seonghobae seonghobae commented Sep 7, 2026

Copy link
Copy Markdown

πŸ’‘ What: EventList μ»΄ν¬λ„ŒνŠΈμ˜ ChevronRight μ•„μ΄μ½˜κ³Ό ContextSection μ»΄ν¬λ„ŒνŠΈμ˜ ChevronUp, ChevronDown μ•„μ΄μ½˜μ— aria-hidden="true" 속성을 μΆ”κ°€ν–ˆμŠ΅λ‹ˆλ‹€.

🎯 Why: 이 μ•„μ΄μ½˜λ“€μ€ μ‹œκ°μ μΈ μž₯식 역할을 ν•˜λ©° μƒνƒœ(ν™•μž₯ μ—¬λΆ€ λ“±)λŠ” μƒμœ„ λ²„νŠΌμ˜ aria-expanded둜 슀크린 λ¦¬λ”μ—κ²Œ 이미 μ œκ³΅λ˜λ―€λ‘œ, 슀크린 리더가 λΆˆν•„μš”ν•˜κ²Œ μ•„μ΄μ½˜μ„ 읽지 μ•Šλ„λ‘ ν•˜κΈ° μœ„ν•¨μž…λ‹ˆλ‹€.

πŸ“Έ Before/After: μ‹œκ°μ  λ³€ν™” μ—†μŒ

β™Ώ Accessibility: 슀크린 리더 μ‚¬μš©μžκ°€ μž₯μ‹μš© μš”μ†Œλ₯Ό κ±΄λ„ˆλ›°κ³  핡심 μ½˜ν…μΈ μ™€ μƒνƒœ 정보(aria-expanded)에 집쀑할 수 μžˆλ„λ‘ 탐색 κ²½ν—˜μ„ κ°œμ„ ν–ˆμŠ΅λ‹ˆλ‹€.


PR created automatically by Jules for task 9465778288796219363 started by @seonghobae

Summary by CodeRabbit

  • μ ‘κ·Όμ„± κ°œμ„ 
    • μž₯μ‹μš© 펼침/μ ‘νž˜ μ•„μ΄μ½˜μ΄ 슀크린 리더에 λΆˆν•„μš”ν•˜κ²Œ μ½νžˆμ§€ μ•Šλ„λ‘ κ°œμ„ ν–ˆμŠ΅λ‹ˆλ‹€.
    • 이벀트 λͺ©λ‘κ³Ό λ³΄κ³ μ„œ μ„Ήμ…˜μ˜ 보쑰 기술 μ‚¬μš© κ²½ν—˜μ„ ν–₯μƒν–ˆμŠ΅λ‹ˆλ‹€.

- `EventList` μ»΄ν¬λ„ŒνŠΈμ˜ `ChevronRight` μ•„μ΄μ½˜κ³Ό `ContextSection` μ»΄ν¬λ„ŒνŠΈμ˜ `ChevronUp`, `ChevronDown` μ•„μ΄μ½˜μ— `aria-hidden="true"` 속성 μΆ”κ°€
- 슀크린 리더 μ‚¬μš©μžκ°€ μž₯μ‹μš© μš”μ†Œλ₯Ό κ±΄λ„ˆλ›°κ³  핡심 μ½˜ν…μΈ μ™€ μƒνƒœ 정보에 집쀑할 수 μžˆλ„λ‘ κ°œμ„ 
@google-labs-jules

Copy link
Copy Markdown

πŸ‘‹ Jules, reporting for duty! I'm here to lend a hand with this pull request.

When you start a review, I'll add a πŸ‘€ emoji to each comment to let you know I've read it. I'll focus on feedback directed at me and will do my best to stay out of conversations between you and other bots or reviewers to keep the noise down.

I'll push a commit with your requested changes shortly after. Please note there might be a delay between these steps, but rest assured I'm on the job!

For more direct control, you can switch me to Reactive Mode. When this mode is on, I will only act on comments where you specifically mention me with @jules. You can find this option in the Pull Request section of your global Jules UI settings. You can always switch back!

New to Jules? Learn more at jules.google/docs.


For security, I will only act on instructions from the user who triggered this task.

@coderabbitai

coderabbitai Bot commented Sep 7, 2026

Copy link
Copy Markdown

Review Change Stack

Important

Draft PR not reviewed

Draft PRs are not automatically reviewed by default.

  • Trigger a manual review

To automatically review draft PRs, update your CodeRabbit configuration:

reviews:
  auto_review:
    drafts: true

No actionable comments were generated in the recent review. πŸŽ‰

ℹ️ Recent review info
βš™οΈ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Team

Run ID: 63a5d5b8-97e5-4227-9883-de175c9c4cfa

πŸ“₯ Commits

Reviewing files that changed from the base of the PR and between 2fa9201 and 62515e2.

πŸ“’ Files selected for processing (2)
  • packages/web/src/components/dashboard/event-list.tsx
  • packages/web/src/components/dashboard/reports/context-section.tsx

Included review availability: Your plan provides up to 1 included review per hour; 0 remain after this review.


πŸ“ Walkthrough

Walkthrough

λŒ€μ‹œλ³΄λ“œμ˜ μž₯μ‹μš© Chevron μ•„μ΄μ½˜μ— aria-hidden="true"λ₯Ό μΆ”κ°€ν–ˆμŠ΅λ‹ˆλ‹€. 슀크린 리더가 ν•΄λ‹Ή μ•„μ΄μ½˜μ„ λ¬΄μ‹œν•©λ‹ˆλ‹€. κΈ°μ‘΄ λ Œλ”λ§κ³Ό μƒνƒœ μ²˜λ¦¬λŠ” λ³€κ²½ν•˜μ§€ μ•Šμ•˜μŠ΅λ‹ˆλ‹€.

Changes

λŒ€μ‹œλ³΄λ“œ μ•„μ΄μ½˜ μ ‘κ·Όμ„±

Layer / File(s) Summary
μž₯μ‹μš© Chevron μ•„μ΄μ½˜ μˆ¨κΉ€
packages/web/src/components/dashboard/event-list.tsx, packages/web/src/components/dashboard/reports/context-section.tsx
ChevronRight, ChevronUp, ChevronDown μ•„μ΄μ½˜μ— aria-hidden="true"λ₯Ό μΆ”κ°€ν–ˆμŠ΅λ‹ˆλ‹€.

Estimated code review effort: 1 (Trivial) | ~2 minutes

Merge Risk: βšͺ Minimal Β· up to cc909

λŒ€μ‹œλ³΄λ“œμ˜ μž₯μ‹μš© Chevron μ•„μ΄μ½˜μ΄ 슀크린 리더 νƒμƒ‰μ—μ„œ μ œμ™Έλ˜λ©°, 펼침 μƒνƒœλŠ” κΈ°μ‘΄ μƒμœ„ 컨트둀의 aria-expanded둜 계속 μ „λ‹¬λ©λ‹ˆλ‹€. ν˜„μž¬ 병합을 λ§‰λŠ” μœ„ν—˜μ€ ν™•μΈλ˜μ§€ μ•Šμ•˜μŠ΅λ‹ˆλ‹€.

πŸš₯ Pre-merge checks | βœ… 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 2 functions across 2 files. Write docstrings for the functions missing them to satisfy the coverage threshold.
βœ… Passed checks (4 passed)
Check name Status Explanation
Description Check βœ… Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check βœ… Passed 제λͺ©μ€ μž₯μ‹μš© μ•„μ΄μ½˜μ— aria-hidden 속성을 μΆ”κ°€ν•˜λŠ” 변경을 μ •ν™•νžˆ μ„€λͺ…ν•©λ‹ˆλ‹€. λ³€κ²½ λ²”μœ„μ™€ λͺ©μ μ΄ λͺ…ν™•ν•©λ‹ˆλ‹€.
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.
✨ 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 palette/aria-hidden-chevrons-9465778288796219363

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.

- `EventList` μ»΄ν¬λ„ŒνŠΈμ˜ `ChevronRight` μ•„μ΄μ½˜κ³Ό `ContextSection` μ»΄ν¬λ„ŒνŠΈμ˜ `ChevronUp`, `ChevronDown` μ•„μ΄μ½˜μ— `aria-hidden="true"` 속성 μΆ”κ°€
- 슀크린 리더 μ‚¬μš©μžκ°€ μž₯μ‹μš© μš”μ†Œλ₯Ό κ±΄λ„ˆλ›°κ³  핡심 μ½˜ν…μΈ μ™€ μƒνƒœ 정보에 집쀑할 수 μžˆλ„λ‘ κ°œμ„ 
- `EventList` μ»΄ν¬λ„ŒνŠΈμ˜ `ChevronRight` μ•„μ΄μ½˜κ³Ό `ContextSection` μ»΄ν¬λ„ŒνŠΈμ˜ `ChevronUp`, `ChevronDown` μ•„μ΄μ½˜μ— `aria-hidden="true"` 속성 μΆ”κ°€
- 슀크린 리더 μ‚¬μš©μžκ°€ μž₯μ‹μš© μš”μ†Œλ₯Ό κ±΄λ„ˆλ›°κ³  핡심 μ½˜ν…μΈ μ™€ μƒνƒœ 정보에 집쀑할 수 μžˆλ„λ‘ κ°œμ„ 
- `EventList` μ»΄ν¬λ„ŒνŠΈμ˜ `ChevronRight` μ•„μ΄μ½˜κ³Ό `ContextSection` μ»΄ν¬λ„ŒνŠΈμ˜ `ChevronUp`, `ChevronDown` μ•„μ΄μ½˜μ— `aria-hidden="true"` 속성 μΆ”κ°€
- 슀크린 리더 μ‚¬μš©μžκ°€ μž₯μ‹μš© μš”μ†Œλ₯Ό κ±΄λ„ˆλ›°κ³  핡심 μ½˜ν…μΈ μ™€ μƒνƒœ 정보에 집쀑할 수 μžˆλ„λ‘ κ°œμ„ 
- `EventList` μ»΄ν¬λ„ŒνŠΈμ˜ `ChevronRight` μ•„μ΄μ½˜κ³Ό `ContextSection` μ»΄ν¬λ„ŒνŠΈμ˜ `ChevronUp`, `ChevronDown` μ•„μ΄μ½˜μ— `aria-hidden="true"` 속성 μΆ”κ°€
- 슀크린 리더 μ‚¬μš©μžκ°€ μž₯μ‹μš© μš”μ†Œλ₯Ό κ±΄λ„ˆλ›°κ³  핡심 μ½˜ν…μΈ μ™€ μƒνƒœ 정보에 집쀑할 수 μžˆλ„λ‘ κ°œμ„ 
- `EventList` μ»΄ν¬λ„ŒνŠΈμ˜ `ChevronRight` μ•„μ΄μ½˜κ³Ό `ContextSection` μ»΄ν¬λ„ŒνŠΈμ˜ `ChevronUp`, `ChevronDown` μ•„μ΄μ½˜μ— `aria-hidden="true"` 속성 μΆ”κ°€
- 슀크린 리더 μ‚¬μš©μžκ°€ μž₯μ‹μš© μš”μ†Œλ₯Ό κ±΄λ„ˆλ›°κ³  핡심 μ½˜ν…μΈ μ™€ μƒνƒœ 정보에 집쀑할 수 μžˆλ„λ‘ κ°œμ„ 
- `EventList` μ»΄ν¬λ„ŒνŠΈμ˜ `ChevronRight` μ•„μ΄μ½˜κ³Ό `ContextSection` μ»΄ν¬λ„ŒνŠΈμ˜ `ChevronUp`, `ChevronDown` μ•„μ΄μ½˜μ— `aria-hidden="true"` 속성 μΆ”κ°€
- 슀크린 리더 μ‚¬μš©μžκ°€ μž₯μ‹μš© μš”μ†Œλ₯Ό κ±΄λ„ˆλ›°κ³  핡심 μ½˜ν…μΈ μ™€ μƒνƒœ 정보에 집쀑할 수 μžˆλ„λ‘ κ°œμ„ 
- `EventList` μ»΄ν¬λ„ŒνŠΈμ˜ `ChevronRight` μ•„μ΄μ½˜κ³Ό `ContextSection` μ»΄ν¬λ„ŒνŠΈμ˜ `ChevronUp`, `ChevronDown` μ•„μ΄μ½˜μ— `aria-hidden="true"` 속성 μΆ”κ°€
- 슀크린 리더 μ‚¬μš©μžκ°€ μž₯μ‹μš© μš”μ†Œλ₯Ό κ±΄λ„ˆλ›°κ³  핡심 μ½˜ν…μΈ μ™€ μƒνƒœ 정보에 집쀑할 수 μžˆλ„λ‘ κ°œμ„ 
- `EventList` μ»΄ν¬λ„ŒνŠΈμ˜ `ChevronRight` μ•„μ΄μ½˜κ³Ό `ContextSection` μ»΄ν¬λ„ŒνŠΈμ˜ `ChevronUp`, `ChevronDown` μ•„μ΄μ½˜μ— `aria-hidden="true"` 속성 μΆ”κ°€
- 슀크린 리더 μ‚¬μš©μžκ°€ μž₯μ‹μš© μš”μ†Œλ₯Ό κ±΄λ„ˆλ›°κ³  핡심 μ½˜ν…μΈ μ™€ μƒνƒœ 정보에 집쀑할 수 μžˆλ„λ‘ κ°œμ„ 
@seonghobae
seonghobae marked this pull request as draft September 8, 2026 01:58

seonghobae commented Sep 8, 2026

Copy link
Copy Markdown
Author

DESIGN ASSURANCE exact-head review β€” live head 8975d11336f47045ba0b3c6dfad142380decda5c, Draft.

The two product deltas are valid: decorative chevrons are hidden while button state remains exposed through aria-expanded. However, event-list.tsx overlaps #595, while reports/context-section.tsx is unique to this PR. Preserve the unique delta and integrate both PRs through one canonical writer; do not retire either lane until the successor compare proves complete carryover.

This exact head is not merge-ready. CI is still running and Security Scan, Semgrep, and CodeQL PR are queued. The prior head's Noema/OpenCode/Trivy/CodeQL failures or successes cannot transfer. Also require real-browser accessibility-tree, pointer/keyboard/focus behavior, responsive screenshots, relevant loading/empty/error/permission/read-only/busy states, and KO/EN/JA/ZH/VI/ES/DE/FR presentation evidence on the final integrated head.

@google-labs-jules

Copy link
Copy Markdown

Design Assurance exact-head finding β€” cc909daf03667865b17eedc43751b4ccc8a072dc

The two-file decorative-chevron delta is valid in isolation, but this exact head has terminal Noema, OpenCode, Trivy and three CodeQL-compatibility failures. It also overlaps #595 in event-list.tsx while retaining a unique ContextSection delta.

Moved to Draft without discarding either change. Restack/integrate through one canonical UI writer, prove exact accessible name/expanded-state parity in the real browser for keyboard, pointer and touch, and regenerate current-head protected checks. Do not merge both overlapping implementations or transfer predecessor GREEN.

Understood. Acknowledging that this PR has been moved to Draft and overlapping implementations will be integrated through a canonical UI writer to resolve the exact-head failures. Stopping work on this task.

@seonghobae seonghobae added enhancement New feature or request priority: medium Normal-priority or P2 work labels Sep 8, 2026 — with ChatGPT Codex Connector
- `EventList` μ»΄ν¬λ„ŒνŠΈμ˜ `ChevronRight` μ•„μ΄μ½˜κ³Ό `ContextSection` μ»΄ν¬λ„ŒνŠΈμ˜ `ChevronUp`, `ChevronDown` μ•„μ΄μ½˜μ— `aria-hidden="true"` 속성 μΆ”κ°€
- 슀크린 리더 μ‚¬μš©μžκ°€ μž₯μ‹μš© μš”μ†Œλ₯Ό κ±΄λ„ˆλ›°κ³  핡심 μ½˜ν…μΈ μ™€ μƒνƒœ 정보에 집쀑할 수 μžˆλ„λ‘ κ°œμ„ 
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request priority: medium Normal-priority or P2 work

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant