Repository navigation
Application Updates
The Updates tab manages updates to GokuTrap itself. Roblox updates are handled separately by Bootstrapper-Behaviour.
This is the existing upgrade flow in GokuTrap, improved — not a second, competing updater.
| Setting | Default | Notes |
|---|---|---|
| Check automatically at startup/while settings are open | On | Roughly every 15 minutes while the settings window is open |
| Check interval in hours (1–168) | 24 | Clamped to this range |
| Include prereleases (advanced) | Off | Opt-in only |
Press Save check options to persist these.
Check for updates / retry performs a manual check.
| Result | Message |
|---|---|
| Current | "Up to date (v{version})." |
| Available | "Version {version} available. Integrity: {integrity}." |
| No release | "No eligible valid release version was returned." |
| Failed | "Update check failed. Offline/rate-limited use leaves the installation intact; retry later." |
| Busy | "Another update operation is running." |
| Never run | "No update check has run." |
Checks are single-flight — a second concurrent request does not start a duplicate operation.
Before anything is replaced, GokuTrap verifies:
- the asset is a deterministic Windows x64 executable selected from the release's assets;
- its size is within the 512 MiB cap;
- the file is a genuine PE executable for x64;
- the published SHA-256 digest, when available.
The integrity line in the UI tells you which of these applied:
| Integrity text | Meaning |
|---|---|
| "published SHA-256 consistency digest, not an independent signature" | A digest was published and matched |
| "approved GitHub HTTPS only; no digest published" | No digest — HTTPS, length and format checks only |
Important The digest comes from the same GitHub API response as the asset. It proves the bytes match the published metadata — it is not an independent publisher signature, and cannot detect a compromised release upload. See Downloads-and-Verification.
If a newer release has no supported Windows x64 executable asset, GokuTrap says so rather than downloading something unsuitable.
- Download & restart… — confirms: "Save settings, download the checked Windows x64 release and restart?" Your settings are preserved.
- The download is staged to a temporary file, is cancellable, and has a bounded lifetime (15 minutes) so a stalled transfer cannot block forever.
- Cancellation reports "Download cancelled; installed executable unchanged."
- Verified staging starts the existing
-upgradehandoff, then GokuTrap exits and the new instance replaces the file.
Release notes are shown as plain text. No scripts in release notes are ever executed.
In quiet mode GokuTrap never prompts and never installs. It checks and records, and you act on it yourself.
Upgrading requires exclusive access to the executable. If another GokuTrap instance holds it, GokuTrap waits for other instances, then reports that the handoff failed and tells you to close other GokuTrap instances and retry.
A failed handoff cleans up its own lock independently of progress state, so a cancelled download cannot leave a stale lock that blocks the next attempt.
Omitted trailing version zeros are compared correctly, so 3.1.2 and 3.1.2.0 are the same version rather than being treated as an update in either direction.
A successful upgrade keeps the previous executable as GokuTrap.exe.rollback in the installation folder.
Recovery instructions are shown in the Updates tab.
| Property | Behaviour |
|---|---|
| How to restore |
Manual. Copy GokuTrap.exe.rollback over GokuTrap.exe
|
| Automatic? | No. GokuTrap is not a crash detector and will not roll back on its own |
| Retention | Until the next successful upgrade overwrites it |
| Replacement |
Atomic, via Windows File.Replace — the old file is never left half-written |
| Symptom | Cause and fix |
|---|---|
| "Another update operation is running." | Another check or download is in flight. Wait, or close other instances |
| Handoff fails | Another GokuTrap instance has the executable open. Close it and retry |
| Download cancelled / failed | The installed executable is unchanged. Retry |
| Check always fails | Likely offline or GitHub API rate limiting. Retry later |
| Digest mismatch | The download did not match the published metadata. The install is refused — do not retry blindly; report it |
- Bootstrapper-Behaviour — the automatic update GokuTrap launcher option, which uses this tab
- Downloads-and-Verification — what the integrity checks prove
- Troubleshooting — locked executable, access denied