Development record
Cloudflare non-production branch builds run only the version command, so branch previews repeat the production build instead of building the branch — observed and recorded as comments in wrangler.jsonc. The adr-48 deploy design replaces these with a labelled preview deployed from Actions on push to main and turns Cloudflare's automatic production builds off
issuewontfixminoriss-2608220150157502
Cloudflare non-production branch builds run only the version command, so branch previews repeat the production build instead of building the branch — observed and recorded as comments in wrangler.jsonc. The adr-48 deploy design replaces these with a labelled preview deployed from Actions on push to main and turns Cloudflare's automatic production builds off
Grounds
- declined: superseded by iss-2608231607594913, which refines this record and carries everything still open: the evidence that the host's branch builds were never switched off, and the owed read-only check of the setting. The question this record's deferral asked (switch the builds off as adr-48 intends, or amend adr-48) was answered by the product thinker on 2026-09-23 (ruling M12, written into wrangler.jsonc by 7bed788f2): adr-48 stands, the host's automatic builds are meant to be off, and the dashboard is the authority for that setting.
Frontmatter
| id | iss-2608220150157502 |
|---|---|
| type | issue |
| lifecycle | wontfix |
| severity | minor |
.abcd/work/issues/wontfix/iss-2608220150157502-cloudflare-branch-builds-run-only-the.md
open on GitHub ↗ · commit history ↗
mentions4
- adr-48The website deploys on release, not on merge
- iss-2608231607594913Cloudflare Git-integration branch builds run for pull request branches even though wrangler.jsonc records them as disabled, so an unmerged commit reaches a third-party build system before review. wrangler.jsonc carries 'automatic production builds: disabled' and 'automatic branch builds: disabled', kept in-tree because the dashboard setting has no other durable record. On 2026-08-23 a Cloudflare build ran for a pull request branch at 10:00 UTC and the integration bot posted a successful-deployment comment naming the build id. That build was not Actions: .github/workflows/site.yml triggers on workflow_call, workflow_dispatch and push to main only, and it did not run on that commit; the workflow header itself states that the main-push preview replaces the Cloudflare branch builds that ran only the version command. Two consequences. Operationally, every pull request commit is cloned by a third party before merge, and Cloudflare exposes no delete endpoint for a build record or its logs, so whatever reaches a build log cannot be withdrawn without a vendor support request. Durably, the in-tree record is wrong in the confident direction: a reader checking whether branch builds run gets a clear no. Suggested direction: reconcile the dashboard setting with wrangler.jsonc and decide which is authoritative. A maintainer decides; this record reports.
- itd-147The brief's surface chapters are a generated reflection of the shipped surface, so a shape claim cannot drift
- spc-2609020906356450The brief's surface chapters carry a generated appendix that cannot drift