import sqlite3,subprocess,json,time
D='/opt/hermes-commander-next-data'; H='/opt/hermes-commander-next/venv/bin/hermes'; C=sqlite3.connect('file:'+D+'/state.db?mode=ro',uri=True); before={r[0] for r in C.execute('select id from sessions')}; r=subprocess.run(['runuser','-u','hermes-commander','--','env','HERMES_HOME='+D,H,'-z','Antworte ausschließlich mit COMMANDER_NEXT_AFTER_RECUTOVER_OK'],text=True,capture_output=True); time.sleep(1); C=sqlite3.connect('file:'+D+'/state.db?mode=ro',uri=True); after={r[0] for r in C.execute('select id from sessions')}; ids=sorted(after-before); print(json.dumps({'rc':r.returncode,'stdout':r.stdout,'stderr':r.stderr,'new_ids':ids},separators=(',',':'))); assert r.returncode==0 and r.stdout.strip()=='COMMANDER_NEXT_AFTER_RECUTOVER_OK' and len(ids)==1