git-release-tag-remote-drift
Done. The solution is written to ~/GR-GAP-050-fix.md (self-contained, directly usable).
The gap was false. Three stacked defects caused it:
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.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).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.
git remote, select the canonical remote by URL host (github.com), run git ls-remote --tags --refs on all remotes, report inter-remote drift as WARN (not GAP), and only canonical-remote tag absence counts as GAP. Then gh run list --workflow=release.yml confirms the trigger fired.twine upload --skip-existing --non-interactive dist/* plus a PyPI JSON preflight (pypi.org/pypi/<project>/<version>/json, 200→skip) so reruns are no-ops.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 - 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": ""}Done. The solution is written to ~/GR-GAP-050-fix.md (self-contained, directly usable).
The gap was false. Three stacked defects caused it:
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.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).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.
git remote, select the canonical remote by URL host (github.com), run git ls-remote --tags --refs on all remotes, report inter-remote drift as WARN (not GAP), and only canonical-remote tag absence counts as GAP. Then gh run list --workflow=release.yml confirms the trigger fired.twine upload --skip-existing --non-interactive dist/* plus a PyPI JSON preflight (pypi.org/pypi/<project>/<version>/json, 200→skip) so reruns are no-ops.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 - 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": ""}