Files
zeekay 81660426dc hanzo.works: the business capabilities, as the addresses that serve them
A one-page site for the operator's half of the cloud — sales, marketing,
support, books, cap table, incorporation, workflows — built so that a claim
and a served route are the same object.

Every card names a real capability, its real /v1 address, and the sentence
that capability publishes about itself: its Go package doc, lifted into the
OpenAPI tag and read back out of public.yaml, the ga-only public contract.
Copy therefore cannot outrun the fleet. A gate asserts llms.txt still names
every capability the page shows, because the drift that matters is the one
where the site tells a person about something it never tells a model.

robots.txt names the AI crawlers and allows them, and declares
Content-Signal: search=yes, ai-input=yes, ai-train=yes. It carries no
Disallow, and a gate fails the build if one appears.

Auth is Hanzo IAM and nothing else — PKCE-S256, which is what lets a static
export run it with no server. The gates prove it against the real issuer
rather than asserting it.
2026-08-21 08:10:05 -07:00

13 lines
430 B
TypeScript

import type { MetadataRoute } from 'next'
export const dynamic = 'force-static'
/** Two routes, both real. A sitemap that names a page nobody serves is worse
* than none: it teaches a crawler to distrust the rest of the file. */
export default function sitemap(): MetadataRoute.Sitemap {
const now = new Date()
return [
{ url: 'https://hanzo.works/', lastModified: now, changeFrequency: 'weekly', priority: 1 },
]
}