Skip to content

Commit a5d1977

Browse files
chore: increase autostop requirement leeway to two hours (coder#15445)
Closes coder#12612 The problem in the linked issue was caused due to a mismatch of when the Web UI tooltip shows up (2 hours before an autostop requirement) and the leeway in the `autostop_requirement` algorithm (workspace builds must be 1 hour before an autostop requirement to skip them). Now, restarting your workspace whilst the tooltip is showing will skip the upcoming autostop requirement. This also could have been fixed by only showing the tooltip one hour before the autostop requirement, but it looks like 1 hour was chosen arbitrarily, and it doesn't hurt to give users more time to skip the autostop.
1 parent 6cc1067 commit a5d1977

File tree

2 files changed

+4
-4
lines changed

2 files changed

+4
-4
lines changed

coderd/schedule/autostop.go

+2-2
Original file line numberDiff line numberDiff line change
@@ -17,10 +17,10 @@ const (
1717
// requirement where we skip the requirement and fall back to the next
1818
// scheduled stop. This avoids workspaces being stopped too soon.
1919
//
20-
// E.g. If the workspace is started within an hour of the quiet hours, we
20+
// E.g. If the workspace is started within two hours of the quiet hours, we
2121
// will skip the autostop requirement and use the next scheduled
2222
// stop time instead.
23-
autostopRequirementLeeway = 1 * time.Hour
23+
autostopRequirementLeeway = 2 * time.Hour
2424

2525
// autostopRequirementBuffer is the duration of time we subtract from the
2626
// time when calculating the next scheduled stop time. This avoids issues

coderd/schedule/autostop_test.go

+2-2
Original file line numberDiff line numberDiff line change
@@ -292,8 +292,8 @@ func TestCalculateAutoStop(t *testing.T) {
292292
name: "TimeBeforeEpoch",
293293
// The epoch is 2023-01-02 in each timezone. We set the time to
294294
// 1 second before 11pm the previous day, as this is the latest time
295-
// we allow due to our 1h leeway logic.
296-
now: time.Date(2023, 1, 1, 22, 59, 59, 0, sydneyLoc),
295+
// we allow due to our 2h leeway logic.
296+
now: time.Date(2023, 1, 1, 21, 59, 59, 0, sydneyLoc),
297297
templateAllowAutostop: true,
298298
templateDefaultTTL: 0,
299299
userQuietHoursSchedule: sydneyQuietHours,

0 commit comments

Comments
 (0)