Tuesday 15:00 SAST (13:00 UTC). Late buffer: Bernd typically sends Mon evening / Tue morning, so 15:00 catches stragglers.
~/workspace/PKA/SecondBrain/wiki/concepts/Fuel-Prices-B4i.md — gets last_updated from frontmatter.from:bernd@b4i.co.za subject:"B4i Fuel" since last_updated - 2 days (overlap window for late emails).### YYYY-MM-DD section in the note):graph_api.py read-messageFrom: header in body)### YYYY-MM-DD (Day) with yaml block (type/effective/trend) + bullet list of supplier/location moveslast_updated: in frontmatter to today.~/workspace/reports/fuel-impact-2026-05-07.html — replaces the _MD_B64 constant).last_updated, exits with "NO NEW EMAILS" — no Telegram noise.elmar-pka topic — same as other FlySafair work.
type: admin in yaml block.python3 /home/lucienne/workspace/scheduler.py run b4i-fuel-history-update
cd /home/lucienne/workspace/PKA && git pull --rebase --autostash --quiet 2>/dev/null || git rebase --abort 2>/dev/null; claude --settings ~/.claude/settings-worker.json --allowedTools Bash,Read,Edit,Glob,Grep -p "Two-part weekly fuel update.
PART 1 — B4i email history. Read ~/workspace/PKA/SecondBrain/wiki/concepts/Fuel-Prices-B4i.md. Get last_updated from frontmatter. Use python3 ~/.claude/skills/m365/scripts/graph_api.py search to find emails from bernd@b4i.co.za with subject 'B4i Fuel' since last_updated - 2 days. For each email NOT already represented (compare ### YYYY-MM-DD headings): read body, strip HTML, extract TOP update (cap at first ' From: ' header). Format as new '### YYYY-MM-DD (Day)' section using template at bottom. Append in chronological order. Bump last_updated.
PART 2 — Radixx surcharge files. Read ~/workspace/PKA/SecondBrain/wiki/concepts/Fuel-Surcharge-Radixx.md last_updated. Use Graph Search API via curl to query driveItems for 'Fuel levy' and 'April Fuel' since last_updated. For each new XLSX: download via Graph drive-item content endpoint to /tmp/fuel_levy/, parse with openpyxl (find 'Route Pair' header row, extract route + Final Surcharge Per Pax columns), append to ~/workspace/PKA/SecondBrain/wiki/concepts/fuel-surcharge-data/surcharge_history.{json,csv}. Update pivot table in the markdown note. Bump last_updated.
PART 3 — Refresh embedded base64 in ~/workspace/reports/fuel-impact-2026-05-07.html for the B4i note (replace _MD_B64= string with new base64 of Fuel-Prices-B4i.md). Update _SURCH_PIVOT JSON literal with new surcharge data.
Print summary: 'APPENDED N B4i emails, M surcharge weeks: ...' or 'NO NEW DATA'. PKA auto-push commits."
claude directly. If the scheduler profile is GLM, Kimi, or MiniMax, prefer ~/workspace/PKA/scripts/claude-provider-run.sh so backup providers run in API-key-only mode with explicit settings/MCP context.
Format: minute hour day month weekday
| Started | Status | Duration | Log |
|---|---|---|---|
| 4d ago | completed | 11.3m | View log |
Mission Control is the board for your delegated work: requests come in, Luci coordinates the next step, and evidence stays visible for review.
Luci is your always-on assistant for routing, status updates, and follow-through. Operators can still open deeper evidence when needed.