Skip to content

fix(release): unblock the 1.1.0 release (Play 10100 notes + cosign 2.6.5) - #160

Merged
emir-hasanbegovic merged 2 commits into
mainfrom
fix/release-1.1.0-gates
Aug 17, 2026
Merged

fix(release): unblock the 1.1.0 release (Play 10100 notes + cosign 2.6.5)#160
emir-hasanbegovic merged 2 commits into
mainfrom
fix/release-1.1.0-gates

Conversation

@emir-hasanbegovic

Copy link
Copy Markdown
Contributor

The 1.1.0 tag run failed in two independent jobs (run 32032681945).

Play metadata gate

Upload AAB to Google Play failed the pre-upload lint: every locale was missing changelogs/10100.txt. The notes had been staged as 10002.txt for a 1.0.2 that never shipped, then the release went out as 1.1.0 (versionCode 10100).

Validated locally: EXPECTED_VERSION_CODE=10100 python scripts/check_play_metadata.py reports 0 errors (the 512x512 icon warnings are the known open store item).

Harden job: cosign keyless signing

cosign sign-blob died with fetching ambient OIDC credentials: invalid character 'u' looking for beginning of value: the pinned cosign 2.4.1 (Nov 2024) failed to parse a non-JSON response from the Actions OIDC token endpoint. The same job passed on July 25, so this broke on the service side, not in the workflow.

  • Bumped the pinned cosign to 2.6.5, the current release of the maintained v2 line (Aug 6, 2026, includes the GHSA-fx35-mq7g-6g98 fix). The sign-blob --output-signature/--output-certificate CLI used here is unchanged in v2; v3 was deliberately avoided because it changes sign-blob's output format.
  • COSIGN_SHA256 verified by downloading cosign-linux-amd64 and matching it against the upstream cosign_checksums.txt.

Re-releasing after merge

The 1.1.0 tag still points at the broken snapshot (d3006c0). After merging:

git fetch origin
git tag -f 1.1.0 origin/main
git push origin 1.1.0 --force

The tag push reruns the release workflow with these fixes in the tagged tree.

One remaining risk outside this PR: if the Play app record has never had a build uploaded manually, the upload step can still fail; the Play API cannot create the first build of an app (see the note in release.yml).

The tag went out as 1.1.0 but the Play notes were staged as 10002.txt
for a 1.0.2 that never shipped, so the metadata gate blocked the
upload. Rename them to 10100.txt, widen them to cover the Amazon Luna
support that also landed in this range, and date the CHANGELOG section.
The 1.1.0 harden job failed keyless signing: cosign 2.4.1 choked
parsing a non-JSON response while fetching ambient OIDC credentials
from the Actions token endpoint. 2.6.5 is the current v2 line with two
years of sigstore fixes and the August 2026 security patch; the CLI
surface used here is unchanged. SHA-256 verified against the upstream
cosign_checksums.txt.
@emir-hasanbegovic
emir-hasanbegovic merged commit 169f06c into main Aug 17, 2026
10 checks passed
@emir-hasanbegovic
emir-hasanbegovic deleted the fix/release-1.1.0-gates branch August 17, 2026 17:25
emir-hasanbegovic added a commit that referenced this pull request Aug 17, 2026
The 1.1.1 tag run
([32050347830](https://github.com/TinkerNorth/dish-android/actions/runs/32050347830))
confirmed the cosign 2.6.5 fix: harden and SLSA provenance are green.
Two jobs still failed, only one of them ours:

- Upload AAB to Google Play: the metadata gate wants
`changelogs/10101.txt` (tag 1.1.1 derives versionCode 10101), but #160
keyed the notes as 10100 for the abandoned 1.1.0 tag. This PR renames
them in all 5 locales (content unchanged) and retitles the CHANGELOG
section to 1.1.1. Validated locally: `EXPECTED_VERSION_CODE=10101 python
scripts/check_play_metadata.py` reports 0 errors.
- Publish to GitHub Releases: `No server is currently available to
service your request` is the ongoing GitHub outage, not a repo problem.
No change needed; the rerun after re-tagging covers it.

## Re-releasing after merge (once GitHub recovers)

```
git fetch origin
git tag -f 1.1.1 origin/main
git push origin 1.1.1 --force
```

Nothing shipped from the failed 1.1.1 run (no Play upload, no GitHub
release), so moving the tag is clean. If you would rather cut 1.1.2
instead, rename the five files to 10102.txt first; the gate keys on the
exact tag-derived versionCode. The stray 1.1.0 tag still points at the
broken snapshot and can be deleted.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant