A given repo may have multiple apps defined in the same repo. The GitHub releases need to be coordinated between each app.
In a given release, there can be an rpi-deploy.json file that contains info like the app's id/name. Then rpi-deploy can figure out what application needs to be spun down and back up.
Different tag prefixes can be used to kick off different GH actions workflows in the source repo. Like this:
midibuddy-v0.2.0
jamtools-v0.4.2
jamtools-v0.5.0-rc1
The source repo will then create a new release with the artifacts related to that particular app. rpi-deploy can be configured to pull pre-releases or not. Fetching just the latest release will not be sufficient then.