← notes

Testing a content corpus like code, so an unsourced fact fails the build

Aug 23, 2026

An independent guide to Pico Island that does two jobs and no others: rank in search, and get cited by answer engines. Everything that served neither came off.

The transferable idea is that the content corpus is tested like code. Markdown in content/pages/** syncs into a pages table via content:sync, and spec/content/pages_spec.rb treats that table as data under test. A key fact with no source URL fails bin/check, the same gate that runs RSpec and Brakeman. Editorial accuracy cannot quietly rot while the tests stay green. content:report says what is stale and unsourced; crawlers:report says who is crawling and who is citing, which is the only feedback loop available when part of the audience is machines.

A scope document is the map of what is on the site and what came off, and it wins where it disagrees with the original spec. The spec is now wider than the build, which is the normal end state of a spec and is usually left unsaid.

Built on One Shot, so auth and hardening arrived with the repo. The kit’s billing and mobile code is still in the tree, unrouted.