BINADocs
justbina.com
Esc
  • Try “quote gate”, “bulletin”, or “CLEARY_LLM_MODEL”.
ExplanationExplanation · Understanding-oriented

DMA and cartel methods

Why DMA non-compliance and cartel decisions skip the generic party reading, and what BINA does with them instead.

The generic case report reads parties out of the decision. Two kinds of decision do not fit that model, so BINA handles them with dedicated, deterministic methods.

#DMA non-compliance: rank victims by obligation

A DMA decision names the gatekeeper, rarely its victims. Who is harmed depends on which obligation was breached. So for dma_non_compliance documents BINA does not read parties at all. server/radar/dma.mjs applies a fixed chain:

obligation → victim category → method → signal sources → rank

  • Levels are computed in code from evidence kinds, never asked of the model: a lawsuit or collective action ranks high; activity with another gatekeeper or service ranks medium; mere presence ranks low. A to-verify filter caps at medium. Ties break by the number of distinct sources.
  • Signal sources are real APIs. Judilibre (via PISTE) covers court searches when JUDILIBRE_CLIENT_ID and JUDILIBRE_CLIENT_SECRET are set; GDELT complements press criticism but covers only the last ~3 months. Each source reports ok, skipped or error in analysis.coverage.sources.
  • Seed documents — workshop participant lists, signatory letters, parliamentary reports — are fetched, archived by SHA-256, and names are read out of the fetched bytes. Every seed lead is verified against that text (coverage.seeds).
  • Competitor families run as separate blocks: competing ranked services, search engines, messaging services and competing stores. A company in two blocks carries alsoIn. Sources with no integration are listed under coverage.notSearched.

Counsel can re-run the method with POST /v1/radar/cases/:caseNumber/dma. Results persist as radar.dma.analysis.completed events.

#Cartels: a defence-side exposure report

For horizontal cartels (and cartels on the upstream side) in prohibition, settlement and cooperation decisions, BINA does not hunt for unnamed claimants. It produces a report on market-level exposure instead (server/radar/cartel.mjs):

  1. Practice type. A cartel type needs the legal-basis marker in its cited note; otherwise the type is unknown and goes to review.
  2. Stated figures only. Value of sales and duration are taken only where the decision states them, each quote passing verifyQuote and every number checked against its quote.
  3. Exposure, labelled as an estimate:
affected commerce = annual value of sales × stated duration multiplier
exposure          = overcharge rate × affected commerce     (rates: 10% / 18% midpoint / 23%)

A missing value of sales or multiplier is Not computed — BINA never back-calculates it from the fine. The whole-cartel line appears only when every fined member is computed.

  1. Legal map. server/radar/legal-map.mjs is a frozen table written by the legal team (EU baseline and France). It only applies verified dates and facts through fixed templates. Countries absent from the table are shown as not covered.

Re-run with POST /v1/radar/cases/:caseNumber/cartel. Results persist as radar.cartel.analysis.completed events.

BINA · private enforcement radar. Nothing in these docs is legal advice; BINA does not make legal decisions.