diff --git a/docs/circular-deps.txt b/docs/circular-deps.txt index 52e6191..47ac179 100644 --- a/docs/circular-deps.txt +++ b/docs/circular-deps.txt @@ -1,4 +1,4 @@ # Circular Dependencies -Generated: 2026-05-29T23:43:49.944Z +Generated: 2026-05-30T08:40:53.794Z No circular dependencies found. ✅ diff --git a/docs/dependency-graph.json b/docs/dependency-graph.json index e108d10..b819c0d 100644 --- a/docs/dependency-graph.json +++ b/docs/dependency-graph.json @@ -1,6 +1,6 @@ { "_meta": { - "generated": "2026-05-29T23:43:46.156Z", + "generated": "2026-05-30T08:40:52.033Z", "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." }, diff --git a/docs/project-structure.txt b/docs/project-structure.txt index 78596cc..d983f7a 100644 --- a/docs/project-structure.txt +++ b/docs/project-structure.txt @@ -14,6 +14,8 @@ Mana-Loop/ │ ├── circular-deps.txt │ ├── dependency-graph.json │ └── project-structure.txt +├── e2e/ +│ └── playtest.spec.ts ├── playwright-report/ │ ├── data/ │ │ ├── 1513ea5b9ea5985996f67ca36f2bc4d34add51f1.webm @@ -408,6 +410,10 @@ Mana-Loop/ │ └── test/ │ └── setup.ts ├── test-results/ +│ ├── playtest-Mana-Loop---Compr-0eb11--crash-with-React-error-185-chromium/ +│ │ ├── error-context.md +│ │ ├── test-failed-1.png +│ │ └── video.webm │ └── .last-run.json ├── .dockerignore ├── .gitignore diff --git a/src/app/components/LeftPanel.tsx b/src/app/components/LeftPanel.tsx index 36cd009..dceff08 100644 --- a/src/app/components/LeftPanel.tsx +++ b/src/app/components/LeftPanel.tsx @@ -58,7 +58,7 @@ export function LeftPanel() { const maxMana = computeTotalMaxMana({ skills: {}, prestigeUpgrades, skillUpgrades: {}, skillTiers: {}, equippedInstances, equipmentInstances }, upgradeEffects); const baseRegen = computeTotalRegen({ skills: {}, prestigeUpgrades, skillUpgrades: {}, skillTiers: {}, equippedInstances, equipmentInstances }, upgradeEffects); const clickMana = computeTotalClickMana({ skills: {}, skillUpgrades: {}, skillTiers: {}, equippedInstances, equipmentInstances }, upgradeEffects); - const meditationMultiplier = getMeditationBonus(meditateTicks, {}, upgradeEffects.meditationEfficiency, disciplineEffects.meditationCapBonus); + const meditationMultiplier = getMeditationBonus(meditateTicks, upgradeEffects.meditationEfficiency, disciplineEffects.meditationCapBonus); const incursionStrength = getIncursionStrength(useGameStore((s) => s.day), useGameStore((s) => s.hour)); const effectiveRegen = baseRegen * (1 - incursionStrength) * meditationMultiplier; diff --git a/src/app/page.tsx b/src/app/page.tsx index 4be3002..a57f82f 100644 --- a/src/app/page.tsx +++ b/src/app/page.tsx @@ -91,7 +91,7 @@ function useGameDerivedStats() { }, upgradeEffects, disciplineEffects); const clickMana = computeClickMana({}, disciplineEffects); - const meditationMultiplier = getMeditationBonus(meditateTicks, {}, upgradeEffects.meditationEfficiency, disciplineEffects.meditationCapBonus); + const meditationMultiplier = getMeditationBonus(meditateTicks, upgradeEffects.meditationEfficiency, disciplineEffects.meditationCapBonus); const incursionStrength = getIncursionStrength(day, hour); const effectiveRegenWithSpecials = baseRegen * (1 - incursionStrength); diff --git a/src/components/game/tabs/SpireSummaryTab.tsx b/src/components/game/tabs/SpireSummaryTab.tsx index 7ba4357..74f938b 100644 --- a/src/components/game/tabs/SpireSummaryTab.tsx +++ b/src/components/game/tabs/SpireSummaryTab.tsx @@ -7,12 +7,11 @@ import { ELEMENT_OPPOSITES, FLOOR_ELEM_CYCLE } from '@/lib/game/constants'; import { getGuardianForFloor, getAllGuardianFloors } from '@/lib/game/data/guardian-encounters'; import type { GuardianDef } from '@/lib/game/types'; import { Card, CardContent } from '@/components/ui/card'; -import { Button } from '@/components/ui/button'; import { Badge } from '@/components/ui/badge'; import { ScrollArea } from '@/components/ui/scroll-area'; import { SectionHeader } from '@/components/ui/section-header'; import { DebugName } from '@/components/game/debug/debug-context'; -import { Mountain } from 'lucide-react'; + // ─── Guardian Data ──────────────────────────────────────────────────────────── @@ -364,17 +363,6 @@ export function SpireSummaryTab() { insight={insight} /> - - - - {nextGuardianData && nextGuardian && ( )} diff --git a/src/lib/game/hooks/useGameDerived.ts b/src/lib/game/hooks/useGameDerived.ts index 1ed65e9..c6f4bf6 100644 --- a/src/lib/game/hooks/useGameDerived.ts +++ b/src/lib/game/hooks/useGameDerived.ts @@ -39,8 +39,8 @@ export function useManaStats() { ); const maxMana = useMemo( - () => computeMaxMana({ prestigeUpgrades }, upgradeEffects), - [prestigeUpgrades, upgradeEffects] + () => computeMaxMana({ prestigeUpgrades }, upgradeEffects, disciplineEffects), + [prestigeUpgrades, upgradeEffects, disciplineEffects] ); const baseRegen = useMemo( @@ -56,7 +56,7 @@ export function useManaStats() { const disciplineEffects = computeDisciplineEffects(); const meditationCap = 5.0 + disciplineEffects.meditationCapBonus; const meditationMultiplier = useMemo( - () => getMeditationBonus(meditateTicks, {}, upgradeEffects.meditationEfficiency, disciplineEffects.meditationCapBonus), + () => getMeditationBonus(meditateTicks, upgradeEffects.meditationEfficiency, disciplineEffects.meditationCapBonus), [meditateTicks, upgradeEffects.meditationEfficiency, disciplineEffects.meditationCapBonus] );