Files
s0liton--RommPS/docs/release-checklist.md
Pedro Santos bf479d045b Clean up after 1.1.0: RommPS is the only thing on the console
1.1.0 left the old RomM Sync tile next to RommPS, autostart only in
etaHEN's folder, and old payloads that could replace newer ones.

- One copy runs at a time: a lock file decides, an older copy never
  replaces a newer one, and two starting together can't stop each other.
- Autostart goes into every HEN's folder (etaHEN and onionHEN), copies
  are brought up to the newest at startup, a pldmgr copy is kept current,
  and an older payload never overwrites a newer one on disk.
- The old tile is removed once RommPS is installed, and kept as the only
  way in when it isn't.
- On the PS5, updates come with RommPS; the payload no longer updates
  itself there, and says when RommPS is out of date.
- RommPS starts the payload only when none is running, swaps in its own
  once idle, keeps the copies on disk current, and turns autostart on by
  default (once for 1.1.0 setups that never chose).
- RomM Sync stays quiet while RommPS is installed.
- RommPS: real last sync time, conflict hint, update and autostart rows,
  the payload's port from its config, new home screen art.
- Web UI: settings only send what changed, setup starts from the current
  settings, no tile button, requests from other sites are refused.
- tests/autostart.sh and docs/release-checklist.md.
2026-10-09 18:30:42 -04:00

2.7 KiB

Release checklist

Run all of this on a real console before tagging. Tests in CI (tests/e2e.sh, tests/autostart.sh) cover the logic, not the console.

Before

  • kMinPayload in rommps_app.hpp, contentVersion in RommPS's param.json and APP_VERSION in src/util.h all match the tag.
  • docs/releases/<tag>.md is written. ProsperoStore shows it as the release notes.
  • If this release changes who owns something on the console (the home screen icon, starting the payload, the autostart files, updates, the data folder), the old one gets removed or migrated in this same release.

Upgrades

For each one, start from the old version actually installed and set up, then update. Check afterwards:

  • one icon on the home screen (RommPS), no "RomM Sync" tile
  • one RomM Sync running, the new version (/api/status), lock file says the same
  • every HEN folder that exists has the new romm-sync.elf and .auto_start (/api/autostart lists the copies and their versions)
  • a pldmgr copy, if there was one, is the new version
  • no .bak files left in the payload folders
  • a sync runs and finishes without errors
  • no RomM Sync notifications while RommPS is installed
From How Also check
Nothing ProsperoStore install, open RommPS setup turns autostart on by default
Nothing zip copied to /data/homebrew same as above
1.0.2 payload only, tile, etaHEN folder in-app update from the web UI tile stays (no RommPS), "Install RommPS" notice
1.0.2 as above install RommPS, open it tile goes away
previous RommPS + payload store update of RommPS, open it payload swapped once idle, copies updated
previous RommPS + payload payload's own update first, RommPS later "RommPS is out of date" notice
any, autostart off update autostart stays off, nothing added to HEN folders
any, old copy in pldmgr's autoload update the pldmgr copy is updated, its autoload list untouched

Boot and rest mode

  • Reboot, jailbreak with onionHEN only, don't open RommPS: RomM Sync starts by itself, one copy.
  • Same with etaHEN.
  • Rest mode, then wake: same process keeps running (uptime carries on), web UI answers.
  • Open RommPS right after a jailbreak: it waits for RomM Sync instead of starting a second copy.

Never downgrade

  • Send an older romm-sync.elf to port 9021 while a newer one runs: it exits, the newer one keeps running.
  • Upload an older payload in the web UI's autostart: the newer copies on disk stay.

After

  • The release workflow published the payloads, then tools/release-app.sh <tag> --upload attached PPSA76677.zip.
  • The catalog bot's pull request for the new version shows up the next day.