| 1. Crawl | Discover allowed pages from URLs and sitemaps. | Expected URLs are present; excluded and private paths are absent. |
| 2. Parse | Extract headings, prose, lists, tables, code, canonical URLs, and metadata. | Navigation noise is removed without dropping commands or version labels. |
| 3. Chunk | Split content into coherent passages that retain page and section identity. | Each passage is understandable alone and preserves prerequisites. |
| 4. Embed | Represent passages for semantic matching and store source metadata. | Every vector maps to one current, permitted source passage. |
| 5. Retrieve | Rank a small set of passages against the visitor question. | Recall@k tests put the gold passage in the context set. |
| 6. Prompt | Combine the question, passages, source metadata, and fallback rules. | Instructions cannot expand permissions or override fallback rules. |
| 7. Answer | Generate only supported details or decline when evidence is insufficient. | Material claims follow the context; missing evidence triggers fallback. |
| 8. Cite | Attach the canonical page and section supporting the response. | Links resolve, match the version, and directly support the claim. |