-
-
Notifications
You must be signed in to change notification settings - Fork 80.7k
Plugin prerelease no-write validation fails workflow startup #103774
Copy link
Copy link
Closed
Labels
P1High-priority user-facing bug, regression, or broken workflow.High-priority user-facing bug, regression, or broken workflow.bugSomething isn't workingSomething isn't workingclawsweeper:current-main-reproClawSweeper found a high-confidence current-main issue reproduction.ClawSweeper found a high-confidence current-main issue reproduction.impact:otherThis issue has meaningful maintainer-visible impact outside the owned taxonomy.This issue has meaningful maintainer-visible impact outside the owned taxonomy.issue-rating: 🦀 challenger crabExceptional issue quality: high-confidence current-main reproduction and actionable evidence.Exceptional issue quality: high-confidence current-main reproduction and actionable evidence.maintainerMaintainer-authored PRMaintainer-authored PR
Description
Metadata
Metadata
Assignees
Labels
P1High-priority user-facing bug, regression, or broken workflow.High-priority user-facing bug, regression, or broken workflow.bugSomething isn't workingSomething isn't workingclawsweeper:current-main-reproClawSweeper found a high-confidence current-main issue reproduction.ClawSweeper found a high-confidence current-main issue reproduction.impact:otherThis issue has meaningful maintainer-visible impact outside the owned taxonomy.This issue has meaningful maintainer-visible impact outside the owned taxonomy.issue-rating: 🦀 challenger crabExceptional issue quality: high-confidence current-main reproduction and actionable evidence.Exceptional issue quality: high-confidence current-main reproduction and actionable evidence.maintainerMaintainer-authored PRMaintainer-authored PR
Type
Fields
Priority
None yet
Bug type
Regression (worked before, now fails)
Beta release blocker
No
Summary
Plugin Prerelease cannot start after its artifact-only caller dropped
packages: write, because the called reusable workflow still declares conditional registry-push jobs withpackages: write.Steps to reproduce
mainat9b4c7c0991dddb77295453259b433122e705bfb4, dispatch.github/workflows/plugin-prerelease.ymlwithfull_release_validation=trueand an exact target SHA.packages: readtoopenclaw-live-and-e2e-checks-reusable.yml, while that reusable graph still containspush_docker_e2e_imagesandpush_live_test_imagejobs declaringpackages: write.Expected behavior
Artifact-only validation should invoke a reusable graph that has no write-declaring jobs and should complete the plugin prerelease static, extension, and Docker lanes without registry mutation authority.
Actual behavior
GitHub rejects the workflow graph at startup. Run 29103858985 has conclusion
startup_failure, zero jobs, and the correct exact target SHA.OpenClaw version
mainat9b4c7c0991dddb77295453259b433122e705bfb4Operating system
GitHub Actions workflow graph validation (no runner allocated)
Install method
Source checkout through Plugin Prerelease workflow dispatch
Model
Not applicable
Provider / routing chain
Not applicable
Logs
Failed startup run: https://github.com/openclaw/openclaw/actions/runs/29103858985
The run has check suite conclusion
startup_failureandlatest_check_runs_count=0, so no job log exists.Impact and severity
Affected: all exact-SHA Plugin Prerelease and Full Release Validation runs that enable the plugin Docker suite. Severity: release blocker. Frequency: deterministic. Consequence: extension, package-boundary, and plugin Docker validation cannot start.
Additional information
Regression provenance:
cbe3731f77238053396771529881cf659e9e592b/ #103737 changed the plugin prerelease caller frompackages: writetopackages: readfor no-write validation and selectedshared_image_policy=no-push-artifact, but the reusable workflow's conditional registry-push jobs remained in the called graph. Restoring broad write permission would weaken the intended validation trust boundary; the artifact-only invocation needs a graph that does not declare write jobs.