056c47581f
Ships the second dashboard surface — a Pattern Library + Preview Theatre — that presents the 4-section PDP pilot batch back to Umar, compliance, and the board in an editorial format. Adds the full data layer that drives it: 5 source-backed per-SKU drafts at QA 100/100, 15 competitor PDP semantic extracts, PubMed evidence packs, EFSA claims library extension, JV brand voice guide, hand-curated product FAQs, and the Matrixify-ready CSV exports for Lewis. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
169 lines
6.6 KiB
JSON
169 lines
6.6 KiB
JSON
{
|
|
"generatedAt": "2026-05-20T02:31:38.547Z",
|
|
"ready": false,
|
|
"objective": "jv-dashboard/CONTENT_POPULATION_PLAN.md",
|
|
"headline": "Completion unproven: 5/10 requirement areas still blocked; 383 evidence items remain.",
|
|
"counts": {
|
|
"requirements": 10,
|
|
"proven": 5,
|
|
"blocked": 5,
|
|
"exportBlockers": 374,
|
|
"burndownRemaining": 383,
|
|
"verificationPassing": 8,
|
|
"verificationChecks": 17
|
|
},
|
|
"blockerSources": {
|
|
"verificationBlocked": [
|
|
{
|
|
"name": "clinical_blank_decisions",
|
|
"command": "bun run compliance:blank-decisions",
|
|
"stdout": "Clinical blank decisions: 184\nValid blank approvals: 0"
|
|
},
|
|
{
|
|
"name": "product_approval_decisions",
|
|
"command": "bun run approval:decisions",
|
|
"stdout": "Product approval decisions: 190\nValid approvals: 0\nApplied approvals: 0"
|
|
},
|
|
{
|
|
"name": "product_approval_review_packet",
|
|
"command": "bun run approval:review-packet",
|
|
"stdout": "Product approval review packet ready: false\nBlocked products: 190"
|
|
},
|
|
{
|
|
"name": "handoff_actions",
|
|
"command": "bun run handoff:actions",
|
|
"stdout": "Handoff action plan ready: false\nActions: 6\nP0 actions: 0\nBlocked actions: 2"
|
|
},
|
|
{
|
|
"name": "executive_decision_brief",
|
|
"command": "bun run handoff:decision-brief",
|
|
"stdout": "Executive decision brief ready: false\nDecisions: 5\nExport blockers: 374"
|
|
},
|
|
{
|
|
"name": "staging_handoff_packet",
|
|
"command": "bun run staging:handoff-packet",
|
|
"stdout": "Staging handoff packet ready: false\nImport files present: 7/7\nPDP spot-check queue: 10"
|
|
},
|
|
{
|
|
"name": "staging_evidence",
|
|
"command": "bun run staging:evidence",
|
|
"stdout": "Staging evidence ready: false\nImport logs: 0\nPDP checks: 0\nBlocking gates: 5"
|
|
},
|
|
{
|
|
"name": "staging_checklist",
|
|
"command": "bun run staging:checklist",
|
|
"stdout": "Staging checklist ready: false\nChecks: 18\nBlocking checks: 8"
|
|
},
|
|
{
|
|
"name": "content_audit",
|
|
"command": "bun run audit:content",
|
|
"stdout": "Content population ready: false\nGates passing: 10/12\nBlocked gates: 2"
|
|
}
|
|
],
|
|
"readinessBlocked": [
|
|
{
|
|
"name": "handoff_ready",
|
|
"blocker": "Handoff manifest still has blockers.",
|
|
"evidence": {
|
|
"blockers": 374,
|
|
"blockedSkus": 190
|
|
}
|
|
},
|
|
{
|
|
"name": "human_approval_complete",
|
|
"blocker": "Approval lanes are not complete.",
|
|
"evidence": {
|
|
"content": {
|
|
"needs_intelligence": 186,
|
|
"needs_human_review": 3,
|
|
"draft": 1
|
|
},
|
|
"compliance": {
|
|
"blocked": 184,
|
|
"needs_human_compliance_approval": 6
|
|
},
|
|
"images": {
|
|
"needed": 189,
|
|
"ready": 1
|
|
},
|
|
"export": {
|
|
"not_ready": 190
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"requirements": [
|
|
{
|
|
"Requirement": "Full catalogue content workspace exists",
|
|
"Status": "proven",
|
|
"EvidenceSource": "content_population_exports/content_population_readiness.json",
|
|
"Proof": "190 product records / 190 workflow records",
|
|
"RemainingWork": ""
|
|
},
|
|
{
|
|
"Requirement": "Matrixify/export packet exists",
|
|
"Status": "proven",
|
|
"EvidenceSource": "content_population_exports/delivery_index.json",
|
|
"Proof": "179/179 packet files present",
|
|
"RemainingWork": ""
|
|
},
|
|
{
|
|
"Requirement": "Asset references/files are present",
|
|
"Status": "proven",
|
|
"EvidenceSource": "content_population_exports/content_population_readiness.json / asset_manifest_validation.*",
|
|
"Proof": "0 missing asset uploads",
|
|
"RemainingWork": "Human image approval/final creative still separate from file presence."
|
|
},
|
|
{
|
|
"Requirement": "Source drops and claims library validate",
|
|
"Status": "proven",
|
|
"EvidenceSource": "source_drop_validation.* / claims_library_validation.*",
|
|
"Proof": "source issues 0; claims issues 0",
|
|
"RemainingWork": "Full quote-level/human-approved evidence remains separate for non-pilot drafted queues."
|
|
},
|
|
{
|
|
"Requirement": "Compliance clinical claim/blank decisions complete",
|
|
"Status": "blocked",
|
|
"EvidenceSource": "content_population_exports/clinical_blank_decision_template.json",
|
|
"Proof": "0/184 approved blank decisions",
|
|
"RemainingWork": "Compliance must fill approved_blank rows or provide source-backed claim refs; no generated clinical claims."
|
|
},
|
|
{
|
|
"Requirement": "Product approvals complete",
|
|
"Status": "blocked",
|
|
"EvidenceSource": "content_population_exports/product_approval_decision_gate.json",
|
|
"Proof": "0/190 valid approvals",
|
|
"RemainingWork": "Umar/JV reviewer must approve all products with evidence and acknowledgements."
|
|
},
|
|
{
|
|
"Requirement": "DataForSEO credentials/account verified without guessing",
|
|
"Status": "proven",
|
|
"EvidenceSource": "content_population_exports/dataforseo_live_connection.json",
|
|
"Proof": "account 20000 Ok.; credentialPrinted=false",
|
|
"RemainingWork": "Keep using pi-fresh-foundation .env; do not print or duplicate secrets."
|
|
},
|
|
{
|
|
"Requirement": "DataForSEO Reviews pilot safe to run",
|
|
"Status": "blocked",
|
|
"EvidenceSource": "dataforseo_task_preflight.json / source_acquisition_spend_gate.json / dataforseo_reviews_docs_status.json / dataforseo_support_response_gate.json",
|
|
"Proof": "preflight 5/10; spend DataForSEO=false; docs unavailable=true; support ready=false",
|
|
"RemainingWork": "Do not run paid Reviews task_post until provider availability/support response and spend approval gates pass."
|
|
},
|
|
{
|
|
"Requirement": "Lewis/Euan staging import evidence complete",
|
|
"Status": "blocked",
|
|
"EvidenceSource": "content_population_exports/staging_evidence_validation.json",
|
|
"Proof": "0/5 staging gates passing; import logs 0; PDP checks 0",
|
|
"RemainingWork": "Record clean Matrixify import logs, at least 5 passing PDP checks, and cutover approval."
|
|
},
|
|
{
|
|
"Requirement": "Master handoff verifier passes",
|
|
"Status": "blocked",
|
|
"EvidenceSource": "content_population_exports/handoff_verification_run.json",
|
|
"Proof": "8/17 checks passing; 9 blocked",
|
|
"RemainingWork": "clinical_blank_decisions | product_approval_decisions | product_approval_review_packet | handoff_actions | executive_decision_brief | staging_handoff_packet | staging_evidence | staging_checklist | content_audit"
|
|
}
|
|
]
|
|
}
|