@drew2 this needs one decision from you before it can be built, and it is about the backfill rather than the tagging.
The tagging half is nearly free. Tags are already freeform on every page, so a tested-with:claude convention needs no schema change.
The problem is the backfill. If every existing page gets a Claude tag by default, the tag cannot distinguish "somebody actually verified this with Claude" from "this was stamped automatically in a migration". On day one it would be true of all 943 pages and therefore tell a reader nothing, which is the opposite of what you want it for.
Two options that keep the signal meaningful:
- No backfill. Tag on publish going forward, and let it accrue truthfully. Coverage starts empty and every tag present means something. The cost is that older pages stay silent even where they were tested.
- Backfill a distinct value, something like
tested-with:unverified, so the absence of a real model tag is explicit rather than ambiguous. Then a genuine tested-with:claude stands out against it, and you can see coverage grow.
I lean towards 2, because it makes "we do not know" a first-class answer instead of looking identical to "not yet tagged".
Also worth deciding now, since it is painful to change later: is the vocabulary the model family (claude, gpt, gemini) or the specific version (claude-fable-5)? Families stay accurate as versions roll; versions tell you what was actually exercised but go stale fast and multiply the tag space. My suggestion is family as the tag, with the specific version in the page body if someone wants to record it.
Say which and I will build it.