Basic-tier Decision Register
Status and authority
This register is the issue #62 consolidation point for the remaining Wits Quest
Basic-tier product and governance decisions. It was prepared on 2026-08-13 by
Kevin Ebrahim, Product and Player Experience Lead, for review by Caleb Pather,
Cards, Game Systems and Quality Lead, and updated on 2026-08-14 in response to
the PR #84 review. The update synchronises BASIC-09 through BASIC-12 with
the confirmed decisions recorded in issues #71, #74, #77, and #63.
The labels used below are deliberate:
- Confirmed — supported by an approved decision record or an unambiguous current Gitea issue contract.
- Blocked — implementation must wait for the named owner to record the missing choice. A proposal elsewhere is not authority to invent the answer.
- Deferred — explicitly outside the Basic release.
- Superseded — an older statement conflicts with a newer or more authoritative decision and must not drive implementation.
The linked Gitea issue or comment is the evidence source. Approval of this register consolidates those sources; it does not retrospectively invent a stakeholder decision.
Decision register
| ID | Topic | Status on 2026-08-14 | Decision or blocker | Owner | Evidence |
|---|---|---|---|---|---|
BASIC-01 | Challenge format and lifecycle | Confirmed | The Basic challenge is one timed multiple-choice quiz per player per event: five distinct questions, four choices each, difficulty 1-3, persisted shuffle, answer locking, resume of the same attempt, and a 90/120/150 second server deadline selected from average difficulty. Starting while the event is active preserves the full deadline. Unanswered questions are incorrect at timeout. | Product Lead | Issue #46 approved product decision |
BASIC-02 | Challenge replay and failed attempts | Confirmed | There is no Basic replay after completion or timeout. A zero-to-five score is a completed attempt; low scores are handled by the reward table, not by opening another attempt. Repeated start resumes only an in-progress attempt. | Product Lead | Issue #46 approved product decision, challenge contract |
BASIC-03 | Challenge feedback | Confirmed | A completed Basic attempt returns only the final number correct (0-5) and reward outcome. It does not reveal per-question correctness, the player's accepted choices, correct answers, or explanations. Kevin's 2026-08-13 product decision confirms that the earlier issue #46 rule governs and supersedes the conflicting feedback wording in issues #66 and #68. | Product Lead | Issue #62 product decision, issue #46 approved product decision, issue #66, issue #68 |
BASIC-04 | Rewards and duplicate ownership | Confirmed | Coin bands, card counts, rarity probabilities, empty-pool redistribution, and server-side selection follow the issue #49 decision. Each awarded duplicate is a separately owned copy. Completion and reward issuance are atomic and retry-safe. | Product Lead; Data Lead | Issue #49 approved product decision, persistence design |
BASIC-05 | Card vocabulary | Confirmed | Card categories are Creature and Power; affinities are Wit, Grit, Spark, Spirit, and Mystic; rarities are Common, Rare, Epic, and Legendary. | Product Lead; Cards/Game Rules reviewer | Issue #49 approved product decision |
BASIC-06 | Starter grant | Confirmed by current implementation contracts | Starter selection is one-time and server-authoritative. It grants five distinct Common cards of the selected affinity: three Creature and two Power cards. | Data Lead; Product reviewer | Issue #71, issue #70 |
BASIC-07 | Deck composition and ownership | Confirmed by current implementation contract | A saved deck contains five owned copies: three Creature and two Power cards, with a maximum total of ten points. One owned copy may be referenced by multiple saved decks; using two copies in one deck requires two owned copies. Match snapshots are immutable after start. | Cards/Game Rules Lead | Issue #72 |
BASIC-08 | Rarity point values | Confirmed | Common cards cost 1 point, Rare cards 2, Epic cards 3, and Legendary cards 4. The value is fixed by rarity and applies equally to Creature and Power cards. A five-card deck must not exceed 10 points in total. | Cards/Game Rules Lead; Data Lead | Issue #62 team-approved decision record, issue #71, issue #72, issue #73, issue #74, issue #75 |
BASIC-09 | Card attributes, moves, effects, and type modifiers | Confirmed | HP and Creature Power are set per card during catalogue authoring; there are no fixed rarity-wide stat ranges. Move types are Basic, Wit, Grit, Spark, Spirit, and Mystic. Effects are Damage, Debuff, Heal, and Buff: Damage and Debuff target the opponent, while Heal and Buff target the user's Creature. effectValue is optional and carries the magnitude. power is the resource cost taken from the Creature's remaining Power, so a move is legal only when enough Power remains. Only Damage uses type modifiers. The cycle is Wit -> Grit -> Spark -> Spirit -> Mystic -> Wit, with 1.5x advantage, 0.75x disadvantage, and 1.0x for unrelated matchups. Power cards also have one of the five types; per-card HP, Power, damage, healing, buff, and debuff values are decided during authoring, while catalogue validation enforces data types and allowed enum values. | Caleb Pather; Uzair Mahomed | Issue #71 decision |
BASIC-10 | CPU battle resolution and ties | Confirmed | Basic uses the established Creature move and Power-card system, not direct attribute comparison. The server flips a coin to choose the first player. Player and CPU use the same legal-action rules; a turn allows one legal Creature move or one Power card. A Power card requires an active Creature, is discarded immediately after use, cannot be reused in that battle, and may define multiple authored effects. The current move-based system has no ties. A timer expiry without a selected action ends the turn without an action. PvP turns are 1 minute; CPU turns are 1.5 minutes; the shared rule remains configurable. The CPU selects randomly from legal actions using server-side randomness. A defeated Creature cannot return; replacement is mandatory, does not consume the replacement player's normal turn, and voluntary switching is not allowed. A player loses when all Creatures are defeated. The browser submits only an intended move or Power-card identifier; the server loads definitions, resolves effects, performs randomness, and owns the outcome. | Caleb Pather; Product reviewer | Issue #74 decision |
BASIC-11 | Application roles | Confirmed | Basic has only two roles: Player and Author. No separate Administrator role is implemented. New users receive Player. Authors may create, edit, publish, retire, and manage all Basic content, including content created by other Authors. Author assignment and revocation happen out-of-band through the database or deployment process; no browser or API operation may grant or change roles. Players cannot access author endpoints, accepted answers, or unpublished content. Author actions such as create, edit, publish, and retire record the acting Author and timestamp in the audit trail. Administrator permissions, in-app role management, and advanced administration are deferred beyond Basic. | Tyron Van Tonder | ADR-005, Issue #77 decision |
BASIC-12 | Account deletion and retention | Confirmed | Account deletion permanently removes the Auth0 account and player-owned cards, decks, active-deck selection, coin balance, and starter selection. The local record remains only as an anonymised tombstone such as Deleted player, with the Auth0 subject, name, email, and other identifying data removed. Completed challenges, reward records, coin transactions, matches, and anonymous final results are retained for integrity and aggregate statistics; individual answers and answer snapshots are deleted, and anonymous gameplay history is retained indefinitely unless a later formal retention rule is established. Published events, questions, and cards remain available, with authored-content ownership transferred to a system-owned account and Deleted author displayed where needed. Access is locked immediately with no Basic grace period; deletion is marked pending while cleanup completes. Auth0 or database failures trigger idempotent automatic retry and an operational alert while the account remains locked. A person may register again as a completely new player with no prior progress, cards, coins, or decks. A minimal audit record containing only a random deletion ID, request/completion timestamps, status, and applicable failure reason is retained for 12 months; it contains no email, Auth0 subject, name, location, or other identifying data. Deletion requires recent authentication and explicit permanent-deletion confirmation. | Tyron Van Tonder; Uzair Mahomed | ADR-005, Issue #63 decisions |
BASIC-13 | Map provider as external service | Provider and formal acceptance pending | OpenFreeMap remains the implemented provider while alternatives are evaluated; no replacement is approved by this register. The current integration is technically an external third-party service, retains attribution and a map-independent event list, and sends no player location to the provider, but OpenFreeMap provides no availability warranty. Kevin must select a provider after a Wits-campus visual/data trial and link client, lecturer, or brief evidence before claiming formal rubric acceptance. Campus-specific detail must come from a licensed project-owned layer rather than an assumed provider feature. | Kevin Ebrahim | Map-provider evaluation, ADR-004, issue #62 status |
BASIC-14 | Basic release scope | Confirmed | Basic comprises authentication/account lifecycle, map/event discovery and eligibility, one timed quiz, atomic rewards, collection and starter grant, saved decks, deterministic CPU battles/history, protected author content management, seed content, and release validation. The API and database remain authoritative for protected rules. | Product Lead; specialist leads for their boundaries | Sprint 2 issue plan |
BASIC-15 | Explicit Basic exclusions | Deferred | PvP, matchmaking, Elo/ratings, spectators, trading, selling, evolution, rarity upgrades, offline play, continuous movement tracking, anti-cheat/trust scoring, territory control, seasons, advanced analytics, advanced author review workflow, and player administration are outside Basic. Profiles, achievements, and leaderboards remain excluded unless a separately approved Basic issue brings forward a minimal foundation. | Product Lead | Issue #62, Sprint 2 issue plan |
BASIC-16 | Existing location thresholds | No change | The seeded event's 75 m radius, two-minute freshness threshold, and accuracy-envelope behavior retain the status recorded by issue #43. Issue #62 does not authorise a silent data or API rule change. | Data Lead; API/Security Lead | Field-test decision table |
Blocking decision requests
BASIC-09 through BASIC-12 are now confirmed in the cited issue comments.
The following input remains required before issue #62 can be considered
complete:
- Kevin Ebrahim — map provider and external-service acceptance: run the Wits-campus comparison described in the map-provider evaluation, record the selected provider and cost/licensing owner, and link client, lecturer, or brief evidence confirming that the selected integration satisfies the external-service requirement.
The account-deletion comment for #63 mentions transferring authored content to a
system or Administrator account. Because BASIC-11 confirms that Basic has no
separate Administrator role, deletion handling must use the system-owned target;
it must not introduce an Administrator role or an in-app role-management path.
Implementation gate
Work may proceed on confirmed, separable foundations, but an implementation must not guess a blocked value. In particular:
- #63 may implement the confirmed deletion, anonymisation, retention, retry, and audit policy;
- #71 may implement catalogue structure and the confirmed per-card stats, vocabulary, moves, effects, Power costs, and type modifiers;
- #72 and #73 must validate and present the confirmed rarity values and five-card, ten-point cap; and
- #74 and dependent match issues may implement the confirmed move-based, server-authoritative battle rules, including configurable timers and server-side randomness; and
- #77 must enforce the two-role Player/Author model, out-of-band role changes, and Author audit records; and
- #66 and #68 must implement
BASIC-03final-score-only feedback; the conflicting per-question, correct-answer, and explanation wording in those issue bodies is superseded, and accepted answers remain private.
This register was planned, generated, and edited with the assistance of Codex-CLI[GPT-5].