{
    "ok": true,
    "_meta": {
        "validator": "oppl_complex_asset_json_validator",
        "validator_version": "1.1.17",
        "captured_at_utc": "2026-08-09T19:19:07+00:00",
        "captured_unix": 1786303147,
        "input_source": "url",
        "input_url": "https://oppl.ai/llms/runs/etf/IE0002W8NB38_ucits_default_latest.json",
        "source_assessment_hash": "1a2a7f2c9e85b59e551e9b5ddc7e03f079e3634df91294969578312770e5f24c",
        "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": "IE0002W8NB38",
    "classification": "non-complex",
    "policy_mode": "ucits_default",
    "decision_rule_applied": "etf_ucits_no_complex_override_rule",
    "source_classification": null,
    "source_decision_rule_applied": null,
    "resolution": {
        "applied": false
    },
    "validator_verdict": "warn",
    "publishable": true,
    "confidence": 0.78,
    "issue_count": 1,
    "issues": [
        {
            "severity": "warn",
            "code": "unsubstantiated_hard_signal_on_non_complex_synthetic_replication",
            "message": "signals.synthetic_replication=true but no supporting_evidence quote directly substantiates that hard-complex feature. Because the signal itself is not evidentially substantiated, it must not be used by the validator to overturn an otherwise coherent non-complex classification."
        }
    ],
    "suggested_repairs": [
        "Remove or downgrade unsupported synthetic_replication, or add product-specific evidence for it. Until supported, treat it as an evidence-quality flag rather than a classification contradiction.",
        "Remove or downgrade unsupported synthetic_replication signal, or add product-specific evidence explicitly describing synthetic replication (e.g. 'synthetic replication', 'indirect replication methodology', or 'total return swap delivering index performance'). Until supported, treat synthetic_replication as an evidence-quality flag rather than a classification contradiction."
    ],
    "reassessment": {
        "required": false
    },
    "deterministic_review": {
        "ok": true,
        "validator_type": "deterministic",
        "validator_verdict": "warn",
        "publishable": true,
        "confidence": 0.78,
        "issues": [
            {
                "severity": "warn",
                "code": "unsubstantiated_hard_signal_on_non_complex_synthetic_replication",
                "message": "signals.synthetic_replication=true but no supporting_evidence quote directly substantiates that hard-complex feature. Because the signal itself is not evidentially substantiated, it must not be used by the validator to overturn an otherwise coherent non-complex classification."
            }
        ],
        "suggested_repairs": [
            "Remove or downgrade unsupported synthetic_replication, or add product-specific evidence for it. Until supported, treat it as an evidence-quality flag rather than a classification contradiction."
        ],
        "reassessment": {
            "required": false
        },
        "resolution": {
            "applied": false
        },
        "decisive_signal_evidence": {
            "checked": true,
            "decision_rule_signal": null,
            "decision_rule_signal_true": null,
            "decision_rule_signal_supported": null,
            "decision_rule_matching_evidence_count": null,
            "decision_rule_matches": [],
            "true_hard_signals": [
                "synthetic_replication"
            ],
            "supported_hard_signals": [],
            "unsupported_hard_signals": [
                "synthetic_replication"
            ],
            "checks": {
                "synthetic_replication": {
                    "signal_true": true,
                    "direct_evidence": false,
                    "matching_evidence_count": 0,
                    "decision_rule_uses_signal": false,
                    "matches": []
                }
            }
        },
        "derivative_materiality": {
            "checked": true,
            "policy_mode": "ucits_default",
            "type": "ETF",
            "ucits": true,
            "physical_replication": false,
            "swaps_signal": true,
            "synthetic_replication": true,
            "derivatives_core_strategy": true,
            "derivatives_epm_only": false,
            "derivative_evidence_count": 4,
            "swap_evidence_count": 3,
            "permission_or_ancillary_evidence_count": 0,
            "core_derivative_evidence_count": 2,
            "only_permission_or_ancillary_derivative_evidence": false,
            "supported_independent_hard_signals": []
        },
        "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": true,
            "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": 4234,
            "completion_tokens": 434,
            "total_tokens": 4668,
            "raw": {
                "prompt_tokens": 4234,
                "completion_tokens": 434,
                "total_tokens": 4668,
                "cost": 0.001812,
                "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.001812,
                    "upstream_inference_prompt_cost": 0.0011176,
                    "upstream_inference_completions_cost": 0.0006944
                },
                "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": 4234,
            "completion_tokens": 434,
            "total_tokens": 4668,
            "input_cost_usd": 0.0011176,
            "output_cost_usd": 0.0006944,
            "estimated_cost_usd": 0.001812,
            "pricing_basis": "openrouter_usage_cost"
        },
        "review": {
            "validator_verdict": "warn",
            "publishable": true,
            "confidence": 0.78,
            "summary": "The assessment is internally consistent and publishable with warnings. The classification as non-complex under the ucits_default mode with decision_rule_applied 'etf_ucits_no_complex_override_rule' is coherent given the evidence. The derivatives_core_strategy signal is directly supported by product-specific evidence (total return swaps) and is consistent with synthetic replication and swap usage. However, the synthetic_replication signal is flagged as unsubstantiated by deterministic QA because no direct quote explicitly uses the term 'synthetic replication' or equivalent phrasing, despite indirect evidence of synthetic exposure via swaps. There is no conflict between derivatives_epm_only (false) and derivatives_core_strategy (true). All supporting_evidence signal labels match their quotes. No unsupported additional hard signals are present. The counterparty_risk signal is supported by direct evidence. The product is a synthetic UCITS ETF with swap-based core derivative strategy, appropriately classified as non-complex in ucits_default mode. The warnings relate to evidence hygiene around synthetic_replication terminology and do not undermine the classification or publishability. No repair is strictly required but removing or clarifying the synthetic_replication signal or adding explicit synthetic replication wording in evidence is recommended.",
            "issues": [
                {
                    "severity": "warn",
                    "code": "unsubstantiated_hard_signal_on_non_complex_synthetic_replication",
                    "message": "signals.synthetic_replication=true but no supporting_evidence quote directly substantiates that hard-complex feature. Because the signal itself is not evidentially substantiated, it must not be used by the validator to overturn an otherwise coherent non-complex classification."
                }
            ],
            "suggested_repairs": [
                "Remove or downgrade unsupported synthetic_replication signal, or add product-specific evidence explicitly describing synthetic replication (e.g. 'synthetic replication', 'indirect replication methodology', or 'total return swap delivering index performance'). Until supported, treat synthetic_replication as an evidence-quality flag rather than a classification contradiction."
            ]
        }
    }
}