Chronological review
Sorts sanitized patch executions by normalized start time and patch identifier, with an explicit duration for each record.
Day 030 / Frappe / Patch Operations
A dependency-free Python CLI that turns sanitized Frappe patch execution records into chronological text or JSON summaries with explicit status counts and durations.
Sorts sanitized patch executions by normalized start time and patch identifier, with an explicit duration for each record.
Accepts only patch name, final status and two timestamps; arbitrary log fields such as tracebacks and SQL are rejected.
Offers readable and JSON output with distinct exit codes for clean reports, reported failures and invalid input.
Success, failed and skipped totals
Timezone-aware UTC timeline
Per-patch duration calculation
Unknown fields rejected
Text and JSON output
Twelve passing standard-library tests
Argparse, datetime, pathlib, regular expressions and JSON provide the complete dependency-free CLI.
Models a narrow patch-review workflow without claiming to execute, inspect or repair a live bench.
Twelve tests cover counts, durations, UTC normalization, sorting, immutability, validation, text output and CLI exit behavior.