| Legacy feature | Preserve | Rewrite | Remove | Replacement | Migration required | Validation |
|---|---|---|---|---|---|---|
| VM loader/API mocks | yes | yes | no | Worker GEngine adapter | no | capability inspection implemented; runtime parity pending |
| App lifecycle/events | yes | yes | no | Runtime/session services | no | state services implemented; GEngine E2E pending |
| AppContent bridge | yes | yes | no | exact-origin per-user iframe bridge | no | contract and UI implemented; GEngine E2E pending |
| Vite HMR | yes | yes | no | local runtime profile/override | config | profile support implemented; CandyCastle E2E pending |
| External folders | yes | yes | no | project/source registry | yes | canonical path policy unit tests pass |
| AppCommands | yes | yes | no | AppCommands plugin | presets/history | raw argument parser unit tests pass; execution E2E pending |
| Simulated users | yes | yes | no | persistent Users library | profiles | typed Owner/Manager/Player/Bot CRUD implemented |
| Sessions | yes | yes | no | saved user/app scenarios | no | lifecycle, assignment, iframe grid, chat, and logs added |
| Persistence viewer | yes | yes | no | typed legacy slots/database tools | yes | schema retained; migration tooling removed; source was never imported |
| Logs | yes | yes | no | per-process and per-module log tabs | no | bounded process capture and live UserApp merge implemented |
| Leveling shortcuts | no | no | yes | project command presets | optional | preset validation |
| CandyCastle bot policy | yes | yes | no | explicit adapter profile | config | legacy source removed after migration; three-player E2E pending |
| Unauthenticated debug API | no | no | yes | authenticated RBAC APIs | no | permission and lockout unit tests pass |
| Same-origin iframe bridge | no | yes | yes | namespaced per-user iframe contexts | no | exact-origin routing implemented; AppContent E2E pending |
| Legacy browser preferences | yes | yes | no | explicit client export/import | yes | not yet validated |
Feature migration matrix
Feature-by-feature preservation, rewrite, removal, and validation status.