Marketing Backlog — Sessions 8N to 8Q
The sequenced plan for how the agent stack, under CMO delegated authority, builds Packs 2 · 3 · 4 for the CX-designer principal. One sprint per session, one pack per sprint, one review surface per pack. Everything traceable to Human Agency Scale §8.5 and to the Pack-1 close-out at /pack-1-review.
Sprint overview
- Audit: code-level scan of all top-level public HTML pages for JSON-LD, canonical, meta, OG, Twitter, and RG 96 / pre-DGR watchlist phrases.
- Fix set A: pre-DGR reframe on
/donate— 7 unqualified "tax-deductible" affirmations removed and reframed to "[DGR endorsement pending]". - Fix set B: JSON-LD (NGO + WebPage + FAQPage @graph) added to
/about·/donate·/who-we-help·/apply·/referrals. 5 pages × 3 blocks × 3 Q&A each = 15 new structured-data surfaces for AEO/GEO citability. - Fix set C (Finding 4 — discovered mid-audit): full-site grep found bald "[ACNC Registration Pending] · [DGR Endorsement Pending]" affirmations on 5 public-indexable pages beyond
/donate. 13 additional edits across/·/awareness·/apply·/about·/donatereframing to the consistent "[ACNC registration pending] · [DGR endorsement pending] · PBI endorsed" pattern.
- Merged inside 8N.
README.mdsession ledger extended with 8N row. golive-checklist.html"Marketing infrastructure" section updated with the audit + JSON-LD extension items.- Pack 1 review surface (
/pack-1-review) surfaces the 7 pending artefacts from Session 8M with clear reviewer chips for the 5-human roster.
- Six CC/PD-licensed hero images sourced via
image_search(Wikimedia Commons ×2, PxHere ×2, Freerange Stock ×2). No commercial-stock providers. - All six vision-validated via
understand_images: zero beneficiary faces, no identifiable patients on Room F, dignified tone confirmed on every image. - One candidate (Brisbane skyscrapers) rejected mid-flight for a visible AAMI logo; replaced with a brand-free Pixnio alternative.
- All six compressed (max 1600–1920 px wide, Q78–85, metadata stripped, progressive JPEG). Total kit ~2 MB across six pages.
- Wired non-destructively behind existing hero copy on
/room-a,/room-b,/room-c,/room-f,/rooms,/awarenessvia a.hero-mediaabsolute layer with an 86–94% opaque cream-to-white gradient overlay preserving WCAG contrast.
- Single
/reviewsurface built as a vanilla-JS SPA — no bundler dependency, no new worker code. - Filter chips:
pending_review(default) / approved / published / rejected / all — hits existingGET /api/agent-outputs?status=X. - Identity banner: reviewer select persists to
localStorage(lwd_review_reviewer_id) — all five HA4/HA5 humans in the drop-down. - Inline approve/reject on each card — approve hits
POST /api/agent-outputs/:id/approve, reject hitsPOST /api/agent-outputs/:id/rejectwith mandatory notes. Both endpoints already existed — zero worker changes needed. - Reviewers cannot approve their own outputs; the endpoint layer enforces
humans.active=1. HAS §8.5 discipline preserved.
- Single
/searchsurface + drop-in spotlight bar (⌘K / Ctrl+K) auto-injected on every intranet page — find anything across all 80 portal pages from anywhere behind the login. - Build-time index generator classifies each page into 5 doors: Public site · Intranet · Go-Live · Registrations (ASIC/ACNC/ATO/ACL) · Marketing. Rebuilds automatically on every deploy.
- Deterministic lexical scoring (title / h1 / description / body weighted) with snippet extraction — no LLM calls, no external service, no cost per query.
GET /api/search?q=X&door=Yendpoint (+130 lines insrc/index.tsx, worker grew 154.18 → 156.14 kB).- Compliance:
noindexpages get an amber "Internal" badge in results; search bar never appears on public pages so pre-DGR governance drafts stay behind the gate.
Sequencing rationale
The sprint order is intentional. Pack 2 (audit + fixes) goes first because it closes a real compliance risk on /donate and adds the AEO/GEO structured data without which the six-week campaign has weaker citability. Pack 3 (visuals) goes next because Packs 1 and 2 authored the copy for those visuals to sit alongside — commissioning images before the copy exists risks re-shoots. Pack 4 (unified review) closes last because the reviewer surface only has meaningful volume once Packs 1–3 have all pushed artefacts into the queue.
What "delegated" means in this sprint
Under the standing order the CMO agent has authority to (a) define the backlog, (b) sequence the sprints, (c) execute the mechanical work, and (d) commission agent runs for the value-add work. What it does not have authority to do: approve its own outputs. Every pack lands in pending_review. Under Standing Order #5 (Sprint 28.13), marketing content is approved by Laurence, Lisa, or Corrina (Human CMO · YourDigitalTeam · YDT). Deen approves legal-frame content; Carla approves CFO-frame content (financial claims / salary bands). This is the HAS §8.5 discipline enforced at the endpoint layer, with the correct scope-per-approver overlay.
Handover — what each pack drops in front of the CX designer
| Pack | Surface to review | What to check |
|---|---|---|
| Pack 1 (Session 8M, shipped) | /pack-1-review | Written ad copy for Google Ads · FB/IG · LinkedIn · Email lifecycle across all 7 rooms. Read one room card, approve, comment, or reject. Any of 5 humans can approve. |
| Pack 2 (Session 8N, shipped) | /website-audit-8n | The audit document itself — every fix cited before/after. 5 pages now have Schema.org markup. /donate no longer makes pre-DGR claims. Sign off the doc or open specific items. |
| Pack 3 (Session 8P, shipped) | /pack-3-review | 6 room-hero visuals wired into A/B/C/F/rooms-index/awareness pages. Source + license + prompt + rejected-candidate audit trail for each. One approve/reject per visual. |
| Pack 4 (Session 8Q, shipped) | /review | Unified queue of every pending_review artefact across Packs 1–3 with inline approve/comment/reject and reviewer identity capture. |