Skip to content

refactor: rename engine/, services/, util/ directories by domain#538

Merged
magnus-madsen merged 1 commit into
masterfrom
refactor/reorganize-services-util
Mar 28, 2026
Merged

refactor: rename engine/, services/, util/ directories by domain#538
magnus-madsen merged 1 commit into
masterfrom
refactor/reorganize-services-util

Conversation

@magnus-madsen
Copy link
Copy Markdown
Member

@magnus-madsen magnus-madsen commented Mar 28, 2026

Summary

  • Reorganize remaining grab-bag directories into domain-specific modules:
    • engine/ -> protocol/ (request types enum, status codes)
    • services/{releases,state} + util/ensureFlixExists -> compiler/ (download, releases, version state)
    • services/{flixLspTerminal,releaseVirtualDocument} + util/{userMessages,showStartupProgress} -> ui/
    • util/createLanguageClient -> lsp/clientFactory
    • services/eventEmitter -> util/eventBus
    • services/timers -> util/timers
  • Delete engine/ and services/ directories entirely
  • All files renamed to more meaningful names (e.g. jobs.ts -> requests.ts, state.ts -> installedVersion.ts)

Final structure

client/src/
├── extension.ts
├── commands/          — user-facing command handlers
├── compiler/          — Flix compiler download, releases, version state
├── lsp/               — LSP client, session, watchers, notifications
├── protocol/          — request types and status codes
├── repl/              — REPL lifecycle and JVM args
├── ui/                — terminal, messages, progress, release notes
└── util/              — event bus, timers

Test plan

  • tsc --noEmit passes (client)
  • npm run build passes (esbuild bundle)
  • prettier --check passes
  • Git detects all moves as renames (history preserved)
  • Existing integration tests pass (npm test)

🤖 Generated with Claude Code

Reorganize remaining grab-bag directories into domain-specific modules:

- engine/ -> protocol/ (requests enum, status codes)
- services/releases, state + util/ensureFlixExists -> compiler/ (download, releases, version state)
- services/flixLspTerminal, releaseVirtualDocument + util/userMessages, showStartupProgress -> ui/
- util/createLanguageClient -> lsp/clientFactory
- services/eventEmitter -> util/eventBus
- services/timers -> util/timers

Deletes the engine/ and services/ directories entirely.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@magnus-madsen magnus-madsen merged commit 0552984 into master Mar 28, 2026
8 checks passed
@magnus-madsen magnus-madsen deleted the refactor/reorganize-services-util branch March 28, 2026 07:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant