docs(requirements): split style rows

Add explicit northstar ring fields to style requirements and split class-token constraints without changing behavior.

req: style/001

req: style/002

req: style/003

req: style/004

req: style/005

req: style/006
This commit is contained in:
slhx agent
2026-06-25 18:01:26 +02:00
parent 17025f3221
commit cd59dfda9b
3 changed files with 14 additions and 5 deletions
+12 -3
View File
@@ -1156,13 +1156,22 @@ async fn delete(app: State<App>, todo_id: TodoId) -> impl IntoEffect
## style
### req: style/001
001 Plain CSS and SCSS own appearance. hemx-build discovers static class tokens from `.heml`, `.css`, and `.scss` build inputs and generates `CssClass` constants so Rust can reference known classes without raw strings. hemx does not parse selectors for behavior, cascade policy, or layout semantics. [north_star]
0 001 Plain CSS and SCSS own appearance; hemx-build discovers static class tokens from `.heml`, `.css`, and `.scss` build inputs and generates `CssClass` constants. [north_star]
### req: style/002
002 Generated class constants are ergonomic references only: they do not create a CSS framework, require a framework project structure, or make dynamic class expressions compile-time facts. Unknown Rust class references fail by normal Rust name resolution when the generated constant is absent. [north_star]
0 002 Generated class constants are ergonomic references only: they do not create a CSS framework, require a framework project structure, or make dynamic class expressions compile-time facts. [north_star]
### req: style/003
003 When a hemplate dynamic class attribute needs more than one class token, Rust passes a displayable list of generated `CssClass` values as view data. Conditional state classes should compose from generated constants with boring Rust helpers such as `classes::card.with_if(selected, classes::is_selected)`. Rust should not assemble ad hoc class strings for known style tokens. [north_star]
0 003 When a hemplate dynamic class attribute needs multiple class tokens, Rust passes a displayable list of generated `CssClass` values as view data. [north_star]
### req: style/004
0 004 hemx does not parse CSS selectors for behavior, cascade policy, or layout semantics. [north_star]
### req: style/005
0 005 Unknown Rust class references fail by normal Rust name resolution when the generated constant is absent. [north_star]
### req: style/006
0 006 Conditional state classes compose from generated constants with boring Rust helpers such as `classes::card.with_if(selected, classes::is_selected)`; Rust does not assemble ad hoc class strings for known style tokens. [north_star]
---