Use #[slhx::form] in the v0 example tests and add a checked form-handler smoke test, with a typed() helper for generated form ids so examples do not rebuild ids by hand.
req: form/001
req: form/004
req: form/006
req: derive_handler/003
Introduce FormValue as the parser-availability bound for #[slhx::form] models, blanket it for FromStr types, and add compile-fail coverage for a form field whose domain type lacks a parser.
req: form/004
req: form/006
Add #[slhx::form] for user-authored form models, emit form field metadata into slhx.syms, and require form handlers to accept models that passed generated field compatibility checks.
req: form/001
req: form/004
req: form/006
req: codegen/004
Move the techdemo page shell and remaining board/inspector/hero boundaries to hemplate-owned views instead of Rust raw HTML or placeholder replacement. Keep rendered HTML assertions DOM-aware with scraper.
req: html_safety/002
req: view/001
req: test/005