Stop package cleanup after failed Tea login setup
pr / contract (pull_request) Successful in 10s

Emit a fixed credential-free login_setup warning and fail the optional prune
step before any dependent package API calls if its existing login setup fails.
Preserve successful pruning, retention, registry upload and local cleanup.

Exercise the extracted prune shell with fake Tea and disposable configuration,
including failed setup with a previous login and unchanged successful targets.
This identifies the failed stage, not the suppressed authentication cause.

Ticket: https://agenthub.fritzlab.net/t-c1070dtgpqqy

Authored-By: Codex (GPT-5) <noreply@openai.com>
This commit is contained in:
dfritz committed 2026-10-09 19:53:10 +00:00
1 parent 3f2d8336b6
commit 2d8a13840f
3 files changed
+149 -4

No files matched your search

+11 -2
View File
@@ -43,6 +43,13 @@ local Docker daemon, image-push uploads it.
delete the rest. Failures here do not fail the workflow
(`continue-on-error: true`).
Cleanup first sets up its existing Tea login. If that setup fails, the optional
prune step exits with a fixed `login_setup` warning and does not list or delete
packages, even if a previous login is available. Login output remains suppressed
to avoid exposing credentials or configuration. This identifies the failing
stage, not the underlying authentication or configuration cause; it does not
repair login setup or change the successful cleanup's targets or retention.
`prune` accepts only the strings `true` and `false`; invalid input fails before
registry login or push. With `false`, remote package listing and deletion are
skipped. Image upload and local Docker cleanup remain unchanged. The action does
@@ -50,5 +57,7 @@ not discover deployment pins; owners choosing pruning must account for that
retention contract.
Run `python3 -m unittest discover -s tests` with the pinned test dependencies in
`tests/requirements.txt`. Tests inspect the composite action and execute only
its credential-free validation step; no registry or package deletion runs.
`tests/requirements.txt`. Tests inspect the composite action, execute its
credential-free validation step, and exercise the prune shell with a fake Tea
client and disposable configuration. No real login, registry operation, or
package deletion runs.