chore(renovate): drop dead self-version tokens to break publish-loop - #98
Conversation
Version.props declared four ANcpLuaRoslynUtilities*Version PropertyGroups (Roslyn.Utilities, Sources, Polyfills, Testing) that nothing in this repo consumes — Directory.Packages.props has zero ANcpLua.* PackageVersion entries and no csproj substitutes $(ANcpLuaRoslynUtilities*Version). They existed only as a copy artifact from the SDK template. The shared renovate-config preset's customManagers regex still matched those tokens here, so each merge — which auto-bumps the published patch via git describe + the publish workflow — produced a Renovate PR to bump Version.props to the new published version, which on merge auto-bumped again, looping forever. Hence the local packageRules blanket-disable on ^ANcpLua\\. With the tokens gone the regex finds nothing, the loop dissolves, and the local override is unnecessary. renovate.json is now extends-only. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: ASSERTIVE Plan: Pro Run ID: ⛔ Files ignored due to path filters (1)
📒 Files selected for processing (1)
💤 Files with no reviewable changes (1)
📜 Recent review details⏰ Context from checks skipped due to timeout of 180000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (4)
📝 WalkthroughWalkthroughVersion.props has four MSBuild PropertyGroup sections removed that previously defined Roslyn utilities-related version constants: 🚥 Pre-merge checks | ✅ 8 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (8 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. Comment |
|
@coderabbitai autofix |
|
Claude encountered an error —— View job I'll analyze this and get back to you. |
|
Note Autofix is a beta feature. Expect some limitations and changes as we gather feedback and continue to improve it. Autofix skipped. No unresolved CodeRabbit review comments with fix instructions found. |
Summary
<PropertyGroup>entries inVersion.propsforANcpLuaRoslynUtilities*Version(Roslyn.Utilities, Sources, Polyfills, Testing). Nothing in this repo consumes them —Directory.Packages.propshas zeroANcpLua.*PackageVersionentries and grep finds no$(ANcpLuaRoslynUtilities*Version)substitution. They were a copy artifact from the SDK template.renovate.jsontoextends-only by deleting the^ANcpLua\\.blanket-disablepackageRules. It existed to break the loop these dead tokens caused.Why
The shared
ANcpLua/renovate-configpreset hascustomManagersregexes that match<ANcpLuaRoslynUtilities*Version>inVersion.props. Each merge tomainauto-bumps the published patch viagit describe+nuget-publish.yml, so Renovate would see e.g.2.0.8on NuGet, open a PR to updateVersion.propsto2.0.8, and the merge of that PR would auto-bump again to2.0.9— a self-perpetuating Renovate-merge loop. The local override blocked it but with a misleading "self-test pin" description; the real culprit was these dead tokens.With them gone the regex finds nothing here, the loop dissolves, and the override is unnecessary.
Test plan
Directory.Packages.propsimport chain inspected — no consumer of removed tokensfind . -name "*.props" -o -name "*.targets" | xargs grep 'Import.*Version\.props'— onlyDirectory.Packages.propsimports it$(ANcpLuaRoslynUtilitiesin csproj/props/targets — onlyANcpLuaRoslynUtilitiesNamespace(unrelated)eng/and.github/reads of these tokens — none🤖 Generated with Claude Code
Summary by CodeRabbit