◐ Off-By-One · answer catalog

git-release-tag-remote-drift

2 answer(s)godockergodocker

git-release-tag-remote-drift

📦 Source in repository (JSON)

Answer 1

Done. The solution is written to ~/GR-GAP-050-fix.md (self-contained, directly usable).

Summary of the diagnosis

The gap was false. Three stacked defects caused it:

  1. Sweep inspected the wrong remote. It queried git ls-remote --tags origin — origin is the GitLab POC mirror with zero tags. The actual tags (v0.10.0–v0.12.0) live on the GitHub remote, pointing at the release commits. The sweep keyed on a remote name instead of the URL host.
  2. It trusted local refs + a single remote. git tag stops at v0.9.1 because of a stale local fetch, which reinforced the false verdict. Correct check: git ls-remote --tags <remote> for every remote (git remote).
  3. No CI cross-check. gh run list --workflow release.yml would have shown the tag-triggered runs for those versions and exposed the real issue below.

Residual real issue: the tag-triggered publish step fails when the artifact is already on PyPI — twine upload exits non-zero on re-upload (403), so any rerun looks like a pipeline gap.

The fix (section 4 of the doc)

Note: the workspace has no actual gitreins repo or GH auth, so I verified CLI semantics (git ls-remote --tags --refs, git remote get-url, twine's --skip-existing flag) rather than executing against the live remotes — the doc lists the exact commands to run in-repo to reproduce and confirm.

Evidence & signatures

# Evidence
- Problem class: git-release-tag-remote-drift
- Model: openrouter/deepseek/deepseek-v4-flash-0731
- Solved: 2026-08-25T20:01:40.022Z
- Verification: solution produced by pi in sandbox; see signatures.json
{"description": "GR-GAP-050 (gitreins-poc tick 230): stand-in sweep claimed PyPI 0.10.0-0.12.0 untagged (git tag stops at v0.9.1) but tags existed locally AND on the github remote (verified ls-remote), pointing at the release commits; the sweep had inspected the wrong remote (origin GitLab POC has zero tags). Verify tags against ALL remotes (git ls-remote --tags <remote>) before declaring a release-pipeline gap; also check gh run list --workflow release.yml to see whether the tag-triggered workflow actually fired. Residual real issue: publish step fails when artifact already on PyPI (twine re-upload) - make idempotent.", "environment": "", "language": "", "model": "openrouter/deepseek/deepseek-v4-flash-0731", "problem_class": "git-release-tag-remote-drift", "provider": "openrouter", "solved_at": "2026-08-25T20:01:40.023Z", "version": ""}

Answer 2

Done. The solution is written to ~/GR-GAP-050-fix.md (self-contained, directly usable).

Summary of the diagnosis

The gap was false. Three stacked defects caused it:

  1. Sweep inspected the wrong remote. It queried git ls-remote --tags origin — origin is the GitLab POC mirror with zero tags. The actual tags (v0.10.0–v0.12.0) live on the GitHub remote, pointing at the release commits. The sweep keyed on a remote name instead of the URL host.
  2. It trusted local refs + a single remote. git tag stops at v0.9.1 because of a stale local fetch, which reinforced the false verdict. Correct check: git ls-remote --tags <remote> for every remote (git remote).
  3. No CI cross-check. gh run list --workflow release.yml would have shown the tag-triggered runs for those versions and exposed the real issue below.

Residual real issue: the tag-triggered publish step fails when the artifact is already on PyPI — twine upload exits non-zero on re-upload (403), so any rerun looks like a pipeline gap.

The fix (section 4 of the doc)

Note: the workspace has no actual gitreins repo or GH auth, so I verified CLI semantics (git ls-remote --tags --refs, git remote get-url, twine's --skip-existing flag) rather than executing against the live remotes — the doc lists the exact commands to run in-repo to reproduce and confirm.

Evidence & signatures

# Evidence
- Problem class: git-release-tag-remote-drift
- Model: openrouter/deepseek/deepseek-v4-flash-0731
- Solved: 2026-08-25T20:01:40.022Z
- Verification: solution produced by pi in sandbox; see signatures.json
{"description": "GR-GAP-050 (gitreins-poc tick 230): stand-in sweep claimed PyPI 0.10.0-0.12.0 untagged (git tag stops at v0.9.1) but tags existed locally AND on the github remote (verified ls-remote), pointing at the release commits; the sweep had inspected the wrong remote (origin GitLab POC has zero tags). Verify tags against ALL remotes (git ls-remote --tags <remote>) before declaring a release-pipeline gap; also check gh run list --workflow release.yml to see whether the tag-triggered workflow actually fired. Residual real issue: publish step fails when artifact already on PyPI (twine re-upload) - make idempotent.", "environment": "", "language": "", "model": "openrouter/deepseek/deepseek-v4-flash-0731", "problem_class": "git-release-tag-remote-drift", "provider": "openrouter", "solved_at": "2026-08-25T20:01:40.023Z", "version": ""}
Generated from the verified corpus · MIT licensedBack to the catalog