from pathlib import Path
import sys, shutil, subprocess
ROOT=Path(__file__).resolve().parents[1]
BASE=ROOT.parent
OLD=BASE/'2026-10-31_contextra-fight-r5-integration_r01'
sys.path.insert(0,str(BASE/'2026-10-29_contextra-fight-b-refine_r01/helpers'))
import control_refine as c
c.LOCAL=ROOT;c.REMOTE=c.old.RB+'/'+ROOT.name;c.REPORT=ROOT/'reports';c.PREFIX='ct-r5notify-1101-r01-'
if sys.argv[1]=='setup':
 c.REPORT.mkdir(exist_ok=True)
 c.checked_resources();c.snapshot('before')
 c.old.checked(['test','!','-e',c.REMOTE])
 for name in ('specs.json','sources.json','self_maps.json','feedback.json','cases.json','baseline_fingerprints.json'):
  shutil.copy2(OLD/name,ROOT/name)
 shutil.copy2(OLD/'helpers/bootstrap.py',ROOT/'helpers/bootstrap.py')
 subprocess.run(['tar','--exclude=__pycache__','-czf',str(ROOT/'source.tar.gz'),'-C','/workspace/contextra-analytics-runtime-lifecycle-refactor','app','tests'],check=True)
 c.old.checked(['mkdir',c.REMOTE],sudo=True);c.old.checked(['chown','si:si',c.REMOTE],sudo=True)
 c.old.checked(['mkdir','-p',c.REMOTE+'/reports',c.REMOTE+'/download',c.REMOTE+'/source'])
 for p in [ROOT/'helpers',ROOT/'source.tar.gz',*ROOT.glob('*.json')]:c.old.scp(str(p),'si@58.233.207.31:'+c.REMOTE+'/')
 c.old.checked(['tar','-xzf',c.REMOTE+'/source.tar.gz','-C',c.REMOTE+'/source'])
elif sys.argv[1]=='test':c.run_job('verify')
elif sys.argv[1]=='extra':
 c.old.scp('/workspace/contextra-analytics-runtime-lifecycle-refactor/tests/test_fight_notification_runtime.py','si@58.233.207.31:'+c.REMOTE+'/source/tests/')
 c.old.scp(str(ROOT/'helpers/extra.py'),'si@58.233.207.31:'+c.REMOTE+'/helpers/')
 c.run_job('extra')
elif sys.argv[1]=='finish':
 c.old.scp('si@58.233.207.31:'+c.REMOTE+'/download/.',str(ROOT/'results'))
 c.finish()
