#!/usr/bin/env python3
import json
from pathlib import Path
from datetime import datetime

ROOT = Path('/Users/openclaw/.openclaw/workspace')
SRC = ROOT / 'knowledge/rules/pending-promotions.md'
OUT = ROOT / 'tmp/pending-promotions.json'

items = []
if SRC.exists():
    in_auto = False
    for line in SRC.read_text(encoding='utf-8', errors='ignore').splitlines():
        s = line.strip()
        if s == '<!-- AUTO_PENDING_PROMOTIONS_START -->':
            in_auto = True
            continue
        if s == '<!-- AUTO_PENDING_PROMOTIONS_END -->':
            in_auto = False
            continue
        if in_auto and s.startswith('- [ ] '):
            items.append(s[6:])

payload = {
    'updatedAt': datetime.now().isoformat(),
    'openCount': len(items),
    'status': 'OPEN' if items else 'CLEAR',
    'items': items[:10]
}
OUT.parent.mkdir(parents=True, exist_ok=True)
OUT.write_text(json.dumps(payload, indent=2), encoding='utf-8')
print(OUT)
