bzh.herve.atmot.result

An immutable record of one completed AT Mot daily puzzle, written to the player's own PDS. Write-once: no field may change after creation. The record key is deterministic, formatted as `<lang>-<puzzleNumber>` (e.g. `en-412`, `fr-7`), so each puzzle can be recorded at most once per account per language and re-solving cannot overwrite or spam. Stores tile colours only — never the answer or guessed letters — so index/firehose watchers cannot harvest answers and old records never spoil replays.

Details · record, key any
Kindrecord
Record keyany
Authorityatmot.herve.bzh
Indexed

Record

record · key any

Properties

createdAt

requiredstring · datetime

When the player finished the puzzle and the record was created.

grid

array

The board as tile colours only, one element per guess row. Each element is an object (not a bare string) so context can be added later without a schema V2.

  • maxLength: 6
itemsref
Reference

guessCount

integer

Number of guesses used. Present only when solved; absent on a loss (optional so a loss is representable without a sentinel value).

  • minimum: 1
  • maximum: 6

lang

requiredstring · language

BCP-47 language of the puzzle series (e.g. `en`, `fr`). Each language is an independent daily series.

puzzleDate

requiredstring · datetime

UTC midnight datetime of the puzzle's calendar day.

puzzleNumber

requiredinteger

Per-language puzzle index = whole UTC days since the shared epoch (2026-06-23), +1. Launch day = 1.

  • minimum: 1

puzzleTarget

requiredstring · uri

The canonical per-(lang,day) permalink `https://atmot.herve.bzh/p/<lang>/<puzzleNumber>`. This is the link the Constellation backlink index aggregates to build the leaderboard. It is deliberately a synthetic web URL, NOT a com.atproto.repo.strongRef, because the puzzle is not itself a network record — this is intentional, and is exactly what lets Constellation index it as a backlink target. Format is frozen and compared literally; emit it only via the app's shared helper.

solved

requiredboolean

Whether the player guessed the word within the allowed attempts.

#gridRow

object

One guess row, encoded as tile-state codes only (never the letters).

Properties

row

requiredstring

Exactly five tile-state codes, one per column: `G` = correct (right letter, right spot), `Y` = present (right letter, wrong spot), `B` = absent (not in the word). Example: `BGYBB`.

  • minLength: 5
  • maxLength: 5

Similar lexicons

semantic match

Lexicons whose schemas describe something close to this one. Check them before publishing a new one that overlaps.

  • com.tomplanche.atkuzu.result

    record not from the namespace authority

    An immutable record of one completed atkuzu (Binairo/Takuzu) daily puzzle, written to the player's own PDS. Write-once: no field may change after creation. The record key is `<puzzleNumber>-<size>` (e.g. `412-8`), so each size can be recorded at most once per puzzle day per account and re-solving cannot overwrite or spam.

  • Aggregate statistics for one (lang, puzzleNumber), computed in the browser. Counts are read live from Constellation and never stored on any record.

  • A single, mutable per-account streak/stats record, edited in place like a profile. It also doubles as AT Mot's declaration / signaling record: its presence signals that an account plays AT Mot, and its deletion signals opt-out. Listing this one collection across the network enumerates every AT Mot player, so it is created on first play even before any stats accrue.

  • A score for a daily web game played by the user.