Skip to content

chore: remove the Playground preview workflows - #38

Open
josephfusco wants to merge 1 commit into
mainfrom
chore/remove-playground-previews
Open

chore: remove the Playground preview workflows#38
josephfusco wants to merge 1 commit into
mainfrom
chore/remove-playground-previews

Conversation

@josephfusco

@josephfusco josephfusco commented Aug 20, 2026

Copy link
Copy Markdown
Collaborator

Deletes playground-preview.yml, playground-preview-publish.yml, and playground-preview-cleanup.yml.

Why

Playground Preview Publish has failed on all 8 of its runs, three of them today. Because it runs on workflow_run, its failures never show in gh pr checks and never gate a PR — so it sat broken unnoticed.

I traced the causes to 52c0077, the commit that first added these workflows. There was never a working version to regress from; they went in broken.

The breakage is structural, not a typo:

  1. test -f artifacts/release-assets/ tests a directory, always false under bash -e. Kills the job ~10s in, before anything else runs.
  2. Two of three release assets were never real. A "seeder" and a "helper" were scaffolded as bare paths (artifacts/release-assets/) with filenames never filled in — and no such files exist in the repo. playground-preview.yml:69 stages only sync-storage.zip.
  3. blueprint-40.json doesn't exist. It's transformed on line 141 and advertised in the sticky comment as a "40 demo users" variant.
  4. blueprint.json has no writeFile steps, so the seeder/helper half of the jq transform is a no-op regardless. Its two endswith("/") branches (132–133) are byte-identical, making the elif unreachable.

The sticky comment also advertised "seeds 5 demo users," which blueprint.json never did — it creates the wp_collaboration table and activates plugins.

Safety

  • No Playground job is a required status check (required: gate, phpcs, phpstan, phpunit ×2, typos, plugin-check)
  • Nothing outside the three files references them
  • No preview-pr-* releases or tags were ever produced — consistent with publish never succeeding
  • actionlint clean on the remaining workflows

blueprint.json is kept. The README badge points Playground at it directly via raw.githubusercontent.com and never involved these workflows.

If per-PR previews are wanted later, they're better rebuilt than repaired.

Use of AI Tools

Assisting with the audit and removal.

@josephfusco
josephfusco marked this pull request as ready for review August 20, 2026 22:13
@codecov

codecov Bot commented Aug 20, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 63.90%. Comparing base (3401ef3) to head (991c664).

Additional details and impacted files
@@            Coverage Diff            @@
##               main      #38   +/-   ##
=========================================
  Coverage     63.90%   63.90%           
  Complexity       35       35           
=========================================
  Files             7        7           
  Lines           266      266           
=========================================
  Hits            170      170           
  Misses           96       96           
Flag Coverage Δ
multisite 63.90% <ø> (ø)
phpunit 64.63% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

These three workflows have never worked. Playground Preview Publish has
failed on all 8 of its runs, and the causes date to 52c0077, the commit
that introduced them -- there was never a working version to regress
from. Because publish runs on `workflow_run`, its failures never appeared
in `gh pr checks` and never gated a PR, so it sat broken unnoticed for
the repo's entire history.

The breakage is structural rather than a small fix:

  - `test -f artifacts/release-assets/` tests a directory, which is
    always false under `bash -e`; this kills the job ~10s in, before
    anything else runs.
  - Two of the three release assets (a "seeder" and a "helper") were
    scaffolded as bare paths with the filenames never filled in, and no
    such files exist anywhere in the repo. The build stages only
    sync-storage.zip.
  - blueprint-40.json, transformed on line 141 and advertised in the
    sticky comment as a "40 demo users" variant, was never created.
  - blueprint.json has no writeFile steps, so the seeder/helper half of
    the jq transform is a no-op regardless, and its two `endswith("/")`
    branches are identical, leaving the elif unreachable.

Nothing depends on them: no Playground job is a required status check,
nothing outside the three files references them, and no preview-pr-*
releases or tags were ever produced. Deleting is honest about the state
of things; if per-PR previews are wanted later, they are better rebuilt
than repaired.

blueprint.json stays -- the README badge points Playground at it directly
via raw.githubusercontent.com and never involved these workflows.
@josephfusco
josephfusco force-pushed the chore/remove-playground-previews branch from 566a1e6 to 991c664 Compare August 20, 2026 22:18
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