Files
raven/devdocs/modernization/ROADMAP.md

2.6 KiB
Raw Blame History

Modernization roadmap

The order of the modernization work and where each step stands. Steps are lettered as in the original plan (February–March 2026). Statuses are as of October 2026; any marked [unverified] were not recorded anywhere recent and need John to confirm.

Step What Status
— SVN → Git, self-hosted Gitea ✅ Done
— Build process documented; Docker builds for front end and docs; Windows build VM exported and backed up ✅ Done
A1 E2E tests with Cypress 9.7.0, targeting remote devtest servers, with version validation and environment-based config [unverified]: the March notes listed it as both done and in progress
A2 Fix the outdated integration tests in raven-test-integration ✅ Done, March 2026: compiles on net8.0, broken tests removed or rewritten
A3 Data-list filter and sort integration tests ✅ Done, March 2026, together with Tier 1–3 gap coverage. February notes still called them stubs; the March notes supersede that [unverified]
— Fix the three server bugs the integration suite is waiting on: case 4653, case 4654, the contract issue Open
▶ .NET 10 port of the back end Current: NET10-PORT.md
B Git baseline: tag plus refactor branch [unverified]. The port's net8-baseline tag covers the tag half
C Architecture review Not started
D Refactor: remove redundant code, simplify, improve performance. No behaviour changes Not started
E Lower-level tests: unit and integration Not started
F Remaining dependency updates (see below) Back end: in progress as the .NET 10 port. Front end: not started
G New features, from the case database backlog Not started

Why the .NET 10 port comes before step D

It pulls the back-end half of step F forward. Sockeye, which shares most of this codebase, was ported first, so the work is mapped out and comes with a list of fixes found along the way. The integration suite from A2/A3 is the regression gate for it, as it will be for D.

Step F, front end (not part of the current port)

In this order, each step tested before the next:

  1. Remove fibers. It is optional for sass-loader; builds get a little slower
  2. Move Node from 12.22.9 to a current LTS
  3. Update the safe dependencies
  4. Vue 2 → Vue 3 and Vuetify 2 → Vuetify 3
  5. Webpack → Vite
  6. Optional: Options API → Composition API; TypeScript for new files only

Before step D starts

  1. The integration suite passes, apart from the three known server bugs
  2. Fix those three bugs
  3. Then refactor, letting the tests catch regressions