import fs from'node:fs';import assert from'node:assert/strict';import{session}from'./sgf-single-http.mjs';const checks=[],ok=(v,n)=>{assert(v,n);checks.push(n);},s=await session('sgf:finance_review','accounting');let r=await s.get('/api/service-fiscal');ok(r.status===200&&r.headers.get('cache-control').includes('no-store'),'existing authorized fiscal reader private response');const d=await r.json(),c=d.coverage;ok(c.version==='SGF-FISCAL-COVERAGE-v3'&&c.taxes.length===7,'updated seven-family capability metadata');for(const id of['irps','inss']){const t=c.taxes.find(t=>t.id===id);ok(t.state==='partial'&&t.available&&t.legal_use===false,'actual internal coverage and legal gap '+id);}ok(c.management.some(m=>m.id==='human_resources'&&m.available.includes('férias')&&m.available.includes('autónomo')),'HR autonomous delivered capabilities visible');ok(c.management.find(m=>m.id==='accounting').pending.includes('Activos')&&!c.legal_validation&&!c.official_submission_enabled,'assets and legal activation remain pending');ok(!JSON.stringify(c).includes('QA-COLABORADOR-01')&&Array.isArray(d.proposals)&&d.migration_pending===false,'metadata does not reveal worker records or alter fiscal proposal list');const hr=await session('hr:hr_read','human_resources');r=await hr.get('/api/service-fiscal');ok([403,409].includes(r.status),'metadata reconciliation grants no fiscal access to HR');const root=JSON.parse(fs.readFileSync('C:/laragon/data/sgf-tempo/run/modular-regression-current.json')).root+'/private/receipt-composition-cc50a276c10c',file=root+'/coverage-reconciliation-http-20261111.json';fs.writeFileSync(file,JSON.stringify({passed:true,checks,business_commands:0,new_grants:0,browser_visual_review:false},null,2));console.log(JSON.stringify({passed:true,checks:checks.length,proof:file}));