{
  "tool_id": "art-636-globe-transition-deferred-tax-tracker",
  "kernel_id": "art-636-globe-transition-deferred-tax-tracker",
  "display_name": "GloBE Article 9.1 Transition Deferred Tax Tracker",
  "tool_version": "1.0.0",
  "mandate_type": "compliance_mandate",
  "purpose": "Recomputes the OECD GloBE Article 9.1 transition recast for a jurisdiction, item by item, over a bounded array of caller-declared deferred tax attributes, and reports the jurisdictional roll-forward total. Article 9.1.1 takes attributes into account at the lower of the Minimum Rate or the applicable domestic tax rate. That lower-of rule operates as a cap rather than an upward re-measurement, so an attribute already recorded at or below it is left where it is; the guidance worked example states the same outcome from the other side, and reading it as an unconditional re-measurement would leave Article 9.1.1's third sentence nothing to do. That third sentence is the single path on which a recast rises above the recorded figure: a deferred tax asset recorded below the Minimum Rate may be taken at the Minimum Rate where the taxpayer demonstrates it is attributable to a GloBE Loss, so the node treats the demonstration as a caller declaration and falls back to the general cap when it is absent. The impact of a valuation or accounting recognition adjustment is disregarded, which requires the gross figure from the caller. Article 9.1.2 exclusions apply only where a declared limb holds and, on the date keyed limbs, the attribute arose strictly after the cut off, so an attribute arising on the cut off day itself is not excluded; each exclusion is reported with a named code and contributes exactly zero, never merely dropped from the report. Article 9.1.3 recasts an intra group transfer falling after the cut off and before the Transition Year on the disposing entity's carrying value. The Minimum Rate, the cut off date, the Transition Year start and the enabled exclusion set all arrive as versioned policy parameters, so a guidance change is a parameter version bump and never moves the kernel digest. The item array is bounded by a declared kernel constant and an over length input is a named error rather than a longer loop. Items are reported and summed in a declared total order keyed on arising date, attribute type, carrying amount and input index, so the total never depends on the order the caller supplied, and it equals the sum of the reported per item recasts at the declared precision. Verify only: this node does not characterize an attribute, does not decide whether an arrangement is governmental, does not decide whether a GloBE Loss demonstration succeeds, and does not compute the Grace Period or Grace Period Limitation, which govern deferred tax expense on reversal under a separate computation. Where a characterization is absent, or a recast cannot be justified from a declared parameter, the item carries a manual review flag or a named error code instead of a silently computed number.",
  "control_description": "Recomputes the OECD GloBE Article 9.1 transition recast for a jurisdiction, item by item, over a bounded array of caller-declared deferred tax attributes, and reports the jurisdictional roll-forward total. Article 9.1.1 takes attributes into account at the lower of the Minimum Rate or the applicable domestic tax rate. That lower-of rule operates as a cap rather than an upward re-measurement, so an attribute already recorded at or below it is left where it is; the guidance worked example states the same outcome from the other side, and reading it as an unconditional re-measurement would leave Article 9.1.1's third sentence nothing to do. That third sentence is the single path on which a recast rises above the recorded figure: a deferred tax asset recorded below the Minimum Rate may be taken at the Minimum Rate where the taxpayer demonstrates it is attributable to a GloBE Loss, so the node treats the demonstration as a caller declaration and falls back to the general cap when it is absent. The impact of a valuation or accounting recognition adjustment is disregarded, which requires the gross figure from the caller. Article 9.1.2 exclusions apply only where a declared limb holds and, on the date keyed limbs, the attribute arose strictly after the cut off, so an attribute arising on the cut off day itself is not excluded; each exclusion is reported with a named code and contributes exactly zero, never merely dropped from the report. Article 9.1.3 recasts an intra group transfer falling after the cut off and before the Transition Year on the disposing entity's carrying value. The Minimum Rate, the cut off date, the Transition Year start and the enabled exclusion set all arrive as versioned policy parameters, so a guidance change is a parameter version bump and never moves the kernel digest. The item array is bounded by a declared kernel constant and an over length input is a named error rather than a longer loop. Items are reported and summed in a declared total order keyed on arising date, attribute type, carrying amount and input index, so the total never depends on the order the caller supplied, and it equals the sum of the reported per item recasts at the declared precision. Verify only: this node does not characterize an attribute, does not decide whether an arrangement is governmental, does not decide whether a GloBE Loss demonstration succeeds, and does not compute the Grace Period or Grace Period Limitation, which govern deferred tax expense on reversal under a separate computation. Where a characterization is absent, or a recast cannot be justified from a declared parameter, the item carries a manual review flag or a named error code instead of a silently computed number.",
  "declared_inputs": [],
  "declared_outputs": [],
  "kernel_digest": "sha256:381375695efa58f8b47e3c7ea2e6ab96ceb63350656696fc6ac4c4ae24d24086",
  "trust_label": "deferred: deterministic source published, zkVM proof not yet generated; New gpu:false node, art-636, built 2026-08-17. Tim ruled on 2026-08-15 that nodes are not being re-proven at this time, so no GPU prove was run, none was booked, and none is proposed by this row; section 18 proving is a separate future row gated on proving resuming. This is a ratchet-visible deferral per the section 18 steady-state rule (RIDER-KERNEL.md), never a silent claim of proof. Note for whoever eventually runs GPU-CYCLE-PREFLIGHT-1: compute() contains no in-guest signature or hash verification, no loop bound taken from policy_parameters (the item array is bounded by the declared kernel constant MAX_DTA_ITEMS = 500), and no transcendental at all, not even Math.sqrt; arithmetic is comparison, addition, multiplication, division, Math.min and Math.round only, so the static pre-screen predicts FAST. A prediction is not a measurement: measure user_cycles with runq-cpu exec before booking. This shard adds one deferred node and therefore raises the section 18 ratchet baseline, which is declared here rather than silent; --update-baseline was deliberately not run by this row.",
  "data_vintage": "2026-07-10",
  "last_validated": "2026-07-10",
  "conformance_fixtures_vendored": true,
  "compute_proof_ready": "deferred",
  "wave": 103,
  "source_url": "https://ainumbers.co/chaingraph/art-636-globe-transition-deferred-tax-tracker.html",
  "generated_at": "2026-08-17T16:30:54.257Z"
}
