Repository navigation
Conversation
mattpodwysocki
left a comment
There was a problem hiding this comment.
Thanks, this is a really nice cleanup. I checked the true/false flag change against a build from main. --flag and leaving the flag off behave exactly as before, --flag=false and --flag=true used to be usage errors and now work, and --flag false is still rejected, so nothing that worked before changes meaning. Tests, fmt and clippy all pass locally.
Two small things, neither blocking:
- In
--schemathe snapping flags go from a boolean flag to a string option. I agree it's a fix since the old form always got a 422. Just flagging it so we're deliberate about calling it that. - In
workflow/runner.rsa step'sfalsestill drops the flag, so a workflow can't turn offattributionorlogo. The comment's reasoning (an API reading presence rather than value) applies equally to--flag=falseon the command line. Maybe a doc note or a follow-up issue?
Looks good to me otherwise.
static get-image/get-tile and tilesets get-tile required every path positional, so highRes, format and quality had to be passed as "". The run of omittable positionals at the end is now optional, and the executor sends an absent one as "". Earlier optional positionals say in their help how to skip them. feedback moves from the Search help group to Maps and data, with a description that says it reads as well as submits.
A boolean query flag could only send true, so a parameter the API defaults to true (attribution, logo, autocomplete, dedupe, continue_straight) could never be turned off. It now also takes --flag=false; the = is required so the optional value can't swallow the next positional. A workflow step's false still leaves the flag out. directions --snapping-include-closures and --snapping-include-static-closures were switches sending a single true, which the API rejects with a 422. They now take one value per coordinate, semicolon-separated.
A parameter's help was cut to its first sentence, which dropped the
allowed values and what else it needs ("Requires overview=full"). It now
shows the whole description.
An API command's or service's --help printed the spec's Markdown page
as is: headings, tables, curl examples. It now shows the opening prose,
rendered as plain text, then a Docs: link. --schema still carries the
full description.
…tray --id --timeout, --output, --no-color, --profile and workflow install --repo/--ref read their variable or default in code, so --schema only had them in the description. A [env: X] or [default: X] note in the help now fills the env and default fields. A new top-level groups list carries what a command group's own help says, which commands (leaves only) never included. --id is global but only API commands read it, so history show --id x printed the newest run as if it were x. Anywhere else it is now a usage error.
Hand-written commands: skill --agent/--dir/--ref, mcp list/install, uninstall (names what stays in ~/.mapbox), config set's keys and defaults, and usage's long help, which no longer points at the issue tracker. custom-openapi: routing profiles, matrix sources/destinations, directions --waypoints, map-match --approaches, feedback list's pagination and the places description. The feedback feature and screenshot notes record what the API accepted on 2026-10-23. docs.tsv now ranks 23 queries first, up from 22.
…hema shape changed A step's false still omits a generated boolean flag, so a step cannot turn off one that defaults to true. The README now says so, and the runner's comment gives the real reason rather than one that would apply to --flag=false on the command line too.
9d0d8dd to
d4154f6
Compare
|
Thanks! Rebased on main. Both addressed in d4154f6: the CHANGELOG snapping entry now calls out the |
A review of every
--helpand--schemadescription turned up text that was cut off, rendered as raw Markdown, wrong, or unusable as written. One commit per kind of change:static get-image,get-tile,tilesets get-tile) can be left off instead of passed as"".feedbackmoves to the Maps and data help group.=false. Before this, a flag could only sendtrue, soattribution,logo,autocomplete,dedupeandcontinue_straight, which default to true, could never be turned off. The bare flag still sendstrue, and in a workflow stepfalsestill leaves the flag out.directions --snapping-include-*now take one value per coordinate (true;false); the old switch sent a singletrue, which the API rejects with a 422.--helpshows each parameter's whole description, not just its first sentence. A command's or service's own description shows its opening prose as plain text, followed by aDocs:link, instead of the whole Markdown page (geocoder batchwas 113 lines).--schemastill carries the full text.--schemanow fillsenvanddefaultfor arguments that read them in code, and adds a top-levelgroupslist with what each command group's own help says.--idon a non-API command is now a usage error (exit 2) instead of being ignored; before,history show --id xshowed the newest run.custom-openapi/.docs.tsvnow ranks 23 queries first, up from 22.issues.tsvtop-3 is 66, one below its recorded 67 and within the slack; the point was lost whenusage --helpstopped linking the issue tracker.Compatibility: the
--iderror and the snapping change are the only behavior changes for an existing command. The snapping switch never produced a working request, and--idused to be silently ignored. The--schemaadditions don't bumpschema_version. All changes are in CHANGELOG.Verified against the production API:
static get-image --attribution=falsedrops the attribution.--dedupe=false,--autocomplete=falseand--continue-straight=falsereach the request asfalse; I didn't check what each one changes in the response.snapping_include_closures=true;trueis accepted and a lonetrueis a 422. A comma-separated matrixsourcesis a 422. For feedback create, plain base64screenshotis a 400 and a data URI is accepted; thefeaturecoordinates aren't validated or returned. That test left three "please ignore" feedback items on a test account.Not verified: the
mcp installlong help says the hosted server asks the agent to sign in on first use. I haven't tested that.