Changelog entry
Visibility tier computation + API filtering (P5.1A)
2026-03-25
- Nation profile API now computes a **visibility tier** (PUBLIC / TREATY / ALLIANCE / INTEL) for each viewer–target pair based on alliance membership, active treaties, active wars, and intelligence snapshots.
- At **PUBLIC** tier (anonymous or unrelated viewers), exact military unit counts are hidden and replaced with a bracket label (Small / Medium / Large / Massive).
- At **TREATY** tier (active treaty or ongoing war), exact military unit counts are revealed but treasury remains private.
- At **ALLIANCE** tier (same alliance), exact military counts and treasury balance are both disclosed.
- At **INTEL** tier (own nation or active intel snapshot), full data including exact cash is revealed.
- Cash is represented as a bracket label (`<$10k` / `$10k-100k` / `$100k-500k` / `$500k-1M` / `$1M+`) for lower-visibility viewers.
- Bracket thresholds are config-driven via `VISIBILITY_CASH_BRACKET_THRESHOLDS` and `VISIBILITY_MILITARY_BRACKET_THRESHOLDS` in world config.
- The public nation profile page now shows a bracket label in the Military Snapshot header when exact counts are unavailable, and hides the unit breakdown grid for PUBLIC-tier viewers.