Skip to content

feat(config): require a pull request on every declared repository - #139

Merged
toshi0806 merged 1 commit into
mainfrom
require-pull-request-everywhere
Aug 4, 2026
Merged

feat(config): require a pull request on every declared repository#139
toshi0806 merged 1 commit into
mainfrom
require-pull-request-everywhere

Conversation

@toshi0806

Copy link
Copy Markdown
Member

背景

require_pull_request を宣言に加えたとき(#138)、latex-environmenttenbin_cache だけ無効だったので現状を写して「揃えるかは未決」としていた。揃える判断になったので反映する。

これらは enforce_admins: false と組み合わさって、管理者が main へ直接 push できる状態だった。

適用前に確認したこと

有効化は push を止める操作なので、止まって困るものが無いかを先に調べた。

1. main へ push する自動化は無い

latex-environment の workflow が push しているのは feature ブランチ(check-texlive-updates.yml)と release ブランチ(update-release-branch.yml)、それに不要ブランチの削除(branch-cleanup.yml)だけ。tenbin_cache には push する workflow が無い。

2. 実際の運用は既に PR 経由

両リポジトリとも main の直近 15 commit がすべて PR に紐づいていた。直接 push の実績は無い。

つまりこの変更は運用の明文化であり、やり方を変えるものではない。

変更内容

宣言の 2 箇所を true にし、invariants の記述を「未決」から「true 固定」に改めた。

適用と検証

修正済みの apply-repo-protection.sh を実際に使って是正した。宣言 → 監査で drift 検出 → apply → 監査で一致、の一巡が動くことの確認でもある。

# 変更後の宣言で監査 → 意図した 2 件だけが drift として出る
drift: latex-environment: require_pull_request want=true got=false
drift: tenbin_cache: require_pull_request want=true got=false
drift: 2 件 / missing: 0 件 / errors: 0 件

# apply --apply(11 リポジトリ)

# 再監査
drift: 0 件 / missing: 0 件 / errors: 0 件
すべて desired state と一致

11 リポジトリすべてが PR必須=true / approvals=0 / admins=false に揃った(strict のみ系統差)。

全項目置換の PUT を 11 リポジトリに投げているので、巻き添えが無いことも確認した。contexts / dismiss_stale_reviews / restrictions / allow_force_pushes / マージ設定はいずれも変化なし(#138required_pull_request_reviews を宣言から組み立てるようにしたため、以前のように保護が落ちることも無い)。

ref: smkwlab/latex-ecosystem#169

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

このPRはセキュリティポリシーの強化(main への直接 push 禁止)を全リポジトリに統一するものです。変更内容はシンプルで、事前調査も十分に行われており、全体的に問題ありません。コメントはありません。

@toshi0806
toshi0806 merged commit 840cf15 into main Aug 4, 2026
2 checks passed
@toshi0806
toshi0806 deleted the require-pull-request-everywhere branch August 4, 2026 16:54
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