> ## Documentation Index
> Fetch the complete documentation index at: https://docs.twinbay.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Linear

> A GraphQL workspace: teams, workflow states, issues and their comments

Issue tracking through Linear's GraphQL API. The conformance suite drives the twin through `@linear/sdk` `95.0.0`, the only SDK Linear publishes.

**Slug:** `linear`

## What it models

| Area              | Modelled                                                                                                                                                                                                                                                                                                                                                                                                        |
| ----------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Workspace         | One organization, one team (`ENG`), three people including the one your key acts as, Linear's six default workflow states, and labels with the duplicate-name refusal                                                                                                                                                                                                                                           |
| Issues            | Create, update, delete, archive and unarchive; read by id or identifier; title, description, priority, state, assignee, labels, due date and estimate with Linear's own validators; server-computed `identifier`, `number`, `url`, `branchName`, `priorityLabel`, `sortOrder` and `boardOrder`; state-derived `startedAt`, `completedAt`, `canceledAt`, `addedToTeamAt` and `autoArchivedAt`; `includeArchived` |
| Comments          | Create, update, delete and read, `issueId` as an id or an identifier, `editedAt` on an edit, and the `url` Linear builds                                                                                                                                                                                                                                                                                        |
| Provider behavior | Linear's error envelope, including which failures answer `200` with a `data: null` body; Relay connections read as `nodes` or `edges { cursor node }`, forwards and backwards                                                                                                                                                                                                                                   |
| Authentication    | A raw `lin_api_` key in `Authorization`, one `401` for missing, unknown and revoked keys, and the `400` Linear answers a key sent with a `Bearer` prefix                                                                                                                                                                                                                                                        |

Every record the baseline creates carries the same identifier in every container, so a seed plan can name the team, its people, its states and its labels before any container exists. The sandbox numbers whatever you create afterwards.

Advancing moves each open issue one step along its workflow: Backlog to Todo, Todo to In Progress, In Progress to Done, and a Done or Canceled issue to auto-archived.

## Scenarios

`busy-team`, `completed-work`, `revoked-api-key`.

## Not modelled

Projects, milestones, initiatives, cycles, roadmaps, documents, favourites, attachments, reactions and templates; the `organization` query and workspace or team settings; webhooks, integrations, OAuth applications and agent sessions; issue relations, sub-issues, sub-issue sorting and issue history; API-key management; GraphQL subscriptions and variable default values; and `filter`, `orderBy` or `sort` arguments. The twin refuses an argument it does not model rather than ignoring it, so you never read an issue back as created the way you asked when it was not.

The twin refuses introspection as well. Linear serves `__schema` and `__type`; this twin answers both `501`, because a schema a twentieth of Linear's real size would mislead the `graphql-codegen` run that asked for it. `__typename` is not introspection and works.
