fix(generator): keep "is a list of one or more" descriptions scalar - #4720
fix(generator): keep "is a list of one or more" descriptions scalar#4720thomhurst wants to merge 1 commit into
Conversation
The repeatable-option heuristic accepted any "list of / specification of
<one or more> <noun>" phrase. That was added for Docker's "Specifications of
one or more certificate signing endpoints", where the prose is the option's
values, but it also matched gcloud's "Expression is a list of one or more
restrictions", which describes the grammar of a single --filter string, and
the latest gcloud regeneration flipped two Filter properties to
IEnumerable<string>.
An article-led predicate ("is a list of", "are the specifications of") now
keeps the alternative from matching; the Docker phrasing is unchanged.
Closes #4718
Claude-Session: https://claude.ai/code/session_01PkLNTUfwGXjqXZrYrHaDGC
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. |
|
Warning Review limit reachedNext included review available in 22 minutes. View limit detailsLimit details: You’ve used all 4 included reviews currently available. You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. Review configuration: ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Team Run ID: 📒 Files selected for processing (2)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
ReviewThis is a small, well-targeted fix to Change: the Verified:
Note (non-blocking): the heuristic is inherently fuzzy — a hypothetical phrasing like "the value accepted is a list of one or more comma-separated regions, each provided via a separate flag" would now be misclassified as scalar. Given this is prose-heuristic scraping over arbitrary third-party No blocking issues found. |
Summary
CliScraperBase.RepeatableValueRegextreats(specifications?|lists?) of (one|zero) or more <noun>as a repeatable-option signal. #4543 added it for Docker's--external-ca external-ca Specifications of one or more certificate signing endpoints. It also matches gcloud's--filter=FILTERprose, "Expression is a list of one or more restrictions combined via logical operators 'AND' and 'OR'", which describes the grammar of one expression string. The latest gcloud regeneration (#4665) therefore flippedGcloudSccAssetsGroupOptions.FilterandGcloudSccFindingsGroupOptions.FiltertoIEnumerable<string>?, and the review blocked it.Change
list of / specification ofalternative no longer matches when it is the predicate of an article-led sentence about one value (is|are|as|be|being+a|an|the). Docker's phrasing has no article and keeps matching.CliScraperTraversalTests(61) and the full Scrapers namespace (665) pass locally.Follow-up
#4665 is regenerated from
mainvia the generation workflow once this merges (automated PRs are never rebased).Closes #4718
https://claude.ai/code/session_01PkLNTUfwGXjqXZrYrHaDGC