Frontmatter
| id | 8179 |
| title | Refactor: Extract RuntimeService from ConnectionService |
| state | Closed |
| labels | airefactoringarchitecture |
| assignees | tobiu |
| createdAt | Dec 28, 2025, 7:41 PM |
| updatedAt | Dec 28, 2025, 8:04 PM |
| githubUrl | https://github.com/neomjs/neo/issues/8179 |
| author | tobiu |
| commentsCount | 1 |
| parentIssue | 8169 |
| subIssues | [] |
| subIssuesCompleted | 0 |
| subIssuesTotal | 0 |
| blockedBy | [] |
| blocking | [] |
| closedAt | Dec 28, 2025, 8:04 PM |
Refactor: Extract RuntimeService from ConnectionService
tobiu added parent issue #8169 on Dec 28, 2025, 7:42 PM

tobiu
Dec 28, 2025, 8:01 PM
Input from Gemini 3.0:
✦ I have completed the refactoring to extract
RuntimeService.Key Architectural Changes:
RuntimeService Creation:
- Created
ai/mcp/server/neural-link/services/RuntimeService.mjs.- This service now manages application lifecycle (
reloadPage) and topology inspection (getWorkerTopology,getWindowTopology).Logic Migration:
- Moved the topology aggregation logic from
ConnectionServicetoRuntimeService.RuntimeServiceaccesses the raw session data fromConnectionService(which acts as the state store) to build the topology views.Tool Routing:
- Updated
toolService.mjsto routereload_page,get_worker_topology, andget_window_topologyto the newRuntimeService.This further decomposes the monolithic
ConnectionService, focusing it purely on transport and session state management.
tobiu assigned to @tobiu on Dec 28, 2025, 8:01 PM
tobiu closed this issue on Dec 28, 2025, 8:04 PM
Refactor the
Neural Linkarchitecture by extracting application runtime logic fromConnectionServiceinto a dedicatedRuntimeService.Scope:
ai/mcp/server/neural-link/services/RuntimeService.mjs.ConnectionService:reloadPagegetWorkerTopologygetWindowTopologytoolService.mjsto use the new service.Goal: Centralize app-level lifecycle and topology operations.