Skip to content

0056 — Reputation composition + multi-account detection (Group G)

Status

Folded into factions-and-teams.md, message-beacons.md, regional-governance.md, player.md, multi-account-detection.md — defer to those pages for the canonical description. Amended by ADR-0091 (2026-06-28: additive settle_contest surface — retain this cross-link; do not thin it away with the plain-Folded batch). (status line refreshed 2026-08-05 — WO-ADR-AMEND-0056-RETAIN-0091-CROSS-LINK; 0091 now Folded/shipped) (re-verified 2026-08-06)

Context

Seven audit findings clustered around two adjacent problems: reputation composition — faction reputation (ADR-0018, ADR-0019, ADR-0032) and personal reputation referenced each other with no gating rule, no shared daily-gain throttle, and no break-out path from cascade lockout — and multi-account exploits, where the same substrate (one human, multiple accounts) showed up independently across station-takeover volume, message-beacon spam, and governance voting with no shared defense. This ADR ruled faction-rep and personal-rep disjoint by default with explicit cross-feeds only (N-D1), added a global daily faction-rep throttle pool (N-V1), gave cascade-locked players a discrete redemption arc (N-F2), and — the load-bearing decision — made subscription tier the legitimacy gate for a shared MultiAccountDetectionService (E-V5): paid-tier clustered accounts are never blocked or discounted, only free-tier clusters are, applied consistently to beacon placement (N-V2) and governance voting eligibility (N-V3).

Folded into: - FEATURES/gameplay/factions-and-teams.md — faction-rep composition, throttle pool, redemption arc - FEATURES/gameplay/message-beacons.md — beacon placement gates (N-V2) - FEATURES/gameplay/regional-governance.md — voting eligibility (N-V3) - DATA_MODELS/player.mddaily_faction_rep_consumed / daily_faction_rep_consumed_date - OPERATIONS/multi-account-detection.mdMultiAccountDetectionService (E-V5)


Amendment A — Additive amendment per ADR-0091 (2026-06-28)

Status: Approved by Max (2026-06-27). Accepted as part of ADR-0091 (Accepted 2026-06-28).

Change: Extend MultiAccountDetectionService with a new settle_contest surface — a gated participation-weight query for the contestable-settle claim race introduced by ADR-0091:

  • eligible_for_contest(player_id, planet_id) → bool — returns True iff the player's account / registration / reputation scores clear the anti-sybil thresholds for contesting the specified planet.
  • Soft-flag (eligible but loses ties + forfeits loser relief) / hard-flag (blocked) semantics, consistent with the existing discount model.
  • No new account-linking logic — leverages existing detection surfaces. The once-per-account-lifetime comp flag remains ordinary player state (not an auth/MFA surface).
  • No loser relief between ADR-0056 linked accounts — prevents alt-feeding the loser-cost fund.

This ADR's accepted status and CI-enforcement are preserved; Amendment A is an additive method surface only, not a change to existing detection logic or the subscription-tier gating model.