schema: spec-driven context: | Tech stack: Rust workspace services + React/Vite frontends + Next.js landing + Docker infra. Architecture: services/ microservices reuse services/shared-lib; infra under infrastructure/; E2E helpers under tests/. Testing: cargo test; Vitest in frontend-admin and frontend-pwa; Python infra/E2E scripts are run individually. Style: rustfmt/cargo fmt, ESLint for frontends, TypeScript configs per frontend. strict_tdd: true testing: detected: "2026-05-07" strict_tdd: true test_runner: framework: "Cargo test + Vitest" command: "cargo test; pnpm --dir services/frontend-admin test; pnpm --dir services/frontend-pwa test" layers: unit: available: true tool: "cargo test, vitest" integration: available: true tool: "Rust integration tests via cargo; Python infra scripts" e2e: available: true tool: "Python Modbus/MQTT helpers under tests/ and infrastructure/tests/" coverage: available: false command: "" quality: linter: available: true command: "pnpm --dir lint" type_checker: available: true command: "cargo check; npx tsc --noEmit -p /tsconfig.json" formatter: available: true command: "cargo fmt -- --check" rules: proposal: - Include rollback plan for risky changes. - Identify affected services, frontends, and infra modules. specs: - Use Given/When/Then format for scenarios. - Use RFC 2119 keywords: MUST, SHALL, SHOULD, MAY. design: - Include sequence diagrams for complex service/data flows. - Document architecture decisions with rationale. tasks: - Group tasks by phase: infrastructure, implementation, testing. - Use hierarchical numbering: 1.1, 1.2, etc. - Keep tasks small enough to complete in one session. - Do not implement landing optimization unless an explicit SDD change asks for it. apply: - Follow existing Rust and TypeScript conventions from AGENTS.md. - Reuse services/shared-lib for shared Rust domain/data contracts. - For landing changes, read services/landing/AGENTS.md and local Next.js docs first. verify: - Run targeted tests when test infrastructure exists; never rely on unstated manual verification. - Compare implementation against every spec scenario. archive: - Warn before merging destructive deltas or large removals.