mirror of
https://github.com/Pandipipas/scoreko-dev.git
synced 2026-06-06 03:32:06 +00:00
refactor: architecture base
- Moved NodeCG context management to a dedicated context module. - Introduced message handling utilities for better message listening and sending. - Updated startgg integration to use new message handling methods. - Removed deprecated replicant utilities and replaced them with a new structure. - Refactored replicant imports in graphics components to align with new structure. - Added new pack-related types and schemas for better type safety. - Cleaned up unused files and consolidated pack configuration into a single module. - Updated TypeScript configurations to reflect new directory structure.
This commit is contained in:
@@ -0,0 +1,56 @@
|
||||
# Phase 1 Summary
|
||||
|
||||
## Scope
|
||||
|
||||
Executed the base architecture phase only. This phase focused on structure, boundaries, shared contracts and compatibility without changing UX, overlay visuals or large feature logic.
|
||||
|
||||
## Completed
|
||||
|
||||
- Added the `src/nodecg` boundary:
|
||||
- `src/nodecg/browser`
|
||||
- `src/nodecg/extension`
|
||||
- centralized `replicantNames`
|
||||
- centralized `messageNames`
|
||||
- Moved browser replicant access out of `src/browser_shared`.
|
||||
- Moved dashboard stores to `src/dashboard/stores`.
|
||||
- Moved pure country helpers to `src/shared/domain/players`.
|
||||
- Moved pack config and pack types to `src/shared/domain/packs`.
|
||||
- Added pack replicant schemas:
|
||||
- `installedPacks`
|
||||
- `packRegistry`
|
||||
- `downloadStates`
|
||||
- `availableUpdates`
|
||||
- Added generated TypeScript declarations for the new pack schemas.
|
||||
- Removed dead example code:
|
||||
- `exampleReplicant` schema/type
|
||||
- `ExampleType`
|
||||
- `src/extension/example.ts`
|
||||
- Removed redundant stale JS files from `src/shared`.
|
||||
- Updated extension bootstrap to use an explicit NodeCG context boundary.
|
||||
- Routed browser messages through `src/nodecg/browser/messages.ts`.
|
||||
- Routed extension message registration through `src/nodecg/extension/messages.ts`.
|
||||
- Routed pack replicant creation through NodeCG pack boundary services.
|
||||
- Updated build config so generated NodeCG/shared extension outputs are ignored and cleaned.
|
||||
|
||||
## Preserved
|
||||
|
||||
- No overlay UX, CSS, SVG, layout or animation logic was intentionally changed.
|
||||
- No large dashboard view was split or rewritten.
|
||||
- `pack-manager.ts` behavior was preserved; only imports, types, replicant/message names and boundaries were normalized.
|
||||
- Public NodeCG message names were kept unchanged for compatibility.
|
||||
- Public replicant names and defaults were kept unchanged.
|
||||
|
||||
## Verification
|
||||
|
||||
- `pnpm.cmd exec vue-tsc -p tsconfig.browser.json --noEmit`: passed.
|
||||
- `pnpm.cmd exec tsc -b tsconfig.extension.json --pretty false`: passed.
|
||||
- `pnpm.cmd exec eslint`: passed with 0 errors and existing Vue formatting warnings.
|
||||
- `pnpm.cmd run build`: passed.
|
||||
|
||||
## Remaining For Later Phases
|
||||
|
||||
- Controlled rewrite of `pack-manager.ts`.
|
||||
- Controlled rewrite of `usePackRegistry` and `fighting-characters.ts`.
|
||||
- Formal provider module split for Start.gg and Challonge.
|
||||
- Splitting `Players.vue` and `Settings.vue`.
|
||||
- Overlay view models and visual baseline work.
|
||||
Reference in New Issue
Block a user