# org.cairnsproto.draft.gold

> A maintainer's commitment to gold entries for one epoch: the root of a Merkle tree over (site key, canonical value digest, salt) leaves, so nobody can tell which sites are gold until the reveal.

- Kind: record
- Record key: tid
- Authority: draft.cairnsproto.org
- Lexicon: 1
- Published by [cairnsproto.org](https://lexicon.garden/identity/did:plc:np7ezqujtsry4bkogisaabul), the NSID's authority

## Links

- [Documentation](https://lexicon.garden/lexicon/did:plc:np7ezqujtsry4bkogisaabul/org.cairnsproto.draft.gold)
- [Schema JSON](https://lexicon.garden/lexicon/did:plc:np7ezqujtsry4bkogisaabul/org.cairnsproto.draft.gold/schema.json)
- [Analytics](https://lexicon.garden/lexicon/did:plc:np7ezqujtsry4bkogisaabul/org.cairnsproto.draft.gold/analytics)

## Record (`org.cairnsproto.draft.gold`)

Type: record · key tid

### Properties

- `beaconRound` (integer, required): The beacon round of the epoch the commitment is for. Reveals count once that epoch's retrace window has closed.
  - Constraints: minimum: 1
- `createdAt` (string · datetime, required)
- `project` (ref, required)
  - Reference: `com.atproto.repo.strongRef`
- `root` (ref, required): RFC 6962 Merkle tree hash over the entries' leaves in committed order. A leaf is cairns/gold/v1, a zero byte, the site key in hex, a zero byte, the value digest in hex, a zero byte and the salt.
  - Reference: `org.cairnsproto.draft.defs#hash`
- `size` (integer, required): How many leaves the tree has.
  - Constraints: minimum: 1, maximum: 100000

## Schema

```json
{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "main": {
      "description": "A maintainer's commitment to gold entries for one epoch: the root of a Merkle tree over (site key, canonical value digest, salt) leaves, so nobody can tell which sites are gold until the reveal.",
      "key": "tid",
      "record": {
        "properties": {
          "beaconRound": {
            "description": "The beacon round of the epoch the commitment is for. Reveals count once that epoch's retrace window has closed.",
            "minimum": 1,
            "type": "integer"
          },
          "createdAt": {
            "format": "datetime",
            "type": "string"
          },
          "project": {
            "ref": "com.atproto.repo.strongRef",
            "type": "ref"
          },
          "root": {
            "description": "RFC 6962 Merkle tree hash over the entries' leaves in committed order. A leaf is cairns/gold/v1, a zero byte, the site key in hex, a zero byte, the value digest in hex, a zero byte and the salt.",
            "ref": "org.cairnsproto.draft.defs#hash",
            "type": "ref"
          },
          "size": {
            "description": "How many leaves the tree has.",
            "maximum": 100000,
            "minimum": 1,
            "type": "integer"
          }
        },
        "required": [
          "project",
          "beaconRound",
          "root",
          "size",
          "createdAt"
        ],
        "type": "object"
      },
      "type": "record"
    }
  },
  "id": "org.cairnsproto.draft.gold",
  "lexicon": 1
}
```
