TL;DR. enveda-180 is Enveda's own open library (Zenodo 10.5281/zenodo.20436851, v1.0.0, 29 May 2026): 1,158,293 curated MS/MS spectra of 184,330 compounds from Enamine's 200,000-compound Hit Locator Library (HLL-200), run pooled on a Bruker timsTOF Pro 2 in PASEF mode at nominal 20/40/60 eV, 14 adducts, 77 % ESI+. It is a near-perfect instrument proxy for the hidden test and a poor chemistry proxy (drug-like combinatorial amides/triazoles, 36 % halogenated in the decoy test, ~0.03–0.2 % overlap with COCONUT). enveda-np-examples (1,184 timsTOF spectra, 250–251 natural-product structures, essentially all of which also appear in other train libraries) is the only train slice that mimics the hidden test, but it is tiny and its COCONUT-overlap figure swings from "8 of 250" to "99.6 %" across write-ups depending on how structures were keyed — nobody has yet computed any of these overlaps with the competition's own RDKit-2026.03.3 tautomer canonicalisation, so every reported overlap number should be recomputed before it is trusted.
1. What exactly is enveda-180?
Facts below come from the Zenodo record and the enveda/enveda-180 GitHub README unless marked; the ChemRxiv preprint the README cites (10.26434/chemrxiv.15004319/v1, Krettler et al. 2026) could not be resolved by DOI through ChemRxiv (HTTP 403) or Europe PMC (zero hits), so its content is unverified and I rely on the Zenodo description.
| Item | Value | Source |
|---|---|---|
| Full title | "Enveda-180: generation of a large open multimodal MS/MS and ion mobility spectral library for drug-like small molecules" | Zenodo record; GitHub README |
| Authors | Krettler C.A., Kind T., DeBloois E., Killian M., Prince J., Taylor J., Gadiya Y., Domingo-Fernández D., Allen A., Colluru V., Healey D. | Zenodo |
| Release | v1.0.0, 29 May 2026; CC BY 4.0; 8 files, 8.9 GB (jsonl/mgf/msp/parquet, full + "filtered" with fragment peaks < 1 % relative intensity removed) | Zenodo |
| Compound source | "high-throughput, pooled LC-MS/MS profiling of the Enamine HLL-200 hit-locator collection" | Zenodo description |
| HLL-200 | Enamine Hit Locator Library, 200,000 compounds ("largest diversity library with high MedChem tractability"; siblings HLL-100/300/460) | enamine.net diversity-libraries page |
| Compounds with curated spectra | 184,330 (= 92.2 % of 200,000; the loss is not explained in the record) | Zenodo |
| Spectra | 1,158,293 curated; median 6 spectra/compound; median 138 peaks per spectrum (min 4) | Zenodo |
| Why "180" | Not explained anywhere I could read. Most plausible reading: ~180 k compounds (the title's "180" ≈ 184,330 rounded down; the vendor set is HLL-200). Treat as inference, confidence low. | — |
| Instrument | Bruker timsTOF Pro 2, trapped-ion-mobility Q-TOF, PASEF DDA; heated ESI 300 °C, 4500 V | Zenodo |
| LC | Waters ACQUITY Premier BEH C18 2.1 × 50 mm, 1.7 µm; 5→95 % acetonitrile over 5.5 min at 0.5 mL/min | Zenodo |
| Collision energy | "three nominal collision energies (20, 40, 60 eV)", both polarities | Zenodo |
| Polarity | ESI+ 77.0 %, ESI− 23.0 % | Zenodo |
| Ion mobility | 96 % of spectra carry an experimental CCS from calibrated 1/K0; of those 56 % carry ≥ 2 species (protomers/conformers), 31.5 % ≥ 3 | Zenodo |
| Curation | SIRIUS rank-1 fragmentation-tree scoring, explained-intensity and minimum-peak thresholds, precursor-integrity checks, round-trip InChIKey validation; 91.4 % of spectra exceed 70 % explained intensity, 98.1 % exceed 50 %; rank-1 tree explains median 88.6 % of fragment intensity | Zenodo |
| Pipeline code | data_processing/ms_prepper (Bruker .d → parquet; calibration.py, filters.py), extraction/, curation/ (constants: TOP_N = 20, TOLERANCE_DA = 20, HASH_PRECISION = 1; export keys include sirius_score, tree_score, explained_intensity, num_merged_microscans, num_merged_precursor_ions, ccs_clusters) |
GitHub repo |
| Claim | "more than doubling the combined structural coverage of MS/MS open libraries, and more than 5× the combined open CCS values" vs GNPS + MSnLib + MassBank | Zenodo |
Adduct census of the Zenodo release (14 adducts; ESI+ dimers are a large share):
| Adduct | Spectra | Share |
|---|---|---|
| [M+H]+ | 590,683 | 51.0 % |
| [2M+Na]+ | 188,432 | 16.3 % |
| [M−H]− | 185,030 | 16.0 % |
| [2M+H]+ | 89,625 | 7.7 % |
| [2M−H]− | 53,005 | 4.6 % |
| [M−H+FA]− | 24,648 | 2.1 % |
| [M+Na]+ | 16,153 | 1.4 % |
| [M+NH4]+ | 5,913 | 0.5 % |
| [M+Cl]− | 2,410 | 0.2 % |
| [M+K]+ | 1,097 | 0.1 % |
| [2M−H+FA]− | 663 | 0.06 % |
| [M−H+Hac]− | 411 | 0.04 % |
| [2M−H+Hac]− | 198 | 0.02 % |
| [M+Br]− | 25 | 0.002 % |
(The README's target list is longer — it also includes [M−H2O+H]+, [M−H4O2+H]+, [M−H2O−H]−, [2M+FA−H]− and a cation-mode [M]+ — so the 14 above are what survived curation.) Note that 28.5 % of enveda-180 spectra are dimer adducts ([2M+X]). The visible test's 7 adducts contain no dimers at all (see §5), so if the hidden test is formatted like the decoy, the dimer third of enveda-180 is irrelevant to the test and could be dropped or down-weighted for timsTOF-specific fine-tuning.
How enveda-180 appears inside train.parquet (mxm-1x DATA_AUDIT; chiparon README): 1,153,785 spectra / 182,941 unique structures. That is 4,508 fewer spectra and 1,389 fewer structures than the Zenodo release, i.e. the Kaggle ingest dropped ~0.4 % of spectra and ~0.75 % of structures (probably canonicalisation collisions and the normalized_smiles step; unverified). The press release and Kaggle text round this to "approximately 1.16 million spectra from 184,330 synthetic small molecules" (Business Wire via Yahoo Finance, 15 Sept 2026).
Per-ingest_lib spectrum counts from mxm-1x's streamed audit of train.parquet (sum = 2,539,608):
| ingest_lib | Spectra | Share |
|---|---|---|
| enveda-180 | 1,153,785 | 45.4 % |
| pluskal_ms2 | 527,581 | 20.8 % |
| riken | 347,171 | 13.7 % |
| gnps | 220,849 | 8.7 % |
| massbank | 101,727 | 4.0 % |
| mona | 92,416 | 3.6 % |
| spectraverse | 50,933 | 2.0 % |
| msdial | 40,765 | 1.6 % |
| drug_plus | 2,545 | 0.1 % |
| enveda-np-examples | 1,184 | 0.05 % |
| masaryk | 652 | 0.03 % |
Only enveda-180 and enveda-np-examples are uniformly labelled timsTOF (shiferaxa plan.md: "1.15M of 2.54M spectra are timsTOF (enveda-180 library, 183k structures), same instrument as test").
2. Chemistry of enveda-180 versus natural products
No write-up or the Zenodo record reports MW/logP/Fsp3/ring/stereocentre distributions for enveda-180. What can be sourced:
- Vendor population. HLL-200 is a diversity subset of Enamine's screening stock, itself drawn from REAL-type combinatorial chemistry. For the REAL space, Grygorenko et al. 2020 (iScience, PMC7593547) report mean MW 444, sLogP 2.64, HBA 5.4, HBD 1.5, TPSA 94.6 Ų, 6.5 rotatable bonds, Fsp3 0.55; 89.1 % Lipinski-compliant for the main method, built from 2–3-step amide/acylation/click sequences on ~15 k–46 k synthons. Expect enveda-180 to sit at MW 250–450 (the decoy test, which is pure enveda-180, has neutral masses 246.10–439.10 Da per leesirleesirlee EXPERIMENTS.md), few stereocentres, many amides, N-heteroaromatics (triazoles, pyridines), spiro/saturated amines, and heavy halogenation.
- Halogens. The charleneleong-ai spike (casmi/docs/2026-10-07-casmi-spike.md) measured on the 400 decoy-test molecules: "36 % contain a halogen", with examples
CN(Cc1ncccc1C(=O)O)CC1(c2ccc(Br)cc2)CC1,COc1ccc(N2CC(C(=O)Nc3nncn3C3CC3)CC2=O)cc1,COc1ccnc(CN2CCOCC3(CCCC3)C2)c1OC. Natural products are < 1–2 % halogenated (mostly marine), so a halogen-aware isotope-pattern feature trained on enveda-180 will be almost never exercised by the hidden test. - COCONUT overlap of enveda-180. The "~0.03 %" in BRIEF comes from corentinlaudicina/enveda-casmi-2026 README: "
enveda-180is not natural-product-like (0.03 % of its molecules are in COCONUT, vs 99.6 % ofenveda-np-examples)", keyed by InChIKey14. 0.03 % × 182,941 ≈ 55 structures. Two other write-ups give incompatible figures: shiferaxa plan.md found "432,648 distinct COCONUT structures, 274,186 distinct train structures, overlap only 545" (0.2 % of all train, consistent with ~55 from enveda-180 plus ~490 from the public libraries) and "only 8 of 250 np-examples are in COCONUT"; mxm-1x README reports "46 overlappingenveda-180structures (309 spectra)" among 547 held-out enveda-180 molecules (8.4 %), and charleneleong's spike found COCONUT covers "8 % of held-out train molecules" (recall 0.0806 at 5 ppm, 500 random held-out structures). The 8 % figures almost certainly measure mass-window candidate recall (COCONUT contains some isobaric structure), not identity; the 0.03 %/0.2 % figures are exact-key identity. Both are consistent with: enveda-180 is essentially disjoint from COCONUT by identity, and ~8 % of its molecules have a COCONUT isobar. - Scaffold-level overlap. Not reported by anyone. How to compute (cheap, ~10 min on one CPU core): RDKit
MurckoScaffold.GetScaffoldForMolon the 182,941 enveda-180normalized_smilesand on COCONUT 2.0 (Zenodo 10.5281/zenodo.13692394; 695,133 records of which 539,350 carry stereo, 73,563 undefined stereo, 82,220 achiral — expect ~430–480 k distinct 2D structures after stereo/tautomer collapse, which is what shiferaxa's 432,648 and the "480 k" in other write-ups reflect), compare generic (atom-type-stripped) and specific scaffold sets, and report Jaccard plus the fraction of enveda-180 scaffolds with Tanimoto ≥ 0.7 nearest neighbour in COCONUT. Expectation: specific-scaffold Jaccard well under 5 %, with overlap concentrated in trivial scaffolds (benzene, biphenyl, indole, piperidine-phenyl) that carry no NP-specific fragmentation information. COCONUT 2.0's own NPLikeness distribution is multimodal with a peak at −2…0 (synthetic-like entries), so a small overlap exists even by construction.
3. enveda-np-examples anatomy
| Item | Value | Source |
|---|---|---|
| Spectra | 1,184, all instrument_type = timsTOF |
mxm-1x DATA_AUDIT; shiferaxa plan.md |
| Structures | 250 (chiparon, shiferaxa, mxm-1x) — leesirleesirlee EXPERIMENTS.md counts 251 after their own keying | write-ups disagree by one |
| Where in file | "row group 20 (0-based), 1,184 rows" of train.parquet | leesirleesirlee EXPERIMENTS.md |
| Adducts / CE | Not reported by any write-up. The name and Enveda's platform imply the same timsTOF/PASEF/20-40-60 eV protocol as enveda-180, but this is inference. | — |
| Overlap with other train libraries | "all 250 V-A enveda-np-examples structures also appear in other ingest libraries"; 248/250 answers are recoverable from other libraries |
leesirleesirlee EXPERIMENTS.md |
| Overlap with COCONUT | 99.6 % (corentinlaudicina, InChIKey14) vs "only 8 of 250" (shiferaxa plan.md) | contested, see Gotchas |
| Duplicated keys | shiferaxa: 82 of 250 np-examples appeared in train "listed twice under different inchikey14 strings (tautomer or charge variants)"; chiparon found 11 original structures across all train with multiple normalised keys (274,195 keys → 274,184 groups) | shiferaxa plan.md; chiparon README |
| Leave-one-spectrum-out MRR@25 (library search, structure kept via other spectra) | 0.934 (chiparon: 0.9341889, Top-1 89.6 %, Top-5 98.0 %, Top-25 99.2 %); 0.9261 (mxm-1x); "class 1 0.934" (shiferaxa) | three independent write-ups agree |
| Structure removed entirely | 0.000 (library search), 0.0476 (leesirleesirlee V-A-hard), 0.595–0.617 when the structure is in COCONUT-only pool (shiferaxa, 708-key overlap set) | — |
Why the 0.93 number is a trap: because every np-examples structure also has spectra in GNPS/MassBank/RIKEN etc., "hold out the np-examples spectrum" is a cross-instrument replicate test, not a novel-molecule test. shiferaxa's conclusion is the right one: "random timsTOF library compounds are not test-like; only natural-product-like structures count as validation", and even then "local gains shrink about half on LB" once fingerprint models are added.
Is it the closest train proxy for the hidden test? Yes, by both forensic criteria (same instrument family, natural-product population), and it is the only split in the write-ups that predicted leaderboard orderings (shiferaxa: "the only split that has predicted the public leaderboard is the 250 structures the host measured on the test instrument"; random held-out train structures "predicted the opposite ordering"). But it is 250 molecules, so a single MRR@25 estimate has a standard error of roughly ±0.03 (binomial on reciprocal ranks), and because every structure is also in COCONUT/other libraries it cannot measure the "novel to every database" regime that ~45 % of the hidden test apparently occupies.
4. Fraction of all train structures in COCONUT / LOTUS / NPAtlas
Only one write-up computed this train-wide: shiferaxa plan.md — 274,186 distinct train structures vs 432,648 distinct COCONUT structures, exact-key overlap 545 (0.20 %); a second pass found "708 train keys whose structure COCONUT also holds" (0.26 %; the two passes differ in canonicalisation). leesirleesirlee EXPERIMENTS.md: "LOTUS ∪ NPAtlas adds only 373 structures over train ∪ COCONUT", merged NP pool 730,161 structures, of which 454,351 are NP-exclusive (absent from train). No write-up reports a LOTUS-only or NPAtlas-only overlap with train. Implication: the public spectral libraries in train are also mostly non-COCONUT chemistry by exact key (drugs, pesticides, lipids, MSnLib screening compounds), which is why a candidate pool of "train ∪ COCONUT" is ~712–775 k structures with almost no redundancy.
5. The visible test decoy: evidence and what it leaks
| Write-up | How the match was made | Result |
|---|---|---|
| mxm-1x DATA_AUDIT.md | "A streamed scan compared full ms2_mzs and aligned ms2_normalized_intensities arrays … required full array equality" |
"every visible test spectrum occurs exactly once in training, all in enveda-180" (1,213/1,213) |
| charleneleong-ai spike | "hash join on (adduct, precursor, n_peaks)" |
"resolved 400/400" molecules to enveda-180; independently confirmed by cosine |
| leesirleesirlee competition_brief.md / EXPERIMENTS.md | not stated | "byte-for-byte identical to training-set data"; "every spectrum in the visible test.parquet exists verbatim in train, all from enveda-180" |
| corentinlaudicina README | local eval | "visible test.parquet is a placeholder copied from train" |
| chiparon README | — | visible test = "examples from training data", replaced by hidden data at rerun |
The decoy's composition (mxm-1x DATA_AUDIT): 400 molecule_id, 1–9 spectra per molecule (median 3), 987 positive / 226 negative, adducts [M+H]+ 959, [M−H]− 193, [M+CH2O2−H]− 31, [M+Na]+ 22, [M+NH4]+ 4, [M+K]+ 2, [M+Cl]− 2; neutral mass 246.10–439.10 Da (leesirleesirlee). Note that train spells the formate adduct [M+CH2O2-H]- while the Zenodo release spells it [M−H+FA]−, and spectrum_id does not exist in train, so the match had to be made on arrays, not IDs.
What this leaks about hidden-test formatting: the decoy rows are single-CE enveda-180 rows, so they tell us that the schema (ms2_normalized_intensities base-peak-normalised, num_peaks, base_peak_intensity, collision_energy_ev as a list) is shared, but not that the hidden spectra are single-CE: the Kaggle description (mirrored by leesirleesirlee) says hidden molecules have "1 to 16 spectra per molecule, median 3", "monoisotopic masses 157 to 1,159 Da, median about 348 Da", and the press release says "approximately 2,500 mass spectra" for ~400 molecules while the Kaggle page says ~1,500 — the discrepancy is unexplained (one reading: ~2,500 raw acquisitions merged to ~1,500 rows, which would make collision_energy_ev lists with several values the norm in the hidden test). The decoy's adduct mix (79 % [M+H]+, 16 % [M−H]−, zero dimers) is the only concrete hint we have of the hidden set's adduct scheme; the 1,159 Da upper mass bound is far above anything in enveda-180 (max ≈ 439 Da in the decoy), confirming glycosides/large polyketides in the hidden set that enveda-180 cannot teach.
6. Near-duplicates in train and what they do to a random split
No CASMI-26 write-up I could open reports a Tanimoto near-duplicate statistic for train. What exists: MassSpecGym (arXiv 2410.23326) motivates its split by observing that standard 2D-InChIKey splits lead "to near-duplicate test molecules (with Tanimoto similarity > 0.85) being leaked from the training data", and instead uses agglomerative clustering on myopic MCES edit distance with minimum linkage and threshold 10 ("no molecules have an edge edit distance of less than 10 between different data folds"), then stratifies folds by instrument, CE, adduct and molecule frequency; MassSpecGym is 231 k spectra / 29 k molecules, [M+H]+ and [M+Na]+ only, ≥ 50 % explained intensity.
For enveda-180 the expectation is extreme: Enamine HLL compounds are enumerated from shared synthons by 2–3-step sequences (Grygorenko 2020), so most compounds have siblings differing by one R-group; a Morgan-r2 Tanimoto > 0.8 nearest neighbour inside the same library is likely for a large fraction (my guess > 30 %, unverified — the random-split numbers in the write-ups are consistent with this: corentinlaudicina's MLP scores 0.456 on random held-out molecules vs 0.112 on the LB, charleneleong's "fragments MRR@25 0.7011" on a train pool vs ≈ 0.1 LB). A random inchikey14 split therefore overstates generalisation twice: once via R-group siblings in enveda-180, once via the 248/250 cross-library replicates in np-examples.
How to compute it (feasible on one GPU or a 32-core node in < 1 h): Morgan r2 2048-bit for all 274 k train structures, chunked Tanimoto matrix via rdkit.DataStructs.BulkTanimotoSimilarity or a FAISS binary index, record nearest-neighbour similarity per structure within and across ingest_lib; then build folds by (a) MCES-10 clustering as in MassSpecGym (use myopic_mces package; too slow for 274 k pairs, so pre-cluster by Butina at Tanimoto 0.6 and run MCES only inside clusters), or (b) the cheaper proxy: Butina clustering at Tanimoto 0.6 on Morgan r2 and holding out whole clusters.
Forced analogy: forensic exemplar collections
Statement. A forensic database (fingerprints, DNA profiles, bullet exemplars) is admissible evidence about a casework sample only if (i) exemplars were collected under the same protocol as the casework sample and (ii) the exemplar population is representative of the population the sample was drawn from. enveda-180 is the "known-subject" collection; the hidden test is the casework.
Protocol match. Passes almost completely: same vendor instrument family (timsTOF Pro 2 for enveda-180; the test is stated only as "timsTOF"), same lab, same nominal CE scheme (20/40/60 eV), same ESI polarity mix and adduct vocabulary. The one protocol difference we can see is formatting: the hidden test apparently merges several CEs per row (list-valued collision_energy_ev) where enveda-180 rows are single-CE.
Population match. Fails: Enamine HLL-200 is a screening-diversity population (MW ≈ 250–450, Fsp3 ≈ 0.5, 36 % halogenated, amide/triazole/spiro-amine chemotypes); the casework population is natural products up to 1,159 Da with sugars, polyketide/terpene scaffolds and essentially no halogens.
Testable idea 1 (instrument-only transfer). Treat enveda-180 purely as a calibration exemplar for the instrument: use it to learn timsTOF-specific peak-level priors (CE-dependent intensity scaling, in-source losses, ppm error distribution — median_mass_error_fragment_peaks_ppm is even an export key in Enveda's pipeline) and apply those as a domain-adaptation layer on top of a structure model trained on the NP-rich public libraries. Test: train the fingerprint model on all train except enveda-180, then (a) add enveda-180 as raw training data, (b) add only an enveda-180-fitted spectral-normalisation front-end. If (b) ≥ (a) on np-examples class-3 and on the LB, the exemplar is being used correctly as protocol evidence, not population evidence.
Testable idea 2 (population re-weighting). Forensic likelihood ratios use the relevant population. Re-weight enveda-180 molecules by NP-likeness (RDKit NP_Score or COCONUT's NPLikeness) so that only the NP-like tail (score > 0) contributes at full weight. Expectation: a small or zero change on random-split MRR but a measurable gain on np-examples class-3; a loss would mean the synthetic population still teaches useful general fragmentation chemistry.
Does the analogy hold? Partially. It holds for the two admissibility questions and correctly predicts the observed failure (local 0.46–0.87 vs LB 0.10–0.14). It breaks in one place: forensic matching is identity matching, whereas our model needs generalisable fragmentation chemistry, and a synthetic population can still teach transferable sub-structure → fragment rules (amide cleavages, heteroaromatic ring losses) that natural products share. The analogy says "down-weight", not "discard".
Gotchas / what could fool us
- Every COCONUT-overlap number in the write-ups is key-sensitive and none used the competition's canonicalisation. The same 250 np-examples are "99.6 % in COCONUT" (corentinlaudicina) and "8 of 250" (shiferaxa). Differences arise from raw
inchikeyvsinchikey14, COCONUT's stereo-bearing canonical SMILES vs 2D keys, tautomer and charge forms (shiferaxa found 82/250 np-examples present under two inchikey14 strings), and salts. Recompute with RDKit 2026.03.3 +TautomerEnumerator.Canonicalize+ InChIKey14 before believing any overlap. - "8 % COCONUT coverage" ≠ "8 % identity". charleneleong's 0.0806 recall and mxm-1x's 46/547 are mass-window hits (isobars), not the structure itself; exact-key identity is 0.03–0.2 %.
- COCONUT size varies by 60 % between write-ups (695,133 records in the 2.0 paper; 432,648 distinct 2D structures in shiferaxa; "480 k" in corentinlaudicina; 8,851 after mass windowing in mxm-1x). Say which one you mean.
- Dimer adducts are 28.5 % of enveda-180 but 0 % of the decoy test. A model trained on raw enveda-180 spends a third of its timsTOF capacity on [2M+Na]+/[2M+H]+ spectra whose precursor m/z does not correspond to M.
- enveda-180 counts differ between Zenodo (1,158,293 / 184,330) and train (1,153,785 / 182,941). Code that joins against the Zenodo release (e.g. to recover CCS, RT, SIRIUS scores — which train.parquet does not carry) must expect ~1,389 structures to not match.
- np-examples is not a novel-molecule set. All 250 structures have spectra in other libraries; leave-one-spectrum-out gives 0.93 while removing the structure gives 0.00–0.05.
- Random inchikey14 splits are inflated twice (R-group siblings within Enamine chemistry; cross-library replicates). No write-up has measured the within-train Tanimoto nearest-neighbour distribution.
- Adduct strings are not harmonised across sources (
[M+CH2O2-H]-in train vs[M−H+FA]−in Zenodo; 121 adduct strings in train overall). - The hidden-test spectrum count is uncertain (~1,500 per Kaggle page vs ~2,500 per press release); if rows are multi-CE merges, single-CE enveda-180 rows are a formatting mismatch — build merged-CE training rows from enveda-180's 20/40/60 eV triplets to match.
- "251 vs 250" and "11 vs 82" duplicate-key discrepancies show that even the structure count of a 1,184-row slice depends on canonicalisation; your fold assignments inherit that.
- The preprint DOI in the enveda-180 README does not resolve (ChemRxiv 403, Europe PMC zero hits). Any method detail beyond the Zenodo description is unverified.
- Halogen-driven features (isotope patterns, Br/Cl mass defects) are dead weight on the hidden test but will look highly predictive on any enveda-180-containing validation split.
Implications for the challenge
- Build the primary validation set as "NP-like, structure-disjoint, timsTOF-formatted": np-examples class-3 (250 structures removed from the library; shiferaxa
validation.pyalready implements class-2/class-3/cross-instrument withkey14grouping, seed 0,mz_range=(240,465)— widen the m/z range to the hidden test's 157–1,159 Da) plus a second block of ~1,000 train structures with NP_Score > 0 drawn from the public libraries, held out by Butina cluster (Morgan r2, Tanimoto 0.6) rather than by key, with their timsTOF spectra absent from the library. Report both; treat a method as improved only if it improves the cluster-held-out block. - Compute the within-train nearest-neighbour Tanimoto distribution (Morgan r2, by
ingest_lib) once, publish it inresearch/q2_data_forensics/, and use it to justify the cluster-level split; if > 30 % of enveda-180 has an NN > 0.8, say so in the dashboard as the reason random splits lie. - Recompute all COCONUT/LOTUS/NPAtlas overlaps with the competition canonicalisation (RDKit 2026.03.3 tautomer canonicalisation → InChIKey14) for each
ingest_lib; publish as a table. This resolves the 8-vs-249 np-examples contradiction and tells us how many train structures are truly "in nature". - Use enveda-180 for instrument priors, not chemistry: fit ppm-error, intensity-vs-CE and in-source-loss models on it; down-weight its molecules by NP-likeness in structure training; drop or separately tag dimer adducts (28.5 %); build merged-20/40/60 eV rows from its triplets so training rows look like multi-CE hidden rows.
- Join enveda-180 to its Zenodo release to recover CCS, RT,
explained_intensityand SIRIUS tree scores for 182,941 structures; these are free quality weights for spectra and a possible CCS-consistency filter if the hidden test ever exposes mobility (it does not in the visible schema). - Candidate-pool hygiene: pool size in write-ups spans 712 k–775 k; COCONUT 2.0 should be collapsed to 2D-canonical keys (expect ~430–480 k) before counting coverage; LOTUS ∪ NPAtlas adds only 373 structures beyond train ∪ COCONUT by one measurement.
- Do not trust any MRR computed on a split containing enveda-180 molecules as a proxy for LB; the empirical conversion from corentinlaudicina is 0.456 local → 0.112 LB.
Open questions
- What does "180" denote? (Compound count, plate count, or an internal project code — the only candidate explanation is ≈ 184 k ≈ "180 k".)
- Were enveda-np-examples acquired under the identical PASEF/20-40-60 eV method as enveda-180, and are its 1,184 rows single-CE or merged? Nobody has printed its
collision_energy_evand adduct census. - Why did 15,670 of the 200,000 HLL-200 compounds yield no curated spectrum — non-ionising chemotypes, failed round-trip InChIKey, or pooled-well interference? The answer defines an ionisation-bias prior.
- Is the hidden test ~1,500 or ~2,500 spectra, and does the difference reflect CE merging?
- What is the actual Tanimoto NN distribution within enveda-180 and between enveda-180 and the NP libraries? (Computable locally; needs train.parquet, which the Kaggle API currently denies.)
Sources
- Zenodo record, Enveda-180 v1.0.0 (29 May 2026): https://zenodo.org/records/20436851 (DOI 10.5281/zenodo.20436851)
- GitHub enveda/enveda-180 README, docs/, data_processing/ (config.py, curation/constants.py, ms_prepper/): https://github.com/enveda/enveda-180
- Cited preprint (unresolved): Krettler et al. 2026, ChemRxiv, https://doi.org/10.26434/chemrxiv.15004319/v1 — DOI returned 403 at ChemRxiv and no hits at Europe PMC on 2026-10-07
- Enamine diversity libraries page (HLL-200 = 200,000 compounds): https://enamine.net/compound-libraries/diversity-libraries
- Grygorenko O.O. et al., "Generating Multibillion Chemical Space of Readily Accessible Screening Compounds", iScience 2020, doi:10.1016/j.isci.2020.101681, PMC7593547
- Business Wire press release (15 Sept 2026) via Yahoo Finance: https://finance.yahoo.com/healthcare/articles/enveda-launching-next-alphafold-contest-120700676.html
- Enveda PRISM blog post (28 May 2024): https://enveda.com/prism-a-foundation-model-for-lifes-chemistry/
- mxm-1x/Enveda-CASMI-2026 README and DATA_AUDIT.md: https://github.com/mxm-1x/Enveda-CASMI-2026
- corentinlaudicina/enveda-casmi-2026 README and HANDOFF.md: https://github.com/corentinlaudicina/enveda-casmi-2026
- shiferaxa/casmi26 README, docs/plan.md, src/casmi/validation.py: https://github.com/shiferaxa/casmi26
- chiparon/enveda-casmi26 README: https://github.com/chiparon/enveda-casmi26
- leesirleesirlee-star/Enveda_CASMI-2026_Molecule-ID-From-Mass-Spectra docs/competition_brief.md, docs/EXPERIMENTS.md, docs/research_metadata_errors_and_isobar_floor.md: https://github.com/leesirleesirlee-star/Enveda_CASMI-2026_Molecule-ID-From-Mass-Spectra
- charleneleong-ai/ai4science PR #78 (casmi/docs/2026-10-07-casmi-spike.md): https://github.com/charleneleong-ai/ai4science/pull/78
- ibnmarzuk/casmi26-molecule-id README; billylu24 README; AmanDubal README (minor confirmations): https://github.com/ibnmarzuk/casmi26-molecule-id , https://github.com/billylu24/Enveda-CASMI-2026---Molecule-ID-From-Mass-Spectra , https://github.com/AmanDubal/Enveda-CASMI-2026---Molecule-ID-From-Mass-Spectra
- MassSpecGym, arXiv:2410.23326 (HTML): https://arxiv.org/html/2410.23326
- COCONUT 2.0, Nucleic Acids Res. 2025, doi:10.1093/nar/gkae1063: https://academic.oup.com/nar/article/53/D1/D634/7905025
- Kaggle competition pages are JS shells; all Kaggle-page facts above come from the GitHub mirrors listed (leesirleesirlee competition_brief.md, mxm-1x DATA_AUDIT.md).