{
    "ok": true,
    "_meta": {
        "validator": "oppl_complex_asset_json_validator",
        "validator_version": "1.1.16",
        "captured_at_utc": "2026-08-09T15:21:59+00:00",
        "captured_unix": 1786288919,
        "input_source": "url",
        "input_url": "https://oppl.ai/llms/runs/etf/GB00B15KYL00_strict_latest.json",
        "source_assessment_hash": "db486631001ea7b7338d277deb5af882bd01c3f6f8d3054ef855fddf7f1a7359",
        "agent_enabled": true,
        "agent_provider": "openrouter",
        "agent_model": "gpt-4.1-mini",
        "agent_temperature": 0,
        "agent_max_tokens": 1800,
        "warn_short_agent": true,
        "validator_modes": {
            "deterministic": "executed",
            "agent": "executed"
        }
    },
    "isin": "GB00B15KYL00",
    "classification": "complex",
    "policy_mode": "strict",
    "decision_rule_applied": "etc_priips_comprehension_alert_hard_complex_rule",
    "source_classification": null,
    "source_decision_rule_applied": null,
    "resolution": {
        "applied": false
    },
    "validator_verdict": "pass",
    "publishable": true,
    "confidence": 0.88,
    "issue_count": 0,
    "issues": [],
    "suggested_repairs": [],
    "reassessment": {
        "required": false
    },
    "deterministic_review": {
        "ok": true,
        "validator_type": "deterministic",
        "validator_verdict": "pass",
        "publishable": true,
        "confidence": 0.88,
        "issues": [],
        "suggested_repairs": [],
        "reassessment": {
            "required": false
        },
        "resolution": {
            "applied": false
        },
        "decisive_signal_evidence": {
            "checked": true,
            "decision_rule_signal": "priips_comprehension_alert",
            "decision_rule_signal_true": true,
            "decision_rule_signal_supported": true,
            "decision_rule_matching_evidence_count": 1,
            "decision_rule_matches": [
                {
                    "index": 0,
                    "source": "PRIIPS_KID",
                    "evidence_signal": "priips_comprehension_alert",
                    "quote": "You are about to purchase a product that is not simple and may be difficult to understand."
                }
            ],
            "true_hard_signals": [
                "synthetic_replication",
                "commodity_futures_roll",
                "contango_backwardation"
            ],
            "supported_hard_signals": [
                "synthetic_replication",
                "commodity_futures_roll",
                "contango_backwardation"
            ],
            "unsupported_hard_signals": [],
            "checks": {
                "synthetic_replication": {
                    "signal_true": true,
                    "direct_evidence": true,
                    "matching_evidence_count": 1,
                    "decision_rule_uses_signal": false,
                    "matches": [
                        {
                            "index": 1,
                            "source": "FACTSHEET",
                            "evidence_signal": "synthetic_replication",
                            "quote": "Replication Method Synthetic - fully funded collateralised swap"
                        }
                    ]
                },
                "commodity_futures_roll": {
                    "signal_true": true,
                    "direct_evidence": true,
                    "matching_evidence_count": 1,
                    "decision_rule_uses_signal": false,
                    "matches": [
                        {
                            "index": 3,
                            "source": "FACTSHEET",
                            "evidence_signal": "commodity_futures_roll",
                            "quote": "The Index is designed to reflect the movement in the price of the futures contracts (that are continuously rolled on a pre-determined rolling schedule) of the grains commodities used in the Bloomberg Commodity Index SM"
                        }
                    ]
                },
                "contango_backwardation": {
                    "signal_true": true,
                    "direct_evidence": true,
                    "matching_evidence_count": 1,
                    "decision_rule_uses_signal": false,
                    "matches": [
                        {
                            "index": 4,
                            "source": "FACTSHEET",
                            "evidence_signal": "contango_backwardation",
                            "quote": "This market trend is known as 'contango'. Alternatively the contracts being purchased may be cheaper than the ones being sold which would result in an additional gain, known as 'backwardation'."
                        }
                    ]
                },
                "priips_comprehension_alert": {
                    "signal_true": true,
                    "direct_evidence": true,
                    "matching_evidence_count": 1,
                    "decision_rule_uses_signal": true,
                    "matches": [
                        {
                            "index": 0,
                            "source": "PRIIPS_KID",
                            "evidence_signal": "priips_comprehension_alert",
                            "quote": "You are about to purchase a product that is not simple and may be difficult to understand."
                        }
                    ]
                }
            }
        },
        "derivative_materiality": {
            "checked": true,
            "policy_mode": "strict",
            "type": "ETC",
            "ucits": false,
            "physical_replication": false,
            "swaps_signal": true,
            "synthetic_replication": true,
            "derivatives_core_strategy": true,
            "derivatives_epm_only": false,
            "derivative_evidence_count": 2,
            "swap_evidence_count": 2,
            "permission_or_ancillary_evidence_count": 0,
            "core_derivative_evidence_count": 2,
            "only_permission_or_ancillary_derivative_evidence": false,
            "supported_independent_hard_signals": [
                "synthetic_replication",
                "commodity_futures_roll",
                "contango_backwardation"
            ]
        },
        "source_decisive_signal_evidence": null,
        "source_derivative_materiality": null,
        "detected_features": {
            "helo_or_core_options_overlay": false,
            "physical_replication": false,
            "physical_replication_direct_evidence": false,
            "physical_replication_evidence_count": 0,
            "has_epm_only_evidence": false,
            "has_core_derivatives_evidence": false,
            "has_generic_fdi_permission_evidence": false,
            "has_option_overlay_evidence": false
        }
    },
    "agent_review": {
        "ok": true,
        "model": "gpt-4.1-mini",
        "temperature": 0,
        "max_tokens": 1800,
        "usage": {
            "prompt_tokens": 4698,
            "completion_tokens": 198,
            "total_tokens": 4896,
            "raw": {
                "prompt_tokens": 4698,
                "completion_tokens": 198,
                "total_tokens": 4896,
                "cost": 0.00162,
                "is_byok": false,
                "prompt_tokens_details": {
                    "cached_tokens": 1920,
                    "cache_write_tokens": 0,
                    "audio_tokens": 0,
                    "video_tokens": 0
                },
                "cost_details": {
                    "upstream_inference_cost": 0.00162,
                    "upstream_inference_prompt_cost": 0.0013032,
                    "upstream_inference_completions_cost": 0.0003168
                },
                "completion_tokens_details": {
                    "reasoning_tokens": 0,
                    "image_tokens": 0,
                    "audio_tokens": 0
                }
            }
        },
        "cost": {
            "estimated": false,
            "actual_provider_cost_available": true,
            "model": "gpt-4.1-mini",
            "prompt_tokens": 4698,
            "completion_tokens": 198,
            "total_tokens": 4896,
            "input_cost_usd": 0.0013032,
            "output_cost_usd": 0.0003168,
            "estimated_cost_usd": 0.00162,
            "pricing_basis": "openrouter_usage_cost"
        },
        "review": {
            "validator_verdict": "pass",
            "publishable": true,
            "confidence": 0.93,
            "summary": "The assessment is internally consistent with classification=complex supported by the priips_comprehension_alert decision rule and directly evidenced hard-complex signals including synthetic_replication, commodity_futures_roll, and contango_backwardation. All supporting_evidence signal labels correctly match their quotes. The hard-complex derivative_core_strategy signal is directly proven by product-specific synthetic replication and swap evidence. There is no conflict between derivatives_epm_only (false) and derivatives_core_strategy (true). Derivative wording proves actual synthetic replication and core derivative strategy, not just permission or ancillary use. No HELO or option overlay strategy is present, so no reclassification needed. The deterministic validator confirms no reassessment or resolution is required. The product is publishable as-is with no repair needed.",
            "issues": [],
            "suggested_repairs": []
        }
    }
}