#!/usr/bin/env python3
"""Record real meal-plan XLSX downloads, with original tooling failures retained."""
import base64
import hashlib
import json
import subprocess
from pathlib import Path
import integrate_20261010 as tool
from integrate_20261011_batches46_48 import item

HERE = Path(__file__).resolve().parent
PRIVATE = tool.ROOT.parent.parent / 'local/dm8-store-purchase-read3-20261012.L5dTYR/stage3/template-export184-20261013'
BASE = 'work_store/apifox/2026-09-30-dm8-interface-acceptance/parallel-meal-plan-xlsx-20261013/'


def verify():
    for name, digest in [
        ('REPORT.md', 'de3346ea27093f244456e573d338321016e32858a6f656f1eb3d42394a3c42cb'),
        ('manifest.json', '6993433ed4c5486a9e5e22c9eb38fcfc2dba714c665acb3f547253aff65d1a86'),
        ('verify.py', '941e25017ef86de29b8687b84a788a82cdb2ccf9e26380c21bb925081b2bc6b3'),
        ('source184.json', 'efe342ed015c4e99c8c3b1885ee8aa78dd961547d11f9c5911fb95c6bfbce35b'),
    ]:
        assert hashlib.sha256((PRIVATE / name).read_bytes()).hexdigest() == digest
    r = json.loads(subprocess.check_output(['python3', str(PRIVATE / 'verify.py')]))
    assert r['checks'] == 1029 and r['assets'] == 180
    assert r['selected_HTTP'] == 6 and r['failed_business_HTTP'] == 5 and r['health_HTTP'] == 2
    assert r['fixture_INSERT'] == 1 and r['other_DML_DDL_txn_external'] == 0
    assert r['B_reads'] == 48 and r['C_budget_reads'] == 107 and r['C_actual_SELECT_execute'] == 106
    for lane, label in [('B', 'T1R'), ('B', 'T2R'), ('C', 'T2R'), ('C', 'T4')]:
        c = json.loads((PRIVATE / lane / ('client-' + label + '.json')).read_text())
        headers = {key.lower(): value for key, value in c['headers'].items()}
        assert headers['content-type'] == 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'
        assert headers['content-disposition'].startswith('attachment; filename=')
        assert headers['content-disposition'].endswith('.xlsx')
        assert base64.b64decode(c['original_body_base64']).startswith(b'PK')
    for spec in json.loads((PRIVATE / 'source184.json').read_text())['files']:
        if spec['path'].startswith('application/'):
            assert hashlib.sha256((tool.source_root('store') / spec['path']).read_bytes()).hexdigest() == spec['sha256']


if __name__ == '__main__':
    audit = HERE / 'integration-20261013-batch184.json'
    assert not audit.exists(), 'Never replay completed matrix integration'
    specs = [item('store', 'GET', '/p/bill/exportMealPlanTemplate', BASE,
        risk='actual-original-XLSX-writer-real-recipe-join-no-external',
        readback='tested-pass-B29-C1-source-projection-to-XLSX-cells-native-types-order-date-style',
        parity='partial-evidence-each-source-verified-XLSX-not-equal-historical-data',
        success_case='partial-evidence-nonempty-original-export-C-owned-historical-association',
        boundary_empty_min_max='partial-evidence-empty-header-only-and-over31day-original-rejection',
        cleanup='own-workers-tokens-cache-zero-single-C-synthetic-recipe-retained-protected-source-unchanged')]
    tool.main(specs, audit, verify)
