Let #[slhx::component] preserve inline modules when generated symbols are absent, while still enforcing handler completeness when slhx.syms exists.
req: component/005
req: test/002
Make #[slhx::component] compare generated handle symbols with inline #[slhx::handler] functions and fail when a required handler implementation is missing.
req: component/005
req: check/002
req: test/003
Emit handle_param facts for handled data-* attributes and reject handlers that omit generated param arguments. Cover the generated param boundary with unit and compile-fail tests.
req: derive_handler/001
req: test/003
Tighten generated form-handler validation so only actual Form paths satisfy form handles; names like CreateForm no longer bypass the slhx::Form<_> requirement. Cover with unit and compile-fail tests.
req: form/004
req: form/006
req: test/003
Make #[slhx::handler] fail when slhx.syms is missing instead of silently skipping generated handle checks. Add compile-fail coverage with an actionable build.rs hint.
req: build/003
req: test/003
Emit handle-form facts from slhx-build and have #[slhx::handler] reject generated form handlers that do not accept slhx::Form<_>. Cover the boundary with compile-fail fixtures.
req: form/004
req: form/006
req: test/003
Make #[slhx::surface] report a compile-time error when slhx.generated.rs is absent instead of silently expanding to an empty module. Add compile-fail coverage for the missing generated include path.
req: build/004
req: test/003
Add compile-fail coverage for generated APIs: a surface include that exposes only one class must reject references to absent generated class names during cargo check.
req: codegen/001
req: style/002
req: test/003
Add a fixture-backed compile-fail test for generated slhx handler contracts: unknown handles and invalid handler shape fail during cargo check with actionable diagnostics.
req: derive_handler/001
req: test/003