Skip to content
Draft
Show file tree
Hide file tree
Changes from 3 commits
Commits
Show all changes
15 commits
Select commit Hold shift + click to select a range
ad9a8eb
๐ŸŽจ Palette: [aria-busy] ์‹œ๊ฐ์ /๊ธฐ๋Šฅ์  ํ”ผ๋“œ๋ฐฑ ์ถ”๊ฐ€
seonghobae Aug 23, 2026
1858c2e
๐ŸŽจ Palette: [aria-busy] ์‹œ๊ฐ์ /๊ธฐ๋Šฅ์  ํ”ผ๋“œ๋ฐฑ ์ถ”๊ฐ€
seonghobae Aug 23, 2026
cbeb554
๐ŸŽจ Palette: [aria-busy] ์‹œ๊ฐ์ /๊ธฐ๋Šฅ์  ํ”ผ๋“œ๋ฐฑ ์ถ”๊ฐ€
seonghobae Aug 23, 2026
4449c7d
๐ŸŽจ Palette: [aria-busy] ์‹œ๊ฐ์ /๊ธฐ๋Šฅ์  ํ”ผ๋“œ๋ฐฑ ์ถ”๊ฐ€
seonghobae Aug 23, 2026
405fdad
test(console): cover busy row activation guard
seonghobae Aug 24, 2026
1ab6721
fix(console): block repeat busy row activation
seonghobae Aug 24, 2026
e45b266
๐ŸŽจ Palette: [aria-busy] ์‹œ๊ฐ์ /๊ธฐ๋Šฅ์  ํ”ผ๋“œ๋ฐฑ ์ถ”๊ฐ€ ๋ฐ ์ค‘๋ณต ์‹คํ–‰ ๋ฐฉ์ง€
seonghobae Aug 24, 2026
653eef1
Merge branch 'develop' into palette-ux-aria-busy-pointer-events-86489โ€ฆ
opencode-agent[bot] Aug 27, 2026
c4db71f
docs(ui): keep busy-state doctrine evidence-scoped
seonghobae Sep 7, 2026
c314a95
๐ŸŽจ Palette: [aria-busy] ์‹œ๊ฐ์ /๊ธฐ๋Šฅ์  ํ”ผ๋“œ๋ฐฑ ์ถ”๊ฐ€ ๋ฐ ์ค‘๋ณต ์‹คํ–‰ ๋ฐฉ์ง€
seonghobae Sep 7, 2026
bda517e
fix(pr): preserve scoped busy-state delta after concurrent update
seonghobae Sep 7, 2026
84b8ae6
๐ŸŽจ Palette: [aria-busy] ์‹œ๊ฐ์ /๊ธฐ๋Šฅ์  ํ”ผ๋“œ๋ฐฑ ์ถ”๊ฐ€ ๋ฐ ์ค‘๋ณต ์‹คํ–‰ ๋ฐฉ์ง€
seonghobae Sep 7, 2026
e9d1946
๐ŸŽจ Palette: [aria-busy] ์‹œ๊ฐ์ /๊ธฐ๋Šฅ์  ํ”ผ๋“œ๋ฐฑ ์ถ”๊ฐ€ ๋ฐ ์ค‘๋ณต ์‹คํ–‰ ๋ฐฉ์ง€
seonghobae Sep 7, 2026
57fcbcd
๐ŸŽจ Palette: [aria-busy] ์‹œ๊ฐ์ /๊ธฐ๋Šฅ์  ํ”ผ๋“œ๋ฐฑ ์ถ”๊ฐ€ ๋ฐ ์ค‘๋ณต ์‹คํ–‰ ๋ฐฉ์ง€
seonghobae Sep 7, 2026
32953df
๐ŸŽจ Palette: [aria-busy] ์‹œ๊ฐ์ /๊ธฐ๋Šฅ์  ํ”ผ๋“œ๋ฐฑ ์ถ”๊ฐ€ ๋ฐ ์ค‘๋ณต ์‹คํ–‰ ๋ฐฉ์ง€
seonghobae Sep 7, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions .jules/palette.md
Original file line number Diff line number Diff line change
Expand Up @@ -81,3 +81,7 @@
## 2026-08-12 - Skip to Content Accessibility
**Learning:** Screen reader and keyboard-only users experience significant friction when forced to navigate through repetitive header controls on every page load.
**Action:** Keep a visible-on-focus skip link as the first interactive element, target a programmatically focusable main container, and give the focused link a high-contrast outline.

## 2026-08-23 - Async Interactive Element Interactions
**Learning:** Adding `aria-busy="true"` explicitly communicates loading states to screen readers, but it does not natively prevent clicks, unlike the `disabled` attribute. During async operations (like loading scan details), users might double-click an interactive element that lacks `pointer-events: none`, causing duplicate API requests or unexpected state bugs.
**Action:** Always map the `[aria-busy="true"]` state directly to CSS with `pointer-events: none` and visual indicators (like `opacity`) to ensure visual parity with the accessibility tree and prevent duplicate user actions.
1 change: 1 addition & 0 deletions scanner/dashboard/console.html
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,7 @@
.err{color:var(--crit);font-weight:600}
code{background:var(--bg);padding:1px 5px;border-radius:4px}
.hidden{display:none}
:disabled, [aria-busy="true"] { opacity: 0.7; pointer-events: none; }
Comment thread
seonghobae marked this conversation as resolved.
Comment thread
seonghobae marked this conversation as resolved.
Comment thread
coderabbitai[bot] marked this conversation as resolved.
</style>
</head>
<body>
Expand Down
Loading