{"schemaVersion":"1.0","generatedAt":"2026-09-22","assertions":[{"id":"manifest-schema-version","request":"/data/manifest.json","expectedStatus":200,"assertion":"Response exposes public schema version 1.0."},{"id":"known-smell-record","request":"/data/smells/rain.json","expectedStatus":200,"assertion":"Response represents the canonical Rain public smell record."},{"id":"known-identifier","request":"/data/resolve.json?id=SB-0001","expectedStatus":200,"assertion":"Resolver returns canonical public identifier metadata."},{"id":"missing-identifier","request":"/data/resolve.json","expectedStatus":400,"expectedError":"missing_id"},{"id":"unknown-identifier","request":"/data/resolve.json?id=SB-9999","expectedStatus":404,"expectedError":"unknown_id"},{"id":"known-facet","request":"/data/categories/nature.json","expectedStatus":200,"assertion":"Response represents the Nature category facet."},{"id":"cors-schema-header","request":"/data/catalog.json","expectedStatus":200,"assertion":"Shared public-data response exposes wildcard read CORS and X-SmellBook-Schema-Version."}],"fixtureKeys":["catalog-rain","claim-petrichor","source-petrichor","identifier-rain","facet-nature","resolver-missing-id","resolver-unknown-id"],"execution":"Assertions are portable expectations for consumers and release testing. This JSON document does not execute network requests by itself.","boundary":"Conformance confirms public contract behavior only. It is not a security penetration test, uptime monitor or performance benchmark."}