feat(routines): add timezone-aware runs and result navigation - #748
Merged
Harry19081 merged 1 commit intoAug 9, 2026
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem
Routine cron schedules were evaluated as UTC even when users expected local wall-clock time. Newly saved routines did not expose their next run until a scheduler tick, and run results were presented as opaque identifiers without a direct path to the resulting Session or Work Item. Failures were also hard to diagnose from the routine list.
Solution
Add an IANA-timezone field to cron triggers with UTC fallback for legacy data, validate it at the service boundary, and use one shared DST-aware schedule evaluator for definition and portable routine execution. Compute the next run immediately on save while preserving evaluation watermarks for non-trigger edits.
Project the latest run status, time, error, Session, and Work Item onto each routine; keep detailed history lazy and bounded; surface Run Now outcomes; and make rows easier to expand. Run results now open the matching Session or Work Item in My Station, including standalone Work Items. The wizard uses the configured timezone and can display valid local zones that are not in the curated city list.
Potential risks