Deduplicate overlapping rules across contracts
Each rule now has one owning contract; others point to it: validation and multi-step rules live in forms-validation (modal-workflows references them), pagination metadata lives in go-api (table-management references it), the async task flow lives in go-background-tasks (go-api references it), backup git-safety checks live in backup-management (go-database references it). Remove the leftover Vapor/Aqua baseline mention and stale kit/patterns paths, compress the batch-file-upload ADR narrative, and drop content-free pattern READMEs. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
@@ -1,20 +1,17 @@
|
||||
# Contract: Controls + Selection
|
||||
|
||||
Version: 1.0
|
||||
Version: 1.1
|
||||
|
||||
## Shared Base
|
||||
|
||||
- This pattern inherits the shared `table-management` contract:
|
||||
`kit/patterns/table-management/contract.md`.
|
||||
- This pattern inherits the shared `table-management` contract.
|
||||
- Visual styling comes from `web-visual-baseline`.
|
||||
- Reuse shared toolbar/table/icon geometry from the base contract first, then define only
|
||||
controls-specific additions below.
|
||||
|
||||
## Buttons
|
||||
|
||||
- Use a small stable button taxonomy: `primary`, `secondary`, `ghost`, `danger`, `disabled`.
|
||||
- The canonical visual baseline for demo/scaffold examples is the active dual baseline used in the
|
||||
demo/scaffold (`Vapor Soft` / `Vapor Night`, system-selected). A frozen Aqua snapshot bundle may
|
||||
be kept for archival reference, but examples should follow the active baseline.
|
||||
- Destructive actions (`archive`, `delete`, `remove`) must use danger styling and explicit labels.
|
||||
- Button text should describe the action outcome, not implementation detail.
|
||||
- Buttons are text-first; icons are optional and must not replace labels on primary/danger actions.
|
||||
@@ -26,7 +23,6 @@ Version: 1.0
|
||||
- Header checkbox semantics must be explicit:
|
||||
- select visible rows only, or
|
||||
- select all rows in query scope (must be clearly labeled)
|
||||
- Selection summary must show count (`N selected`) near bulk actions.
|
||||
- In paginated views, the UI should distinguish selection on the current page from selection across the filtered/query scope.
|
||||
- Selection state should survive pagination/filter navigation via explicit state (query params, server session, or another deterministic mechanism).
|
||||
- Same-page interactions should preserve reading position (module anchor pattern is preferred in canonical server-rendered flows).
|
||||
|
||||
Reference in New Issue
Block a user