refactor: resolve structural inconsistencies and dead code
Build and Publish Mana Loop Docker Image / build-and-publish (push) Failing after 55s

- Fix broken barrel exports in components/game/index.ts
- Remove skill system from stores (gameStore, gameActions, gameLoopActions, gameHooks, craftingStore, combat)
- Remove skill system from components (page.tsx, LeftPanel, StatsTab, SpellsTab, EnchantmentDesigner, EnchantmentPreparer, GameContext/Provider)
- Delete dead code: stats/ directory, attunements/ directory, layout/ Header+TabBar, shared/ StudyProgress+UpgradeDialog duplicates, effects.ts.fix, study-slice.ts, navigation-slice.ts
- Delete legacy store/ and store-modules/ directories, redirect remaining callers
- Merge root formatting.ts into utils/formatting.ts
- Move effects files (dynamic-compute, upgrade-effects, special-effects, upgrade-effects.types) into effects/ directory
- Move debug-context.tsx into components/game/debug/
- Create tabs/index.ts barrel for tab components
- Fix page.tsx lazy imports to use tabs barrel
- Fix all broken import paths across codebase
- Remove SKILLS_DEF and skill-evolution references
- Trim store.ts to under 400 lines by removing dead skill actions
This commit is contained in:
2026-05-18 14:21:59 +02:00
parent 2805f75f5e
commit ca86b6268c
57 changed files with 405 additions and 3726 deletions
+2 -2
View File
@@ -1,8 +1,8 @@
# Circular Dependencies
Generated: 2026-05-18T09:26:29.031Z
Generated: 2026-05-18T10:08:43.704Z
Found: 7 circular chain(s) — these MUST be fixed before modifying involved files.
1. Processed 151 files (1.5s) (37 warnings)
1. Processed 142 files (1.3s) (37 warnings)
2. 1) data/equipment/index.ts > data/equipment/utils.ts
3. 2) data/golems/index.ts > data/golems/utils.ts
4. 3) stores/combat-actions.ts > stores/combatStore.ts
+3 -42
View File
@@ -1,26 +1,10 @@
{
"_meta": {
"generated": "2026-05-18T09:26:27.302Z",
"generated": "2026-05-18T10:08:42.124Z",
"description": "Import dependency graph for src/lib/game. Keys are files, values are arrays of files they import.",
"usage": "To find what a file affects, search for its path in the VALUES. To find what a file depends on, look at its KEY entry."
},
"graph": {
"attunements/data.ts": [
"types.ts"
],
"attunements/index.ts": [
"attunements/data.ts",
"attunements/types.ts",
"attunements/utils.ts"
],
"attunements/types.ts": [],
"attunements/utils.ts": [
"attunements/data.ts",
"attunements/types.ts"
],
"computed-stats.ts": [
"utils/index.ts"
],
"constants.ts": [
"constants/index.ts"
],
@@ -379,9 +363,6 @@
"types.ts",
"utils/discipline-math.ts"
],
"formatting.ts": [
"computed-stats.ts"
],
"hooks/useGameDerived.ts": [
"constants.ts",
"special-effects.ts",
@@ -389,10 +370,6 @@
"store/computed.ts",
"upgrade-effects.ts"
],
"navigation-slice.ts": [
"computed-stats.ts",
"types.ts"
],
"special-effects.ts": [
"upgrade-effects.types.ts"
],
@@ -528,10 +505,6 @@
"store/crafting-modules/types.ts",
"store/crafting-modules/utils.ts"
],
"store/index.ts": [
"store.ts",
"store/computed.ts"
],
"store/manaSlice.ts": [
"constants.ts",
"special-effects.ts",
@@ -578,18 +551,14 @@
"stores/craftingStore.ts": [
"crafting-actions/application-actions.ts",
"crafting-actions/preparation-actions.ts",
"crafting-apply.ts",
"crafting-design.ts",
"crafting-equipment.ts",
"crafting-slice.ts",
"crafting-utils.ts",
"special-effects.ts",
"store/crafting-modules/starting-equipment.ts",
"stores/combatStore.ts",
"stores/gameStore.ts",
"stores/manaStore.ts",
"stores/uiStore.ts",
"types.ts",
"upgrade-effects.ts"
"types.ts"
],
"stores/discipline-slice.ts": [
"data/disciplines/base.ts",
@@ -604,7 +573,6 @@
"stores/manaStore.ts",
"stores/prestigeStore.ts",
"stores/uiStore.ts",
"upgrade-effects.ts",
"utils/index.ts"
],
"stores/gameHooks.ts": [
@@ -637,7 +605,6 @@
"stores/manaStore.ts",
"stores/prestigeStore.ts",
"stores/uiStore.ts",
"upgrade-effects.ts",
"utils/index.ts"
],
"stores/index.ts": [
@@ -662,12 +629,6 @@
"types.ts"
],
"stores/uiStore.ts": [],
"study-slice.ts": [
"constants.ts",
"special-effects.ts",
"types.ts",
"upgrade-effects.ts"
],
"types.ts": [
"data/equipment/types.ts",
"types/attunements.ts",
+10 -34
View File
@@ -103,11 +103,13 @@ Mana-Loop/
│ │ │ │ ├── GameStateDebug.tsx
│ │ │ │ ├── GolemDebug.tsx
│ │ │ │ ├── PactDebug.tsx
│ │ │ │ ├── debug-context.tsx
│ │ │ │ └── index.tsx
│ │ │ ├── shared/
│ │ │ │ └── MemorySlotPicker.tsx
│ │ │ ├── tabs/
│ │ │ │ ── DisciplinesTab.tsx
│ │ │ │ ── DisciplinesTab.tsx
│ │ │ │ └── index.ts
│ │ │ ├── AchievementsDisplay.tsx
│ │ │ ├── ActionButtons.tsx
│ │ │ ├── ActivityLogPanel.tsx
@@ -247,34 +249,13 @@ Mana-Loop/
│ │ │ ├── enchantment-types.ts
│ │ │ └── loot-drops.ts
│ │ ├── effects/
│ │ │ ── discipline-effects.ts
│ │ │ ── discipline-effects.ts
│ │ │ ├── dynamic-compute.ts
│ │ │ ├── special-effects.ts
│ │ │ ├── upgrade-effects.ts
│ │ │ └── upgrade-effects.types.ts
│ │ ├── hooks/
│ │ │ └── useGameDerived.ts
│ │ ├── store/
│ │ │ ├── crafting-modules/
│ │ │ │ ├── initial-state.ts
│ │ │ │ ├── selectors.ts
│ │ │ │ ├── slice-logic.ts
│ │ │ │ ├── starting-equipment.ts
│ │ │ │ ├── tick-processors.ts
│ │ │ │ ├── types.ts
│ │ │ │ └── utils.ts
│ │ │ ├── combatSlice.ts
│ │ │ ├── computed.ts
│ │ │ ├── craftingSlice.ts
│ │ │ ├── manaSlice.ts
│ │ │ ├── pactSlice.ts
│ │ │ ├── prestigeSlice.ts
│ │ │ └── timeSlice.ts
│ │ ├── store-modules/
│ │ │ ├── {room-utils,enemy-utils,initial-state,activity-log,store-actions}/
│ │ │ ├── activity-log.ts
│ │ │ ├── computed-stats.ts
│ │ │ ├── enemy-utils.ts
│ │ │ ├── initial-state.ts
│ │ │ ├── room-utils.ts
│ │ │ ├── store-actions.ts
│ │ │ └── tick-logic.ts
│ │ ├── stores/
│ │ │ ├── attunementStore.ts
│ │ │ ├── combat-actions.ts
@@ -308,6 +289,7 @@ Mana-Loop/
│ │ │ ├── formatting.ts
│ │ │ ├── index.ts
│ │ │ ├── mana-utils.ts
│ │ │ ├── pact-utils.ts
│ │ │ └── room-utils.ts
│ │ ├── constants.ts
│ │ ├── crafting-apply.ts
@@ -318,23 +300,17 @@ Mana-Loop/
│ │ ├── crafting-prep.ts
│ │ ├── crafting-slice.ts
│ │ ├── crafting-utils.ts
│ │ ├── debug-context.tsx
│ │ ├── dynamic-compute.ts
│ │ ├── effects.ts
│ │ ├── special-effects.ts
│ │ ├── store.test.ts
│ │ ├── store.ts
│ │ ├── stores.test.ts
│ │ ── types.ts
│ │ ├── upgrade-effects.ts
│ │ └── upgrade-effects.types.ts
│ │ ── types.ts
│ └── utils.ts
├── test-results/
│ └── .last-run.json
├── .dockerignore
├── .gitignore
├── AGENTS.md
├── CLAUDE.md
├── Caddyfile
├── Dockerfile
├── README.md