asset: 归档第一集已生成镜头与测试素材,排除可再生缓存

This commit is contained in:
2026-10-01 00:35:36 +08:00
parent 0da2659df2
commit f900237d96
1719 changed files with 264761 additions and 0 deletions
@@ -0,0 +1,30 @@
"""Read-only, bounded live progress listener for the currently submitted test."""
import argparse
import asyncio
import json
import time
import websockets
async def watch(client):
async with websockets.connect('ws://192.168.10.51:8188/ws?clientId=' + client, max_size=2**22) as ws:
deadline = time.monotonic() + 45
while time.monotonic() < deadline:
try:
raw = await asyncio.wait_for(ws.recv(), timeout=max(0.1, deadline-time.monotonic()))
except asyncio.TimeoutError:
break
if not isinstance(raw,str):
continue
event = json.loads(raw)
kind, data = event.get('type'), event.get('data',{})
if kind == 'progress_state':
print(json.dumps({'type':kind,'data':data},ensure_ascii=False)[:2400],flush=True)
if kind in ('progress','executing','execution_error','execution_success','status'):
if kind == 'execution_error':
data = {k:data.get(k) for k in ('prompt_id','node_id','exception_type','exception_message')}
print(json.dumps({'type':kind,'data':data},ensure_ascii=False),flush=True)
if __name__ == '__main__':
p = argparse.ArgumentParser()
p.add_argument('client')
asyncio.run(watch(p.parse_args().client))