EC merger Phase II opening
Research task: at a merger case's notification date, from case attributes fixed that day, predict whether the European Commission opens an in-depth Phase II investigation - a retrospective research task over the DG COMP machine-readable merger case register.
Versioned research data. Read the suitability requirements before interpreting scores.
Suitability and evaluation
Retained for retrospective model-development research. Every shipped feature is a same-row case attribute fixed at notification (an administrative record), and eligibility reads only notification-time fields, but the register publishes a single current snapshot with no historical vintages, so training-label timing and full-row historical availability are unverified and no operational or point-in-time forecasting claim is supported.
Supported uses: Retrospective train/validation model-development experiments under the documented timing, vintage and selection limitations; Final evaluation only under a protocol that isolates the labeled holdout from agent development and prevents any later row influencing an earlier prediction
Not supported: Claims of verified real-time, operational or point-in-time forecasting validity; Treating development/validation (eval-split) scores as untouched final-test results; Presenting current-vintage register values (notably the NACE Rev 2 sector coding) as the values an analyst at notification time would have seen
- Historical feature availability
- partial
- Training-label timing
- unverified
- Data vintage
- current snapshot
- Row selection
- prediction time
- Required evaluation access
- isolated rows
Cross-row audit: bounded no recovery. Gate 1.5.0 executed its two declared probes on the full artifact on the worker across all three splits (unique case_number donor; repeat case_title with a 365-day offset): 0 rows covered, 0 mismatches, 0 ambiguous on both probes and all splits. Rows are unique notified cases and every feature is a same-row attribute, so no outcome-bearing cross-row exposure is constructed; the probes are a bounded mechanism, not a proof, and no broader attack search was run.
The labeled eval split is development/validation data. Isolate final holdout data from development and prevent later rows influencing earlier predictions. Published data is not a secure hidden test service.
- The register retains no historical vintages (bulk feed since 2025-03-18; S3 objects expire after 30 days), so a reverse-history probe is not performable: this is retrospective research over the pinned 2026-10-27 snapshot, never a certified historical forecasting setup.
- Feature availability is fixture-verified at three cross-era points (M.877 1997, M.4731 2007 with its OJ prior notice, M.10188 2021) but not verified row-by-row against notification-era vintages; the sector taxonomy labels are current-vintage NACE Rev 2 applied across all eras.
- Training-label timing is unverified: labels are the register's current values, observed as of the fetch snapshot, with no availability ledger.
- Positives cluster by enforcement era and sector acquisition waves beyond the day-level event key; per-notification-year positive counts (1-22, median about 8) are reported beside every score.
- Prevalence falls across splits (train 4.01%, eval 2.60%, holdout 1.58%): the eval and holdout windows are prevalence-shifted relative to training, an out-of-distribution property reported, not hidden.
- Pending cases with neither an opener nor a terminal decision at fetch (33, overwhelmingly live 2020s filings) are censored and counted per split and year; their labels are unobserved, not negative, and censoring never decides another row's membership.
- The ever-adopted label keeps M.10188 positive despite its 2024-09-06 post-ECJ withdrawal of the opener; M.3333 stays positive on its 2007-03-01 opener with the 2004 pre-notification opener excluded by rule.
- The stock runner baseline trails the required sector-division comparator on the identical eval rows (0.6973 vs 0.7679; paired difference -0.0706, 95% CI [-0.1558, +0.0168], inconclusive with the observed gap negative). Headroom above that prior is NOT demonstrated by the packaged evidence; both numbers must be quoted together.
Corrections to historical documentation
- 2026-10-27/28 descriptor correction per the independent pre-flip audit (PUBLISH WITH CONDITIONS): meta.json and quality.json regenerated (retrospective-use honesty, metadata contradiction fixes, recipes shipped, repeated-transaction dependence disclosed); superseded artifact e5a98dfc9c05d0b0..., CSVs byte-identical; re-qualified as e96929ef by worker job ecm-requal-002 before any public visibility
Reviewed 2026-10-28. Applies to this artifact; original data and tags are preserved.
At a glance
| Question | Research task: at a merger case's notification date, from case attributes fixed that day, predict whether the European Commission opens an in-depth Phase II investigation - a retrospective research task over the DG COMP machine-readable merger case register. |
|---|---|
| Field | Competition policy / merger control / binary-classification |
| Rows | 10,091 |
| Documented splits | 3 |
| This version | v2026.10 |
| Released | 2026-10-28 |
| Evaluation ROC AUC | 0.6973 |
| Artifact | e96929efbbc4fcb84d2986a7e32f83f9c5fec5395124439fb3404faff2e9e662 |
Get this dataset
How to load it
from datasets import load_dataset
ds = load_dataset('earino/ec-merger-phase2-opening', revision='v2026.10')
The version links and checksums identify this artifact. Exclude the labelled holdout from the agent's workspace when running an evaluation.
What is inside 
| Split | Rows | Positive labels |
|---|---|---|
| eval | 1,770 | 46 (2.60%) |
| holdout | 2,915 | 46 (1.58%) |
| train | 5,406 | 217 (4.01%) |
Files and checksums
| Download | Bytes | SHA-256 |
|---|---|---|
| meta.json | 1,342 | b139620d5f469c17faa974574220878f8c1f70accf6d975243a018049fae5ef9 |
| private-holdout.csv | 253,649 | 5867e34f3ebf714b9ec0ef307989cb4296438148390a6a5ea2bcf88795f703fd |
| public-eval.csv | 155,077 | 4fb28c0908e4c79ccf194de3b27f2996c05efc0f01ec4074c953a7eb697f24f6 |
| public-train.csv | 429,048 | 1619b6f4ad4a7dab0f437335c231f727f6f5c5f0ea02b3454366f5a71ab90a44 |
| quality.json | 21,855 | 0203fdf934a0564fdb8d2910372986424547f25448fd603a79e95d4ac02fb7ec |
Release notes · 2026-10-28
The European Commission publishes a machine-readable register of merger cases, updated as one current snapshot. The contribution here is not access: it is the frozen 2026-10-27 vintage, the declaration that the prediction instant is the notification date, and the derived label - whether an in-depth Phase II investigation (Art. 6(1)(c)) was opened. 10,125 eligible notified cases with 309 positives, split into train, labeled eval and a labeled holdout that ships but is never scored in development.
The release ships a reproducible runner-contract baseline at eval AUC 0.6973, with every comparison published beside it because the comparisons decide what the number means. A sector-division prior reaches 0.7679 on the identical 1,770 eval rows: the paired difference is -0.0706 with a 95% dependence-aware interval of [-0.1558, +0.0168] - inconclusive, and the observed gap is negative. The stock baseline does not beat the prior; headroom above it is not demonstrated by the packaged evidence. Both numbers are quoted together or not at all.
Before publication an independent adversarial audit was run against the staged package. It passed integrity, temporal separation and 3,796 frozen shortcut predictors (no label-blind AUC in the extreme bands, zero cross-split identity recovery), and returned PUBLISH WITH CONDITIONS: retrospective-use honesty throughout the metadata, corrected census and censoring counts, shipped comparator and bootstrap recipes, and disclosed dependence across repeated transactions. All four conditions were applied, the corrected package was re-qualified through gate 1.5.0 over the exact accepted bytes, and only then was anything made public.
This is retrospective research over a pinned snapshot, nothing more. The register retains no historical vintages, so point-in-time reconstruction is impossible to verify and no operational or forecasting claim is made: the sector coding is the register's current-vintage NACE Rev. 2 taxonomy applied across all eras, and label timing is observed as of the fetch, not as of notification.
Recorded structural checks and baselines
PASSED Gate 1.5.0.
0.6973
These historical checks do not establish availability at each prediction time or protection against every shortcut. Scores below describe the recorded protocol.
Limits
Derived research dataset, not an official European Commission product; the Commission has not reviewed, authorised or endorsed it.
Retrospective research only. The register publishes a single current snapshot with no historical vintages, so no point-in-time, real-time or operational forecasting claim is supported.
Sector taxonomy labels are current-vintage NACE Rev. 2 applied across all eras; presenting them as notification-era coding is an unsupported claim.
Training-label timing is unverified: labels are the register's current values, observed at the fetch snapshot, with no availability ledger.
Feature availability is fixture-verified at three cross-era points, not row-by-row against notification-era vintages; the sector trio is unverified for the 2,904 pre-2006 notifications.
Prevalence falls across splits (train 4.01%, eval 2.60%, holdout 1.58%); eval and holdout are prevalence-shifted relative to training - an out-of-distribution property, reported not hidden.
34 pending cases (no opener and no terminal decision at fetch) are censored and counted, never treated as negative; censoring never decides another row's membership.
The stock baseline trails the required sector-division comparator on identical eval rows (0.6973 vs 0.7679, paired difference -0.0706, 95% CI [-0.1558, +0.0168], inconclusive with a negative observed gap); headroom above the prior is not demonstrated.
Positives cluster by enforcement era and acquisition waves beyond the day-level event key; per-notification-year positive counts are reported beside every score.
The labeled holdout is downloadable by design; keep it and its labels outside every evaluated agent's workspace.
The dataset ships register metadata only (case numbers, dates, NACE codes, decision types, case titles); underlying decision documents are not redistributed.
Source data is the Commission's published open data under its own terms (CC BY 4.0, attribution preserved); our compilation is dedicated CC0-1.0 and code MIT.
Source, licences, and citation
European Commission, Directorate-General for Competition - EU Competition: Merger case publications (open data case register), https://data.europa.eu/data/datasets/cc7e224e-6569-40f0-8037-d3389aa0fae7, vintage of 2026-10-27. Contains Commission-owned content licensed under CC BY 4.0.
Source: CC-BY-4.0. Compilation: CC0-1.0. Code and documentation: MIT.
Our contribution - the notified-case eligibility frame, the derived Phase II opener label, the notification-date feature derivations, the temporal partition, and the packaging - is dedicated to the public domain under CC0-1.0. The dedication covers only our contribution: the underlying merger case register keeps its own designation and remains subject to the Commission's CC BY 4.0 reuse terms, whose attribution condition carries through to every copy of the derived data. Nothing here relicenses the source or presents CC0 as the source's terms.
Suggested citation
European Commission, Directorate-General for Competition. EU Competition: Merger case publications (machine-readable case register, open data). https://competition-cases.ec.europa.eu/ . Licensed under CC BY 4.0 (Commission reuse notice). Derived dataset: EU merger Phase II opening prediction task (not a Commission official product).