Pin @galaxy-tool-util/cli (gxwf) to 1.7.2 + capability-probe availability check#320
Merged
Conversation
…ity check gxwf/galaxy-tool-cache cli-tool notes referenced @galaxy-tool-util/cli unpinned, so a cast consumer (no repo lockfile) could resolve a gxwf lacking the draft-tier subcommands (draft-validate/next-step/extract) the per-step loop depends on. Pin package_version + invoke_fallback to @1.7.2 in both notes (mirrors planemo pinning); caster auto-versions the install line, invoke_fallback carried verbatim so both set. Strengthen availability_check from `gxwf --version` to a capability probe (`gxwf --help | grep -q draft-validate`, `... grep -q summarize`): gxwf --version reports a hardcoded 1.0.0 regardless of package version, so a version gate would reject the correct CLI; probe asserts the actual subcommand instead. Regenerated all affected Mold casts + pipeline harnesses (also folds in pending bundle drift: $comment jmchilton->galaxyproject, draft-format refresh, open-requirements-ledger.md now bundled). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why
A pipeline test-drive surfaced that
content/cli/gxwf/index.mdandcontent/cli/galaxy-tool-cache/index.mdreference@galaxy-tool-util/cliunpinned. A cast consumer without the repo lockfile can resolve agxwflacking the draft-tier subcommands (draft-validate/draft-next-step/draft-extract) that the per-step authoring loop and the template/loop eval gates depend on.Changes
1.7.2in both cli-tool notes: addpackage_version: "1.7.2"and pininvoke_fallbacktonpx --yes --package @galaxy-tool-util/cli@1.7.2 …. Mirrors the existing planemo pinning pattern. The caster auto-versions thenpm install -gline frompackage_versionbut copiesinvoke_fallbackverbatim, so both fields are set.availability_check(replacesgxwf --version):gxwf --help | grep -q draft-validate(and… grep -q summarizefor galaxy-tool-cache). Empirically,@galaxy-tool-util/cli@1.7.2'sgxwf --versionreports a hardcoded1.0.0regardless of the published package version — a version-number gate would reject the correct CLI. The probe asserts the actual subcommand instead.$commentjmchilton/foundry → galaxyproject/foundryrename ingalaxy-tool-summary.schema.json, agalaxy-workflow-draft-format.mdref refresh, andopen-requirements-ledger.mdnow bundled into the draft-tier Mold casts.Also includes the pre-existing "Remove emulated run" cleanup commit that was one ahead of
main.Verification
npm run validate→ 0 errorsmake check-assemble-pipelines→ cleannpm run cast -- … --check→ clean on the formerly-erroringfreeform-summary-to-galaxy-template+advance-galaxy-draft-stepnpm run test→ 134/134Note: the
galaxyWorkflowDraftJsonSchema"missing export" error seen during the run was a stale localnode_modules(lagging the^1.7.2lockfile pin), not a code bug — fixed bypnpm install --frozen-lockfile, no source change. Not part of this diff.🤖 Generated with Claude Code