Skip to content

Give workflow-file changes a non-target PR smoke job #192

Closed

Description

@woksin

Problem

Workflow changes are untested by pull-request CI. pull_request_target runs the workflow file from the default branch, so edits to a workflow in a PR do not run in that PR; the L36 change was verified by manual dispatch only (retrospective report §8, FOLLOWUPS §3 C11). A broken workflow is discovered after merge, on main, across every consumer repository.

Proposal

  • For PRs that touch workflow files in Workflows and in the large consuming repos, add a pull_request (not target) smoke job that exercises the changed workflow on the PR head (for example through workflow_call on a fixture or actionlint plus a dry-run).
  • Where that is not feasible, document manual dispatch on the branch as the required verification step and add a PR template line for it.

Acceptance

  • A PR changing a shared workflow runs a smoke job on its own head.
  • A deliberately broken workflow in a test PR fails that job.
  • The manual-dispatch alternative is documented for cases that cannot be covered.

Source: October 2026 orchestration retrospective (local work records, not in the repo).

Status

State: Done — Delivered: Workflows #195 + consumers Arc #3506, Stage #748, Studio #2395, Chronicle #5309.
Branch: ai-ci-performance-skills (#195)
Scope: L46: plan a pull_request (not target) smoke job that exercises changed workflows on the PR head in Workflows and large consumer repos; manual-dispatch fallback documented.
Plan: Add a reusable workflow-lint (pinned actionlint, shared config tolerating queue: max) and a pull_request smoke-workflows job in Workflows. The smoke job calls the PR-head copies of the reusable workflows that need no secrets, and a test ratchet makes every reusable either smoked or listed with a reason. Then roll the lint caller out to Arc, Stage, Chronicle and Studio; the manual-dispatch fallback is documented in the README.
Delivered: Nothing yet.
Remaining: To be confirmed.
Follow-ups: None.

Activity

  1. self-assigned this
    on Oct 22, 2026
  2. woksin commented on Oct 23, 2026

    @woksin
    ContributorAuthor

    Delivered. Workflow changes are now linted on the pull request in every repo that ships through Cratis/Workflows:

    Not smokeable by design (secrets or writes): update-packages, cleanup-pr-artifacts, trigger-documentation-build, normalize-dependabot-labels and the release-policy reusables; the README documents the manual fallback. Shellcheck stays off in consumers for now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions