Docs: leftovers from #47 (#57)
Older runners' artifacts are in the artifact endpoints and rt_artifacts, artifact and cache lists send Link headers, and artifact, cache and workflow-settings audit entries from the API carry via: "api". Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_016q5wwBFck8JHq14gHUM2CL
Canberk Demirci authored · GitHub committed signed1 parent 1d7c878commit 3857f8c4e5b63cdca44a59cf5aa27127671654cfBrowse files
4 files changed+8−8
Files (4)
modifiedapps/diffinery/docs/actions/caching-and-artifacts.md+1−1View file
| @@ -499,7 +499,7 @@ | ||
| 499 | 499 | diffinery api GET /repos/acme/website/actions/runs/128/artifacts |
| 500 | 500 | ``` |
| 501 | 501 | |
| 502 | -Artifacts uploaded by older Diffinery runner versions appear on the run page but not in these endpoints. | |
| 502 | +Artifacts uploaded by older Diffinery runner versions are in these endpoints too, as `.tar.gz` downloads. | |
| 503 | 503 | |
| 504 | 504 | ## The runtime services |
| 505 | 505 |
modifiedapps/diffinery/docs/reference/rest-api.md+1−1View file
| @@ -367,7 +367,7 @@ | ||
| 367 | 367 | | `GET /repos/{owner}/{repo}/issues` and `/pulls` | 30 | Also sends `x-total-count` with the number of matching items. | |
| 368 | 368 | | `GET /repos/{owner}/{repo}/actions/runs` | 25 | `total_count` in the body. | |
| 369 | 369 | | `GET /repos/{owner}/{repo}/actions/workflows/{id}/runs` | 30 | `total_count` in the body. No `Link` header: page with `page` until you have `total_count` runs. | |
| 370 | -| `GET .../actions/artifacts`, `.../actions/runs/{id}/artifacts`, `.../actions/caches` | 30 | `total_count` in the body. No `Link` header. | | |
| 370 | +| `GET .../actions/artifacts`, `.../actions/runs/{id}/artifacts`, `.../actions/caches` | 30 | `total_count` in the body, and a `Link` header. | | |
| 371 | 371 | | `GET /repos/{owner}/{repo}/compare/{base}...{head}` (its `commits`), `GET .../pulls/{n}/commits` | 100 | At most 250 commits in total, as on GitHub. | |
| 372 | 372 | | `GET .../git/refs`, `.../git/matching-refs/{ref}` | 100 | | |
| 373 | 373 | | `GET .../commits/{ref}/status` (its `statuses`) | 100 | | |
modifiedapps/diffinery/docs/security/audit-log.md+3−3View file
| @@ -104,9 +104,9 @@ | ||
| 104 | 104 | | `repo.secret.set`, `repo.secret.delete` | An Actions secret is saved or deleted on **Secrets and variables**, or with `PUT`/`DELETE /api/v3/repos/{owner}/{repo}/actions/secrets/{name}` | `name` (never the value) | |
| 105 | 105 | | `repo.variable.set`, `repo.variable.delete` | An Actions variable is saved or deleted on **Secrets and variables**, or created, updated, renamed or deleted through `/api/v3/repos/{owner}/{repo}/actions/variables` | `name`, and `renamed_from` when a `PATCH` renamed it | |
| 106 | 106 | | `repo.webhook.create`, `repo.webhook.delete` | A webhook is added or deleted on **Webhooks**, or with `POST /api/v3/repos/{owner}/{repo}/hooks` or `DELETE /api/v3/repos/{owner}/{repo}/hooks/{id}` | Web: `url` and `events`, or `id`. API: `id` and `url`, or `id` | |
| 107 | -| `repo.actions_workflow_settings` | An admin changes the repository's workflow permissions on the **Actions** settings tab or with `PUT /api/v3/repos/{owner}/{repo}/actions/permissions/workflow` (see [Workflow permissions](/docs/actions/workflow-permissions)) | the new settings: `defaultPermissions` (`read` or `write`) and `canApprovePullRequests` | | |
| 108 | -| `actions.cache.delete` | Actions caches are deleted with `DELETE /api/v3/repos/{owner}/{repo}/actions/caches?key=...` or `DELETE /api/v3/repos/{owner}/{repo}/actions/caches/{id}` | `key`, `ids` | | |
| 109 | -| `actions.artifact.delete` | A workflow artifact is deleted with `DELETE /api/v3/repos/{owner}/{repo}/actions/artifacts/{id}` | `id`, `name` | | |
| 107 | +| `repo.actions_workflow_settings` | An admin changes the repository's workflow permissions on the **Actions** settings tab or with `PUT /api/v3/repos/{owner}/{repo}/actions/permissions/workflow` (see [Workflow permissions](/docs/actions/workflow-permissions)) | the new settings: `defaultPermissions` (`read` or `write`) and `canApprovePullRequests`, plus `via: "api"` when the change came through the API | | |
| 108 | +| `actions.cache.delete` | Actions caches are deleted with `DELETE /api/v3/repos/{owner}/{repo}/actions/caches?key=...` or `DELETE /api/v3/repos/{owner}/{repo}/actions/caches/{id}` | `key`, `ids`, `via: "api"` | | |
| 109 | +| `actions.artifact.delete` | A workflow artifact is deleted with `DELETE /api/v3/repos/{owner}/{repo}/actions/artifacts/{id}` | `id`, `name`, `via: "api"` | | |
| 110 | 110 | |
| 111 | 111 | ### Environments |
| 112 | 112 |
modifiedapps/diffinery/docs/self-hosting/architecture.md+3−3View file
| @@ -177,7 +177,7 @@ | ||
| 177 | 177 | |
| 178 | 178 | The job spec gives the agent an `ACTIONS_RUNTIME_TOKEN` and these URLs, and the agent passes them to JavaScript and Docker actions and to its built-in cache and artifact steps, not to `run:` steps. The token is an HMAC-signed JWT for one job, with a key derived from `MASTER_KEY`. It is accepted only while its job is in progress and until 30 minutes after the job's timeout, and it can only read caches of the job's own branch, its base branch and the default branch. Without `MASTER_KEY`, jobs get no token: the built-in cache step is skipped with a warning and the built-in artifact steps fail. |
| 179 | 179 | |
| 180 | -The Durable Object decides what each request may read or write and keeps the records (`rt_caches` and `rt_artifacts`). It applies the 10 GB cache budget per repository and the artifact quota (`ARTIFACT_QUOTA_BYTES`), evicts caches and expires artifacts. Older runner agents use their own cache and artifact endpoints under `/runner/jobs/<id>/...`, recorded in the `caches` and `artifacts` tables. Limits are listed in [Caches and artifacts](/docs/reference/limits#caches-and-artifacts). | |
| 180 | +The Durable Object decides what each request may read or write and keeps the records (`rt_caches` and `rt_artifacts`). It applies the 10 GB cache budget per repository and the artifact quota (`ARTIFACT_QUOTA_BYTES`), evicts caches and expires artifacts. Older runner agents use their own cache and artifact endpoints under `/runner/jobs/<id>/...`. Their artifacts are recorded in `rt_artifacts` (marked `legacy`, a `.tar.gz` at the older key) so the REST API, the quota and the 90-day expiry cover them. Their caches stay in the `caches` table, with their own 10 GB budget and the same 7-day idle eviction. Limits are listed in [Caches and artifacts](/docs/reference/limits#caches-and-artifacts). | |
| 181 | 181 | |
| 182 | 182 | ## Cron trigger |
| 183 | 183 | |
| @@ -301,8 +301,8 @@ | ||
| 301 | 301 | | `ref_actors` | Who last created or moved each branch and tag, and whether that was a person or an agent. | |
| 302 | 302 | | `runs`, `jobs` | Workflow runs and their jobs: event, refs, SHAs, status, conclusion, whether the run's code came from an agent, matrix, outputs, steps, timeout, `continue-on-error`, concurrency group, labels. | |
| 303 | 303 | | `logs` | Log lines of running jobs (moved to R2 when the job completes). | |
| 304 | -| `rt_caches`, `rt_artifacts` | Caches and artifacts from the cache and artifact services: key, version and branch of each cache, name, size, retention and expiry of each artifact, and uploads in progress. The contents are in R2. | | |
| 305 | -| `caches`, `artifacts` | Caches and artifacts saved by older runner agents; the archives are in R2. | | |
| 304 | +| `rt_caches`, `rt_artifacts` | Caches and artifacts from the cache and artifact services: key, version and branch of each cache, name, size, retention and expiry of each artifact, and uploads in progress. Artifacts from older runner agents are here too, marked `legacy`. The contents are in R2. | | |
| 305 | +| `caches` | Caches saved by older runner agents; the archives are in R2. (The older `artifacts` table is emptied into `rt_artifacts` when the repository's schema is migrated.) | | |
| 306 | 306 | | `job_grants` | The role and effective permissions of each job's token. | |
| 307 | 307 | | `merge_queue` | Queued pull requests and their merge groups. | |
| 308 | 308 | | `sandboxes` | Agent sandboxes, who created them and their status. | |