Close the classifier loop (issue #115, step 3): turn the auto-proposable
candidates into an actual PR, gated by a real trial build in our own build-env
images. Model chosen: autonomous PR, PR-first with a CI trial-build gate,
bounded top-N batch per run.
- propose-patches.R: add --limit N (top candidates by failure volume; the rest
defer to the next run) and --open-pr, which writes the entries onto the reused
auto/registry-patch-proposals branch, pushes with REPO_RW_TOKEN, and
opens/updates one PR via the Forgejo API
- add .crow/auto-apply-patches.yaml (single job) to run --open-pr on a cron
- add local/trial-build-registry.R + .crow/trial-build-registry.yaml: the merge
gate. Matrixed over the real OS/IMG build-env images, each platform diffs the
branch registry against main and trial-builds only the entries it adds, in
reg.devxy.io/rpkgs/build-env-*; green only if every new entry builds. The
base-registry read fails loud rather than silently building the whole registry
- add pure entry_applies_to_os()/new_registry_packages() helpers + tests
- document the autonomous-PR + gate flow in local/patches/README.md
The repo uses no pull_request triggers, so the gate runs manually/cron against
the branch; wiring it to the PR needs event: pull_request on the forge.