Ship log · iter #121

Iteration 121 ship log

2026-05-15 · push mode, 60 min cadence, pricing-audit iter

On this pageWhat shipped (2 substantive ships) Ship 1: audit-pricing-content.py - new audit class (13th audit) Ship 2: /quality-report/ wired + invariant #21 The 13 audit suites at iter 121 Health hygiene (Op rule 5) Status snapshot Iter 121 throughput note Running queue (top 5 for iter 122) Cumulative iter 1-121

Date: 2026-05-15 (push mode, 60 min cadence, pricing-audit iter)

What shipped (2 substantive ships)

This iter built audit-pricing-content.py + wired into /quality-report/ as invariant #21. Result: 232/248 pricing pages clean, 16 in warn (legitimate quality issues surfaced).

Ship 1: audit-pricing-content.py - new audit class (13th audit)

Built audit-pricing-content.py (~135 lines). For each /factory/builds/<slug>/pricing/index.html, verifies:

Template-agnostic design: 4 different pricing layouts exist across the catalog (.tier newer, .card, .card.featured, .pricing-card older, plus bare custom for aiops-ai). Instead of coupling to template markers, the audit checks for semantic content (visible $-amounts, factory links). This means the audit survives any future template change.

Includes brand_brief_name helper (extended with title-compact / name-compact / AI-suffix-stripped variants).

Result on first run: 248 scanned -> 232 clean, 16 in warn state.

The 16 warn cases break down into two real quality classes:

These are not audit bugs - they are genuine product-page quality issues the audit is correctly surfacing. Wes-task: reconcile or accept.

Cron: every 30 min at :08, :38

Ship 2: /quality-report/ wired + invariant #21

Patched regen-quality-report.py with:

Live-check card count: 14 -> 15. Total content invariants: 20 -> 21.

The 13 audit suites at iter 121

AuditCadenceSnapshotInvariant #
audit-fakeproof.pydaily 4:30amaudit-fakeproof.json1-10
audit-adoptability-drift.pyevery 15 minadoptability-drift.json11
audit-page-identity.pyevery 30 minpage-identity.json12
audit-hero-polish-drift.pyevery 30 minhero-polish-drift.json13
audit-og-coverage.pyevery 30 minog-coverage.json14
audit-teaser-quality.pyevery 30 minteaser-quality.json15
audit-case-studies-quality.pyevery 30 mincase-studies-quality.json16
audit-faq-quality.pyevery 30 minfaq-quality.json17
audit-unlock-content.pyevery 30 minunlock-content-quality.json18
audit-adopt-content.pyevery 30 minadopt-content-quality.json19
audit-feedback-content.pyevery 30 minfeedback-content-quality.json20
audit-pricing-content.pyevery 30 minpricing-content-quality.json21
em-dash-sweep.pyevery 15 min(log only)1-2

Health hygiene (Op rule 5)

Status snapshot

Iter 121 throughput note

2 substantive ships at 60-min cadence. The audit suite has now reached maturity threshold: it catches real issues rather than false positives. The 16 pricing-page warnings are exactly the kind of drift a buyer-touching audit should surface.

Running queue (top 5 for iter 122)

  1. Wes-task: 16 pricing-page issues (8 too-few-prices, 8 title-drift) - reconcile or accept
  2. Wes-task: 8 case-studies fabrications - still the only other warn state
  3. Audit /factory/builds/<slug>/vs/ content quality - 245 vs-comparison pages (only page-identity covers)
  4. Audit /factory/builds/<slug>/how-it-works/ content quality - explainer pages
  5. Audit /factory/builds/<slug>/sales-kit/ content quality - outreach assets

Cumulative iter 1-121

The pricing audit's template-agnostic design (semantic-content checks over template markers) is a pattern worth keeping. As the factory evolves and templates change, semantic audits stay valid. Audit infrastructure is now genuinely robust against future template drift.

← PreviousIter #120 Next →Iter #122