diff --git a/.Jules/palette.md b/.Jules/palette.md index 32fb11be..9d6c4f20 100644 --- a/.Jules/palette.md +++ b/.Jules/palette.md @@ -43,3 +43,6 @@ ## 2024-06-26 - [Abbreviation Comprehension in ERD Nodes] **Learning:** Users without deep database administration backgrounds may not immediately recognize domain-specific abbreviations like "PK" or "FK" rendered as minimalist badges inside dense ERD nodes. **Action:** Always provide `title` attributes on technical acronym badges (like Primary Key / Foreign Key) to ensure clarity and improve accessibility without cluttering the space-constrained node UI. +## 2026-07-06 - Semantic Tags for Technical Badges +**Learning:** In accessibility optimization tasks, injecting unsanitized data (e.g. `col.column_name`) directly into DOM attributes (like `aria-label`) within sensitive editing components (like `EditTableModal.tsx`) can inadvertently trigger XSS security scanners and CI blockades in strict environments like STRIX. Additionally, non-semantic elements like `` can have their `aria-label` dropped by assistive technologies. +**Action:** When working on isolated UX fixes in highly secured repos, avoid touching data-binding inside sensitive inputs. Instead, focus on purely semantic upgrades in isolated display components (e.g., swapping `` for `` in `TableNode.tsx`) to ensure accessibility attributes are reliably announced without crossing trust boundaries. diff --git a/frontend/src/erd/TableNode.tsx b/frontend/src/erd/TableNode.tsx index f80d8488..6d189ac6 100644 --- a/frontend/src/erd/TableNode.tsx +++ b/frontend/src/erd/TableNode.tsx @@ -158,9 +158,9 @@ function TableNode(props: NodeProps) { ) : null} {c.is_not_null ? ( - + NOT NULL - + ) : null}