cron / schedule handoff guide

Review cron dialect, timezone, and next run separately

A readable schedule is not proof that a job ran. Separate dialect, timezone, DST, next-run planning, and execution evidence in the handoff.

Fix the dialect first

Common cron uses five fields for minute, hour, day, month, and weekday. Quartz-style systems may use six fields with seconds or seven with a year. Confirm the runtime and library before interpreting an expression.

*/15 * * * *    # 5-field: every 15 minutes; dialect and timezone still required
0 0/15 * * * ?  # Quartz-style example: seconds field and ? marker
BoundaryWhat to check
Field countIs it five-field cron or a Quartz six/seven-field form? Confirm seconds and year rules.
WeekdaySunday 0/7, names, and day-of-month/day-of-week combinations vary by dialect.
Markers?, L, and W are dialect-specific. Reject them when unsupported.
TimezoneState an IANA name or other explicit target zone; do not rely on the host default.

Review timezone and DST separately

A local time such as “02:30 every day” can be missing or duplicated during daylight-saving transitions. Confirm the target zone, effective date, and how the runtime handles gaps and overlaps. Do not promise a universal next-run answer.

A next run is a scheduler candidate. It is not a log, exit status, monitor event, or other execution evidence.

ReviewPass condition
timezoneThe target zone, reference time, and DST behavior travel with the expression.
next runLabel it as scheduled and do not describe it as executed or successful.
execution evidenceVerify logs, exit status, or monitoring evidence separately.

Review cases

caseoutcomecheck
five-fields-localreviewableFive fields, target timezone, and runtime are explicit.
dst-boundaryattentionConfirm missing or duplicated local times at the DST boundary.
quartz-six-fieldsdialect-checkSeconds or Quartz markers must not be passed to five-field cron.
dow-sevendialect-checkConfirm Sunday 0/7 and weekday-name semantics in the target runtime.
unsupported-or-missing-zonerejectDo not produce a next run for unsupported syntax or a missing timezone.

Do not execute or paste secrets

This guide does not execute cron, call a scheduler, or connect to an external service. Use synthetic examples only; do not paste production commands, secrets, credentials, or internal hostnames.

Record expression, dialect, timezone, next-run plan, and execution-evidence reference as separate fields. A planned time alone is not a success report.