Enhance documentation for UI consistency and field widget layout in README, SPEC, and TASKS

This commit is contained in:
Philip Henning 2026-03-08 11:52:24 +01:00
parent a34229a6ae
commit 34a0627e76
3 changed files with 18 additions and 1 deletions

View file

@ -11,6 +11,7 @@ Use these rules for every implementation task in this repository:
- Use `ruff` for linting and formatting.
- Prefer small vertical slices that can be implemented and verified independently.
- Keep Proxmox API and business logic out of Textual widgets where possible.
- Field-like widgets should use compact 3-row layouts by default; bordered fields must not include an empty inner spacer row between the content and the border.
- Every screen must have explicit default, loading, success, empty, and error states where applicable.
- Every interactive screen must be covered by Textual interaction tests using `run_test()` and `Pilot`.
- Important visual states should be covered by snapshot tests.
@ -26,6 +27,12 @@ Codex should use these commands:
- Run lint checks: `uv run ruff check .`
- Format code: `uv run ruff format .`
## Shared visual validation
- Use snapshot tests and visual review for form-heavy screens to confirm that single-line field widgets stay 3 rows high by default.
- Verify that bordered field-like controls do not render an empty spacer line above or below the value row.
- Allow taller controls only when a widget is intentionally multi-line or needs additional vertical content, and call that out in the task summary as a UX choice.
## Implementation backlog
### Task 1: Bootstrap the Textual app and project structure