Problem
.github/workflows/lint.yml clones vercel/chat at the chat@4.26.0 tag, but tags can (in theory) be moved. If upstream re-tags or force-pushes, our "fidelity against chat@4.26.0" claim silently drifts without any commit in this repo.
Proposed work
- Resolve the tag to a concrete commit SHA (
git rev-parse chat@4.26.0 inside the upstream checkout) and pin that SHA in lint.yml.
- Log the resolved SHA in the workflow output so it's visible in every CI run — e.g.
git rev-parse HEAD after the clone.
- Optionally: add a pre-flight check in
scripts/verify_test_fidelity.py that verifies the upstream HEAD matches an expected SHA (fail loudly if not).
- Document the pinning convention in
docs/UPSTREAM_SYNC.md alongside the UPSTREAM_PARITY constant.
Related
Problem
.github/workflows/lint.ymlclonesvercel/chatat thechat@4.26.0tag, but tags can (in theory) be moved. If upstream re-tags or force-pushes, our "fidelity againstchat@4.26.0" claim silently drifts without any commit in this repo.Proposed work
git rev-parse chat@4.26.0inside the upstream checkout) and pin that SHA inlint.yml.git rev-parse HEADafter the clone.scripts/verify_test_fidelity.pythat verifies the upstreamHEADmatches an expected SHA (fail loudly if not).docs/UPSTREAM_SYNC.mdalongside theUPSTREAM_PARITYconstant.Related