Skip to content

Release 1.4.30 (2026-05-09)

Bug fixes

  • pass boolean to ci-security reusable workflow inputs The security reusable workflow declares run-standards and run-security as type: boolean. The caller was passing values via the || operator which produces strings, causing the reusable workflow to fail silently. Use the != 'false' pattern to produce actual booleans. Ref #632

  • address formatting issue in fetch_actual_state

  • pass required language input to publish-release reusable workflow (#645)
  • replace Fixes with Ref in PR template to match CI linkage rules The PR template recommended 'Fixes #' as the default issue linkage keyword, but st_pr_issue_linkage.py rejects all auto-close keywords. This caused friction (CI rejects, manual edit required) and risked premature issue closure in consuming repos without the gate. Replaced with 'Ref #' exclusively, matching the convention enforced by st_pr_issue_linkage, st_commit, and st_submit_pr.

  • specify container-tag in publish-release caller Required by standard-actions #412. Ref wphillipmoore/standard-actions#412

  • specify container-tag in publish-release workflow

Chores

  • bump version to 1.4.28
  • migrate to reusable publish/docs workflows
  • trigger CI re-run
  • rename source files to match st-* script names Align every bin/.py source file with its st- console script name by adding the st_ prefix. Update pyproject.toml entry points, all test imports and mock paths, validate_common internal import, and active documentation references.

Documentation

  • add design spec and pushback review for repo settings coverage (#610) Scope reduced from 11 to 8 new fields after pushback review: deferred has_pages, homepage, and has_discussions pending API verification and docs/publishing refactor.

  • add implementation plan and alignment review for repo settings coverage (#610) Plan covers 7 tasks in TDD format. Alignment review found one gap (missing drift detection test) — resolved by adding steps to Task 3.

Features

  • add 8 new fields to DesiredRepoSettings and derivation
  • add FetchResult wrapper and extract new fields in fetch
  • include new fields in repo settings PATCH body
  • thread visibility from fetch through CLI plumbing
  • make allowed action patterns language-specific (#613)
  • detect and fail fast on merge conflicts in PR-waiting scripts (#641) Add a mergeable() function to the github library that queries the PR's mergeable field. Both st-wait-until-green and st-merge-when-green now check for CONFLICTING status before polling CI checks, failing immediately with a clear error message instead of waiting indefinitely on a PR that cannot be merged.

  • auto-update branch when behind base before merging (#641) Add the same BEHIND-detection and auto-update loop that st-wait-until-green already has. When the PR branch falls behind its base during the check-wait, st-merge-when-green now fast-forwards it via the GitHub API and re-polls CI instead of attempting to merge a stale branch or requiring manual intervention.

Testing

  • update lib tests for new fields and FetchResult