|
| 1 | +# PR_26159_035 Colors Picker Layout Tags Report |
| 2 | + |
| 3 | +## Summary |
| 4 | + |
| 5 | +Playwright impacted: Yes. |
| 6 | + |
| 7 | +This PR moves Picker Swatches controls into the left column under Project Workspace, removes the Project Palette Tags accordion, moves tag editing into the right-column Tags accordion, and adds the duplicate-by-column picker rule. No CSS was added. |
| 8 | + |
| 9 | +## Requirement Checklist |
| 10 | + |
| 11 | +| Requirement | Status | Evidence | |
| 12 | +| --- | --- | --- | |
| 13 | +| Read `PROJECT_INSTRUCTIONS.md` first | PASS | Read before editing. | |
| 14 | +| Use PR_26159_034 as base context | PASS | Work started from current clean PR_034 branch state. | |
| 15 | +| Remove Project Palette Tags accordion/content | PASS | Removed from `toolbox/colors/index.html`; Playwright asserts no visible `Project Palette Tags` at `tests/playwright/tools/PaletteToolMockRepository.spec.mjs:293` and `:892`. | |
| 16 | +| Move Tag input/content and Clear Checked into right-column Tags under Clear Filters | PASS | Right-column Tags contains Clear Filters, tag editor, and Clear Checked at `toolbox/colors/index.html:279`, `:281`, `:315`; layout assertion at `tests/playwright/tools/PaletteToolMockRepository.spec.mjs:297`. | |
| 17 | +| Move Picker Swatches accordion to left column below Project Workspace | PASS | New left accordion at `toolbox/colors/index.html:40`; order assertion at `tests/playwright/tools/PaletteToolMockRepository.spec.mjs:394`. | |
| 18 | +| Theme/Type/Variant label and dropdown are same-row pairs | PASS | Table rows in `toolbox/colors/index.html:47`, `:51`, `:55`; Playwright layout assertion at `tests/playwright/tools/PaletteToolMockRepository.spec.mjs:437`. | |
| 19 | +| Colors and Steps grouped, with `Colors x Steps` on one line | PASS | Grouped controls and summary at `toolbox/colors/index.html:59` and `:93`; runtime summary update at `toolbox/colors/colors.js:1091`; Playwright assertion at `tests/playwright/tools/PaletteToolMockRepository.spec.mjs:462`. | |
| 20 | +| Contrast, Saturation, Hue Shift are stacked label/slider controls | PASS | Controls at `toolbox/colors/index.html:100`, `:103`, `:106`; Playwright stacked layout assertion at `tests/playwright/tools/PaletteToolMockRepository.spec.mjs:463`. | |
| 21 | +| Picker Preview is not highlighted | PASS | `accordion-fill-panel` removed from preview accordion at `toolbox/colors/index.html:196`; Playwright assertion at `tests/playwright/tools/PaletteToolMockRepository.spec.mjs:406`. | |
| 22 | +| Preserve Project Swatches in center top | PASS | Center top Project Swatches accordion remains at `toolbox/colors/index.html:178`; Playwright center accordion assertion at `tests/playwright/tools/PaletteToolMockRepository.spec.mjs:387`. | |
| 23 | +| Duplicate picker swatches detected by Hex within same column only | PASS | `duplicatePickerHexReasons` groups by `column:hex` at `toolbox/colors/colors.js:899`; Playwright duplicate-column test at `tests/playwright/tools/PaletteToolMockRepository.spec.mjs:639`. | |
| 24 | +| Bottom-most duplicate keeps pin/add marker | PASS | Bottom duplicate remains available and keeps marker in test at `tests/playwright/tools/PaletteToolMockRepository.spec.mjs:686`. | |
| 25 | +| Earlier duplicates keep true color, lose marker, and cannot add | PASS | Earlier duplicate reason and blocked add assertions at `tests/playwright/tools/PaletteToolMockRepository.spec.mjs:675`; visual color/cursor/opacity checks at `:678`. | |
| 26 | +| Unique Hex values keep pin/add marker and remain addable | PASS | Unique available swatch add assertion at `tests/playwright/tools/PaletteToolMockRepository.spec.mjs:702`. | |
| 27 | +| Do not compare duplicates across different columns | PASS | Duplicate key includes column in `toolbox/colors/colors.js:902`. | |
| 28 | +| Do not gray out duplicate swatches or show red not-allowed marker | PASS | Runtime keeps real color inputs; tests assert opacity `1` and cursor is not `not-allowed` at `tests/playwright/tools/PaletteToolMockRepository.spec.mjs:678`. | |
| 29 | +| Preserve Picker Preview grid and click behavior | PASS | Eight-column row preservation at `tests/playwright/tools/PaletteToolMockRepository.spec.mjs:602`; generated click/add/pin behavior at `:724`. | |
| 30 | +| Preserve ROYGBIV, Theme Collection, Palette Type, Variant options | PASS | Existing option coverage remains in `tests/playwright/tools/PaletteToolMockRepository.spec.mjs:410` and ROYGBIV checks at `:530`. | |
| 31 | +| Preserve Add/Update/Clear without Symbol validation | PASS | Symbol-free payload test at `tests/playwright/tools/PaletteToolMockRepository.spec.mjs:230`; Add/Update/Clear flow test at `:276`; no active Colors source returns `Symbol: Enter a symbol for this swatch`. | |
| 32 | +| No inline script/style/event handlers | PASS | Static `rg --pcre2` check against `toolbox/colors/index.html` returned no matches. | |
| 33 | +| No console errors | PASS | `expectNoPageFailures` passed in all targeted Palette Tool Playwright tests. | |
| 34 | + |
| 35 | +## Validation |
| 36 | + |
| 37 | +| Lane | Result | Evidence | |
| 38 | +| --- | --- | --- | |
| 39 | +| Changed JS syntax | PASS | `node --check toolbox/colors/colors.js`; `node --check tests/playwright/tools/PaletteToolMockRepository.spec.mjs`. | |
| 40 | +| Static diff whitespace | PASS | `git diff --check`. | |
| 41 | +| Inline script/style/event audit | PASS | `rg --pcre2 -n "<style|style=|<script(?![^>]*\\bsrc=)|on(click|change|input|submit)=" toolbox/colors/index.html` returned no matches. | |
| 42 | +| Targeted Palette Tool Playwright | PASS | `npx playwright test tests/playwright/tools/PaletteToolMockRepository.spec.mjs` passed 8/8. | |
| 43 | + |
| 44 | +## Skipped Lanes |
| 45 | + |
| 46 | +| Lane | Reason | |
| 47 | +| --- | --- | |
| 48 | +| Full samples validation | Skipped by request: "Do not run full samples validation." This PR only touches the Colors tool page/runtime and its targeted Playwright coverage. | |
| 49 | + |
| 50 | +## Notes |
| 51 | + |
| 52 | +- The existing shared V8 coverage report was generated by the Playwright helper during validation, then restored because PR_035 did not request `playwright_v8_coverage_report.txt`. |
| 53 | +- SQLite experimental warnings and seed-only audit fallback diagnostics appeared in the Playwright process output; they are pre-existing test environment messages and did not fail the targeted lane. |
0 commit comments