# app.gainforest.labelReview

> Published by [gainforest.earth](https://lexicon.garden/identity/did:plc:qoti4acfmc5wg6zzmtix6hse)

## Links

- [View on Lexicon Garden](https://lexicon.garden/lexicon/did:plc:qoti4acfmc5wg6zzmtix6hse/app.gainforest.labelReview)
- [Documentation](https://lexicon.garden/lexicon/did:plc:qoti4acfmc5wg6zzmtix6hse/app.gainforest.labelReview/docs)
- [Examples](https://lexicon.garden/lexicon/did:plc:qoti4acfmc5wg6zzmtix6hse/app.gainforest.labelReview/examples)

## Definitions

### `app.gainforest.labelReview`

**Type**: `record`

A steward's verdict on an observation's species label, stored in the GainForest moderation account. Confirmations are an append-only event stream: the newest event per observation wins, so any steward can reverse another's decision without deleting history. A confirmation names the exact label it reviewed; it goes stale automatically when the observation's label changes afterwards.

**Key**: `tid`

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `subject` | `string` (at-uri) | Yes | The occurrence whose label was reviewed. |
| `confirmed` | `boolean` | Yes | True when a steward confirmed the label is correct; false is an append-only withdrawal event. |
| `createdAt` | `string` (datetime) | Yes | When the verdict was recorded. |
| `scientificName` | `string` | Yes | Snapshot of the scientific name that was reviewed. The verdict applies only while the occurrence still carries this name. |
| `vernacularName` | `string` | No | Optional snapshot of the common name at review time, for display. |

## Raw Schema

```json
{
  "id": "app.gainforest.labelReview",
  "defs": {
    "main": {
      "key": "tid",
      "type": "record",
      "record": {
        "type": "object",
        "required": [
          "subject",
          "scientificName",
          "confirmed",
          "createdAt"
        ],
        "properties": {
          "subject": {
            "type": "string",
            "format": "at-uri",
            "description": "The occurrence whose label was reviewed."
          },
          "confirmed": {
            "type": "boolean",
            "description": "True when a steward confirmed the label is correct; false is an append-only withdrawal event."
          },
          "createdAt": {
            "type": "string",
            "format": "datetime",
            "description": "When the verdict was recorded."
          },
          "scientificName": {
            "type": "string",
            "maxLength": 512,
            "description": "Snapshot of the scientific name that was reviewed. The verdict applies only while the occurrence still carries this name.",
            "maxGraphemes": 160
          },
          "vernacularName": {
            "type": "string",
            "maxLength": 512,
            "description": "Optional snapshot of the common name at review time, for display.",
            "maxGraphemes": 160
          }
        }
      },
      "description": "A steward's verdict on an observation's species label, stored in the GainForest moderation account. Confirmations are an append-only event stream: the newest event per observation wins, so any steward can reverse another's decision without deleting history. A confirmation names the exact label it reviewed; it goes stale automatically when the observation's label changes afterwards."
    }
  },
  "$type": "com.atproto.lexicon.schema",
  "lexicon": 1
}
```
