Files
elysium/goddess-todo.md
T
hikari 0d36b255ee feat: goddess API routes, services, and tests (chunk 4)
Add six new goddess-mode API routes (boss fight, consecration,
enlightenment, upgrade purchase, crafting, exploration) alongside
matching service modules and full test suites at 100% coverage.
2026-04-13 15:48:35 -07:00

5.1 KiB

Goddess Expansion — Implementation Tracker

Branch: feat/goddess

Chunk 1 — Types COMPLETE

  • Add GoddessZone, GoddessBoss, GoddessQuest interfaces
  • Add GoddessDisciple (Disciples) interface
  • Add GoddessEquipment, GoddessUpgrade interfaces
  • Add GoddessExplorationState interface
  • Add ConsecrationData + ConsecrationUpgrade (Prestige) interfaces
  • Add EnlightenmentData + EnlightenmentUpgrade (Transcendence) interfaces
  • Add GoddessAchievement interface
  • Add goddess currency fields (prayers, divinity, stardust) to Resource
  • Add top-level GoddessState container + add goddess? to GameState
  • Export all new types from packages/types
  • Lint · Build · Tests (100% coverage)

Chunk 2 — Data COMPLETE

  • goddessZones.ts — 18 goddess zones
  • goddessBosses.ts — 72 bosses (4 per zone)
  • goddessQuests.ts — 90 quests (5 per zone)
  • goddessDisciples.ts — 32 disciple tiers (oracle/seraph/invoker/templar/herald/warden classes)
  • goddessEquipment.ts — 53 equipment pieces (18 relics, 18 vestments, 17 sigils)
  • goddessEquipmentSets.ts — 9 equipment sets (with GoddessEquipmentSet type)
  • goddessUpgrades.ts — 57 upgrades (prayers/global/combat/consecration/disciple/boss)
  • goddessConsecrationUpgrades.ts — 25 consecration upgrades
  • goddessEnlightenmentUpgrades.ts — 15 enlightenment upgrades
  • goddessMaterials.ts — 54 sacred materials (3 per zone)
  • goddessCrafting.ts — 36 crafting recipes (2 per zone)
  • goddessExplorations.ts — 72 exploration areas (4 per zone)
  • goddessAchievements.ts — 40 achievements
  • GoddessEquipmentSet + computeGoddessSetBonuses added to packages/types
  • NOTE: All data files excluded from coverage until Chunk 4 routes import them
  • Lint · Build · Tests (100% coverage)

Chunk 3 — Sync / Sanitize COMPLETE

  • Update validateAndSanitize to inject goddess state defaults for existing saves
  • Update force-sync (syncNewContent) to inject missing goddess fields
  • Add apotheosis unlock flag handling
  • Lint · Build · Tests (100% coverage)

Chunk 4 — API Routes COMPLETE

  • Goddess boss fight route (goddessBoss.ts)
  • Consecration (goddess prestige) route (consecration.ts)
  • Enlightenment (goddess transcendence) route (enlightenment.ts)
  • Goddess upgrade purchase route (goddessUpgrade.ts)
  • Goddess crafting route (goddessCraft.ts)
  • Goddess exploration route (goddessExplore.ts)
  • Services: consecration.ts, enlightenment.ts
  • Tests for all 6 routes (100% coverage)
  • Lint · Build · Tests (100% coverage)

Chunk 5 — UI: Resource Bar + Mode/Tab Nav

  • Add goddess currencies to resource bar dropdown (greyed pre-apotheosis)
  • Add Mode bar (Row 1) — Mortal | Goddess | Vampire — always visible, locked modes show padlock pre-unlock
  • Add Tab bar (Row 2) — swaps entirely based on selected mode:
    • Mortal: Zones · Quests · Adventurers · Equipment · Upgrades · Prestige · Transcendence · Crafting · Exploration · Achievements · Codex · Story · Daily
    • Goddess: Zones · Disciples · Quests · Equipment · Upgrades · Consecration · Enlightenment · Crafting · Exploration · Achievements
    • Vampire: (future — TBD)
  • Persist selected mode in game state (survives page reload)
  • .goddess-mode CSS class toggle on root when Goddess mode selected
  • 300ms CSS fade transition between base and goddess themes

Chunk 6 — UI: Goddess Panels

  • GoddessZonesPanel — zones with lock states
  • GoddessBossPanel — boss fights
  • GoddessQuestsPanel — quests
  • DisciplesPanel — goddess adventurers
  • GoddessEquipmentPanel — equipment
  • GoddessUpgradesPanel — upgrades
  • ConsecrationPanel — goddess prestige
  • EnlightenmentPanel — goddess transcendence
  • GoddessCraftingPanel — crafting
  • GoddessExplorationPanel — exploration
  • GoddessAchievementsPanel — achievements

Chunk 7 — Tick Engine

  • Goddess passive income (prayers, divinity accumulation)
  • Disciple passive income logic
  • Lock state checks (no goddess income pre-apotheosis)
  • Goddess quest timer logic

Chunk 8 — CSS Theme

  • Define goddess CSS variables (soft blue primary, gold/white accents)
  • Apply .goddess-mode overrides to all themed elements
  • Verify logo stays unchanged during theme shift
  • Test fade transition smoothness

Chunk 9 — About Page

  • Update HOW_TO_PLAY array in aboutPanel.tsx with Goddess expansion documentation

Notes

  • Apotheosis = the unlock gate for all goddess content (replaces original "Transcendence 20" concept — verify exact trigger)
  • Goddess currencies always visible in resource bar, greyed pre-apotheosis
  • All goddess tabs always visible in second row, content locked internally pre-apotheosis
  • Vampire Mode will follow same pattern as third tab row (future work, not this PR)
  • Sync new content must inject goddess defaults for all existing saves