Summary
Perform a phased, repository-wide modernization of the Rust dependency graph, upgrade the workspace to Edition 2024, resolve resulting breakage, and preserve architectural boundaries plus deterministic validation.
Primary Architectural Plane
cross-layer
Owning Subsystem
workspace dependency governance, runtime/tooling modernization, and UI/runtime compatibility
Architectural References
- ARCHITECTURE.md
- docs/architecture/layer-boundaries.md
- docs/process/execution-artifacts.md
- docs/process/platform-regression-guardrails.md
- AGENTS.md
Integration Boundaries
Allowed cross-plane touchpoints:
- .github/
- plans/
- Cargo.toml
- Cargo.lock
- xtask/
- shared/
- platform/
- services/
- workflows/
- ui/
- schemas/ only for additive compatibility work when forced by upstream breaks
- docs/
Explicit non-goals:
- Do not change architectural dependency direction.
- Do not introduce direct SurrealDB usage outside shared/surrealdb-access.
- Do not move schema ownership out of schemas/.
- Do not fork browser and desktop UI contracts.
Scope In
- Create execution artifacts and issue-derived phase breakdown.
- Pin repository Rust-installing workflows to the workspace toolchain.
- Centralize governed dependencies in the workspace manifest.
- Upgrade non-UI and UI dependencies to current stable releases.
- Uplift the workspace to Edition 2024 and adopt targeted modern Rust patterns.
Scope Out
- Product feature work unrelated to dependency/runtime modernization.
- Intentional breaking schema or event redesign.
- Infrastructure redesign outside toolchain pinning needed for deterministic validation.
Background and Scope
The repository currently passes cargo verify-repo and cargo xtask verify profile ui on main, but key ecosystem anchors lag current stable releases. The largest direct gaps identified on 2026-03-11 are Leptos 0.6 -> 0.8, SurrealDB 2.6 -> 3.0, Wasmtime 36 -> 42, jsonschema 0.18 -> 0.45, and deprecated serde_yaml -> serde_yaml_ng. The implementation must be phased so major framework and runtime jumps remain reviewable and reversible.
Acceptance Criteria
- The work is split into bounded phase issues with issue-derived branches and matching execution artifacts.
- cargo verify-repo passes after non-UI modernization.
- cargo xtask verify profile ui and cargo xtask ui-hardening pass after UI modernization, with no floating-toolchain hardening blocker remaining.
- The workspace builds and tests on Edition 2024 with clippy warnings denied.
- Architectural boundary audits remain green.
Validation Requirements
- cargo fmt --all --check
- cargo clippy --workspace --all-targets --all-features -- -D warnings
- cargo verify-repo
- cargo xtask verify profile ui
- cargo xtask ui-hardening
Rollback Considerations
Rollback must be phase-bounded. Each phase should be revertible without leaving the repository between incompatible framework or toolchain states.
Implementation Notes
- Treat crates.io stable releases at execution time as the source of truth for version targets.
- Keep schema changes additive if unavoidable.
- Prefer replacing deprecated crates with maintained low-risk alternatives.
Summary
Perform a phased, repository-wide modernization of the Rust dependency graph, upgrade the workspace to Edition 2024, resolve resulting breakage, and preserve architectural boundaries plus deterministic validation.
Primary Architectural Plane
cross-layer
Owning Subsystem
workspace dependency governance, runtime/tooling modernization, and UI/runtime compatibility
Architectural References
Integration Boundaries
Allowed cross-plane touchpoints:
Explicit non-goals:
Scope In
Scope Out
Background and Scope
The repository currently passes cargo verify-repo and cargo xtask verify profile ui on main, but key ecosystem anchors lag current stable releases. The largest direct gaps identified on 2026-03-11 are Leptos 0.6 -> 0.8, SurrealDB 2.6 -> 3.0, Wasmtime 36 -> 42, jsonschema 0.18 -> 0.45, and deprecated serde_yaml -> serde_yaml_ng. The implementation must be phased so major framework and runtime jumps remain reviewable and reversible.
Acceptance Criteria
Validation Requirements
Rollback Considerations
Rollback must be phase-bounded. Each phase should be revertible without leaving the repository between incompatible framework or toolchain states.
Implementation Notes