fix: defensive hardening — NaN guards, cast loop safety, discipline reset on new loop, spire mode maxFloorReached fix
Build and Publish Mana Loop Docker Image / build-and-publish (push) Successful in 1m20s

This commit is contained in:
2026-05-28 18:14:19 +02:00
parent 13c185a216
commit bc184cefb0
8 changed files with 49 additions and 9 deletions
@@ -18,7 +18,13 @@ import { DebugName } from '@/components/game/debug/debug-context';
// ─── Derived Stats Hook ──────────────────────────────────────────────────────
function useSpireStats(prestigeUpgrades: Record<string, number>, equippedInstances: Record<string, string | null>, equipmentInstances: Record<string, import('@/lib/game/types').EquipmentInstance>) {
const disciplineEffects = computeDisciplineEffects();
let disciplineEffects: ReturnType<typeof computeDisciplineEffects> | null = null;
try {
disciplineEffects = computeDisciplineEffects();
} catch {
// If discipline state is corrupted, proceed without discipline effects
disciplineEffects = { bonuses: {}, multipliers: {}, specials: new Set(), meditationCapBonus: 0, conversions: {} };
}
const upgradeEffects = getUnifiedEffects({
skillUpgrades: {},