Write run_checklist(items, today) — the router. One pass over the
items, three buckets, printed as sections:
- Not yet due (
today - last_done < every) → bucketnot due - Due with
approval == "auto"→ bucketauto-run - Due with a named approver → bucket
approval needed, rendered as{task} -> {approver}
Print the sections in this order — auto-run:, approval needed:,
not due: — each item on its own line indented two spaces, items
in input order within each section.
Expected output:
auto-run:
regenerate-low-stock-report
approval needed:
forklift-inspection-log -> miguel
post-300a-summary -> vera
not due:
vendor-scorecards