Record exact-SHA scale and extended G samples, same-source blur measurements and retained negative saved/input results. Keep STEP20C NEXT and production multi-output unsupported; no production integration. Preserve immutable probe fixtures, offline regressions and compact artifact provenance. Fourteen consumed runs / 125 output captures, independent final audit accepted. Saved timeout/GPU lifetime, whole-H1 return, input after camera mutation and all-frame damage remain open.
31 lines
2.6 KiB
Python
31 lines
2.6 KiB
Python
"""Independent EXPERIMENTAL plans; old 18-run ledger remains read only."""
|
|
from pathlib import Path
|
|
HIST=Path('/home/fy59/swayfx-mosaic-overnight-mcolx0gq')
|
|
DEFAULT_LAB=Path('/home/fy59/swayfx-mosaic-targeted-7gge6h8b')
|
|
ROOT=Path(__file__).resolve().parents[3]
|
|
BASE=ROOT/'tooling/probes/step20c-static-e2-completion'
|
|
MATRIX=ROOT/'tooling/probes/step20c-overnight/matrix'
|
|
PRISTINE=Path('/home/fy59/swayfx-mosaic-optimized-edge-a55yjb8n/pristine-build/sway/sway')
|
|
SCENE=Path('/home/fy59/swayfx-mosaic-optimized-edge-a55yjb8n/scene0-build/libscenefx-0.5.so').resolve()
|
|
BINARIES={
|
|
'A':(HIST/'stage-static/usr/bin/swayfx-mosaic','979dcd95ab43fa1e465d6e9d262485b73d186cedacd0f957059dd24f482ce6f4'),
|
|
'G':(HIST/'release-shape/stage-static/usr/bin/swayfx-mosaic','8063478b2d5948da3eb8b1a329978882dc1d045cf36932cc2145a78af20ba76a'),
|
|
'pristine':(PRISTINE,'8ac865481bc0487344210cd0e16d8e6c7655b29db887cd58ddc11b0ca22fe494')}
|
|
WLROOTS=Path('/usr/lib/libwlroots-0.20.so').resolve()
|
|
WLROOTS_SHA='7edca9a7d65855addda68e29ba5db94d57c803eb5fa7d0f86db3136b90ca9837'
|
|
CAPS={'scale':24,'saved':30,'FX':48,'input':36,'G':36}
|
|
RUN_CAPS={'scale':2,'saved':3,'FX':3,'input':3,'G':3}
|
|
NORMAL=[dict(name='HEADLESS-1',logical=[-800,0,800,600],mode=[800,600],scale=1,transform='normal'),dict(name='HEADLESS-2',logical=[0,0,800,600],mode=[800,600],scale=1,transform='normal')]
|
|
SCALE=[{**NORMAL[0],'mode':[1000,750],'scale':1.25},NORMAL[1]]
|
|
ROTATE=[{**NORMAL[0],'mode':[750,1000],'scale':1.25,'transform':'90'},NORMAL[1]]
|
|
RUNS={}
|
|
def plan(campaign,variant,case,outputs=NORMAL,marker=False,capture=12):
|
|
rid=f'{campaign}-{variant}' if case==campaign else f'{campaign}-{case}-{variant}'
|
|
RUNS[rid]=dict(id=rid,campaign=campaign,case=case,variant=variant,mode='pristine' if variant=='pristine' else 'mosaic',outputs=outputs,marker=marker,client='nested-client',placement='static_cross',axis=0,boundary=0,
|
|
limits=dict(capture=capture,click=14,move=20,grab=2,chain=1,camera=4,mutation=28,configuration=64,spawn=12),duration_s=150,active_watchdog_s=143,
|
|
status='PLANNED',ceilings=['atomic generation NOT PROVEN','native saved identity NOT OBSERVABLE','complete damage/lifetime NOT PROVEN','STEP20C NEXT; production multi-output NOT YET SUPPORTED'])
|
|
for v in ('A','G'):plan('scale',v,'scale',SCALE,True,12);plan('saved',v,'saved',capture=10)
|
|
for v in ('pristine','A','G'):plan('input',v,'input',capture=12);plan('FX',v,'FX',capture=16)
|
|
for c in ('dynamic','hidden','R90'):plan('G','G',c,ROTATE if c=='R90' else NORMAL,c=='R90',{'dynamic':14,'hidden':12,'R90':10}[c])
|
|
# Diagnostic is a separate reserved run, disabled until the parent records a decision.
|
|
DIAGNOSTIC_ID='saved-diagnostic-A'
|