#!/usr/bin/env python3 """Run every example under examples/openai/{responses,chat,conversations} once, stamp the STATUS header line, and write examples/manifest-openai-core.json.""" from __future__ import annotations import json, re, subprocess, sys, time from pathlib import Path ROOT = Path('/Users/simon-pierreboucher/Desktop/doc-api') DIRS = ['examples/openai/responses', 'examples/openai/chat', 'examples/openai/conversations'] TODAY = '2026-09-18' only = set(sys.argv[1:]) records = [] for d in DIRS: for f in sorted((ROOT / d).iterdir()): if f.suffix not in ('.sh', '.py', '.ts') or (only and f.name not in only and str(f.relative_to(ROOT)) not in only): continue rel = str(f.relative_to(ROOT)) cmd = {'sh': ['bash', rel], 'py': ['.venv/bin/python', rel], 'ts': ['node', '--env-file=.env', '--experimental-strip-types', rel]}[f.suffix[1:]] t0 = time.time() try: p = subprocess.run(cmd, cwd=ROOT, capture_output=True, text=True, timeout=240) ok, out, err = p.returncode == 0, p.stdout, p.stderr except subprocess.TimeoutExpired as e: ok, out, err = False, (e.stdout or ''), 'TIMEOUT ' + (e.stderr or '') dur = round(time.time() - t0, 1) status = 'LIVE_VERIFIED' if ok else 'FAILED_VERIFICATION' err_short = re.sub(r'sk-[A-Za-z0-9_-]{8,}', 'sk-***', (err.strip().splitlines() or [''])[-1])[:300] note = f'exit 0 in {dur}s' if ok else f'exit {getattr(p, "returncode", "?")} in {dur}s: {err_short}' # stamp header text = f.read_text() marker = '# STATUS:' if f.suffix != '.ts' else '// STATUS:' stamp = f'{marker} {status} — executed {TODAY} ({note})' if ok else f'{marker} {status} — executed {TODAY} ({note})' text = re.sub(r'^(#|//) STATUS:.*$', lambda m: stamp, text, count=1, flags=re.M) f.write_text(text) records.append({'provider': 'openai', 'area': d.split('/')[-1], 'file': rel, 'language': {'sh': 'bash/curl', 'py': 'python', 'ts': 'typescript'}[f.suffix[1:]], 'status': status, 'verified_at': TODAY, 'notes': note, 'stdout_tail': re.sub(r'sk-[A-Za-z0-9_-]{8,}', 'sk-***', out.strip())[-400:]}) print(f'[{status}] {rel} {note}', flush=True) if not ok: print(' stderr:', err.strip()[-800:], flush=True) manifest = ROOT / 'examples/manifest-openai-core.json' old = json.loads(manifest.read_text())['examples'] if manifest.exists() else [] merged = {r['file']: r for r in old} for r in records: merged[r['file']] = r manifest.write_text(json.dumps({'_generated_by': 'tmp/openai-core/run_examples.py', 'generated_at': TODAY, 'examples': sorted(merged.values(), key=lambda r: r['file'])}, indent=1)) print('manifest:', manifest, len(merged), 'examples;', sum(r['status'] == 'LIVE_VERIFIED' for r in merged.values()), 'verified')