← Back to /admin

2026-09-18-blog-tags.md

audits/2026-09-18-blog-tags.md · 5,292 bytes

Audit — Blog Topic Tags — 2026-09-18

Target. 25 sampled tagged posts from blog/metadata.json (see audits/inputs-2026-09-18/blog-tags-sample.json).

Rubric. audits/PROMPTS.md#blog-tags.

Prior audit. audits/2026-04-24-blog-tags.md — 8/13 valid (62%).

Verdict. 12/25 fully honest (48%). Excluding the 5 data-issue archive/stub pages: 12/20 (60%). Flat vs prior; classifier ceiling still ~60%. S15 word-count gate is still not being enforced — 5 sub-200-word or category-archive pages carry tags.

Summary

Verdict Count
honest 12
under-tagged 3
mis-tagged 5
over-tagged 0
data-issue 5
unevaluable 0

WRONG tags (one line each)

MISSING tags

Top-3 drift patterns

1. Category-archive pages still carry tags (5/25 this sample). Wayback-scraped .md files whose body is a nav list of child posts get classified as if they were articles. Every tag on document-management, statistics, decolonisation, and both stubs is a surface-match on nav text. This is the Session 15 structural-gate miss the bead is tracking — the fix in blog-categorise.py (skip when word_count < 200 or title endswith 'Archives') either hasn't been applied to metadata.json or the field these tags live in isn't the one being regenerated. Five copies of topics exist across consumers (per 2026-09-18-pillar-convergence-plan.md) and this audit reads whichever one metadata.json serves.

2. identity-history and philosophy catch surface keywords. Same L29 trap as April: rome-and-the-road and medieval-latin both get identity-history from world/ancient-history content (pillar def restricts to personal history/Satoshi). medieval-latin also gets philosophy from being in the academics category. Prior audit called out this exact identity-history pattern on geographical-aspects-of-cybercrime — pattern is recurring.

3. Under-tagging on law-governance for court-doctrine posts. negotiable-instruments, satoshi-and-the-sophists, and institutional-madness all argue from legal doctrine (bona-fide-holder, AML, evidence) but only one of them carries law-governance. Classifier is conservative when the word "law" isn't the anchor.

S15 fix status on this sample

The Session 15 structural-gate fix in blog-categorise.py is partially holding:

Recommendation (do not action here — this is a report): confirm which producer wrote the topics values in the current metadata.json and re-run it through blog-categorise.py so the S15 structural gate is applied. Alternatively harmonise the five copies per 2026-09-18-pillar-convergence-plan.md.

Overall pass rate: 12/25 (48%) all-sample, 12/20 (60%) non-data-issue. Comparable to prior 8/13 (62%) — no drift, no improvement. Re-run quarterly.