# Deployment readiness

The week-one owner map and a readiness score out of 100. See every connected system and agent, who owns its data, model risk and audit, and what still stands between the deployment and production.

Open **Settings › Readiness** (`/readiness`). It needs `admin.write`.

## The owner map

The page lists what is connected, found from the platform's own records:

- **Systems**: every data source (type, status, records) and every MCP server.
- **Agents**: every registered agent, with its risk tier and whether it has an active owner.

For each system you confirm four owners: **data owner**, **model-risk owner**, **audit owner** and **operational owner**. For the instance as a whole you confirm an audit owner and a model-risk owner.

Discovery suggests candidates from the data: for a source, the teams that work its tickets, most tickets first; for an agent, its registry owners and oversight roles. Click a suggestion to use it. A suggestion never counts as an owner until someone confirms it.

## The readiness score

The score is out of 100, from nine weighted checks:

| Check | Points | Full marks when |
| --- | --- | --- |
| Systems connected | 15 | Every connected system is healthy |
| Sources synced | 10 | Every source synced in the last 7 days |
| Data owners | 15 | Every system has a confirmed data owner |
| Agent owners | 10 | Every agent has an active owner |
| Model-risk ownership | 10 | The instance has a model-risk owner, or every agent has one |
| Audit owner | 5 | The instance has an audit owner |
| Knowledge coverage | 15 | Every self-service question was answered (half marks while records are indexed but nobody has asked yet) |
| Agents governed | 10 | Every agent is under a guardrail or a budget of its own |
| Agents exercised | 10 | Every agent ran through the gateway in the last 90 days |

80 and up reads **ready**, 60 to 79 **nearly**, below 60 **not ready**. Each check says what it found and what closes it, and the three checks with the most points still to gain are shown as the blockers.

## API

- `GET /api/admin/readiness`: the map and the score.
- `PUT /api/admin/readiness/owners` with `{"system": "source:<id>" | "mcp:<name>" | "agent:<key>" | "instance", "roles": {"data_owner": "maria@acme.example"}}`. An empty value clears that role. Each change writes `fde.owner.assign` with before and after.
