diff --git a/docs/ASSAY_PREREGISTRATION.md b/docs/ASSAY_PREREGISTRATION.md index b4800715..7dab38d9 100644 --- a/docs/ASSAY_PREREGISTRATION.md +++ b/docs/ASSAY_PREREGISTRATION.md @@ -141,8 +141,12 @@ TI = HC50 (µg/mL) / MIC (µg/mL) > > Families with known model limitations (score may underestimate actual stability): > - SEED-003 (11 AA, <15 AA calibration edge; model scores 0.35–0.38 likely underestimate actual t½) +> - SEED-006 (14 AA; **ALL 4 pilot variants contain Met at position 9** inherited from mastoparan-X +> template INWKGIAAMAKKLL — Nle (norleucine) substitution at position 9 ("M9Nle") REQUIRED +> on synthesis order to eliminate oxidation risk; HPLC purity mandatory at receipt; store +> lyophilized at −80 °C under inert atmosphere) > - SEED-007 (11 AA; same length as SEED-003; Met at position 6 in all 4 pilot variants — HPLC -> purity mandatory at receipt; Nle substitution preferred for oxidation-resistant synthesis) +> purity mandatory at receipt; **Nle substitution REQUIRED** for oxidation-resistant synthesis) > - SEED-008 (13 AA, model calibrated for 18–30 AA; Trp steric effect expected to improve t½). > **ALL 4 SEED-008 pilots carry F-Pro N-terminus: Nα-acetylation is REQUIRED on the synthesis > order** to prevent diketopiperazine (DKP) cyclization (cyclo(F-Pro), MW≈244 Da, t½ hours–days diff --git a/docs/EXPERT_REVIEW_PACK.md b/docs/EXPERT_REVIEW_PACK.md index f346f5b0..ad7b5a1d 100644 --- a/docs/EXPERT_REVIEW_PACK.md +++ b/docs/EXPERT_REVIEW_PACK.md @@ -276,9 +276,12 @@ The expert reviewer must be aware of these limitations: | SEED-008 high disagreement (0.41–0.44) | Boman index penalises Trp; activity_likeness more appropriate for Trp-rich sequences | | Serum stability model calibrated for 18–30 AA | SEED-003 (11 AA), SEED-007 (11 AA), and SEED-008 (13 AA) scores may underestimate actual stability (short-peptide steric/flexibility effects) | | Pro-rich serum stability not in model | SEED-009 model scores (0.572) expected to underestimate actual stability; Pro-X bond resistance is mechanistic | +| SEED-006 Met oxidation (ALL 4 pilot variants) | Met at position 9 in all SEED-006 pilot sequences (inherited from mastoparan-X template INWKGIAA**M**AKKLL); Met9→MetO disrupts helix hydrophobic face packing, typically 5–20× MIC loss; **Nle (norleucine) substitution at position 9 REQUIRED** in synthesis order ("M9Nle"); Store lyophilized at −80°C under inert atmosphere; HPLC purity mandatory at receipt — WET_LAB_HANDOFF.md SEED-006 synthesis note updated to reflect this; previously documented as "No Met" in error | | SEED-007 Met oxidation (all 4 pilot variants) | Met at position 6 in all SEED-007 pilot sequences; oxidised Met loses amphipathicity; Nle substitution or inert atmosphere storage required | | SEED-009_VAR_033 Met oxidation | VAR_033 (RRLPRPGYMPRP) has Met at position 9 — unique among SEED-009 variants; carries both MET×1 and PROLINE_RICH_INTRACELLULAR QC flags simultaneously; Nle substitution + HPLC purity mandatory at receipt | +| N-terminal X-Pro diketopiperazine (DKP_RISK) | N-terminal Phe-Pro in all 4 SEED-008 pilot sequences cyclises to cyclo(F-Pro) (DKP, MW≈244 Da) at physiological pH (t½ hours–days at 37°C); truncates peptide at position 3, likely abolishing activity; **Nα-acetylation REQUIRED** on synthesis order (zero extra cost); confirm identity by MS at receipt — MW−244 Da satellite >5% = reject batch (Smyth et al. 2000 J Peptide Res 55:105) | | N-terminal Q pyroglutamate cyclization (PYROGLUTAMATE_RISK) | N-terminal Gln (Q) spontaneously cyclises to pyroglutamic acid (pGlu) at pH 7.4 (t½ hours–days, 5–50× MIC loss); none of the 20 pilot candidates are affected (no Q-terminal sequences); E1 excluded (acid-catalysed at pH 2–4, negligible at physiological pH); Nα-acetylation is the zero-cost mitigation | +| Short-peptide serum stability (SHORT_PEPTIDE flag) | 10 pilot candidates are < 14 AA (SEED-007: 11 AA ×4, SEED-003: 11 AA ×2, SEED-009: 12 AA ×4); serum stability model calibrated for 18–30 AA — scores for short peptides may significantly underestimate actual t½; measure empirically (50% human serum, 37°C, 0/30/60/120 min HPLC time course) rather than relying on model; do not exclude candidates on serum score alone if <14 AA | | Novelty vs. 45 seeds only (pipeline) | Broad check vs 72-AMP DB done (PR #86); APD3 BLASTp still recommended before publication | | Conservative generation only | Near-seed variants; genuinely novel families not explored by de novo generation | | No structural prediction | No secondary structure, membrane interaction, or 3D modeling | diff --git a/docs/WET_LAB_HANDOFF.md b/docs/WET_LAB_HANDOFF.md index d1dbeadd..30fdf59b 100644 --- a/docs/WET_LAB_HANDOFF.md +++ b/docs/WET_LAB_HANDOFF.md @@ -149,7 +149,14 @@ It also activates G-proteins and has calmodulin-binding properties. - Hemolytic risk: moderate (assay at MIC/3 per QC guidance) **Synthesis guidance:** -- No Cys, no Met → standard Fmoc SPPS, standard storage +- **⚠️ ALL 4 SEED-006 pilots contain Met at position 9** (inherited from mastoparan-X template + INWKGIAA**M**AKKLL): INWKPIAAMAKKLV, IQWKGIAAMAKRLL, INWRGIAAMAKKFL, INFKGIALMAKKLL. + Met oxidation (Met→MetO) at position 9 replaces the hydrophobic side chain with a sulfinyl + group, disrupts helix hydrophobic face packing, and typically causes 5–20× MIC loss. + **Request Nle (norleucine) substitution at position 9** in the synthesis order — zero extra + cost at most SPPS suppliers. Specify "M9Nle" (norleucine at position 9). Store lyophilized + at −80°C under inert atmosphere. Mandatory HPLC purity check at receipt. +- No Cys → standard Fmoc SPPS otherwise - **C-terminal amidation strongly recommended**: SEED-006_VAR_xxx candidates end in LL (hydrophobic), neutral C-terminus. Request `CONH₂` to add +0.7 charge and improve serum stability - SEED-006 variants have 2–3 interior Lys → serum t½ estimated ~2–4 h diff --git a/tests/test_presynth_qc.py b/tests/test_presynth_qc.py index ccfc676f..c4790929 100644 --- a/tests/test_presynth_qc.py +++ b/tests/test_presynth_qc.py @@ -106,6 +106,23 @@ def test_met_flag_in_flags_list(self): assert len(met_flags) == 1 assert "Nle" in met_flags[0], "Met flag must recommend Nle substitution (regression guard for PR #102)" + def test_seed006_all_pilots_have_met_at_position9(self): + # ALL 4 SEED-006 pilot variants inherit Met at position 9 from mastoparan-X. + # Regression guard for WET_LAB_HANDOFF correction in PR #111 (previously "No Met"). + seed006_pilots = [ + ("SEED-006_VAR_059", "INWKPIAAMAKKLV"), + ("SEED-006_VAR_071", "IQWKGIAAMAKRLL"), + ("SEED-006_VAR_062", "INWRGIAAMAKKFL"), + ("SEED-006_VAR_006", "INFKGIALMAKKLL"), + ] + for cid, seq in seed006_pilots: + assert seq[8] == "M", f"{cid}: Met expected at position 9 (index 8), found '{seq[8]}'" + qc = check_sequence(cid, seq) + assert qc.methionine_count == 1, f"{cid}: expected Met×1, got {qc.methionine_count}" + flag_texts = " ".join(qc.flags) + assert "MET" in flag_texts, f"{cid}: MET flag missing (synthesis guidance error)" + assert "Nle" in flag_texts, f"{cid}: Nle recommendation missing for Met oxidation" + # --------------------------------------------------------------------------- # Pyroglutamate risk