Repository navigation
Complete migration guidance and public language documentation #453
Description
Goal and background
Reuse the existing Rust RC migration pipeline. Do not restore removed syntax through documentation or tooling.
Parent tracker: #445
Baseline: 70444b18c8102fa7a9d811ec51ef96902573792c
Phase: 2.0 freeze
Ownership and scope
compiler migration, CLI, preset, site, and examples
Dependencies
- Verify static, SSR, progressive and runtime equivalence #451
- Align inspection, validation, lint, LSP and MCP contracts #452
Implementation tasks
- Provide before/after examples, diagnostics, migration paths, and tests for every breaking change.
- Automate only deterministic transformations. Preserve ambiguous cases and report them for manual review.
- Update language, conditions, layers, directives, rendering mode selection, Manifest, and RC migration documentation.
- Check that presets, completion suggestions, and examples no longer recommend removed forms.
- Validate migration idempotence and preservation of native CSS.
Acceptance criteria
- No documentation or tooling recommends obsolete syntax rejected by the engine.
- Public examples are executable and verified; transformations that cannot be safely automated are clearly identified.
- Every intentional breaking change has complete migration evidence.
Validation
Rust migration tests, CLI tests, site migration tests, affected example builds, and site lint.
Completion report
Include source and test evidence, PRs, actual commands and results, and any CSS/API/syntax/migration impact. Checks that were not run or were blocked must not be reported as passing.
Final acceptance (2026-09-28)
The directive, migration, rendering and inspection guidance reflects full Compose removal and native CSS authoring. The old Compose URL remains a removal notice. Docs/Reference/LLM exports, native CSS migration tests and migration idempotence pass. Migration evidence retains 1,546 rc.87 cases, 1,033 Rust cases and seven post-rc.87 files. The Rust denominator is 488 exact, 25 supersets, 494 approved changes and 26 approved historical removals. All 21 reviewed Manifest case digests remain unchanged. Both deployment previews verify page responses, document canonicals and removal notices; Cloudflare health passes.
Merged into rust through PR #461 at 262adb809b928af7082107e1b5633d945cb7f427. The verified candidate is 16a90bdde96ef08ba4312e5d94aaf36d50048dca; removal commit 9d9817241 is preserved through integration merge e231a700e.
Final CI passes Linux package tests/lint/types (111/111 tasks), site build/CSS contract/Playground/lint/types and examples (36/36); Windows package tests (59/59 tasks, including Vite 676/676) and examples (36/36); Rust fmt/Clippy/workspace/codegen/parity; eight native targets; and Linux runtime/Next E2E. Runtime E2E passes 432 cases across Chromium, Firefox and WebKit, plus 10 Next cases.
Both deployments at this exact candidate pass page, canonical and removal-notice checks: Cloudflare and Vercel. Cloudflare health passes. Visual checks on the preceding candidate cover identical production site sources.
The dated audit preserves scoped commands and historical failures; this final result supersedes its pending CI status. The Compose integration review and site CSS review explain intentional contract changes. Site lint has 265 existing warnings and zero errors. No npm publication, package rename, version bump, lockfile change or release-workflow change is included.
Activity