Files
DashBoard/openspec/changes/deferred-route-modernization-follow-up/proposal.md
egg 7cb0985b12 feat(modernization): full architecture blueprint with hardening follow-up
Implement phased modernization infrastructure for transitioning from
multi-page legacy routing to SPA portal-shell architecture, plus
post-delivery hardening fixes for policy loading, fallback consistency,
and governance drift detection.

Key changes:
- Add route contract enrichment with scope/visibility/compatibility policies
- Canonical 302 redirects from legacy direct-entry to /portal-shell/ routes
- Asset readiness enforcement and runtime fallback retirement for in-scope routes
- Shared feature-flag helpers (env > config > default) replacing duplicated _to_bool
- Defensive copy for lru_cached policy payloads preventing mutation corruption
- Unified retired-fallback response helper across app and blueprint routes
- Frontend/backend route-contract cross-validation in governance gates
- Shell CSS token fallback values for routes rendered outside shell scope
- Local-safe .env.example defaults with production recommendation comments
- Legacy contract fallback warning logging and single-hop redirect optimization

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-12 11:26:02 +08:00

1.8 KiB

Why

full-modernization-architecture-blueprint intentionally deferred these routes:

  • /tables
  • /excel-query
  • /query-tool
  • /mid-section-defect

Those routes still run on legacy posture (direct-entry-first + fallback continuity + mixed style ownership). A dedicated follow-up change is required to finish modernization without reopening scope in phase 1.

What Changes

  • Promote all deferred routes to first-class in-scope shell-governed targets.
  • Apply canonical shell routing policy and explicit direct-entry compatibility behavior for each deferred route.
  • Modernize deferred route page-content flow (filters/charts/interactions) with contract-first parity gates.
  • Apply the same mandatory manual acceptance + BUG revalidation blocking policy used in phase 1.
  • Move deferred routes from fallback-era runtime posture to asset-readiness + governed retirement posture.

Capabilities

Modified Capabilities

  • unified-shell-route-coverage: deferred routes become in-scope and CI-blocking for route contract completeness.
  • spa-shell-navigation: deferred routes adopt canonical shell entry policy and governed compatibility behavior.
  • page-content-modernization-safety: deferred routes require contract baselines, parity evidence, manual sign-off, and known-bug revalidation.
  • asset-readiness-and-fallback-retirement: deferred routes adopt release-time asset checks and governed fallback retirement milestones.

Impact

  • Frontend route modules for /tables, /excel-query, /query-tool, /mid-section-defect.
  • Shell contract and navigation governance in frontend/src/portal-shell/**.
  • Backend route handlers serving deferred routes and compatibility behavior.
  • Quality gate artifacts, runbook updates, and rollout/rollback policy for deferred-route cutover.