Yicong-Huang opened a new issue, #5424:
URL: https://github.com/apache/texera/issues/5424

   ### Task Summary
   
   Four files under `amber/src/main/scala/org/apache/texera/amber/` (the 
engine) import classes from `org.apache.texera.web.*`, violating the 
engine-vs-web layering:
   
   - `amber/clustering/ClusterListener.scala` — imports `web.SessionState`, 
`web.model.websocket.response.ClusterStatusUpdateEvent`, 
`web.service.{WorkflowExecutionService, WorkflowService}`, 
`web.storage.ExecutionStateStore.updateWorkflowState`
   - `amber/engine/architecture/controller/Controller.scala` — imports 
`web.SessionState`, `web.model.websocket.response.RegionUpdateEvent`
   - `amber/engine/architecture/scheduling/RegionExecutionCoordinator.scala` — 
imports `web.SessionState`, `web.model.websocket.event.RegionStateEvent`, 
`web.resource.dashboard.user.workflow.WorkflowExecutionsResource`
   - `amber/engine/architecture/pythonworker/PythonWorkflowWorker.scala` — 
imports `web.resource.pythonvirtualenvironment.PveManager`
   
   The engine actors push WebSocket events directly through web's 
`SessionState` plumbing and reach into web-side resources. Correct shape is the 
engine exposing an event stream / interface that web subscribes to, and 
web-resident utilities like `PveManager` moving to the engine side if the 
engine genuinely owns the lifecycle.
   
   This is a prerequisite for #5423: once these leaks are gone, upgrading the 
web layer's Dropwizard version no longer forces the engine to recompile against 
new web types.
   
   Part of #5423.
   
   ### Task Type
   
   - [x] Refactor / Cleanup


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to