Seasons and capacity
A season maps a theme to an inclusive date range. Season files live in runtime-config/seasons/*.json and must have unique IDs, valid dates, a known theme, and no overlapping active windows.
json
{
"id": "season-1-countries",
"name": "Countries",
"theme": "countries",
"startDate": "2026-07-01",
"endDate": "2026-08-04",
"enabled": true,
"difficulties": ["easy", "normal", "hard"]
}Capacity analysis asks whether the theme has enough eligible, varied material for the requested date range and difficulty lanes. It is a planning signal: a theme can pass schema validation while still being editorially too narrow for a season.
Use Season Authoring for the end-to-end workflow.