chore(ci) Build against the platform commit pinned in contract.ref #55
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "contract-pin"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Problem
All three workflows (
pr_check,build_stage,build_release) clonerecipe-platformat the head ofmainand install@recipe/contractfrom it. Platformmainalready carries the contract for spec 002 (shopping list overview with item previews), which this repo does not implement yet. Since that merge,tsc -bfails in CI:That is why the latest
stagebuild and the open PR checks are red, and it blocks the production release.Mechanism
contract.refin the repo root: one line, the full hash of the platform commit this repo builds against.checkout_pinned_platform_contractbetweenpull_platformandinstall_platform_contract. It readsrepo/contract.ref, fails if the file is missing or empty, and runsgit -C recipe-platform checkout --detach "$ref". The clone stays a full clone, so any commit on any pushed platform branch is reachable.CLAUDE.mddocuments the rule: CI builds against the pin, not platformmain; a feature that needs a newer contract moves the pin on its feature branch; the release script requiresrecipe-backendandrecipe-appto pin the same commit.Pinned commit
c69d1e3be45f716404d891be07776395ffda629b— the last commit on platformmainbefore the spec 002 contract was merged.Verification
Against the pinned contract:
npm run build,npm run lint(0 errors, 2 existing warnings) andnpm run test(372 tests) pass. Against platformmain, the samestagecode failsnpm run buildwith the error above. No UI changed.🤖 Generated with Claude Code
araemer referenced this pull request2026-10-03 17:26:38 +00:00