Skip to content

Commit 6116e32

Browse files
committed
Fix allowDowngrade persisting after channel switch and add integer validation to RunNumberSchema
1 parent 5042785 commit 6116e32

2 files changed

Lines changed: 12 additions & 2 deletions

File tree

apps/desktop/src/main.ts

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1770,7 +1770,11 @@ function registerIpcHandlers(): void {
17701770
applyAutoUpdaterChannel(nextChannel);
17711771
// An explicit channel switch should allow the immediate nightly->stable rollback path.
17721772
autoUpdater.allowDowngrade = true;
1773-
await checkForUpdates("channel-change");
1773+
try {
1774+
await checkForUpdates("channel-change");
1775+
} finally {
1776+
applyAutoUpdaterChannel(nextChannel);
1777+
}
17741778
return updateState;
17751779
});
17761780

scripts/resolve-nightly-release.ts

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,13 @@ interface NightlyReleaseMetadata {
1414
}
1515

1616
const DateSchema = Schema.String.check(Schema.isPattern(/^\d{8}$/));
17-
const RunNumberSchema = Schema.FiniteFromString.check(Schema.isGreaterThanOrEqualTo(1));
17+
const ValidRunInteger = Schema.makeFilter(
18+
(n: number) => Number.isInteger(n) || "Expected an integer run number.",
19+
);
20+
const RunNumberSchema = Schema.FiniteFromString.check(
21+
ValidRunInteger,
22+
Schema.isGreaterThanOrEqualTo(1),
23+
);
1824
const ShaSchema = Schema.String.check(Schema.isPattern(/^[0-9a-f]{7,40}$/i));
1925
const DesktopPackageJsonSchema = Schema.Struct({
2026
version: Schema.NonEmptyString,

0 commit comments

Comments
 (0)