Problem
conquests.stx and battles.stx render entirely from seedConquests — there is no Conquest model/table/endpoint, no 'contest' API, and the 'Live'/'Under Attack' badges are just status==='active' on seed rows. Period filters slice seed timestamps client-side. No websocket/poll.
Acceptance
- Serve real conquest history (from TerritoryHistory or a Conquest endpoint).
- Real 'under attack'/live state (poll or websocket) instead of scripted seed.
- Battles/conquests pages read the API.