# Table Cell/Checkbox — Figma Assembly Rules
<!-- figma-assembly.v2
{ "schemaVersion":"figma-assembly.v2", "id":"component.table-cell-checkbox", "level":"atom", "kind":"published", "aliases":["Table Cell/Checkbox","table-cell-checkbox"], "uxSpec":"specs/ux/components/atoms/table-cell-checkbox.md", "inventoryTarget":"table-cell-checkbox", "componentKeys":["a72bb41909e00642f34416c0aa62a3806f0be4c3"], "dependencies":["component.checkbox"], "optionalDependencies":[], "coveredBy":[] }
-->

Status: active Figma assembly contract.

## Scope

Use this contract for a row-selection checkbox body cell. Selection behavior
and row data remain owned by the enclosing table.

## Source Evidence

- Identity and exposed anatomy rechecked read-only on 2026-09-05 at
  [exact node](https://www.figma.com/design/EO9tuCsqwuHL8cZ4Eb2psR/?node-id=18296-100305).
  This confirms the documented owner/reference, not every assembly predicate or runtime token parity.

- Direct Figma evidence:
  node `18296:100305` passed context, screenshot (`40×48`), and variable checks.

## Required Assembly

- Dependency classification: `component.checkbox` is required because the
  published body-cell target is defined by its nested selection control.
- Rule ID: `table.cell.checkbox` — use the published cell and its nested small
  Checkbox; never draw a local checkbox or freeze selection as custom artwork.
- Keep the nested Checkbox at the mapped `S - 16` size and use its existing
  `Selected` and `State` variants for design evidence.
- Keep row selection, select-all, indeterminate state, and persistence in the
  enclosing table contract; the body cell does not own them.
- Apply fixed-column treatment only as part of the enclosing pinned column.

## Verification Checklist

- `table.cell.checkbox`: both cell and checkbox remain library instances.
- The checkbox is not replaced with an icon or a manually drawn control.
- Screen-specific selected values are not encoded in this reusable contract.
