Files
kevinveenbirkenbachandClaude Opus 4.8 0bcd63b658 fix(ci): make 🧩 Subset resolver comply with repo lint rules
The merged subset feature failed test-lint: a .py under scripts/, a local parents[N] PROJECT_ROOT, a direct yaml.safe_load, an uncached read, and narration comments.

- move scripts/meta/resolve/pr/subset_roles.py -> cli.meta.ci.subset_roles (scripts/ is .sh-only); dispatcher invokes it via python -m
- parse via utils.cache.yaml.load_yaml_str; import utils.PROJECT_ROOT
- test invokes the module via -m against real roles; nocheck the tempfile read
- strip narration comments; docs document HOW not WHY

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-30 00:08:31 +02:00
..
…

Pull Request Resolvers 🔀

This directory contains Pull Request-specific resolver scripts used by the PR workflow.

Examples in this folder:

  • scope.sh resolves whether a Pull Request is agents-only, documentation-only, or full scope
  • branch_prefix.sh validates that the PR branch prefix matches the detected scope; see branch.md for the authoritative list of valid prefixes and their CI impact
  • merge_ref.sh resolves the merge ref used for forked PR workflows

These scripts keep PR scope detection, branch-prefix validation, and fork merge-ref resolution together in one place. The 🧩 Subset label's PR-body parser lives in the cli.meta.ci.subset_roles module; the dispatcher pr_affected_roles.sh selects between it and the diff resolver. See the "Subset label" section in pipeline.md.