{
  "tool_id": "art-637-globe-de-minimis-exclusion",
  "tool_version": "1.0.0",
  "display_name": "GloBE Permanent De Minimis Exclusion Evaluator",
  "mcp_name": "evaluate_globe_de_minimis_exclusion",
  "mandate_type": "compliance_mandate",
  "wave": 103,
  "gpu": false,
  "url": "https://ainumbers.co/chaingraph/art-637-globe-de-minimis-exclusion.html",
  "description": "Recomputes the PERMANENT GloBE de minimis exclusion of Article 5.5 of the OECD GloBE Model Rules (Pillar Two, December 2021) from per-year figures the caller supplies. This is a different rule from the transitional CbCR safe harbour de minimis test, which is a single-year test taken from the Qualified CbCR and is already computed by art-456-globe-safe-harbour-tests; this node does not recompute that test. Article 5.5.2 averages the GloBE Revenue and the GloBE Income or Loss of a jurisdiction across the current and the two preceding Fiscal Years, and Article 5.5.1 then compares those averages against two thresholds: the Average GloBE Revenue must be less than EUR 10 million, and the Average GloBE Income or Loss must be a loss or less than EUR 1 million. Both thresholds and the averaging window length arrive as versioned policy parameters carrying their own source and source digest, never as constants in kernel source, so a later threshold change is a parameter-set version bump rather than a kernel edit. A GloBE Loss year enters the average as a signed negative amount, per Article 5.5.3(b) and Commentary paragraphs 84 and 91, and is never coerced to zero. A preceding Fiscal Year in which no Constituent Entities had GloBE Revenue or GloBE Losses is excluded from the computation under Article 5.5.2's second sentence, which shrinks the divisor rather than contributing a zero; a jurisdiction in scope for fewer years than the window is an ordinary case and is reported as partial_window_used. The per-year input array is bounded by a declared and enforced max_years. Both conditions must hold together, which Commentary paragraph 81 states as aggregate and cumulative. The Article 5.5.1 Annual Election is the Filing Constituent Entity's judgment and enters only as a declared input that the node echoes back; a deemed-zero result is reported only where the election was declared made, and it is a recomputed arithmetic outcome on declared inputs rather than a filing conclusion. Any absent year, absent threshold parameter or undeclared election raises manual_review_required and withholds the availability verdict, and no missing value is ever silently defaulted. Annualisation of short Fiscal Years, conversion into euro, and the Article 5.5.4 removal of Stateless Constituent Entities and Investment Entities are applied upstream by the caller and declared to this node. Verify-only: the node recomputes declared arithmetic and reports whether it matches or diverges. Zero network, zero PII.",
  "scope_statement": "SCOPE: WHICH DE MINIMIS RULE THIS IS. Pillar Two carries two distinct de minimis rules and this node implements exactly one of them. (a) The transitional CbCR safe harbour de minimis TEST is a single-fiscal-year test on Qualified CbCR revenue and profit before tax; it is implemented by art-456-globe-safe-harbour-tests and is NOT recomputed, altered, or relied on as authority here. (b) The permanent GloBE de minimis EXCLUSION of Article 5.5 is an Annual Election tested on GloBE Revenue and GloBE Income or Loss averaged across the current and the two preceding Fiscal Years. This node implements (b) and nothing else. TAXONOMY HONESTY: CLASS B, AND WHAT THAT DOES NOT MEAN. The property floor is class B, property-tested over stated ranges. The Article 5.5.1 thresholds are continuous euro amounts, so this node is NOT class A, and class B here must never be read as bounded input domain. The year window IS bounded and its paths are enumerated exhaustively by the floor. The money axis is NOT bounded and no totality claim is made over it; the floor instead forces each threshold boundary exactly and at plus and minus one unit in the last place. DECLARED SCOPE LIMITS: Short Fiscal Years are annualised by the caller before the amounts reach this node (Article 5.5.2 and Commentary paragraph 86 state the proportional adjustment, and the OECD's own Example 5.5.2-1 applies it). Conversion of amounts into euro is the caller's (Commentary paragraph 83). The Article 5.5.4 exclusion of Stateless Constituent Entities and Investment Entities from the Article 5.5.3 computations is applied upstream and is taken here as a caller declaration, which the node requires and echoes. The Article 5.5.1 election is a filer judgment taken as a declared input and never inferred. Post-filing ETR adjustments that re-open a prior year's averages (Commentary paragraphs 92 and 93) are outside this node: it evaluates the amounts it is given for the window it is given. PERIMETER: This node recomputes a declared arithmetic test and reports whether inputs match or diverge from the stated thresholds. It states no filing conclusion and gives no tax advice, and a deemed-zero result is a computed outcome on declared inputs rather than a determination about what is due or owed.",
  "input_schema_ref": "chaingraph/art-637-globe-de-minimis-exclusion.html#manifest",
  "consumes": [],
  "feeds": [],
  "status": "live",
  "conformance_fixtures": true,
  "compute_capability": "server",
  "compute_images": [
    {
      "system": "sha256-source",
      "image_id": "sha256:f15d513b3387a912f17ff6e10150595086fb1cb79cc8e858e25fcf457844db54",
      "valid_from": "2026-07-10"
    },
    {
      "system": "risc0",
      "image_id": "sha256:a1a0bc89b5b1febaeda3519f6dbade0fa5ac16beeb143c4e1b01689573567bc6",
      "valid_from": "2026-08-17"
    }
  ],
  "export_capability": [
    "json"
  ],
  "standards_basis": "implements_standard",
  "float_sensitive": "yes",
  "rounding_steps": [
    {
      "step": "average_globe_revenue",
      "description": "Article 5.5.2: the GloBE Revenue of the jurisdiction is summed across the included Fiscal Years and divided by the count of INCLUDED years, which is the window length less any year excluded under Article 5.5.2's second sentence.",
      "clause": "OECD GloBE Model Rules (Pillar Two), December 2021, Article 5.5.2; Commentary March 2022, paragraphs 84 and 85",
      "mode": "no rounding applied; IEEE-754 binary64 division",
      "oracle": "declared — clause silent"
    },
    {
      "step": "average_globe_income_or_loss",
      "description": "Article 5.5.2 applied to the GloBE Income or Loss of the jurisdiction, where a GloBE Loss year carries a SIGNED NEGATIVE amount per Article 5.5.3(b) and is never coerced to zero. The divisor is the same included-year count as the revenue average.",
      "clause": "OECD GloBE Model Rules (Pillar Two), December 2021, Articles 5.5.2 and 5.5.3(b); Commentary March 2022, paragraphs 84 and 91",
      "mode": "no rounding applied; IEEE-754 binary64 division over signed addends",
      "oracle": "declared — clause silent"
    },
    {
      "step": "threshold_comparison_precision",
      "description": "Article 5.5.1's STRICT less-than comparison of each unrounded binary64 average against its versioned threshold. An average exactly equal to a threshold does NOT meet the condition. Article 5.5.1(b)'s first limb, that the average is a loss, is evaluated and reported separately from its threshold limb.",
      "clause": "OECD GloBE Model Rules (Pillar Two), December 2021, Articles 5.5.1(a) and 5.5.1(b); Commentary March 2022, paragraphs 80 and 81",
      "mode": "strict < on the unrounded quotient; no pre-comparison rounding and no epsilon tolerance",
      "oracle": "declared — clause silent"
    }
  ],
  "cited_clause_source": [
    "https://www.oecd.org/content/dam/oecd/en/publications/reports/2021/12/tax-challenges-arising-from-digitalisation-of-the-economy-global-anti-base-erosion-model-rules-pillar-two_eed81a23/782bac33-en.pdf",
    "https://www.oecd.org/content/dam/oecd/en/publications/reports/2022/03/tax-challenges-arising-from-the-digitalisation-of-the-economy-commentary-to-the-global-anti-base-erosion-model-rules-pillar-two-first-edition_d97d7096/1e0e9cd8-en.pdf",
    "https://www.oecd.org/content/dam/oecd/en/topics/policy-sub-issues/global-minimum-tax/tax-challenges-arising-from-the-digitalisation-of-the-economy-global-anti-erosion-model-rules-pillar-two-examples.pdf"
  ],
  "cited_clause_digest": [
    {
      "digest": "sha256:6bc1e0fdf4a52150280168aedaedfcb311805668197d08b9c3584d9cf21066ae",
      "source_url": "https://www.oecd.org/content/dam/oecd/en/publications/reports/2021/12/tax-challenges-arising-from-digitalisation-of-the-economy-global-anti-base-erosion-model-rules-pillar-two_eed81a23/782bac33-en.pdf",
      "retrieved_at": "2026-08-17",
      "clause_path": "Article 5.5.1 through 5.5.4",
      "scheme": "oecd-globe",
      "id": "GloBE Model Rules Art 5.5"
    },
    {
      "digest": "sha256:3eb779f0a0b9f5c4f604f9fab212311b7a6e3824aed99cf462a7c9adc849d978",
      "source_url": "https://www.oecd.org/content/dam/oecd/en/publications/reports/2022/03/tax-challenges-arising-from-the-digitalisation-of-the-economy-commentary-to-the-global-anti-base-erosion-model-rules-pillar-two-first-edition_d97d7096/1e0e9cd8-en.pdf",
      "retrieved_at": "2026-08-17",
      "clause_path": "Commentary paras 80, 81, 84, 85, 91",
      "scheme": "oecd-globe",
      "id": "GloBE Commentary Art 5.5"
    },
    {
      "digest": "sha256:a39484003bbfbdaf40c2776fa935146528e95a356335d534e3f72271ffee6ec4",
      "source_url": "https://www.oecd.org/content/dam/oecd/en/topics/policy-sub-issues/global-minimum-tax/tax-challenges-arising-from-the-digitalisation-of-the-economy-global-anti-erosion-model-rules-pillar-two-examples.pdf",
      "retrieved_at": "2026-08-17",
      "clause_path": "Example 5.5.2-1",
      "scheme": "oecd-globe",
      "id": "GloBE Examples 5.5.2-1"
    }
  ],
  "clause_retrieved_date": "2026-08-17",
  "clause_snapshot_location": "research/clause-snapshots/OECD-GloBE-Model-Rules-Dec2021-oecd-2026-08-17.pdf; research/clause-snapshots/OECD-GloBE-Commentary-Mar2022-oecd-2026-08-17.pdf; research/clause-snapshots/OECD-GloBE-Examples-oecd-2026-08-17.pdf",
  "cited_clause_paragraphs": [
    "Model Rules Article 5.5.1(a) and 5.5.1(b), the two thresholds and the strict less-than comparison (p. 32)",
    "Model Rules Article 5.5.1 closing sentence, the exclusion is an Annual Election of the Filing Constituent Entity (p. 32)",
    "Model Rules Article 5.5.2, the current and two preceding Fiscal Years averaging window, and the second-sentence exclusion of a preceding year with no Constituent Entities carrying GloBE Revenue or GloBE Losses (p. 32)",
    "Model Rules Article 5.5.3(a) and 5.5.3(b), the definitions of GloBE Revenue and of GloBE Income or Loss of a jurisdiction, the latter being the Net GloBE Income if any, or the Net GloBE Loss (p. 32)",
    "Model Rules Article 5.5.4, Stateless Constituent Entities and Investment Entities are outside the election and their amounts are excluded from the Article 5.5.3 computations (pp. 32-33)",
    "Commentary paragraph 79, the election is an annual election (p. 130)",
    "Commentary paragraph 80, the two conditions restated, including the loss limb of Article 5.5.1(b) (p. 130)",
    "Commentary paragraph 81, the conditions are aggregate and cumulative, so failing one makes the jurisdiction ineligible: the CONJUNCTION authority (p. 130)",
    "Commentary paragraph 83, the thresholds are euro-denominated and conversion may be required (p. 130)",
    "Commentary paragraph 84, the three-year average, and that the current year's value whether income or loss is averaged: the LOSS-SIGN authority (p. 130)",
    "Commentary paragraph 85, years excluded from the computation to avoid skewing the average, including the first-GloBE-year case: the PARTIAL-WINDOW authority (pp. 130-131)",
    "Commentary paragraph 86, short Fiscal Years are annualised in proportion to the period covered, declared here as the caller's step (p. 131)",
    "Commentary paragraph 91, where the Chapter 3 difference is nil or negative the outcome is a loss and is the Net GloBE Loss (p. 132)",
    "Commentary paragraphs 92-93, post-filing ETR adjustments may re-open a prior year's averages, declared out of scope (pp. 132-133)",
    "Commentary paragraphs 95-96, why Article 5.5.4 excludes those entities and that their revenue and income leave the Article 5.5.3 computations (pp. 133-134)",
    "Examples document, Example 5.5.2-1 (p. 88), the OECD's own worked multi-year case with a loss year, used as the independent fixture oracle"
  ],
  "compute_proof_ready": "ready",
  "cycle_preflight": "FAST — 5,866,490 user_cycles max across all 6 fixture vectors (argmax v4), measured exec-only 2026-08-17 against the landed bytes on origin/main; 0.20x the 30,000,000 line.",
  "compute_proof": {
    "type": "ZkVmReceipt",
    "system": "risc0",
    "receiptFormat": "groth16-bn254",
    "imageId": "sha256:a1a0bc89b5b1febaeda3519f6dbade0fa5ac16beeb143c4e1b01689573567bc6",
    "seal": "L/aAU2iawt3aCUG91kqASVmejHBsIIs8CP8v0vrKznUII7t53LOWP5wsF6elhF0OP18UR3dAIMhg0esKnSI2ASudirBpJHkGWXM3QwDgov0692ZJ9EfsbFj/5sMCKfmICI2otljdAInlDRJAoxga8Q56wPpB+2IuwvPs+UkvCM8t7PnUsFW/NGwTKm4o3G/17jmEAU2CZcq7eqLDFRlAPRbWOzLljQqqv8QyGaA3UJ3KtNpL0DQQPNP8OR61FUQvHd+/rfcVeR3l1FVqYanyFWgbHgAJmnFWb9uO0qWj/90KRXkL9a5JyyEi5ugCXmhWPSTp9PMlaRTrwbEeMMBPzQ==",
    "journal": {
      "chaingraph_version": "0.4.0",
      "kernel_digest": "sha256:f15d513b3387a912f17ff6e10150595086fb1cb79cc8e858e25fcf457844db54",
      "output": {
        "average_globe_income_eur": 200000,
        "average_globe_income_is_loss": false,
        "average_globe_revenue_eur": 1500000,
        "averaging_window_years": 3,
        "de_minimis_available": false,
        "deemed_zero_topup": false,
        "election_made": true,
        "fiscal_year": 2026,
        "income_test_met": true,
        "jurisdiction": "Jurisdiction F",
        "manual_review_required": true,
        "max_years_enforced": 3,
        "notes": [
          "Fiscal Year 2025 supplied neither complete amounts nor an Art 5.5.2 no-Constituent-Entities declaration. It is held for review rather than defaulted.",
          "The declared averaging window is 3 Fiscal Years but only 2 were accounted for (included or declared excluded). The remaining years are neither present nor explained."
        ],
        "parameter_set_version": "oecd-globe-model-rules-2021-12",
        "partial_window_used": true,
        "revenue_test_met": true,
        "thresholds_applied": {
          "income_threshold_eur": 1000000,
          "income_threshold_provenance": {
            "effective_from": "2021-12-20",
            "effective_to": null,
            "source": "OECD GloBE Model Rules (Pillar Two), December 2021, Article 5.5.1(b)",
            "source_digest": "sha256:796d1a16fad360204a76450f5246e038263ef4bc652356f25d367d4b9389e306"
          },
          "revenue_threshold_eur": 10000000,
          "revenue_threshold_provenance": {
            "effective_from": "2021-12-20",
            "effective_to": null,
            "source": "OECD GloBE Model Rules (Pillar Two), December 2021, Article 5.5.1(a)",
            "source_digest": "sha256:796d1a16fad360204a76450f5246e038263ef4bc652356f25d367d4b9389e306"
          }
        },
        "years_evaluated": [
          {
            "fiscal_year": 2024,
            "globe_income_or_loss_eur": 300000,
            "globe_revenue_eur": 2000000,
            "is_loss_year": false,
            "status": "included"
          },
          {
            "fiscal_year": 2025,
            "globe_income_or_loss_eur": null,
            "globe_revenue_eur": null,
            "is_loss_year": null,
            "status": "missing_data"
          },
          {
            "fiscal_year": 2026,
            "globe_income_or_loss_eur": 100000,
            "globe_revenue_eur": 1000000,
            "is_loss_year": false,
            "status": "included"
          }
        ],
        "years_excluded_no_constituent_entities": 0,
        "years_included": 2
      }
    }
  }
}
