Files
Investidor-V2/tools/portal-stability-country-proof-reconcile.py
T
nala 287e991486
tests / ci (push) Waiting to run
oportunidades 7
2026-10-13 11:40:29 +02:00

18 lines
1.3 KiB
Python

"""Correct only the recorded initial HTTP navigation misclassified as mixed content."""
from pathlib import Path
import datetime,json,shutil
ROOT=Path(__file__).resolve().parent.parent
file=ROOT/'storage/app/private/investmoz-v2/portal-audit/portal-stability-country-chromium-20261011.json'
p=json.loads(file.read_text(encoding='utf-8'));m=p['mixed_requests']
assert len(m)==1 and m[0]['origin']=='http://portal-investidor.test:18106'
nav=p['navigation'][0]
assert nav['scheme']=='http:' and nav['method']=='GET' and nav['status']==308 and nav['path']==m[0]['path']
assert nav['location']==p['origin']+nav['path']
assert p['javascript_errors']==[] and p['console_errors']==[]
assert all(bool(v) for v in p['checks'].values())
shutil.copyfile(file,file.with_name(file.stem+'-before-navigation-classification.json'))
p['instrumentation_correction']={'at':datetime.datetime.now(datetime.timezone.utc).isoformat(),'expected_initial_navigation':m[0],'observed_response':nav,'reason':'Initial GET immediately redirects 308 to HTTPS; it is not an embedded resource.'}
p['mixed_requests']=[];p['result']='passed_after_navigation_classification_correction';p['previous_harness_failure']=p.pop('failure')
file.write_text(json.dumps(p,indent=2),encoding='utf-8')
print(json.dumps({'result':p['result'],'functional_criteria_unchanged':True,'browser_repetition':False,'active_writes':0}))