You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
PASS. The Colors picker regression is fixed and packaged. Picker swatches are selectable, selected/pinned swatches retain the generator settings that created them, metadata tooltips are present for generated and selected swatches, and the requested layout/control cleanup is implemented without page-local CSS, inline scripts, inline styles, or inline handlers.
5
+
6
+
## Requirement Checklist
7
+
| Requirement | Status | Evidence |
8
+
| --- | --- | --- |
9
+
| Read project instructions first | PASS | Read `docs_build/dev/PROJECT_INSTRUCTIONS.md` before implementation. |
10
+
| Use PR_26159_024 and PR_26159_025 as base context | PASS | Changes build on existing Colors curated palette/generator and restored selection/tag/sort behavior in `toolbox/colors/colors.js`, `toolbox/colors/index.html`, and `tests/playwright/tools/PaletteToolMockRepository.spec.mjs`. |
11
+
| Every visible picker swatch selectable unless documented disabled reason exists | PASS |`renderPaletteGeneratorPreview` renders enabled picker buttons; Playwright clicks all visible picker swatches and verifies selection count. |
12
+
| Remove red/not-allowed mouse behavior from selectable picker swatches | PASS | No live `not-allowed` cursor code remains in Colors files; Playwright asserts picker swatch cursors are not `not-allowed`. |
13
+
| Store picker settings when picker swatch is selected or pinned | PASS |`currentPickerSettings`, `generatedSwatchFromTile`, and repository `clonePickerSettings` preserve Theme Collection, Palette Type, Variant, Colors, Steps, Contrast, Saturation, Hue Shift, Sort field/direction, Active tags, and Swatch size. |
14
+
| Add way to return to selected/pinned swatch picker settings | PASS | Added `data-palette-restore-picker-settings` button and `applyPickerSettings`; Playwright verifies changing settings away and restoring from selected swatch. |
15
+
| Hover tooltip for picker/selected/pinned swatches includes requested metadata | PASS |`pickerTooltipText` and `swatchTooltipText` include color, name, Theme Collection, Palette Type, Variant, Colors, Steps, Contrast, Saturation, Hue Shift, and tags; Playwright checks generated/selected title metadata. |
16
+
| Add deterministic generated color names when curated name is missing | PASS |`colorFamilyName` and `generatorSwatchName` derive stable names from generator settings, color family, row, and column. |
17
+
| Rename center section Selected Swatches to Palette | PASS | Center H2 in `toolbox/colors/index.html` is now `Palette`; Playwright asserts the heading. |
18
+
| Move pinned/selected swatches and controls into top accordion named Selected Swatches | PASS | Top accordion remains `Selected Swatches` and contains active palette controls/list; generated preview grid moved outside that accordion. |
19
+
| Put Undo and Redo side by side | PASS | Undo/Redo are wrapped in an `action-group`; Playwright compares their positions. |
20
+
| Remove Symbol UI and Symbol-specific code | PASS | Visible Symbol fields/hooks removed from `toolbox/colors/index.html` and UI JS; repository keeps only hidden compatibility key generation for existing palette contracts. Static scan found no live Symbol UI hooks. |
21
+
| Theme Collection, Palette Type, and Variant side by side | PASS | Selector controls now render in a 3-column Theme V2 grid; Playwright verifies matching row positions. |
22
+
| Remove Variant options 64/128/256 colors | PASS |`PALETTE_VARIANTS` and numeric variant counts exclude 64/128/256; Playwright and static scan verify options are absent. |
23
+
| Keep requested smaller Variant options | PASS | Full, 32, 16, 8, 4, High Contrast, Color Blind Safe, Grayscale, Print Friendly, Day, Night, Dawn, Dusk, Winter, and Summer remain in `PALETTE_VARIANTS`. |
24
+
| Contrast, Saturation, Hue Shift side by side with sliders below labels | PASS | Slider controls now use a 3-column Theme V2 grid with each range input inside its label group; Playwright verifies same row placement. |
| Preserve tag checkbox behavior | PASS | Tag filtering remains in `renderUserPalette`; Playwright checks tag checkbox filtering/marking behavior in the batch tag test. |
27
+
| Preserve no spacing between picker grid swatches | PASS | Existing generated grid gap-free styling/behavior preserved; Playwright validates picker interactions after layout changes. |
28
+
| Preserve Admin unfiltered toolbox list and non-admin filtered list | PASS |`ToolboxRoutePages.spec.mjs` passed, including Admin all-tools and creator filtering. |
29
+
| Preserve Colors on toolbox/index.html | PASS |`ToolboxRoutePages.spec.mjs` passed for toolbox route registration. |
30
+
| No console errors | PASS | Targeted Palette Tool Playwright lane passed without console error failures. |
31
+
| Playwright impacted | PASS | Targeted Playwright lanes were run and passed. |
32
+
| Produce repo-structured ZIP | PASS | Created under `tmp/PR_26159_026-colors-picker-metadata-layout_delta.zip`. |
| Symbol/variant/cursor static scans | PASS |`rg` found no live Symbol UI hooks, no live 64/128/256 variant options, and no live not-allowed swatch behavior in active Colors files. |
40
+
| Palette Tool runtime/UI lane | PASS |`npx playwright test tests/playwright/tools/PaletteToolMockRepository.spec.mjs --timeout=180000` -> 6 passed. |
41
+
| Toolbox registration/navigation lane | PASS |`npx playwright test tests/playwright/tools/ToolboxRoutePages.spec.mjs --timeout=180000` -> 2 passed. |
42
+
43
+
## Skipped Lanes
44
+
| Lane | Reason |
45
+
| --- | --- |
46
+
| Full samples validation | Skipped by request. This PR only touches Colors tool UI/runtime, the palette workspace repository compatibility path, and targeted Colors/toolbox Playwright coverage. |
47
+
| Broad workspace smoke | Not run because no shared sample loader/framework or workspace shell code changed. Targeted toolbox route validation covered Colors visibility and role filtering. |
- The visible Symbol UI and Symbol-specific interactions were removed. A hidden generated palette key remains inside the repository because the existing palette persistence contract still needs a unique swatch key for updates, deletes, and legacy payload validation.
60
+
- The picker settings metadata is copied into selected/pinned swatches so restoration and tooltip metadata survive normal repository cloning and UI rerenders.
0 commit comments