Thomas Cheesman

Case study · gpresidentialsociety.com

A housing society’s website

The public site of a volunteer-run housing nonprofit, which I have built and run on my own since 2023, at no cost to the society.

Stack
WordPress with a hand-coded Astra child theme · page content lives in the theme, not the editor
Status
Live
Hosted
Self-hosted on Hostinger · a push to main deploys
Since
2023 · rebuilt 2025
The ask

A board seat, and a site nobody was paid to run

The Grande Prairie Residential Society is a volunteer-run nonprofit providing barrier-free housing: 87 units before the Margaret Edgson Manor fire, with the rebuild under way and the final count not yet settled. I joined the board in June 2023, and the website is my donation to it.

“What we need the site to do: inform potential tenants how to apply, how to determine if they qualify, and if we are the right fit for them. We don’t have a physical office so this is our main interface with the community.”

The first version went up on WordPress.com in 2023. In 2025 I rebuilt it as a self-hosted site, because I wanted more freedom to experiment with the code.handoff-015, C-13

The standard

Written into the repo, for every agent that opens it

Accessibility and plain language are first-order requirements on this site, not decoration. The working rules live in one file at the top of the repo, and every AI agent reads it before it changes anything.AGENTS.md

Because content is in theme PHP, searching the WP page editor for on-page text finds nothing — look in `inc/*.php` here instead.

- **Treat every push as publishing.** Copy that is awaiting board or marketing approval, or that depends on a motion not yet declared carried, must NOT be pushed to `main`.

- Run `php -l` on every changed file first. A syntax error in `functions.php` white-screens the live site the moment it lands — there is no staging copy to catch it.
Three rules from AGENTS.md in the site’s repo, verbatim. Curated: the file has more.
What the AI got wrong

Two misses, both confident

  1. An audit of a site that no longer existed

    In March 2026 I had more than one AI tool audit the site. One gave it a failing score and listed what it lacked: a hero section, calls to action, a donate button. The live site had all three. The tool had reviewed an old copy of the site, or invented one.

    Kind of miss: plausible but invented · receipts-001, R-001
  2. “Safe to push,” three times

    In September 2026 the agent working on the site told me three times that pushing changes was safe, because the site had no automatic deployment and needed a manual step to go live. It wrote that manual step into the repo. There was no manual step: the host picks up every push within a minute or two.

    Kind of miss: drift across sessions · commit 953907a
How I caught it

By checking against the real thing

  1. Read it against the code

    Another audit had been given the theme’s code and told to reference it. Side by side, the first audit’s findings matched nothing on the live site, and I discarded it.

    Became the rule: an audit that does not cite the code does not count · receipts-001, R-001
  2. Asked why the site already looked updated

    The live pages already carried the change. The agent fetched them to confirm it, and the deploy notes were rewritten the same day to say a push is a publish. The wrong belief had been written into three separate notes, which is why it looked settled.

    Became the rule: a push is a publish; a claim repeated in three notes is still one claim · AGENTS.md, “Deploying”
The correction, the rule it became, and where the rule now lives.
The correctionThe standing ruleEnforced in
An audit described a site that no longer existed An audit that does not cite the code does not count The standard audit prompt
“No automatic deploy,” said three times Treat every push as publishing. Check deploy claims against the live site AGENTS.md · “Deploying”
What shipped

A live site the society does not pay for

The site is live at gpresidentialsociety.com, including the society’s Margaret Edgson Manor rebuild page.

The society's home page: a row of single-storey houses along a street, under the heading Accessible and Affordable Housing in Grande Prairie, with Apply Now and Volunteer buttons.
The home page. Applying is the first button.
The rebuild page: a four-storey apartment building under repair with a boom lift in front, under the heading Rebuilding Margaret Edgson Manor.
The Margaret Edgson Manor rebuild page.

The honest limits

Most of this site was built before I kept session records, so there are no handoffs from 2023 to 2025 and this page has two receipts, not more. The repo starts in April 2026, as a copy of the theme already running live.

Receipts

The files behind every claim above