Enveda CASMI 2026 — Winning-Solution Execution Plan
Prepared: 16 September 2026 (Malaysia time)
Competition: https://www.kaggle.com/competitions/enveda-CASMI26-molecule-id-mass-spectra
Objective: maximize final private-leaderboard MRR@25 with a compliant, reproducible, offline solution capable of competing for first place. Winning is an objective, not a guarantee.
Status: competition review and plan complete; model implementation, training and submission have NOT started.
1. Executive judgment
This is a molecular structure identification and ranking competition, not a conventional tabular prediction problem. Given several mass spectra of a molecule, return up to 25 candidate chemical structures ordered by probability of being correct.
The recommended strategy is a three-route candidate system with one calibrated molecule-level ranker:
1. Spectral-library retrieval: win the known-compound cases with accurate mass filtering, fragment/neutral-loss matching, and evidence across collision energies and adducts.
2. Structure-database retrieval: recover molecules with no reference spectrum using formula inference, spectrum-to-fingerprint/embedding models, and forward-spectrum reranking.
3. De novo generation: propose genuinely new structures, including local edits of spectral analogues, then verify/rerank them using the same chemistry and spectral evidence.
The strongest practical starting point is route 1 plus a disciplined ranker—not training a giant SMILES model from scratch. But a library-only solution has a structural ceiling: it cannot identify an answer absent from its candidate universe. A first-place attempt must measure and address that ceiling.
Recommended effort allocation initially: 30% data/validation, 25% retrieval/ranking, 20% structure-only retrieval, 15% de novo, 10% offline packaging and reproducibility. Reallocate from measured error decomposition, not leaderboard excitement.
---
2. Verified competition facts
| Item | Verified requirement / observation |
|---|---|
| Target | 2D atom connectivity, submitted as SMILES |
| Prediction unit | One row per molecule_id, aggregating all its spectra |
| Metric | Mean Reciprocal Rank at 25, higher is better |
| Correctness | RDKit tautomer canonicalization, then first InChIKey block (InChIKey14); RDKit pinned to 2026.03.3 |
| Stereochemistry | Not required for scoring; tautomer-equivalent guesses match after canonicalization |
| Output | submission.csv, columns molecule_id,smiles; guesses separated by semicolons |
| Guess count | Up to 25; wrong guesses only cost their occupied rank |
| Execution | Notebook submissions; CPU or GPU runtime ≤9 hours, internet disabled |
| External assets | Freely/publicly accessible external data and pretrained models allowed, subject to rules, accessibility and licensing |
| Submission limit | 5 per day; select at most 2 final submissions |
| Team limit | 5 people |
| Prize pool | US$50,000; first prize US$16,000; top five receive prizes |
| Start | 14 September 2026 |
| Entry / team merger deadline | 7 December 2026, 23:59 UTC = 8 December, 07:59 MYT |
| Final deadline | 14 December 2026, 23:59 UTC = 15 December, 07:59 MYT |
| Winning code | MIT winner-license type; training/inference code and reproducible documentation required |
| Competition data | Competition use and non-commercial/academic research; CC BY-NC 4.0; do not redistribute to nonparticipants |
Live snapshot, not a future target
At review time, the CLI listed 147 teams. The leading public score was 0.332, second 0.285, and tenth 0.254. This is an early leaderboard, not evidence of the score needed to win in December. Our account was already entered, with 0 lifetime submissions and all 5 daily submissions remaining.
Three hidden novelty classes
Class proportions and per-molecule class assignments are hidden. Do not assume a library-heavy public leaderboard implies a library-heavy private set.
---
3. What was actually inspected
Official sources retrieved
Authenticated Kaggle CLI access successfully retrieved the description, data description, evaluation, timeline, code requirements, competition-specific and foundational rules, file listing, public leaderboard, discussions listing and public notebook listing. Public notebook source files were downloaded and inspected; their claimed performance was not independently reproduced.
Downloaded data audit
| Artifact | Observed size / contents |
|---|---|
train.parquet | Listed at 3,033,286,496 bytes; not downloaded or fully profiled in this review |
test.parquet | Downloaded; 4,848,729 bytes, 1,213 spectra, 400 molecules, 12 columns |
sample_submission.csv | Downloaded; 43,619 bytes, 400 rows; IDs exactly match visible test IDs |
| Visible spectra per molecule | Minimum 1, median 3, maximum 9 |
| Visible instrument | All timsTOF |
| Visible adducts | 7 observed; the hidden-test description lists 10 |
| Local RDKit | 2022.09.5, not the scoring version |
Critical distinction: the downloadable test consists of training examples and is replaced by hidden data during scoring. It is useful for schema/runtime tests, not a generalization benchmark. Never precompute predictions or build the final candidate index only around its IDs, formulas or mass windows.
The official hidden-test description is approximately 1,500 spectra / 400 molecules, 1–16 spectra per molecule, neutral masses 157–1,159 Da. These are descriptions, not permission to hardcode dimensions.
Data-source implications
Official training description: approximately 2.5 million spectra and 275,810 unique structures. Major sources include:
enveda-180: 1,153,785 spectra, 182,941 structures; instrument-matched, but mostly synthetic drug-like compounds.pluskal_ms2: 527,581 spectra; Orbitrap, different collision-energy conventions.riken, gnps, massbank, mona, spectraverse, msdial: important natural-product coverage, heterogeneous acquisition/curation.enveda-np-examples: 1,151 spectra / 250 common natural products, measured with the target instrument/pipeline. Particularly valuable for domain-matched validation.Data update warning: a host discussion titled “Please re-download training data” was posted on 15 September. Current listed files were created on 15 September. The retrieved discussion response did not expose the body, so the exact change remains unverified. Download the current release, hash it and record the manifest before any experiment.
Documentation inconsistency: the data page says “train.parquet (18 columns)” but its listed shared/additional fields imply a different count; it also says “seven” in one adduct description while listing ten elsewhere. Inspect the actual train schema and support all ten advertised hidden-test adducts.
---
4. Optimize the actual metric
For U molecules:
MRR@25 = mean(1 / first_correct_rank)
A missing answer or answer below rank 25 contributes zero.
| Change for one molecule | Gain in reciprocal rank |
|---|---|
| Rank 2 → rank 1 | +0.500 |
| Rank 5 → rank 1 | +0.800 |
| Not found → rank 25 | +0.040 |
| Not found → rank 1 | +1.000 |
Therefore:
1. Prioritize reliable top-1 decisions while expanding candidate coverage.
2. Keep up to 25 distinct scoring identities; stereoisomers and tautomer spellings should not waste slots.
3. Track candidate recall separately from ranking quality. A ranker cannot rescue a missing answer.
4. Do not use Tanimoto similarity, SMILES validity, or formula correctness as substitutes for the official exact-connectivity score. They are diagnostics and training auxiliaries only.
5. A calibrated estimate of candidate correctness should drive final order. Do not impose arbitrary quotas such as “10 retrieved, 10 database, 5 generated” irrespective of evidence.
6. Treat spectra as correlated observations of one molecule. Six energies do not create six independent labels or six votes of equal reliability.
Diagnostic decomposition: if candidate-pool coverage is R and MRR conditional on coverage is Q, total MRR is R × Q. Report both, by novelty regime, to decide whether to improve generation or ranking.
---
5. Validation design — the most important investment
5.1 Reproduce the scorer first
Create a dedicated environment with RDKit 2026.03.3 (package version spelling may appear as 2026.3.3). Do not change the global installation used by other projects.
Implement the documented matching operation: parse SMILES → tautomer canonicalize → InChIKey14. Verify any available official implementation before freezing it. Do not silently add salt stripping, uncharging, fragment selection or other standardization steps not specified by the evaluator.
Unit tests must cover:
Use one identity function for labels, split grouping, candidates, evaluator and submission deduplication.
5.2 Three explicit evaluation regimes
A — spectral-library available
Use held-out target-domain spectra, particularly enveda-np-examples, as queries. Remove these exact query acquisitions and any duplicate/reprocessed versions from every learned training corpus and reference index. Allow independently acquired reference spectra of the same compound in other libraries: this deliberately models Class 1.
B — structure available, spectra unavailable
For validation identities, remove all their spectra across all libraries from supervised training, spectral retrieval, analogue prototypes and derived model features. Their structures may remain in the frozen permitted structure database. Report results both for naturally database-covered molecules and for the full cohort; do not inject validation answers into the pool.
C — structure unavailable / de novo proxy
Remove validation identities from spectral sources, candidate databases and supervised structure-target training. Add a scaffold-disjoint split. Audit external pretrained-model provenance; if overlap cannot be ruled out, label the result as potentially contaminated rather than a clean novelty estimate.
A withheld common compound is only a proxy for genuinely novel natural-product chemistry. Do not claim the proxy exactly represents Class 3.
5.3 Split protocol
5.4 Required experiment report
Every candidate change must report:
MRR@25 | Top-1 | Top-5 | Recall@25 | Candidate Recall@100/1000 | Pool coverage | MRR conditional on coverage | runtime | peak RAM/VRAM
Break down by A/B/C, molecular mass, adduct/polarity, spectrum count, spectrum quality, natural-product family/scaffold, and closest-training similarity. Record unparseable structures and wrong/missing formula cases.
Promotion rule: require reproducible grouped-validation improvement, no unexplained severe regression in another regime, and acceptable runtime. Prefer paired-bootstrap evidence; small gains with wide uncertainty remain provisional. A leaderboard bump alone is insufficient.
---
6. Data and chemistry foundation
6.1 Stream, do not materialize everything
Read Parquet metadata and selected columns first; stream row groups. Store compact peak arrays and offsets, canonical identity tables, sorted neutral-mass indexes and reproducible molecule-level split manifests.
The local host has roughly 11 GiB RAM and 36 GiB free disk at review time. A 3 GB Parquet file can expand far beyond 3 GB in pandas. Full PubChem ingestion is not an appropriate first local step.
6.2 Preserve raw information
Keep original arrays plus named preprocessing variants. Evaluate intensity floors of 0.1%, 1%, 2%; square-root/log transforms; top-64/128/256 peaks; and windowed peak selection. Compare entropy, cosine and unfiltered/soft-filtered variants. Do not discard low-quality spectra outright when they may be the only evidence for a molecule.
Account for training precursor_error_ppm, metadata missingness, source quality and duplicate spectra. Avoid indiscriminately dropping one million instrument-matched spectra; use balanced batches or source weights to counter synthetic-chemistry dominance.
6.3 Adduct-aware mass inference
Support all advertised adducts:
[M+H]+, [M+NH4]+, [M-H2O+H]+, [M-2H2O+H]+, [M+Na]+, [M+K]+, [M-H]-, [M-H2O-H]-, [M+CH2O2-H]-, [M+Cl]-.
Use exact ionic/adduct mass constants and explicit charge/multimer handling for additional training adducts. Test round trips from a known molecular mass through every supported adduct. Dehydrated adducts must add the lost water back when inferring the neutral molecule.
Combine neutral-mass estimates across spectra using robust, quality-weighted inference. Preserve alternative hypotheses when spectra disagree. Calibrate a ppm tolerance with an absolute floor; do not adopt a fixed 0.01 Da window as unquestioned truth.
6.4 Formula inference
Enumerate/rank plausible formulas using calibrated precursor mass, allowed elements, valence/DBE checks, fragment subformula evidence and cross-adduct consistency. Retain several formulas when uncertain. Start with permissive chemistry constraints and measure true-formula recall before narrowing.
MIST-CF and SIRIUS are candidates for comparison, not assumed plug-and-play dependencies. Verify license, offline execution, model assets, instrument support and runtime first. Do not assume all SIRIUS services are free or callable offline.
Use collision_energy_ev as the cross-source input, with missingness and original-unit/source indicators. NCE-to-eV conversions are approximate, not interchangeable ground truth.
---
7. Modeling workstreams, in priority order
Track A — High-quality spectral retrieval [P0]
Implementation
1. Retrieve mass-compatible reference structures and their spectra.
2. Compare direct fragment cosine, entropy similarity, neutral-loss similarity and carefully adduct-aware modified cosine.
3. Evaluate polarity/adduct compatibility explicitly; do not merge raw spectra from incompatible ions into a single peak list.
4. Aggregate by canonical structure and query molecule: best/second-best match, support across independent acquisitions, collision-energy agreement, mass residual, explained intensity, unmatched intense peaks, source quality and ambiguity margins.
5. Correct for reference-count bias: a structure with many library spectra should not win merely from more chances to match.
6. Train an OOF molecule-grouped candidate ranker, initially LightGBM/CatBoost or a compact pairwise/listwise model. Use reciprocal-rank-aware evaluation and tune top-rank behavior; NDCG training objectives are surrogates, not the competition metric.
Ablations: max pooling vs consensus; fragment-only vs loss-only vs combined; entropy vs cosine; same-adduct-only vs compatible cross-adduct; learned vs heuristic aggregation; single vs multiple preprocessing views.
Deliverable: deterministic CPU baseline, indexed retrieval artifacts, OOF ranked candidate tables and validated submission builder.
Track B — Structures without measured spectra [P1]
Candidate universe
Begin with competition training structures and a dated, licensed COCONUT snapshot. Add a broader permitted PubChem-derived candidate snapshot once the storage/index pipeline works. COCONUT is attractive for natural products but cannot be assumed to cover all analogues or synthetic-looking test compounds.
Build full mass/formula indexes independent of visible test IDs. Dynamic filtering by the hidden query masses is fine; precomputing only the placeholder's mass windows is not.
Learned retrieval
Compare:
Pool multiple spectra at the molecular level using reliability-aware attention or a learned set aggregator. Model missing metadata explicitly. Train/finetune with source balance and natural-product weighting, selected by clean validation.
Forward consistency reranking
For a manageable top-K shortlist, predict spectra from candidate structures using an eligible open forward model (for example ICEBERG/SCARF/CFM-ID-family approaches, subject to audit). Score across actual adducts/energies. Account for cross-instrument errors; a forward model's low score must not automatically veto a strong measured reference.
Gate: demonstrate B-regime coverage and MRR gains beyond neighbour-fingerprint transfer. If pool coverage is high but MRR is low, improve ranking before enlarging databases further.
Track C — De novo and analogue editing [P1/P2]
Start with the official spectrum-encoder/SMILES-decoder tutorial as an engineering reference, not the final architecture.
Improve in this order:
1. Add precursor/adduct/energy and predicted formula conditioning.
2. Learn from sets of spectra for one molecule, rather than treating each acquisition independently.
3. Finetune an eligible pretrained model where feasible; otherwise train a bounded baseline before scaling.
4. Generate chemically valid candidates with beam search and/or controlled sampling; compare tokenizations and randomized-SMILES augmentation.
5. Add analogue editing: modify close spectral neighbours using plausible mass differences and functional-group transformations; score all outputs automatically.
6. Apply formula/mass consistency, exact scoring-identity deduplication and shared forward/spectral reranking.
7. Use decoder scores normalized/calibrated across length, generation route and spectrum count. Raw log probabilities from different models are not comparable.
Keep the formula filter soft when formula confidence is low. Do not spend weeks optimizing validity while exact structure recall remains zero. Compare meaningful top-K generation recall on the C proxy and contribution after ensemble reranking.
Compute policy: expand beam width or sampling only when it adds unique correct candidates or improves MRR under the offline budget. Generate more candidates for uncertain queries, but reserve a small exploration budget so an overconfident retrieval gate cannot completely suppress the correct route.
Track D — Unified ranking and uncertainty [P1]
Union all unique candidates, attach source and chemistry evidence, and train a molecule-grouped ranker with OOF features.
Inputs include retrieval agreement, fingerprint/embedding similarity, formula posterior, mass residual, forward-spectrum fit, generator likelihood, spectrum quality and calibrated confidence. Natural-product/database frequency priors should be weak and ablated: rarity is not evidence of incorrectness.
Do not train a hard novelty-class classifier without reliable class labels. Use calibrated evidence-based routing, with novelty proxies tested out of distribution.
Return up to 25 candidates ranked by estimated correctness. Deduplicate before truncation. Prefer fewer credible candidates to filling with repeated CCO; an emergency valid output is a runtime safeguard, not a scientifically useful prediction.
---
8. Public baselines: what to borrow and what not to trust
Official de novo tutorial — inversion/casmi-denovo-tutorial-notebook
Inspected: peak encoder + autoregressive SMILES decoder, grouped raw-InChIKey split, a 200k-spectrum training cap, one spectrum per validation structure, and pooled per-molecule generated candidates.
Useful: working model/data/submission wiring and memory-aware batching.
Limitations to fix: excludes enveda-180 in this inspected version; single-spectrum validation is not the full task; output deduplication uses raw InChIKey14 rather than the stated tautomer-canonicalized identity. Do not inherit its scorer assumptions or placeholder-ID handling blindly.
Fast spectral baseline — haideptry/enveda-casmi-2026-fast-spectral-cosine-baseline
The downloaded version describes a richer pipeline than its title: direct/neutral-loss matching, multi-spectrum consensus, COCONUT chemistry heuristics and confidence gating.
Useful: efficient mass-window retrieval and complementary spectral evidence.
Limitations: fixed hand-tuned blends/thresholds and heuristic candidate priors require clean ablation. Notebook narrative scores are author claims, not reproduced results. Inspect and test active code paths before reuse; popularity is not a correctness test.
Evidence ranking — octaviograu/enveda-molecule-evidence-ranking
Inspected: entropy/cosine, mass-compatible database candidates, neighbour-transferred fingerprints, multi-spectrum evidence, target-domain validation, canonical identity handling and learned-ranking support.
Useful: closest starting design for the recommended baseline. It explicitly holds out NP-example acquisitions and separates spectral-reference evidence from analogue inference.
Limits: fingerprint transfer is not a trained spectral foundation model. Audit fold exclusions and external-asset attachments; downloaded metadata is not proof that every dependency is available offline. The notebook itself states it does not use DreaMS/MIST or forward-spectrum models.
Rule: fork the architecture only after license review, then independently reproduce its behavior. Retain attribution. Do not paste large unverified notebooks together and call the result an ensemble.
---
9. Calendar and exit gates
Dates below are work targets, not extra competition deadlines.
| Phase | Target window | Deliverables | Exit gate |
|---|---|---|---|
| 0 — Ground truth and infrastructure | Sep 16–18 | Current train manifest; schema/source audit; pinned scorer; split spec; offline dependency smoke test | G0: evaluator tests pass, data version fixed, no unsupported hidden adducts |
| 1 — Credible retrieval baseline | Sep 19–25 | Mass-indexed cosine/entropy/loss retrieval; molecule pooling; validation report; first notebook candidate | G1: reproducible scores and complete offline output; no placeholder shortcuts |
| 2 — Ranking and domain adaptation | Sep 26–Oct 9 | OOF ranker; source-balanced models; uncertainty and failure dashboard | G2: measured improvement over simple retrieval with molecule-level uncertainty |
| 3 — Known structure / no spectrum | Oct 10–30 | COCONUT + broader structure index; fingerprint/embedding retrieval; shortlist forward reranker | G3: B-regime gains; explicit coverage/ranking decomposition |
| 4 — Novel structure capability | Oct 31–Nov 20 | Formula-conditioned generator + analogue editing; clean novelty-proxy audit | G4: nontrivial unique correct candidates and ensemble MRR gain within budget |
| 5 — Integrated ensemble | Nov 21–Dec 4 | Unified ranker; complementary models; ablations and realistic mixture stress tests | G5: selected robust system beats baseline across intended regimes |
| 6 — Freeze and final delivery | Dec 5–12 | Two finalist notebooks; clean-room reruns; license/provenance/reproduction package | G6: two successful offline reruns per finalist, all artifacts fixed and recoverable |
| Buffer | Dec 13–14 UTC | Final verification and explicit final-selection check | No last-minute unvalidated architecture changes |
Parallelism: once G0 is complete, retrieval engineering and bounded de novo feasibility can run in parallel. A failed de novo gate does not prevent shipping the best retrieval/database solution; it does prevent claiming novelty coverage.
First 72 hours checklist
---
10. Runtime, resources and spending discipline
Local host
Use the current ARM server for orchestration, manifests, metadata indexes, narrow CPU retrieval experiments and report generation. Keep this project isolated from existing workloads; do not replace global Python/RDKit packages or consume all free disk.
Kaggle / GPU work
Training should normally occur separately, with versioned weights attached to the inference notebook. The official tutorial trains inline for illustration; the final 9-hour window is better used for inference/reranking.
Before committing to hardware, check actual accelerator availability, memory, weekly quota and remaining account capacity. Access to the CLI does not guarantee unlimited GPUs.
Proposed benchmark budgets, not promises:
Instrument wall time by stage. Stop unproductive branches when candidate recall and MRR plateau. Do not spend most of the project pretraining on billions of unlabelled spectra when eligible pretrained representations may provide a faster baseline.
Offline packaging checklist
molecule_id values from the runtime test file; sample submission is only a format cross-check./kaggle/working/submission.csv.---
11. Submission and final-selection policy
1. Do not submit automatically as part of this planning task.
2. Once execution is approved, first establish a valid offline notebook submission.
3. Treat the 5/day limit as a ceiling, not a target. Submit only versions with a recorded hypothesis and local evidence.
4. Change one major component at a time and retain immutable source/weights/configs.
5. Do not hand-label hidden cases, infer answers through leaderboard probing or use hardcoded test predictions.
6. Compare public score changes with validation-regime changes. Large disagreement triggers investigation, not immediate retuning to the leaderboard.
7. Preserve two final candidates: the best broadly robust model and, only if justified, a complementary model with different novelty/coverage tradeoffs. Do not sacrifice a clearly stronger second model merely for cosmetic diversity.
8. Explicitly verify final selections before the deadline; do not rely on automatic selection.
---
12. Risks, mitigations and decision triggers
| Risk | Mitigation / decision |
|---|---|
| Same compound leaks across libraries | Canonical-identity exclusions across spectra, labels, analogue indexes and supervised training |
| Visible test produces deceptively perfect retrieval | Use it only for plumbing; score frozen held-out molecules |
| 250 NP examples overfit through repeated tuning | Nested/grouped validation plus broader scaffold/source holdouts |
| Class mixture unknown | Report multiple mixture scenarios and regime-level performance |
| Formula filter discards the truth | Measure formula/pool recall; retain alternative formulas and fallback paths |
| Common formulas yield huge isomer pools | Hard-negative fingerprint training and shortlist forward reranking |
| De novo gives valid but wrong SMILES | Gate on exact-connectivity recall and ensemble gain, not validity |
| Spectral consensus amplifies duplicated evidence | Deduplicate acquisitions and cap correlated support |
| Training sources overwhelm natural-product chemistry | Source-balanced sampling and domain-matched validation |
| RDKit version changes identity or ranking | Pin exact scoring version; cache keys with version metadata |
| External model has hidden training overlap | Audit provenance; qualify novelty claims when overlap is unknown |
| External asset licensing/accessibility is unsuitable | Exclude or seek host clarification before relying on it |
| Runtime fails on hidden replacement data | Dynamic query handling, broad indexes and cold offline stress tests |
| Disk/RAM/GPU pressure | Stream data, bounded candidate pools, stage profiling and resource caps |
| Training data changes | Manifest/hash checks; rebuild derived assets and rerun relevant baselines |
Host questions to resolve when needed: exact scorer edge cases beyond the published matching description; any ambiguous external-tool licensing/accessibility; details of the September 15 data correction. Do not assume answers.
---
13. Proposed repository and evidence contract
enveda-casmi26/ EXECUTION-PLAN.md research/ # captured rules, listing snapshots, notebook review data/ # access-controlled; exclude raw data from public git manifests/ # source version, SHA-256, license, schema, split IDs configs/ # experiment and inference configurations src/ identity.py # exact scorer-compatible structure identity adducts.py preprocess.py retrieval.py formula.py embeddings.py generation.py ranking.py evaluate.py submit.py tests/ experiments/ # metrics, OOF predictions, timing and ablations artifacts/ # versioned indexes and weights; not raw-data git blobs notebooks/ # offline training/inference entry points reports/ # decisions, failure categories, final reproductionOnly the plan, research snapshots and small visible-data files exist at this stage; the rest is the proposed implementation layout.
Every experiment must record: code commit, configuration, source/checkpoint hashes, licenses, split manifest, seeds, molecule-level predictions, metrics, hardware, wall time and decision. Claims such as “better”, “novel” or “ready to submit” require their corresponding evidence.
Suggested roles (one person may cover several): chemistry/data; retrieval/ranking; generative modeling; validation; deployment/reproducibility. A teammate with mass-spectrometry expertise may add more value than another generic model sweep, but no team formation is assumed or authorized here.
---
14. Evidence and references
Official pages were retrieved via authenticated CLI on 16 September 2026. Local raw snapshot: research/pages.json.
1. [Competition overview](https://www.kaggle.com/competitions/enveda-CASMI26-molecule-id-mass-spectra/overview)
2. [Evaluation](https://www.kaggle.com/competitions/enveda-CASMI26-molecule-id-mass-spectra/overview/evaluation) — matching, MRR@25 and submission format.
3. [Data](https://www.kaggle.com/competitions/enveda-CASMI26-molecule-id-mass-spectra/data) — novelty classes, placeholder test, sources and schema.
4. [Rules](https://www.kaggle.com/competitions/enveda-CASMI26-molecule-id-mass-spectra/rules) — licenses, data use, team/submission limits, prohibition on hand-labeling evaluation records.
5. [Timeline](https://www.kaggle.com/competitions/enveda-CASMI26-molecule-id-mass-spectra/overview/timeline)
6. [Code requirements](https://www.kaggle.com/competitions/enveda-CASMI26-molecule-id-mass-spectra/overview/code-requirements)
7. [Public leaderboard](https://www.kaggle.com/competitions/enveda-CASMI26-molecule-id-mass-spectra/leaderboard) — snapshot in research/leaderboard.json.
8. [Host data-update discussion](https://www.kaggle.com/competitions/enveda-CASMI26-molecule-id-mass-spectra/discussion/741471) — title/date verified; body not retrieved.
9. [Official de novo tutorial](https://www.kaggle.com/code/inversion/casmi-denovo-tutorial-notebook)
10. [Fast spectral baseline](https://www.kaggle.com/code/haideptry/enveda-casmi-2026-fast-spectral-cosine-baseline)
11. [Molecule evidence ranking](https://www.kaggle.com/code/octaviograu/enveda-molecule-evidence-ranking)
12. [Spectral entropy similarity paper](https://doi.org/10.1038/s41592-021-01331-z) — methodological follow-up referenced by the public evidence-ranking notebook; not independently evaluated here.
13. [COCONUT downloads](https://coconut.naturalproducts.net/download) — proposed external structure source; verify chosen snapshot and license before use.
14. [DreaMS resource cited by the host](https://zenodo.org/records/10997887) — proposed pretrained representation route, not yet downloaded or benchmarked.
Review boundaries
This review did not download/profile the full training set, execute public notebooks, train a model, reproduce leaderboard scores, obtain a GPU allocation, purchase compute, change account/team settings or submit predictions. Existing CLI access was used for read-only competition research and downloading public notebook sources and small competition files.
Bottom line: build a trustworthy molecule-level benchmark, establish a strong retrieval/ranking floor, expand coverage with structure databases, and invest in de novo only with measured evidence. The winning opportunity is combining reliable chemistry-aware evidence across all three novelty regimes—not merely attaching a larger language model to the spectra.