# Readiness

[get_guide_readiness](https://developers.sceniq.earth/reference/get_guide_readiness.md) is the checklist to run before handing a draft back. It answers four things: what blocks a publish, what deserves a look, the rows behind each finding, and the clicks only the creator can make.

## Blocking: the publish gates

`blocking` is exactly the check publishing enforces, so a guide with an empty `blocking` can go on sale. Archived spots never count.

| Code | Means |
|---|---|
| `agreement_outdated` | The creator has not accepted the current creator agreement. |
| `no_spots` | The guide has no live spot. |
| `missing_coordinates` | A live spot has no pin. |
| `missing_photos` | A live spot with photos turned on has no photo. |
| `no_price` | No one-time price is set. |

## Warnings

Warnings never block. Each has a code and a sentence; `checks` holds the rows behind it.

| Code | Means |
|---|---|
| `coordinate_outliers` | A spot sits unusually far from the others. Verify its pin. |
| `outside_region` | A spot falls outside the map region's box. |
| `spots_without_text` | A spot has neither a short nor a long description. |
| `photos_without_credit` | A photo has no credit. |
| `sales_page_incomplete` | The sales page draft is missing parts. |
| `no_region`, `no_thumbnail`, `no_store_tags`, `no_chapters` | A guide setting is missing. |
| `review_due` | A row is past its `reviewBy` date. |
| `stale_facts` | A dated fact ran out or has not been checked recently. |
| `link_problems` | A link is dead, parked, redirected or failing TLS. |
| `photos_far_from_pin` | A photo was taken more than 2 km from the pin. |
| `photos_before_change` | A photo was taken before a change at the spot. |
| `near_duplicate_photos` | Two photos of a spot look alike. |
| `places_far_from_spots` | A place sits far from every spot it serves. |
| `place_zone_differs` | A place is in another time zone than its spot. |
| `stated_distance_too_short` | A distance in the text is shorter than the straight line. |
| `search_map_links` | A place has a text-search map link and no pin. |
| `past_dates_in_text` | A date in the spot text has passed. |
| `best_months_mismatch` | The text names best months a month property leaves out. |
| `direction_mismatch` | A direction or distance in the text disagrees with the pins. |
| `best_light_outside_hours` | The best light falls outside the opening hours. |
| `pins_far_from_spot` | An extra pin sits more than 25 km from its spot. |

## The hand-off

`handoff.remaining` lists the clicks only the creator makes (Publish guide, Publish sales page) with their studio links. Plan for them from the start, and send the creator the `reviewUrl`: they review every spot and photo there.

## Facts that run out

[list_stale_notices](https://developers.sceniq.earth/reference/list_stale_notices.md) lists every dated fact that ran out or needs a new check, with the row and the field, so an agent can re-check each one against its source and update it.
