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

# Manifest reference

> Generated YAML reference for IDYL workload manifests.

This reference documents the YAML manifests accepted for IDYL workloads. The pages are generated from the YAML-tagged types in `github.com/idyl-labs/core/resource`.

## Manifest shape

Every workload manifest has the same top-level structure:

```yaml theme={null}
kind: Deployment
metadata:
  name: web
  subnet: <subnet>
spec:
  # resource-specific desired state
```

## Workload manifests

| Workload                                                | Kind         | Description                                                                                |
| ------------------------------------------------------- | ------------ | ------------------------------------------------------------------------------------------ |
| [Deployment](/resources/reference/generated/deployment) | `Deployment` | A Deployment keeps a replicated pod template running and can roll changes across replicas. |
| [Pod](/resources/reference/generated/pod)               | `Pod`        | A Pod runs one or more containers as a single scheduled workload.                          |
| [ReplicaSet](/resources/reference/generated/replicaset) | `ReplicaSet` | A ReplicaSet keeps a fixed number of pods running from one pod template.                   |
| [Job](/resources/reference/generated/job)               | `Job`        | A Job runs a pod template until the requested completions succeed.                         |
| [CronJob](/resources/reference/generated/cronjob)       | `CronJob`    | A CronJob creates Jobs on a schedule.                                                      |
| [Sandbox](/resources/reference/generated/sandbox)       | `Sandbox`    | A Sandbox runs a temporary pod template until its TTL expires.                             |

## Scope resolution

For CLI-created resources, account, namespace, and subnet can come from the manifest, command flags, or the active CLI context. Command flags have the highest priority.

| Scope value | Manifest path                  | Override flag  |
| ----------- | ------------------------------ | -------------- |
| Account     | `metadata.namespace.accountId` | `--account-id` |
| Namespace   | `metadata.namespace.namespace` | `--namespace`  |
| Subnet      | `metadata.subnet`              | `--subnet`     |

## Quantity formats

| Quantity        | Accepted format                                                                                                                |
| --------------- | ------------------------------------------------------------------------------------------------------------------------------ |
| CPU             | Whole vCPU (`1`), decimal vCPU (`0.5`), or millicores (`500m`). Decimal CPU supports up to three fractional digits.            |
| Memory and disk | Binary units (`Ki`, `Mi`, `Gi`, `Ti`), decimal units (`B`, `K`, `M`, `G`, `T`), or a bare byte count.                          |
| GPU             | Count (`4`), model (`h100`), count and model (`2:h100`), model and memory (`a100:80Gi`), or family and memory (`nvidia:24Gi`). |

## Read-only fields

IDYL can return these fields when you inspect a workload. Do not include them in authored manifests.

| Field                      | Description                                                               |
| -------------------------- | ------------------------------------------------------------------------- |
| `metadata.id`              | IDYL-assigned resource ID.                                                |
| `metadata.namespace.id`    | IDYL-assigned namespace ID.                                               |
| `metadata.ownerReferences` | Parent workload relationship, such as a ReplicaSet owned by a Deployment. |
| `metadata.createdAt`       | Creation timestamp.                                                       |
| `metadata.updatedAt`       | Last update timestamp.                                                    |
| `metadata.deletedAt`       | Deletion timestamp, when present.                                         |
| `metadata.revision`        | Revision information returned by IDYL.                                    |
| `status`                   | Current observed state returned by IDYL.                                  |
