Skip to content

pilotctl: honor hidden and renamed_to catalogue entries - #484

Closed
Alexgodoroja wants to merge 1 commit into
mainfrom
fix/appstore-renamed-hidden-entries
Closed

Alexgodoroja wants to merge 1 commit into
mainfrom
fix/appstore-renamed-hidden-entries

Conversation

@Alexgodoroja

Copy link
Copy Markdown
Collaborator

Problem

The signed catalogue marks io.pilot.smolmachines as "hidden": true, "renamed_to": "io.pilot.smol", but pilotctl read neither field:

  • pilotctl appstore catalogue still listed "Smol Machines (renamed → io.pilot.smol)".
  • pilotctl appstore install io.pilot.smolmachines failed with the misleading catalogue entry io.pilot.smolmachines has placeholder sha256 — the release pipeline hasn't filled this in yet.

Fix

  • catalogueEntry gains Hidden and RenamedTo. Hidden entries are left out of the text listing; --json still returns them, with the flag.
  • Install (with or without --version) follows renamed_to one hop and prints note: X was renamed to Y — installing Y on stderr. A rename pointing at a missing app gets a clear error instead.

Tests

zz_appstore_renamed_test.go covers the hidden listing, installing through a rename (unpacks the new app's bundle and prints the notice), and a rename to a missing app. go test ./cmd/pilotctl/ is green.

Found during the app-store audit.

🤖 Generated with Claude Code

The catalogue marks io.pilot.smolmachines hidden and renamed_to
io.pilot.smol, but pilotctl read neither field: the stub was still listed,
and installing it failed with "placeholder sha256 — the release pipeline
hasn't filled this in yet". Hidden entries are now left out of the listing,
and installing a renamed id installs the app it moved to (one hop), with a
notice on stderr.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
@TeoSlayer

Copy link
Copy Markdown
Collaborator

Closing as superseded by #473, which merged today and implements hidden / renamed_to handling in the same files. The two conflict in appstore_catalogue.go and would declare the fields twice. One behaviour differs and is worth a follow-up if you want it: this PR follows a rename under --version and keeps hidden entries in --json; #473 refuses the pinned rename and omits hidden entries.

@TeoSlayer TeoSlayer closed this Oct 1, 2026
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.

2 participants