ai_qc/CLAUDE_AXA.md
nickviljoen 59a0b2408c Restructure CLAUDE.md docs: slim project-wide root, complete per-client coverage
Splits the monolithic CLAUDE.md (962 lines) into a slim project-wide root (211 lines)
plus per-client files. Auto-loaded context drops ~88% per session.

Changes:
- CLAUDE.md slimmed to project-wide essentials (architecture, auth, deployment, branch
  strategy, deploy scripts, prod troubleshooting, pre-session checklist). Adds explicit
  session-start convention pointing to CLAUDE_<CLIENT>.md for client-specific work.
  Updates client roster table to all 10 clients with profile counts.
- New CLAUDE_AXA.md: document-mode pipeline + axa_policy_document profiles
- New CLAUDE_DIAGEO.md: key_visual + packaging profiles, check inventories
- New CLAUDE_UNILEVER.md: profiles + zero-score logic for face/new visibility
- New CLAUDE_HONDA.md, CLAUDE_RANK.md, CLAUDE_GENERAL.md: stubs (clients use generic
  profiles only — kept for completeness and future expansion)
- backend/CLAUDE.md: stale 932-line duplicate replaced with 18-line redirect to root
  + backend-specific quick pointers

Per-client files (CLAUDE_LOREAL.md, CLAUDE_AMAZON.md, CLAUDE_BOOTS.md,
CLAUDE_DOW_JONES.md) unchanged — already had the right content.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-06 12:29:16 +02:00

3.2 KiB

AXA Client Documentation

Referenced from main CLAUDE.md. Detailed AXA QC profile descriptions, document-mode pipeline notes, and status.

Overview

AXA QC is built around document-mode — multi-page PDF analysis (policy documents, forms, brochures), not single-asset image checks. The document-mode subsystem (backend/document_mode/) was built for AXA and is now reused by Boots Production Pack.

Status (2026-05-06): Phases 1, 3, 4, 5 merged to develop. Not yet shown to AXA — gated on AXA show-and-tell. The full plan and remaining phases are in backend/AXA_DOCUMENT_MODE_PLAN.md.

AXA Profiles

axa_policy_document — single-document mode (8 checks)

Multi-page policy document QC. mode: document, scopes vary per check.

Check What it does Weight
axa_font_inventory Per-page font extraction + brand-font compliance against AXA's approved font list 1.0
axa_phone_inventory Extracts phone numbers across pages, validates format and approved-list membership 1.0
axa_bold_words_definitions Bold-word inventory + definition cross-check (seed list at backend/document_mode/data/axa_bold_words_seed.json) 2.0
axa_page_numbering Page numbering format and continuity 1.0
axa_pdf_accessibility Tagged-PDF / accessibility checks 2.0
axa_print_preflight Print-preflight checks (color space, embedded fonts, image resolution) 1.0
axa_print_code Print code presence + format 1.0
axa_omg_versioning OMG version footer/header presence and consistency 1.0

axa_policy_document_diff — old-vs-new diff mode (1 check)

mode: document_diff — compares two PDFs (old vs new policy version) and reports structured changes.

Check What it does Weight
axa_pdf_diff Detects added/removed/modified pages, paragraphs, defined terms, phone numbers 1.0

Document-mode infrastructure

AXA's document-mode subsystem is the foundation for all multi-page PDF QC in this app:

  • document_mode/ingest.py — PDF ingestion, page rendering, span/font/color extraction via PyMuPDF
  • document_mode/dispatcher.py — Orchestrates per-check execution against pages, supports scopes: document / targeted / page_sample / page_pair / page_each
  • document_mode/checks.py, print_preflight_checks.py, accessibility_checks.py — AXA check implementations
  • document_mode/diff_engine.py, diff_report_writer.py — Old-vs-new diff handling
  • document_mode/result_writer.py — HTML report rendering with per-page sections

Boots Production Pack reuses this entire spine — so any infra changes here affect both clients.

Open items

  • AXA show-and-tell pending — feedback will drive the next round of tuning
  • Phase 2 (any further check expansion) deferred until after show-and-tell
  • Canonical AXA font list / approved phone list / OMG version reference data may need expansion as test PDFs surface gaps

Key files

  • backend/AXA_DOCUMENT_MODE_PLAN.md — full design plan and phase breakdown
  • backend/document_mode/ — pipeline implementation
  • backend/profiles/axa_policy_document.json, axa_policy_document_diff.json
  • backend/document_mode/data/axa_bold_words_seed.json — bold-word seed list