fix(claude-ops): let local and for-head bindings shadow imported and outer names in the inventory - #5649
Conversation
…he inventory Refs: #5640 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…oop body Refs: #5640 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Refs: #5640 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…ut a space
The for-head declaration pattern required whitespace after let/const, so the
minified form for(const{x}of...) and for(const[x]of...) bound nothing.
Refs: #5640
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
|
Claude finished @kyle-sexton's task in 53s —— View job Security review —
|
|
Claude finished @kyle-sexton's task in 5m 59s —— View job Code review complete
SummaryReviewed the scoping fix in One finding posted inline on The two other mechanisms looked correct on manual trace:
Docs/changelog/version bump are consistent with the change. Verification note: I could not execute |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 8b9db260d1
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
… and for a binding named of Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
Claude finished @kyle-sexton's task in 1m 33s —— View job Security review —
|
|
Claude finished @kyle-sexton's task in 4m 42s —— View job Code review complete
SummaryReviewed the full diff ( One finding posted inline on The other two mechanisms in this diff (the Verification note: I could not execute |
…n an unbraced loop body Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
Claude finished @kyle-sexton's task in 5m 43s —— View job Code review complete
SummaryReviewed the full diff at head One finding posted inline on The rest of this commit's change — threading Verification note: I could not execute |
|
Claude finished @kyle-sexton's task in 1m 5s —— View job Security review —
|
… that closes it Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
Claude finished @kyle-sexton's task in 4m 49s —— View job Code review complete
SummaryReviewed the full diff at head One finding posted inline on The rest of this commit — resetting Verification note: I attempted to run the repro and |
|
Claude finished @kyle-sexton's task in 1m 59s —— View job Security review —
|
…ment-level block Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
Claude finished @kyle-sexton's task in 2m 4s —— View job Security review —
|
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
Claude finished @kyle-sexton's task in 53s —— View job Security review —
|
|
Claude finished @kyle-sexton's task in 5m 42s —— View job Code review complete
SummaryReviewed the full diff at head One finding posted inline on The rest of this round's changes — the Verification note: |
…tement block ends it Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
Claude finished @kyle-sexton's task in 2m 16s —— View job Code review complete
SummaryReviewed the full diff at head No new findings. The fix moves the
The rest of the diff ( Verification note: |
|
Claude finished @kyle-sexton's task in 1m 9s —— View job Security review —
|
Refs: #5640
Summary
The inventory extractor resolved a name through an import or an outer binding even when the reader's own scope declared or bound the same name, so a built-in description could read a foreign value.
Fix
let/constin afor (...)head (includingfor await) shadows outer names in the loop body.extraction.mdlists the scoping rules. The title's full parser replacement stays the owner's call, so this does not close the issue.Verification
python3 -m unittest test_inventoryinplugins/claude-ops/skills/inventory/scripts: 196 tests OK.plugin.jsonparses.Related
Refs #5640; follows #5619.
🤖 Generated with Claude Code