# aptu readiness-fix artifacts
The public artifact contract for `POST /v1/readiness-fix` ($0.05 USDC, Base + Solana). This page is the single published source for what the paid endpoint generates and how each artifact is templated; the artifact table below is drift-guarded against the exported `READINESS_FIX_ARTIFACTS` constant in `workers/x402/src/readiness-fix-templates.ts` by `src/lib/readiness-fix-drift.test.ts` (no codegen pipeline: CI fails if the doc and the implementation diverge).
## Scope
Given one domain, the endpoint re-probes it with the shared agent-readiness probe module (facts sink enabled, identical caps and hardening) and returns nine ready-to-host machine-surface artifacts templated deterministically from the probe facts. No LLM anywhere. Every artifact is fresh template output: origin content is never echoed, including for passing checks -- the buyer diffs the template against what they already host. This completes the scan -> fix -> verify loop: `POST /v1/agent-readiness` $0.05 -> this endpoint $0.05 -> `POST /v1/x402-preflight` $0.05.
## Response shape
```json
{
"domain": "example.com",
"rubricVersion": "aptu-readiness-1",
"summary": { "passes": 7, "fails": 3, "warns": 1, "indeterminate": 1 },
"artifacts": {
"llms.txt": {
"check": "llms_txt",
"pass": false,
"hint": "Publish an llms.txt index at https://<domain>/llms.txt.",
"content": "# example.com\n\n..."
}
}
}
```
`rubricVersion` matches the agent-readiness rubric version. `summary` is the probe run's rubric summary. `artifacts` is keyed by target path; each entry carries the generated `content` plus its motivating finding (`check`, `pass`, `hint`). Artifacts with no corresponding `READINESS_CHECKS` entry carry `"check": null, "pass": null, "hint": null`. Non-generatable checks (`origin_headers`, `json_ld`) are excluded from artifacts but still reported in the rubric `summary` with their existing hints.
## Artifact table
| Artifact | Check | Description |
| --- | --- | --- |
| `llms.txt` | `llms_txt` | llmstxt.org index: homepage title plus observed https URLs. |
| `llms-full.txt` | null | Full-content companion to llms.txt (no READINESS_CHECKS entry). |
| `robots.txt` | `robots_txt` | RFC 9309 baseline with AI-crawler allow rules and a Sitemap line. |
| `sitemap.xml` | `sitemap_xml` | sitemaps.org 0.9 urlset from observed URLs only; empty (with a comment) when nothing was fetched. |
| `agents.txt` | `agents_txt` | Agent notes skeleton with `<DOMAIN>`-style placeholders. |
| `skill.md` | `skill_md` | Agent skill description with frontmatter. |
| `.well-known/mcp.json` | `mcp_json` | MCP server card skeleton. |
| `.well-known/agent-card.json` | `a2a_agent_card` | A2A agent card skeleton. |
| `.well-known/x402` | `x402_manifest` | x402 discovery manifest skeleton (x402Version, kind, resources). |
Placeholders follow the repo's doc convention: angle-bracket uppercase tokens (`<DOMAIN>`, `<HOMEPAGE_TITLE>`) mark facts a probe could not derive. All served artifact content is ASCII-only.
## Determinism
Output is deterministic given identical probe results (which depend on the origin's state at fetch time). The endpoint never re-fetches beyond what `runProbes` already fetches: one shared homepage read plus the standard well-known surface set.