# tools/core/constants/board.constants.ts

> 21 lines of code and 18 definitions.

Tree: Coordination tree
Language: typescript
Layer: infrastructure
Canonical: https://banes-lab.com/anatomy/coordination#file-coordination-tools-core-constants-board-constants-ts
Source text: https://banes-lab.com/assets/sources/source.41a757847600ad5e577bb3e5ecca1551d6867fef325888141330799018f7400b.generated.txt

## Definitions

- `BOARD_PATH` (lexical_declaration, line 3, exported)
- `AGENT_INDEX` (lexical_declaration, line 5, exported)
- `COMMS_TEMPLATE` (lexical_declaration, line 7, exported)
- `AGENT_FIELDS` (lexical_declaration, line 9, exported)
- `GATE_FIELDS` (lexical_declaration, line 11, exported)
- `ANSWER_PREFIX` (lexical_declaration, line 13, exported)
- `CLAIM_WORDS` (lexical_declaration, line 15, exported)
- `AGENT_LABEL` (lexical_declaration, line 17, exported)
- `BOARD_STATES` (lexical_declaration, line 19, exported)
- `STALE_MARKERS` (lexical_declaration, line 21, exported)
- `PROJECTION_HOST` (lexical_declaration, line 23, exported)
- `PROJECTION_MARKER` (lexical_declaration, line 27, exported)
- `PROJECTION_DEFAULT` (lexical_declaration, line 29, exported)
- `PROJECTION_CAP_CHARS` (lexical_declaration, line 31, exported)
- `WAIT_COMMAND` (lexical_declaration, line 33, exported)
- `READ_TOKEN_BUDGET` (lexical_declaration, line 35, exported)
- `CHARS_PER_TOKEN` (lexical_declaration, line 37, exported)
- `READ_BUDGET_CHARS` (lexical_declaration, line 39, exported)

## Source

```typescript
import { isResolved, slotCount, slotText, surfacePath } from "../../../config/surface.config.ts";

export const BOARD_PATH = surfacePath("board");

export const AGENT_INDEX = surfacePath("agent_index");

export const COMMS_TEMPLATE = surfacePath("board_template");

export const AGENT_FIELDS = ["Owns", "Status", "Flags", "Refs"];

export const GATE_FIELDS = ["State", "Owner", "Blocker"];

export const ANSWER_PREFIX = "Answer-";

export const CLAIM_WORDS = 12;

export const AGENT_LABEL = "Agent";

export const BOARD_STATES = ["PASS", "RED", "PENDING"];

export const STALE_MARKERS = ["DONE", "SUPERSEDED", "ACK"];

export const PROJECTION_HOST: string | null = isResolved("project", "governance_policy")
    ? slotText("project", "governance_policy")
    : null;

export const PROJECTION_MARKER = slotText("project", "projection_marker");

export const PROJECTION_DEFAULT = "no board raised";

export const PROJECTION_CAP_CHARS = slotCount("convention", "projection_cap_chars");

export const WAIT_COMMAND = slotText("execution", "wait_command");

export const READ_TOKEN_BUDGET = slotCount("convention", "read_token_budget");

export const CHARS_PER_TOKEN = slotCount("convention", "chars_per_token");

export const READ_BUDGET_CHARS = READ_TOKEN_BUDGET * CHARS_PER_TOKEN;
```
