Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
37 changes: 37 additions & 0 deletions renovate.json
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,43 @@
"automerge": false,
"labels": ["dependencies", "major"]
},
{
"description": [
"Fleet compatibility guard (OPS-1063, owner 2026-11-10): a repo on typescript 5.x or older stays there.",
"Renovate keeps proposing typescript 7 to repos whose toolchains cannot take it; repos already on 7 (like BotFleet) are exempt through matchCurrentVersion.",
"Copy the guard rules into any repo where the suggestion cannot land."
],
"matchPackageNames": ["typescript"],
"matchCurrentVersion": "/^[0-5]([.!+~-]|$)/",
"allowedVersions": "<6"
Comment on lines +40 to +42

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

kody code-review Bug medium

TypeScript <6 guard misses ^/~-prefixed versions

Caret and tilde ranges like ^5.9.2 bypass the <6 cap because matchCurrentVersion tests the raw value verbatim. Allow the optional prefix in the expression or switch to a version constraint.

Also found in:

  • renovate.json:48-50
Prompt for LLM
File renovate.json, lines 40-42:

TypeScript <6 guard misses ^/~-prefixed versions

The typescript 0-5 guard at line 41 never matches caret/tilde ranges like ^5.9.2 so the <6 cap fails open to typescript 7. Renovate regex matchCurrentVersion tests the raw value verbatim without stripping ^/~, defeating the OPS-1063 guard on the most common declaration form. Allow the optional prefix, e.g. /^[\^~v]?[0-5]([.!+~-]|$)/ or use a version constraint instead of regex.

**Also found in:**
- `renovate.json:48-50`

Suggested code:

"matchPackageNames": ["typescript"],
"matchCurrentVersion": "/^[~^v]?[0-5]([.!+~-]|$)/",
"allowedVersions": "<6"

Talk to Kody by mentioning @kody

Was this suggestion helpful? React with 👍 or 👎 to help Kody learn from this interaction.

​

​

},
{
"description": [
"Fleet compatibility guard: a repo that has deliberately moved to the typescript 6 line stays on it until a human opens 7."
],
"matchPackageNames": ["typescript"],
"matchCurrentVersion": "/^6([.!+~-]|$)/",
"allowedVersions": "<7"
},
{
"description": [
"Fleet compatibility guard: a repo on node 18 through 25 never sees node 26+ suggestions.",
"Owner 2026-11-10: node 26 proposals keep landing where the deployed runtime or platform cannot take them.",
"Covers the docker and nvm managers; repos already on 26 or newer are exempt."
],
"matchPackageNames": ["node"],
"matchManagers": ["docker", "nvm"],
Comment on lines +58 to +59

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

kody code-review Fleet Recall context high

Node guard uses invalid docker manager so Dockerfile updates bypass block

Dockerfile FROM bumps to node:26+ remain unblocked because docker matches no Renovate manager. Change the matchManagers entry to dockerfile.

Prompt for LLM
File renovate.json, lines 58-59:

Node guard uses invalid docker manager so Dockerfile updates bypass block

matchManagers lists docker which is not a Renovate manager, so the Node 26 block never applies to Dockerfile FROM updates. Renovate matches Dockerfile images under manager dockerfile, leaving node:26+ image bumps unguarded contrary to OPS-1063. Change docker to dockerfile in matchManagers.

Talk to Kody by mentioning @kody

Was this suggestion helpful? React with 👍 or 👎 to help Kody learn from this interaction.

​

​

"matchCurrentVersion": "/^v?(1[89]|2[0-5])([.!-]|$)/",
"allowedVersions": "!/^(v?)(2[6-9]|[3-9][0-9])/"
},
{
"description": [
"Fleet compatibility guard: @types/node tracks the runtime major, so the same boundary applies to the typings."
],
"matchPackageNames": ["@types/node"],
"matchCurrentVersion": "/^(1[89]|2[0-5])([.!-]|$)/",
"allowedVersions": "<26"
},
{
"description": [
"@trycua/cua-driver is pinned in several places that must move together in one deliberate PR:",
Expand Down
Loading