Repository navigation
Description
Context and request
Observed behavior: the composite actions under .github/actions/ do not follow the organization's action-folder conventions consistently.
Entry script naming — the GitHub Actions standard says the entry script is named main.<ext>. Thirteen of fifteen actions comply; two do not:
| Action | Entry script |
|---|---|
Publish-PSModule |
src/publish.ps1 |
Cleanup-PSModulePrereleases |
src/cleanup.ps1 |
Action READMEs — the same standard says each action keeps a README describing its inputs, outputs, and behavior. Eight of fifteen have none: Build-PSModule, Cleanup-PSModulePrereleases, Document-PSModule, Expose-TestData, Get-PSModuleSettings, Publish-PSModule, Resolve-PSModuleVersion, Test-PSModule.
Expected behavior: every action's entry point is src/main.ps1, and every action folder carries a README so the action's contract is readable without opening action.yml and the script.
Reproduction: compare .github/actions/*/src/ and .github/actions/*/README.md against the standard.
Environment: Process-PSModule, current main.
Regression: no. These are consistency gaps, not behavior defects.
Workaround: none needed — nothing is broken, the folders are just harder to navigate than they should be.
Acceptance criteria:
Publish-PSModuleandCleanup-PSModulePrereleasesinvokesrc/main.ps1, withaction.ymlupdated to match and the action test suite still green.- Each of the eight actions without a README gains one covering purpose, inputs, outputs, and the environment variables the script reads.
- No behavior change in any action.
Technical decisions
Both actions run their script through run: ${{ github.action_path }}/src/<script>.ps1, so the rename is a file move plus one line in action.yml. Nothing else references the file names — the helper modules are imported through $PSScriptRoot, and the reusable workflows address the action folder, not the script.
Found during the standards and framework alignment pass on #440, which fixed the release tag prefix and deliberately stayed inside the tag-derivation path.
Implementation plan
Rename the two entry scripts and update their action.yml files, run Test-Actions and the workflow self-tests to confirm the publish and cleanup paths still execute, then add the eight missing READMEs following the shape of the existing ones (Install-PSModule, Get-PesterTestResults).
Activity
MariusStorhaug commentedon Aug 2, 2026
Distinct from #360, which audits the standalone action repositories. This one covers the composite actions that live inside Process-PSModule under .github/actions/, which that rollout does not reach.
🪲 [Fix]: Release tags keep the configured version prefix (#440)
Reusable action readers get direct behavior descriptions (#569)