[Artifacts] Populate structural_data (PDB/UniProt/AlphaFold) for top 15 demo targets to activate Mol* viewer
ID: f3f89c06-7ff
Priority: 88
Type: one_shot
Status: open
Goal
Populate structural_data JSON in the targets table for the top 15 demo targets with known UniProt IDs, PDB structure IDs, and AlphaFold availability flags. This activates the Mol* 3D protein viewer (added in task:08d47950) which renders when pdb_ids is non-empty or alphafold=True + uniprot_id is present.
Acceptance Criteria
☐ Top 15 demo targets have structural_data populated with UniProt IDs
☐ Targets with PDB structures have pdb_ids list and pdb_available=True
☐ AlphaFold flag set to True for all human proteins (comprehensive coverage)
☐ At least 5 target pages show the embedded Mol* viewer with working PDB structures
☐ Work log updated with timestamped entry
Known UniProt/PDB Mappings
| Gene | Target ID | UniProt | Key PDB IDs |
|---|
| TREM2 | target-trem2 | Q9NZC2 | 5ELI, 5UD7, 5UTT |
| APOE | target-apoe | P02649 | 1GS9, 1NFN, 2KC3 |
| CYP46A1 | target-cyp46a1 | Q9Y6A2 | 2Q9F, 3MDM, 3MDL |
| HDAC3 | target-hdac3 | O15379 | 4A69, 4QX2, 4QXO |
| BRD4 | target-brd4 | O60885 | 2OSS, 2YEL, 3MUK |
| SIRT1 | target-sirt1 | Q96EB6 | 4KXQ, 5BTR, 4IG9 |
| TARDBP | target-tardbp | Q13148 | 2N3X, 2KXN, 4IUF |
| TET2 | target-tet2 | Q6N021 | 4NM6, 5D9Y |
| PRKAA1 | target-prkaa1 | Q13131 | 4RER, 2LTW |
| ACSL4 | target-acsl4 | O60488 | 4WD1 |
Implementation
Write enrich_target_structures.py that:
Uses a hard-coded dict of gene → {uniprot_id, pdb_ids, pdb_count, alphafold, cryo_em}
Updates structural_data column in targets table via sqlite3
Also sets pdb_available=True for targets with pdb_ids
Runs as a one-off migrationWork Log
2026-04-04 — Spec created
- Task created after verifying all target pages now return 200 (clinical_phase bug fixed)
- Protein viewer code is deployed but no targets have structural_data populated
- This task will activate the viewer for key demo targets