--- id: PLN-0063 ticket: studio-editor-workspace-cleanup title: Legacy LSP and VFS Module Removal with Runtime Preservation status: done created: 2026-05-05 completed: 2026-05-05 tags: [studio, editor, cleanup, lsp, vfs, runtime] --- ## Objective Remove the legacy `prometeu-lsp` and `prometeu-vfs` modules and all remaining code references to them while preserving compiler, shipper, play, run, and debug flows that do not depend on the editor stack. ## Background `DEC-0031` treats the current `prometeu-lsp` and `prometeu-vfs` modules as part of the embedded editor legacy stack. The Studio execution path must continue to compile, build, package, and run projects through the existing compiler and runtime orchestration layers. ## Scope ### Included - Remove `prometeu-lsp` modules from Gradle settings and codebase references. - Remove `prometeu-vfs` modules from Gradle settings and codebase references. - Remove tests dedicated to these legacy modules. - Verify `StudioShipperService`, `StudioPlayStopCoordinator`, and runtime/debug flows remain intact. ### Excluded - Shell/editor state cleanup handled by a separate plan. - Documentation/spec/lesson cleanup handled by a separate plan. - New replacement backend services. ## Execution Steps ### Step 1 - Remove Gradle module registration for legacy editor stack modules **What:** Stop building the legacy `prometeu-lsp` and `prometeu-vfs` modules. **How:** Remove the module includes and any direct module dependencies that point to `prometeu-lsp:*` and `prometeu-vfs:*`, then fix resulting build graph fallout in Studio modules. **File(s):** `settings.gradle.kts`, affected `build.gradle.kts` files in `prometeu-app`, `prometeu-studio`, and module directories. ### Step 2 - Remove legacy module source trees and direct test coverage **What:** Delete the legacy `prometeu-lsp` and `prometeu-vfs` code once all consumers are detached. **How:** Remove module source files and their dedicated tests only after production call sites no longer compile against them. **File(s):** `prometeu-lsp/**`, `prometeu-vfs/**`, related test sources in `prometeu-studio`. ### Step 3 - Preserve compiler and shipper build flow **What:** Ensure build preparation still uses the canonical compiler pipeline without editor legacy dependencies. **How:** Validate and adjust `StudioShipperService` and any shipper/build callers so they continue using `BuilderPipelineService`, `BuilderPipelineConfig`, and `BuilderPipelineContext` directly without reintroducing removed editor-layer seams. **File(s):** `prometeu-studio/src/main/java/p/studio/shipper/StudioShipperService.java`, affected compiler/shipper integration tests. ### Step 4 - Preserve play, run, and debug execution flow **What:** Ensure runtime orchestration continues to function after legacy module removal. **How:** Re-test and patch `StudioPlayStopCoordinator`, runtime handshake services, execution session handling, and debug workspace projections if any hidden import or event dependency pointed at removed editor-stack modules. **File(s):** `prometeu-studio/src/main/java/p/studio/execution/StudioPlayStopCoordinator.java`, `prometeu-studio/src/main/java/p/studio/debug/runtime/**`, `prometeu-studio/src/main/java/p/studio/workspaces/debug/**`, related tests. ## Test Requirements ### Unit Tests - Update or remove module-specific tests for `prometeu-lsp` and `prometeu-vfs`. - Preserve unit coverage for execution session, play/stop coordination, and runtime handshake behavior. ### Integration Tests - Run compiler pipeline integration tests that cover `analyze`, `compile`, and `build`. - Run shipper/build integration tests that exercise `StudioShipperService`. - Run runtime/debug integration or coordinator tests that validate play/stop behavior. ### Manual Verification - Trigger Studio build flow and confirm artifact generation still works. - Trigger Studio play flow and confirm runtime launch/stop still works. - Open Debug and Shipper workspaces and confirm they remain operational. ## Acceptance Criteria - [x] `prometeu-lsp` is no longer part of the build graph. - [x] `prometeu-vfs` is no longer part of the build graph. - [x] No production Studio class imports legacy `LSP` or `VFS` module types. - [x] Compiler and shipper build flows still work. - [x] Play/run/debug flows still work without the removed modules. ## Dependencies - `DEC-0031` accepted and normatively locked. - Shell/session cleanup completed enough that no surviving production code still requires legacy `LSP`/`VFS` types. ## Risks - Hidden transitive dependencies may keep the build graph coupled to removed modules longer than expected. - Runtime or debug flows may have indirect event or session assumptions not obvious from imports alone. - Deleting modules too early may obscure compile errors that should instead be fixed in surviving Studio code first.