test: workflow paths-mirror の drift 検証テストを追加#358
Merged
Conversation
- ci.yml + ci-skip.yml と codeql.yml + codeql-skip.yml の paths-ignore / paths を js-yaml でパースし、pair 間の補完関係と 4 workflow 全体で path list が同一であることを assert - vitest.config.ts に workflows project (node env, test/**/*.test.ts) を追加 - tsconfig.node.json の include に test を追加 PR #357 で codex-review qa-fixture が REPORT-ONLY で指摘した 「paths リスト drift 検証テスト不在」を pair 全体の pattern 昇格として 解消 (HANDOFF §2)。
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
概要
PR #357 で codex-review qa-fixture が REPORT-ONLY で挙げた「ci.yml + ci-skip.yml / codeql.yml + codeql-skip.yml の paths リスト drift を検証するテスト不在」を、pair 全体の pattern 昇格として解消する。yaml から paths 定義を読み取り、pair 間補完と 4 workflow 全体の path list 統一を Vitest で assert する軽量テストを追加。
関連 Issue
なし (HANDOFF §2 追跡タスク)
移行 Stage
Stage 対象外 (CI インフラ・テスト追加)。
変更内容
test/workflows/paths-mirror.test.ts(新規): 4 workflow を js-yaml でパースして以下を assertpush.paths-ignore===pull_request.paths-ignore(順序独立の Set 比較)push.paths===pull_request.pathspaths-ignore=== ci-skip.ymlpaths(補完 pair の drift 検出)vitest.config.ts: 新規workflowsproject (node env,test/**/*.test.ts) を追加tsconfig.node.json: include にtestを追加 (typecheck 対象化)動作確認
pnpm vitest run --project workflows— 6/6 passpnpm vitest run(全 project) — 2584 pass / 2 skipped、既存テスト regression なしpnpm tsc -b tsconfig.node.json— エラーなしpnpm biome check test/ vitest.config.ts tsconfig.node.json— エラーなしスクリーンショット
なし (テスト追加のみ、UI 影響なし)
検証エビデンス
リスク分類
tier: medium — classify-risk.sh (reasons 明示なし、default medium)
実行した検証
./node_modules/.bin/vitest run --project workflows./node_modules/.bin/vitest run./node_modules/.bin/tsc -b tsconfig.node.json./node_modules/.bin/biome check test/ vitest.config.ts tsconfig.node.jsonLint / typecheck の web / e2e 側と e2e 実行はローカル sandbox 制約により未実施 (memory: project_verify_sandbox_eperm)、CI (ci.yml pull_request trigger) で確認する。
レビュー指摘と対応
codex-review security 観点で 0 finding (PASS)。shell-senior / qa-fixture は tier=medium のため未実施。
追跡先
なし
Draft 判定