@galaxyproject/orbit 0.0.0 → 0.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +123 -0
- package/LICENSE +21 -0
- package/README.md +760 -5
- package/bin/legacy-mcp-config.js +363 -0
- package/bin/orbit.js +810 -0
- package/bin/pi-extension-path.d.ts +4 -0
- package/bin/pi-extension-path.js +44 -0
- package/bin/provider-auth.d.ts +22 -0
- package/bin/provider-auth.js +77 -0
- package/bin/thinking-pref.js +38 -0
- package/bin/update-check.d.ts +15 -0
- package/bin/update-check.js +137 -0
- package/extensions/cli-update/index.ts +32 -0
- package/extensions/orbit/activity-hooks.ts +141 -0
- package/extensions/orbit/activity.ts +116 -0
- package/extensions/orbit/agent-dir.ts +11 -0
- package/extensions/orbit/auto-resume.ts +352 -0
- package/extensions/orbit/config.ts +3 -0
- package/extensions/orbit/confusables.ts +1 -0
- package/extensions/orbit/context.ts +957 -0
- package/extensions/orbit/dashboard-commands.ts +191 -0
- package/extensions/orbit/dashboard-store.ts +473 -0
- package/extensions/orbit/dashboard-tools.ts +1185 -0
- package/extensions/orbit/empty-completion.ts +99 -0
- package/extensions/orbit/evidence-gate.ts +1276 -0
- package/extensions/orbit/evidence-override-command.ts +294 -0
- package/extensions/orbit/exec-guard/bash-risk.ts +1408 -0
- package/extensions/orbit/exec-guard/gate.ts +181 -0
- package/extensions/orbit/exec-guard/guardian-config.ts +54 -0
- package/extensions/orbit/exec-guard/index.ts +1 -0
- package/extensions/orbit/exec-guard/model-tier.ts +36 -0
- package/extensions/orbit/exec-guard/path-jail.ts +54 -0
- package/extensions/orbit/exec-guard/policy.ts +342 -0
- package/extensions/orbit/exec-guard/runtime-state.ts +15 -0
- package/extensions/orbit/exec-guard/sensitive-read.ts +525 -0
- package/extensions/orbit/exec-guard/types.ts +42 -0
- package/extensions/orbit/execution-commands.ts +134 -0
- package/extensions/orbit/feedback-command.ts +81 -0
- package/extensions/orbit/feedback.ts +96 -0
- package/extensions/orbit/galaxy-api.test.ts +122 -0
- package/extensions/orbit/galaxy-api.ts +606 -0
- package/extensions/orbit/galaxy-artifact-link-guidance.ts +5 -0
- package/extensions/orbit/galaxy-destructive-gate.ts +113 -0
- package/extensions/orbit/galaxy-enrich.ts +1108 -0
- package/extensions/orbit/galaxy-failure.ts +101 -0
- package/extensions/orbit/galaxy-fixture.ts +126 -0
- package/extensions/orbit/galaxy-history-guard.ts +233 -0
- package/extensions/orbit/galaxy-job-block.ts +347 -0
- package/extensions/orbit/galaxy-job-ops.ts +288 -0
- package/extensions/orbit/galaxy-live-source.ts +929 -0
- package/extensions/orbit/galaxy-markdown-adapter.ts +248 -0
- package/extensions/orbit/galaxy-op-policy.ts +332 -0
- package/extensions/orbit/galaxy-ops-tools.ts +326 -0
- package/extensions/orbit/galaxy-output-store.ts +80 -0
- package/extensions/orbit/galaxy-output.ts +346 -0
- package/extensions/orbit/galaxy-page-binding.ts +222 -0
- package/extensions/orbit/galaxy-page-markdown-guidance.ts +15 -0
- package/extensions/orbit/galaxy-page-ops.ts +159 -0
- package/extensions/orbit/galaxy-page-sync.test.ts +417 -0
- package/extensions/orbit/galaxy-page-sync.ts +318 -0
- package/extensions/orbit/galaxy-pages-api.ts +203 -0
- package/extensions/orbit/galaxy-pages-sync.ts +409 -0
- package/extensions/orbit/galaxy-poll-guard.ts +189 -0
- package/extensions/orbit/galaxy-poller.ts +706 -0
- package/extensions/orbit/galaxy-provenance.ts +623 -0
- package/extensions/orbit/galaxy-reconcile.ts +956 -0
- package/extensions/orbit/galaxy-recovery.ts +176 -0
- package/extensions/orbit/galaxy-repeat-guard.ts +55 -0
- package/extensions/orbit/galaxy-submission-capture.ts +707 -0
- package/extensions/orbit/galaxy-submission.ts +502 -0
- package/extensions/orbit/galaxy-tool-source.ts +78 -0
- package/extensions/orbit/galaxy-tool-wrap.ts +234 -0
- package/extensions/orbit/galaxy-udt-block.ts +127 -0
- package/extensions/orbit/galaxy-upload-tus.ts +334 -0
- package/extensions/orbit/galaxy-upload.ts +300 -0
- package/extensions/orbit/galaxy-version-capture.ts +65 -0
- package/extensions/orbit/git.ts +173 -0
- package/extensions/orbit/harness-block-fields.ts +597 -0
- package/extensions/orbit/index.ts +593 -0
- package/extensions/orbit/init-gate.ts +284 -0
- package/extensions/orbit/instructions-command.ts +136 -0
- package/extensions/orbit/invocation-failure-hint.ts +57 -0
- package/extensions/orbit/iwc-plan-check.ts +94 -0
- package/extensions/orbit/lesson-command.ts +303 -0
- package/extensions/orbit/lesson-hint.ts +245 -0
- package/extensions/orbit/lesson-nudge.ts +106 -0
- package/extensions/orbit/lessons/compose.ts +177 -0
- package/extensions/orbit/lessons/counters.ts +120 -0
- package/extensions/orbit/lessons/enabled.ts +116 -0
- package/extensions/orbit/lessons/matcher.ts +346 -0
- package/extensions/orbit/lessons/paths.ts +286 -0
- package/extensions/orbit/lessons/pi-event-contract.ts +105 -0
- package/extensions/orbit/lessons/propose-replay.ts +103 -0
- package/extensions/orbit/lessons/propose-tool.ts +222 -0
- package/extensions/orbit/lessons/propose.ts +502 -0
- package/extensions/orbit/lessons/replay.ts +89 -0
- package/extensions/orbit/lessons/reproduction-index.ts +83 -0
- package/extensions/orbit/lessons/search-tool.ts +99 -0
- package/extensions/orbit/lessons/search.ts +136 -0
- package/extensions/orbit/lessons/store.ts +415 -0
- package/extensions/orbit/lessons/text.ts +36 -0
- package/extensions/orbit/lessons/types.ts +69 -0
- package/extensions/orbit/lessons/user-dir.ts +24 -0
- package/extensions/orbit/lessons/user-lesson.ts +88 -0
- package/extensions/orbit/lessons/wrapper.ts +61 -0
- package/extensions/orbit/lessons-command.ts +147 -0
- package/extensions/orbit/local-exec.ts +39 -0
- package/extensions/orbit/mcp-output.ts +179 -0
- package/extensions/orbit/mcp-servers.test.ts +24 -0
- package/extensions/orbit/mcp-servers.ts +25 -0
- package/extensions/orbit/model-script.ts +351 -0
- package/extensions/orbit/notebook-anchors.ts +342 -0
- package/extensions/orbit/notebook-writer.ts +863 -0
- package/extensions/orbit/observation-allowlists.ts +1109 -0
- package/extensions/orbit/observation-replay.ts +148 -0
- package/extensions/orbit/observation-triggers.ts +563 -0
- package/extensions/orbit/observation-ui.ts +175 -0
- package/extensions/orbit/observations-command.ts +421 -0
- package/extensions/orbit/observations-config.ts +200 -0
- package/extensions/orbit/observations.ts +1381 -0
- package/extensions/orbit/profiles.ts +270 -0
- package/extensions/orbit/progress-updates.ts +95 -0
- package/extensions/orbit/proposal-commands.ts +882 -0
- package/extensions/orbit/provenance-fs-file.ts +59 -0
- package/extensions/orbit/provenance-fs.ts +32 -0
- package/extensions/orbit/provenance-memory-fs.ts +59 -0
- package/extensions/orbit/record-store-file.ts +177 -0
- package/extensions/orbit/record-store-page.ts +77 -0
- package/extensions/orbit/record-store-seam.ts +47 -0
- package/extensions/orbit/record-store.ts +149 -0
- package/extensions/orbit/registry-carrier.ts +107 -0
- package/extensions/orbit/registry-eligibility.ts +95 -0
- package/extensions/orbit/registry-evaluation.ts +403 -0
- package/extensions/orbit/registry-evaluator.ts +519 -0
- package/extensions/orbit/registry-import.ts +91 -0
- package/extensions/orbit/registry-lock.ts +221 -0
- package/extensions/orbit/registry-memory-fs.ts +42 -0
- package/extensions/orbit/registry-page-carrier.ts +103 -0
- package/extensions/orbit/registry-proposal.ts +1348 -0
- package/extensions/orbit/registry-runtime.ts +234 -0
- package/extensions/orbit/registry-schema.ts +735 -0
- package/extensions/orbit/registry-submitter.ts +59 -0
- package/extensions/orbit/registry-templates.ts +346 -0
- package/extensions/orbit/registry.ts +476 -0
- package/extensions/orbit/sandbox/index.ts +120 -0
- package/extensions/orbit/sandbox/sandbox-bash.ts +93 -0
- package/extensions/orbit/sandbox/sandbox-config.ts +87 -0
- package/extensions/orbit/sandbox/sandbox-init-message.ts +28 -0
- package/extensions/orbit/secret-redaction.ts +247 -0
- package/extensions/orbit/session-index/cwd.ts +18 -0
- package/extensions/orbit/session-index/db.ts +56 -0
- package/extensions/orbit/session-index/indexer.ts +154 -0
- package/extensions/orbit/session-index/is-enabled.ts +17 -0
- package/extensions/orbit/session-index/parse.ts +254 -0
- package/extensions/orbit/session-index/query.ts +209 -0
- package/extensions/orbit/session-index/schema.ts +72 -0
- package/extensions/orbit/session-index/tools.ts +152 -0
- package/extensions/orbit/session-lifecycle.ts +321 -0
- package/extensions/orbit/skill-triggers.ts +159 -0
- package/extensions/orbit/skills-command.ts +48 -0
- package/extensions/orbit/skills-discovery.ts +435 -0
- package/extensions/orbit/skills.ts +84 -0
- package/extensions/orbit/sra-import-gate.ts +77 -0
- package/extensions/orbit/state.ts +265 -0
- package/extensions/orbit/submission-replay.ts +147 -0
- package/extensions/orbit/sync-command.ts +157 -0
- package/extensions/orbit/teams/critic-parser.ts +93 -0
- package/extensions/orbit/teams/dispatcher.ts +210 -0
- package/extensions/orbit/teams/is-enabled.ts +22 -0
- package/extensions/orbit/teams/tool.ts +187 -0
- package/extensions/orbit/teams/types.ts +57 -0
- package/extensions/orbit/teams/validate.ts +42 -0
- package/extensions/orbit/tester-id-command.ts +133 -0
- package/extensions/orbit/tools-sync.ts +279 -0
- package/extensions/orbit/tools.ts +1300 -0
- package/extensions/orbit/types.ts +41 -0
- package/extensions/orbit/ui-bridge.ts +55 -0
- package/extensions/orbit/ulid.ts +60 -0
- package/extensions/orbit/user-instructions.ts +388 -0
- package/extensions/orbit/vendor/skills/_catalog.json +68 -0
- package/extensions/orbit/vendor/skills/_manifest.json +1106 -0
- package/extensions/orbit/vendor/skills/advance-galaxy-draft-step/SKILL.md +112 -0
- package/extensions/orbit/vendor/skills/advance-galaxy-draft-step/_provenance.json +218 -0
- package/extensions/orbit/vendor/skills/advance-galaxy-draft-step/_required_tools.json +33 -0
- package/extensions/orbit/vendor/skills/advance-galaxy-draft-step/_verify.json +4 -0
- package/extensions/orbit/vendor/skills/advance-galaxy-draft-step/references/cli/add.json +50 -0
- package/extensions/orbit/vendor/skills/advance-galaxy-draft-step/references/cli/draft-extract.json +51 -0
- package/extensions/orbit/vendor/skills/advance-galaxy-draft-step/references/cli/draft-next-step.json +42 -0
- package/extensions/orbit/vendor/skills/advance-galaxy-draft-step/references/cli/draft-validate.json +140 -0
- package/extensions/orbit/vendor/skills/advance-galaxy-draft-step/references/cli/list.json +32 -0
- package/extensions/orbit/vendor/skills/advance-galaxy-draft-step/references/notes/galaxy-tool-job-failure-reference.md +137 -0
- package/extensions/orbit/vendor/skills/advance-galaxy-draft-step/references/notes/open-requirements-ledger.md +173 -0
- package/extensions/orbit/vendor/skills/advance-galaxy-draft-step/references/schemas/galaxy-tool-summary.schema.json +175 -0
- package/extensions/orbit/vendor/skills/advance-galaxy-draft-step/references/schemas/galaxy-workflow-draft.schema.json +2727 -0
- package/extensions/orbit/vendor/skills/apply-galaxy-workflow-changeset/SKILL.md +82 -0
- package/extensions/orbit/vendor/skills/apply-galaxy-workflow-changeset/_provenance.json +133 -0
- package/extensions/orbit/vendor/skills/apply-galaxy-workflow-changeset/_required_tools.json +16 -0
- package/extensions/orbit/vendor/skills/apply-galaxy-workflow-changeset/_verify.json +4 -0
- package/extensions/orbit/vendor/skills/apply-galaxy-workflow-changeset/references/cli/draft-validate.json +140 -0
- package/extensions/orbit/vendor/skills/apply-galaxy-workflow-changeset/references/notes/galaxy-workflow-draft-format.md +135 -0
- package/extensions/orbit/vendor/skills/apply-galaxy-workflow-changeset/references/notes/open-requirements-ledger.md +173 -0
- package/extensions/orbit/vendor/skills/apply-galaxy-workflow-changeset/references/schemas/galaxy-workflow-draft.schema.json +2727 -0
- package/extensions/orbit/vendor/skills/changeset-to-galaxy-test-plan/SKILL.md +84 -0
- package/extensions/orbit/vendor/skills/changeset-to-galaxy-test-plan/_provenance.json +166 -0
- package/extensions/orbit/vendor/skills/changeset-to-galaxy-test-plan/_verify.json +29 -0
- package/extensions/orbit/vendor/skills/changeset-to-galaxy-test-plan/references/notes/galaxy-workflow-testability-design.md +136 -0
- package/extensions/orbit/vendor/skills/changeset-to-galaxy-test-plan/references/notes/iwc-shortcuts-anti-patterns.md +357 -0
- package/extensions/orbit/vendor/skills/changeset-to-galaxy-test-plan/references/notes/iwc-test-data-conventions.md +308 -0
- package/extensions/orbit/vendor/skills/changeset-to-galaxy-test-plan/references/notes/planemo-asserts-idioms.md +246 -0
- package/extensions/orbit/vendor/skills/changeset-to-galaxy-test-plan/references/notes/planemo-workflow-test-architecture.md +151 -0
- package/extensions/orbit/vendor/skills/changeset-to-galaxy-test-plan/references/schemas/galaxy-workflow-test-plan.schema.json +552 -0
- package/extensions/orbit/vendor/skills/changeset-to-galaxy-test-plan/references/schemas/summary-galaxy-workflow.schema.json +687 -0
- package/extensions/orbit/vendor/skills/changeset-to-galaxy-test-plan/references/schemas/tests-format.schema.json +7328 -0
- package/extensions/orbit/vendor/skills/compare-against-iwc-exemplar/SKILL.md +127 -0
- package/extensions/orbit/vendor/skills/compare-against-iwc-exemplar/_provenance.json +198 -0
- package/extensions/orbit/vendor/skills/compare-against-iwc-exemplar/_required_tools.json +16 -0
- package/extensions/orbit/vendor/skills/compare-against-iwc-exemplar/_verify.json +4 -0
- package/extensions/orbit/vendor/skills/compare-against-iwc-exemplar/references/cli/convert.json +123 -0
- package/extensions/orbit/vendor/skills/compare-against-iwc-exemplar/references/notes/galaxy-data-flow-draft-contract.md +129 -0
- package/extensions/orbit/vendor/skills/compare-against-iwc-exemplar/references/notes/iwc-shortcuts-anti-patterns.md +357 -0
- package/extensions/orbit/vendor/skills/compare-against-iwc-exemplar/references/notes/iwc-test-data-conventions.md +308 -0
- package/extensions/orbit/vendor/skills/compare-against-iwc-exemplar/references/notes/open-requirements-ledger.md +173 -0
- package/extensions/orbit/vendor/skills/debug-galaxy-workflow-output/SKILL.md +73 -0
- package/extensions/orbit/vendor/skills/debug-galaxy-workflow-output/_provenance.json +160 -0
- package/extensions/orbit/vendor/skills/debug-galaxy-workflow-output/_verify.json +4 -0
- package/extensions/orbit/vendor/skills/debug-galaxy-workflow-output/references/notes/galaxy-collection-semantics.md +43 -0
- package/extensions/orbit/vendor/skills/debug-galaxy-workflow-output/references/notes/galaxy-collection-semantics.yml +1250 -0
- package/extensions/orbit/vendor/skills/debug-galaxy-workflow-output/references/notes/galaxy-tool-job-failure-reference.md +137 -0
- package/extensions/orbit/vendor/skills/debug-galaxy-workflow-output/references/notes/galaxy-workflow-invocation-failure-reference.md +138 -0
- package/extensions/orbit/vendor/skills/debug-galaxy-workflow-output/references/notes/iwc-shortcuts-anti-patterns.md +357 -0
- package/extensions/orbit/vendor/skills/debug-galaxy-workflow-output/references/notes/nextflow-operators-to-galaxy-collection-recipes.md +98 -0
- package/extensions/orbit/vendor/skills/debug-galaxy-workflow-output/references/notes/planemo-asserts-idioms.md +246 -0
- package/extensions/orbit/vendor/skills/debug-galaxy-workflow-output/references/notes/planemo-workflow-test-architecture.md +151 -0
- package/extensions/orbit/vendor/skills/discover-shed-tool/SKILL.md +174 -0
- package/extensions/orbit/vendor/skills/discover-shed-tool/_provenance.json +130 -0
- package/extensions/orbit/vendor/skills/discover-shed-tool/_required_tools.json +18 -0
- package/extensions/orbit/vendor/skills/discover-shed-tool/_verify.json +17 -0
- package/extensions/orbit/vendor/skills/discover-shed-tool/references/cli/tool-revisions.json +48 -0
- package/extensions/orbit/vendor/skills/discover-shed-tool/references/cli/tool-search.json +95 -0
- package/extensions/orbit/vendor/skills/discover-shed-tool/references/cli/tool-versions.json +39 -0
- package/extensions/orbit/vendor/skills/discover-shed-tool/references/notes/component-tool-shed-search.md +230 -0
- package/extensions/orbit/vendor/skills/discover-shed-tool/references/schemas/galaxy-tool-discovery.schema.json +231 -0
- package/extensions/orbit/vendor/skills/implement-galaxy-workflow-test/SKILL.md +93 -0
- package/extensions/orbit/vendor/skills/implement-galaxy-workflow-test/_provenance.json +201 -0
- package/extensions/orbit/vendor/skills/implement-galaxy-workflow-test/_required_tools.json +28 -0
- package/extensions/orbit/vendor/skills/implement-galaxy-workflow-test/_verify.json +17 -0
- package/extensions/orbit/vendor/skills/implement-galaxy-workflow-test/references/cli/planemo.md +44 -0
- package/extensions/orbit/vendor/skills/implement-galaxy-workflow-test/references/cli/validate-tests.json +40 -0
- package/extensions/orbit/vendor/skills/implement-galaxy-workflow-test/references/notes/galaxy-workflow-testability-design.md +136 -0
- package/extensions/orbit/vendor/skills/implement-galaxy-workflow-test/references/notes/iwc-shortcuts-anti-patterns.md +357 -0
- package/extensions/orbit/vendor/skills/implement-galaxy-workflow-test/references/notes/iwc-test-data-conventions.md +308 -0
- package/extensions/orbit/vendor/skills/implement-galaxy-workflow-test/references/notes/planemo-asserts-idioms.md +246 -0
- package/extensions/orbit/vendor/skills/implement-galaxy-workflow-test/references/notes/planemo-workflow-test-architecture.md +151 -0
- package/extensions/orbit/vendor/skills/implement-galaxy-workflow-test/references/schemas/galaxy-workflow-test-plan.schema.json +552 -0
- package/extensions/orbit/vendor/skills/implement-galaxy-workflow-test/references/schemas/tests-format.schema.json +7328 -0
- package/extensions/orbit/vendor/skills/interview-to-galaxy-workflow-changeset/SKILL.md +81 -0
- package/extensions/orbit/vendor/skills/interview-to-galaxy-workflow-changeset/_provenance.json +93 -0
- package/extensions/orbit/vendor/skills/interview-to-galaxy-workflow-changeset/_verify.json +17 -0
- package/extensions/orbit/vendor/skills/interview-to-galaxy-workflow-changeset/references/notes/open-requirements-ledger.md +173 -0
- package/extensions/orbit/vendor/skills/interview-to-galaxy-workflow-changeset/references/schemas/summary-galaxy-workflow.schema.json +687 -0
- package/extensions/orbit/vendor/skills/pipeline-update-interview-to-galaxy/SKILL.md +81 -0
- package/extensions/orbit/vendor/skills/pipeline-update-interview-to-galaxy/_assembly.json +23 -0
- package/extensions/orbit/vendor/skills/run-workflow-test/SKILL.md +79 -0
- package/extensions/orbit/vendor/skills/run-workflow-test/_provenance.json +125 -0
- package/extensions/orbit/vendor/skills/run-workflow-test/_required_tools.json +28 -0
- package/extensions/orbit/vendor/skills/run-workflow-test/_verify.json +4 -0
- package/extensions/orbit/vendor/skills/run-workflow-test/references/cli/planemo.md +44 -0
- package/extensions/orbit/vendor/skills/run-workflow-test/references/cli/validate-tests.json +40 -0
- package/extensions/orbit/vendor/skills/run-workflow-test/references/notes/galaxy-workflow-invocation-failure-reference.md +138 -0
- package/extensions/orbit/vendor/skills/run-workflow-test/references/notes/planemo-asserts-idioms.md +246 -0
- package/extensions/orbit/vendor/skills/run-workflow-test/references/notes/planemo-workflow-test-architecture.md +151 -0
- package/extensions/orbit/vendor/skills/run-workflow-test/references/schemas/tests-format.schema.json +7328 -0
- package/extensions/orbit/vendor/skills/skills/LICENSE +21 -0
- package/extensions/orbit/vendor/skills/skills/collection-manipulation/README.md +39 -0
- package/extensions/orbit/vendor/skills/skills/collection-manipulation/SKILL.md +892 -0
- package/extensions/orbit/vendor/skills/skills/collection-manipulation/references/api-patterns.md +927 -0
- package/extensions/orbit/vendor/skills/skills/collection-manipulation/references/apply-rules.md +1482 -0
- package/extensions/orbit/vendor/skills/skills/collection-manipulation/references/test-patterns.md +996 -0
- package/extensions/orbit/vendor/skills/skills/collection-manipulation/references/tools.md +609 -0
- package/extensions/orbit/vendor/skills/skills/galaxy-data-libraries/SKILL.md +170 -0
- package/extensions/orbit/vendor/skills/skills/galaxy-integration/README.md +162 -0
- package/extensions/orbit/vendor/skills/skills/galaxy-integration/SKILL.md +99 -0
- package/extensions/orbit/vendor/skills/skills/galaxy-integration/examples/README.md +119 -0
- package/extensions/orbit/vendor/skills/skills/galaxy-integration/examples/tool-checking.md +419 -0
- package/extensions/orbit/vendor/skills/skills/galaxy-integration/examples/workflow-testing.md +617 -0
- package/extensions/orbit/vendor/skills/skills/galaxy-integration/galaxy-integration.md +614 -0
- package/extensions/orbit/vendor/skills/skills/galaxy-integration/jupyterlite/SKILL.md +144 -0
- package/extensions/orbit/vendor/skills/skills/galaxy-integration/jupyterlite/examples/average_col3.ipynb +68 -0
- package/extensions/orbit/vendor/skills/skills/galaxy-integration/jupyterlite/examples/extract_sample_metadata.ipynb +190 -0
- package/extensions/orbit/vendor/skills/skills/galaxy-integration/jupyterlite/examples/variant_annotation.ipynb +816 -0
- package/extensions/orbit/vendor/skills/skills/galaxy-integration/jupyterlite/examples/vcp_variant_map.ipynb +443 -0
- package/extensions/orbit/vendor/skills/skills/galaxy-integration/scripts/README.md +165 -0
- package/extensions/orbit/vendor/skills/skills/galaxy-integration/scripts/galaxy_tool_checker.py +521 -0
- package/extensions/orbit/vendor/skills/skills/galaxy-mcp-reference/SKILL.md +128 -0
- package/extensions/orbit/vendor/skills/skills/galaxy-mcp-reference/gotchas.md +135 -0
- package/extensions/orbit/vendor/skills/skills/galaxy-mcp-reference/history-access.md +132 -0
- package/extensions/orbit/vendor/skills/skills/reproduciblify/SKILL.md +146 -0
- package/extensions/orbit/vendor/skills/skills/reproduciblify/references/directives.yml +496 -0
- package/extensions/orbit/vendor/skills/skills/udt-authoring/SKILL.md +245 -0
- package/extensions/orbit/vendor/skills/skills/udt-authoring/examples/01-minimal-echo.yml +27 -0
- package/extensions/orbit/vendor/skills/skills/udt-authoring/examples/02-single-data-in-out.yml +27 -0
- package/extensions/orbit/vendor/skills/skills/udt-authoring/examples/03-multiple-data-js.yml +28 -0
- package/extensions/orbit/vendor/skills/skills/udt-authoring/examples/04-select-integer-boolean.yml +41 -0
- package/extensions/orbit/vendor/skills/skills/udt-authoring/examples/05-resource-requirements.yml +25 -0
- package/extensions/orbit/vendor/skills/skills/udt-authoring/examples/06-biocontainer-tool.yml +38 -0
- package/extensions/orbit/vendor/skills/skills/udt-authoring/examples/07-inline-python-script.yml +56 -0
- package/extensions/orbit/vendor/skills/skills/udt-authoring/examples/08-configfile-script.yml +74 -0
- package/extensions/orbit/vendor/skills/skills/udt-authoring/references/common-mistakes.md +76 -0
- package/extensions/orbit/vendor/skills/skills/udt-authoring/references/schema-reference.md +155 -0
- package/extensions/orbit/vendor/skills/skills/udt-authoring/references/templating.md +196 -0
- package/extensions/orbit/vendor/skills/skills/udt-authoring/scripts/validate.py +109 -0
- package/extensions/orbit/vendor/skills/skills/workflow-reports/README.md +71 -0
- package/extensions/orbit/vendor/skills/skills/workflow-reports/SKILL.md +190 -0
- package/extensions/orbit/vendor/skills/skills/workflow-reports/examples/histology-staining.md +145 -0
- package/extensions/orbit/vendor/skills/skills/workflow-reports/examples/tissue-microarray-analysis.md +176 -0
- package/extensions/orbit/vendor/skills/skills/workflow-reports/references/directives.md +415 -0
- package/extensions/orbit/vendor/skills/summarize-galaxy-workflow/SKILL.md +98 -0
- package/extensions/orbit/vendor/skills/summarize-galaxy-workflow/_provenance.json +93 -0
- package/extensions/orbit/vendor/skills/summarize-galaxy-workflow/_required_tools.json +28 -0
- package/extensions/orbit/vendor/skills/summarize-galaxy-workflow/_verify.json +17 -0
- package/extensions/orbit/vendor/skills/summarize-galaxy-workflow/references/cli/convert.json +123 -0
- package/extensions/orbit/vendor/skills/summarize-galaxy-workflow/references/cli/foundry.md +25 -0
- package/extensions/orbit/vendor/skills/summarize-galaxy-workflow/references/cli/validate.json +142 -0
- package/extensions/orbit/vendor/skills/summarize-galaxy-workflow/references/schemas/summary-galaxy-workflow.schema.json +687 -0
- package/extensions/orbit/vendor/skills/validate-galaxy-workflow/SKILL.md +74 -0
- package/extensions/orbit/vendor/skills/validate-galaxy-workflow/_provenance.json +71 -0
- package/extensions/orbit/vendor/skills/validate-galaxy-workflow/_required_tools.json +16 -0
- package/extensions/orbit/vendor/skills/validate-galaxy-workflow/_verify.json +4 -0
- package/extensions/orbit/vendor/skills/validate-galaxy-workflow/references/cli/validate.json +142 -0
- package/extensions/orbit/vendor/skills/validate-galaxy-workflow/references/notes/galaxy-workflow-invocation-failure-reference.md +138 -0
- package/extensions/orbit/vendor/skills/validate-galaxy-workflow/references/notes/galaxy-workflow-testability-design.md +136 -0
- package/extensions/orbit/vendor-skills.ts +283 -0
- package/extensions/orbit/workspace-state-dir.ts +46 -0
- package/extensions/orbit-handoff/index.ts +73 -0
- package/extensions/orbit-handoff/orbit-launcher.ts +142 -0
- package/extensions/whats-new/index.ts +98 -0
- package/lessons/LICENSE +17 -0
- package/lessons/README.md +117 -0
- package/lessons/SCHEMA.md +187 -0
- package/lessons/build-snapshot.mjs +311 -0
- package/lessons/data/downloaded-file-is-not-what-its-extension-says.md +61 -0
- package/lessons/galaxy-api/403-history-is-a-hard-stop.md +57 -0
- package/lessons/galaxy-api/collection-into-single-dataset-input.md +61 -0
- package/lessons/galaxy-api/connectedvalue-in-command-line.md +62 -0
- package/lessons/galaxy-api/hid-is-not-an-id.md +59 -0
- package/lessons/galaxy-api/invoke-workflow-inputs-not-params.md +60 -0
- package/lessons/galaxy-api/repeat-param-pipe-keys.md +63 -0
- package/lessons/galaxy-api/run-tool-returns-on-submit.md +61 -0
- package/lessons/galaxy-tools/reference-index-not-on-server.md +62 -0
- package/lessons/log.md +42 -0
- package/lessons/reproduction/input-population-mismatch.md +59 -0
- package/lessons/reproduction/methods-text-vs-executed-parameters.md +62 -0
- package/lessons/snapshot.json +1004 -0
- package/lessons/stats/de-contrast-direction-and-sample-labels.md +63 -0
- package/lessons/stats/na-coerced-to-zero-in-filters.md +59 -0
- package/lessons/validate.mjs +1219 -0
- package/package.json +103 -5
- package/shared/agent-prompt.d.ts +8 -0
- package/shared/agent-prompt.js +15 -0
- package/shared/approval-prompt.d.ts +4 -0
- package/shared/approval-prompt.js +61 -0
- package/shared/brain-env.d.ts +14 -0
- package/shared/brain-env.js +108 -0
- package/shared/brain-exit.d.ts +20 -0
- package/shared/brain-exit.js +149 -0
- package/shared/capability-profile.d.ts +16 -0
- package/shared/capability-profile.js +75 -0
- package/shared/config-source.d.ts +13 -0
- package/shared/config-source.js +17 -0
- package/shared/confusables.d.ts +3 -0
- package/shared/confusables.js +93 -0
- package/shared/custom-provider.d.ts +45 -0
- package/shared/custom-provider.js +169 -0
- package/shared/dashboard-contract.d.ts +123 -0
- package/shared/dashboard-contract.js +560 -0
- package/shared/dashboard-layout-store.d.ts +44 -0
- package/shared/dashboard-layout-store.js +281 -0
- package/shared/feedback-contract.d.ts +61 -0
- package/shared/feedback-contract.js +146 -0
- package/shared/galaxy-artifact-links.d.ts +30 -0
- package/shared/galaxy-artifact-links.js +166 -0
- package/shared/galaxy-credentials.d.ts +26 -0
- package/shared/galaxy-credentials.js +71 -0
- package/shared/galaxy-destructive.d.ts +21 -0
- package/shared/galaxy-destructive.js +269 -0
- package/shared/galaxy-guidance.d.ts +2 -0
- package/shared/galaxy-guidance.js +53 -0
- package/shared/galaxy-live-contract.d.ts +92 -0
- package/shared/galaxy-live-contract.js +180 -0
- package/shared/galaxy-page-cells.d.ts +2 -0
- package/shared/galaxy-page-cells.js +22 -0
- package/shared/galaxy-tool-family.d.ts +5 -0
- package/shared/galaxy-tool-family.js +27 -0
- package/shared/galaxy-url.d.ts +1 -0
- package/shared/galaxy-url.js +48 -0
- package/shared/gtn.d.ts +31 -0
- package/shared/gtn.js +253 -0
- package/shared/handled-prompt.d.ts +3 -0
- package/shared/handled-prompt.js +26 -0
- package/shared/known-provider.d.ts +11 -0
- package/shared/known-provider.js +89 -0
- package/shared/lesson-hint-marker.d.ts +7 -0
- package/shared/lesson-hint-marker.js +32 -0
- package/shared/lesson-rules.d.ts +150 -0
- package/shared/lesson-rules.js +203 -0
- package/shared/malformed-object-ids.d.ts +1 -0
- package/shared/malformed-object-ids.js +37 -0
- package/shared/markdown-sections.d.ts +10 -0
- package/shared/markdown-sections.js +118 -0
- package/shared/notebook-fences.d.ts +12 -0
- package/shared/notebook-fences.js +53 -0
- package/shared/observation-contract.d.ts +91 -0
- package/shared/observation-contract.js +544 -0
- package/shared/orbit-config.d.ts +226 -0
- package/shared/orbit-config.js +189 -0
- package/shared/orbit-env.d.ts +13 -0
- package/shared/orbit-env.js +124 -0
- package/shared/orbit-shell-contract.d.ts +74 -0
- package/shared/orbit-shell-contract.js +30 -0
- package/shared/page-content-hash.d.ts +1 -0
- package/shared/page-content-hash.js +13 -0
- package/shared/pi-default-model.d.ts +7 -0
- package/shared/pi-default-model.js +41 -0
- package/shared/prompt-blocks.d.ts +87 -0
- package/shared/prompt-blocks.js +898 -0
- package/shared/provider-auth-caps.d.ts +22 -0
- package/shared/provider-auth-caps.js +57 -0
- package/shared/random.d.ts +2 -0
- package/shared/random.js +15 -0
- package/shared/record-excerpt.d.ts +4 -0
- package/shared/record-excerpt.js +16 -0
- package/shared/redirect-guard.d.ts +36 -0
- package/shared/redirect-guard.js +235 -0
- package/shared/skills-pin.d.ts +8 -0
- package/shared/skills-pin.js +9 -0
- package/shared/skills-router.d.ts +17 -0
- package/shared/skills-router.js +63 -0
- package/shared/sra-import.d.ts +34 -0
- package/shared/sra-import.js +206 -0
- package/shared/state-dir.d.ts +21 -0
- package/shared/state-dir.js +240 -0
- package/shared/team-dispatch-contract.d.ts +28 -0
- package/shared/team-dispatch-contract.js +1 -0
- package/shared/truncate-middle.d.ts +11 -0
- package/shared/truncate-middle.js +68 -0
- package/shared/version-compare.d.ts +10 -0
- package/shared/version-compare.js +74 -0
- package/shared/whats-new.d.ts +31 -0
- package/shared/whats-new.js +83 -0
- package/shared/wsl.d.ts +10 -0
- package/shared/wsl.js +24 -0
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: Lesson
|
|
3
|
+
title: '"History is not accessible by user" means there is no data to reason from'
|
|
4
|
+
description: A 403 on the bound history means nothing about the job was ever read, so any explanation of the failure after that point is invented.
|
|
5
|
+
tags: [permissions, history, fabrication, galaxy-api]
|
|
6
|
+
status: stable
|
|
7
|
+
generated: { by: "human:loom-maintainers", at: "2026-09-30" }
|
|
8
|
+
stale_after: "2027-03-31"
|
|
9
|
+
sources:
|
|
10
|
+
- { id: "loom#367" }
|
|
11
|
+
|
|
12
|
+
kind: expectation
|
|
13
|
+
stage: [job-execution, result-interpretation]
|
|
14
|
+
trigger:
|
|
15
|
+
signatures: ["History is not accessible by user"]
|
|
16
|
+
tools: []
|
|
17
|
+
mcp_tools: [galaxy_get_history_contents]
|
|
18
|
+
formats: []
|
|
19
|
+
hosts: []
|
|
20
|
+
extensions: []
|
|
21
|
+
step_keywords: ["history", "why did it fail", "job failure"]
|
|
22
|
+
cues: "A resumed notebook is bound to a history that the current credentials do not own."
|
|
23
|
+
applies_to: { versions: "any", tested: "resumed notebook bound to a history owned by another account" }
|
|
24
|
+
evidence:
|
|
25
|
+
symptom: verified
|
|
26
|
+
cause: verified
|
|
27
|
+
outcome: unvalidated
|
|
28
|
+
method: "transcript: a 403 followed by a fabricated explanation of a job failure"
|
|
29
|
+
graduated_to: ["loom system prompt no-fabrication rule plus evals"]
|
|
30
|
+
upstream: []
|
|
31
|
+
supersedes: []
|
|
32
|
+
---
|
|
33
|
+
|
|
34
|
+
## Symptom
|
|
35
|
+
|
|
36
|
+
Asked why a job failed, the agent gets a 403 on the history and answers anyway.
|
|
37
|
+
|
|
38
|
+
## Cause
|
|
39
|
+
|
|
40
|
+
The notebook's bound history belongs to a different account or server than the current
|
|
41
|
+
credentials. Nothing about the job was ever read.
|
|
42
|
+
|
|
43
|
+
## Check first
|
|
44
|
+
|
|
45
|
+
Which account are the current credentials for? Is the bound history in that account's list?
|
|
46
|
+
|
|
47
|
+
## Intervention
|
|
48
|
+
|
|
49
|
+
Report the access failure. Offer to look in the user's own recent histories instead.
|
|
50
|
+
|
|
51
|
+
## Validate
|
|
52
|
+
|
|
53
|
+
Any explanation of a failure cites a job or dataset that was actually retrieved.
|
|
54
|
+
|
|
55
|
+
## Does NOT apply when
|
|
56
|
+
|
|
57
|
+
Never; a 403 is always a hard stop for reasoning about that history.
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: Lesson
|
|
3
|
+
title: 'A collection handed to a single-dataset input is rejected; the answer is map-over, not "the API cannot"'
|
|
4
|
+
description: A 400 at submit when an hdca meets a single-dataset parameter means map-over was not requested, and the wrong conclusion is that collections cannot be used through the API.
|
|
5
|
+
tags: [collections, map-over, batch, galaxy-api]
|
|
6
|
+
status: stable
|
|
7
|
+
generated: { by: "human:loom-maintainers", at: "2026-09-30" }
|
|
8
|
+
stale_after: "2027-03-31"
|
|
9
|
+
sources:
|
|
10
|
+
- { id: "loom#208" }
|
|
11
|
+
|
|
12
|
+
kind: choice
|
|
13
|
+
stage: [tool-parameterization]
|
|
14
|
+
trigger:
|
|
15
|
+
signatures: ["supplied to single input dataset parameter"]
|
|
16
|
+
tools: []
|
|
17
|
+
mcp_tools: [galaxy_run_tool]
|
|
18
|
+
formats: []
|
|
19
|
+
hosts: []
|
|
20
|
+
extensions: []
|
|
21
|
+
step_keywords: ["collection", "map over", "batch", "per sample"]
|
|
22
|
+
cues: "A collection is being passed where the tool's input template says one dataset."
|
|
23
|
+
applies_to: { versions: "any", tested: "featureCounts, Filter1 via galaxy-mcp run_tool" }
|
|
24
|
+
evidence:
|
|
25
|
+
symptom: verified
|
|
26
|
+
cause: verified
|
|
27
|
+
outcome: validated
|
|
28
|
+
method: "the batch wrapper form was accepted by Galaxy and produced a mapped-over output collection"
|
|
29
|
+
graduated_to: ["loom context.ts Galaxy block map-over hint"]
|
|
30
|
+
upstream: ["galaxy-mcp actionable-error issue"]
|
|
31
|
+
supersedes: []
|
|
32
|
+
---
|
|
33
|
+
|
|
34
|
+
## Symptom
|
|
35
|
+
|
|
36
|
+
400 at submit when an `hdca` is passed where the tool expects one dataset. Observed follow-on: the
|
|
37
|
+
agent concludes collections cannot be built or used through the API, which is false.
|
|
38
|
+
|
|
39
|
+
## Cause
|
|
40
|
+
|
|
41
|
+
The input is a single-dataset parameter. Galaxy runs such a tool over a collection only when asked
|
|
42
|
+
to map over it.
|
|
43
|
+
|
|
44
|
+
## Check first
|
|
45
|
+
|
|
46
|
+
Is the input really single-dataset per the tool's input template, and is the thing being passed a
|
|
47
|
+
collection? If the collection is `list:paired` and the tool wants one sample, map-over is still the
|
|
48
|
+
answer but the element type must match.
|
|
49
|
+
|
|
50
|
+
## Intervention
|
|
51
|
+
|
|
52
|
+
Submit the input in batch form: `{batch: true, values: [{src: "hdca", id: <collection id>}]}`.
|
|
53
|
+
|
|
54
|
+
## Validate
|
|
55
|
+
|
|
56
|
+
The result is a collection with one element per input element, and element identifiers are
|
|
57
|
+
preserved.
|
|
58
|
+
|
|
59
|
+
## Does NOT apply when
|
|
60
|
+
|
|
61
|
+
The tool has a genuine multi-dataset or collection input -- pass the collection directly there.
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: Lesson
|
|
3
|
+
title: '"ConnectedValue object at 0x" in a command line means an optional workflow parameter was left unset'
|
|
4
|
+
description: Older Galaxy serialized the placeholder object's repr into the command line when a connected optional parameter_input had no value, so the step can fail or silently succeed wrong.
|
|
5
|
+
tags: [workflows, parameter-input, command-line, galaxy-api]
|
|
6
|
+
status: stable
|
|
7
|
+
generated: { by: "human:loom-maintainers", at: "2026-09-30" }
|
|
8
|
+
stale_after: "2027-03-31"
|
|
9
|
+
sources:
|
|
10
|
+
- { id: "loom#186" }
|
|
11
|
+
- { id: "galaxy#21994" }
|
|
12
|
+
|
|
13
|
+
kind: pitfall
|
|
14
|
+
stage: [tool-parameterization, job-execution]
|
|
15
|
+
trigger:
|
|
16
|
+
signatures: ["workflow_utils.ConnectedValue object at 0x"]
|
|
17
|
+
tools: []
|
|
18
|
+
mcp_tools: [galaxy_invoke_workflow]
|
|
19
|
+
formats: []
|
|
20
|
+
hosts: []
|
|
21
|
+
extensions: []
|
|
22
|
+
step_keywords: ["workflow", "parameter input", "optional parameter", "invoke"]
|
|
23
|
+
cues: "A workflow with optional parameter inputs is invoked against a server older than the upstream fix."
|
|
24
|
+
applies_to: { versions: "Galaxy older than 25.1.2; fixed upstream", tested: "fastp inside an invoked workflow" }
|
|
25
|
+
evidence:
|
|
26
|
+
symptom: verified
|
|
27
|
+
cause: verified
|
|
28
|
+
outcome: unvalidated
|
|
29
|
+
method: "the error string was quoted from the failing job and the upstream fix was identified"
|
|
30
|
+
graduated_to: ["galaxy-skills galaxy-mcp-reference gotchas note"]
|
|
31
|
+
upstream: ["galaxy#21994"]
|
|
32
|
+
supersedes: []
|
|
33
|
+
---
|
|
34
|
+
|
|
35
|
+
## Symptom
|
|
36
|
+
|
|
37
|
+
A workflow step fails, or worse succeeds, with a tool argument containing the text
|
|
38
|
+
`...ConnectedValue object at 0x...`. With fastp it surfaced as an invalid adapter sequence.
|
|
39
|
+
|
|
40
|
+
## Cause
|
|
41
|
+
|
|
42
|
+
An optional `parameter_input` workflow step was connected but given no value; older Galaxy
|
|
43
|
+
serialized the placeholder object's repr into the command line.
|
|
44
|
+
|
|
45
|
+
## Check first
|
|
46
|
+
|
|
47
|
+
Does the workflow have optional parameter inputs, per the workflow details? Is the server older
|
|
48
|
+
than the fix? Inspect the failed job's command line for the signature.
|
|
49
|
+
|
|
50
|
+
## Intervention
|
|
51
|
+
|
|
52
|
+
Pass an explicit empty value for every optional parameter input on invocation.
|
|
53
|
+
|
|
54
|
+
## Validate
|
|
55
|
+
|
|
56
|
+
Re-inspect the command line of the rerun job: the signature is gone AND the argument is absent or
|
|
57
|
+
empty, not replaced by some other junk.
|
|
58
|
+
|
|
59
|
+
## Does NOT apply when
|
|
60
|
+
|
|
61
|
+
The server has the upstream fix. Keep the lesson and narrow the version range -- older installs
|
|
62
|
+
still need it.
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: Lesson
|
|
3
|
+
title: The number shown in the history panel is not a dataset id
|
|
4
|
+
description: Users say "dataset 28", which is the hid; the API wants the encoded id, and run_tool reports the mismatch as a misleading missing-parameter error.
|
|
5
|
+
tags: [hid, encoded-id, history, galaxy-api]
|
|
6
|
+
status: stable
|
|
7
|
+
generated: { by: "human:loom-maintainers", at: "2026-09-30" }
|
|
8
|
+
stale_after: "2027-03-31"
|
|
9
|
+
sources:
|
|
10
|
+
- { id: "loom#348" }
|
|
11
|
+
- { id: "loom#375" }
|
|
12
|
+
|
|
13
|
+
kind: pitfall
|
|
14
|
+
stage: [data-acquisition, tool-parameterization]
|
|
15
|
+
trigger:
|
|
16
|
+
signatures: ["Invalid id length, must be multiple of 16", "Required parameter(s) kwd not provided"]
|
|
17
|
+
tools: []
|
|
18
|
+
mcp_tools: [galaxy_get_dataset_details, galaxy_run_tool]
|
|
19
|
+
formats: []
|
|
20
|
+
hosts: []
|
|
21
|
+
extensions: []
|
|
22
|
+
step_keywords: ["dataset number", "hid", "dataset id"]
|
|
23
|
+
cues: "A short numeric identifier taken from what the user said is being passed where the API wants an encoded id."
|
|
24
|
+
applies_to: { versions: "any", tested: "galaxy-mcp get_dataset_details, run_tool with cat1" }
|
|
25
|
+
evidence:
|
|
26
|
+
symptom: verified
|
|
27
|
+
cause: verified
|
|
28
|
+
outcome: validated
|
|
29
|
+
method: "reproduced; resolving the hid to the encoded id fixed it"
|
|
30
|
+
graduated_to: ["galaxy-skills galaxy-mcp-reference gotchas note"]
|
|
31
|
+
upstream: []
|
|
32
|
+
supersedes: []
|
|
33
|
+
---
|
|
34
|
+
|
|
35
|
+
## Symptom
|
|
36
|
+
|
|
37
|
+
An id-length error, or -- from run_tool -- a misleading required-parameter error that says nothing
|
|
38
|
+
about ids.
|
|
39
|
+
|
|
40
|
+
## Cause
|
|
41
|
+
|
|
42
|
+
Users say "dataset 28"; that is the `hid`. The API wants the encoded `id`.
|
|
43
|
+
|
|
44
|
+
## Check first
|
|
45
|
+
|
|
46
|
+
Is the id being passed short and numeric?
|
|
47
|
+
|
|
48
|
+
## Intervention
|
|
49
|
+
|
|
50
|
+
List the history contents and resolve the hid to an id. Confirm the name matches what the user
|
|
51
|
+
meant.
|
|
52
|
+
|
|
53
|
+
## Validate
|
|
54
|
+
|
|
55
|
+
The call succeeds and the returned dataset's name and hid are the intended ones.
|
|
56
|
+
|
|
57
|
+
## Does NOT apply when
|
|
58
|
+
|
|
59
|
+
The id is already a 16-hex-multiple string -- then the missing-parameter error has another cause.
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: Lesson
|
|
3
|
+
title: 'Workflow input values, scalars included, go in `inputs`; `params` only overrides tool steps'
|
|
4
|
+
description: A validation error pointing into parameters means the value is in the wrong slot, not under the wrong key, and retrying key forms is the trap that follows.
|
|
5
|
+
tags: [workflows, invoke, inputs, galaxy-api]
|
|
6
|
+
status: stable
|
|
7
|
+
generated: { by: "human:loom-maintainers", at: "2026-09-30" }
|
|
8
|
+
stale_after: "2027-03-31"
|
|
9
|
+
sources:
|
|
10
|
+
- { id: "loom#392" }
|
|
11
|
+
|
|
12
|
+
kind: pitfall
|
|
13
|
+
stage: [tool-parameterization]
|
|
14
|
+
trigger:
|
|
15
|
+
signatures: ["Input should be a valid dictionary"]
|
|
16
|
+
tools: []
|
|
17
|
+
mcp_tools: [galaxy_invoke_workflow]
|
|
18
|
+
formats: []
|
|
19
|
+
hosts: []
|
|
20
|
+
extensions: []
|
|
21
|
+
step_keywords: ["invoke", "workflow", "inputs", "params", "input template"]
|
|
22
|
+
cues: "A workflow invocation is being retried with different key forms for the same value."
|
|
23
|
+
applies_to: { versions: "unknown", tested: "galaxy-mcp invoke_workflow against a multi-sample IWC workflow" }
|
|
24
|
+
evidence:
|
|
25
|
+
symptom: verified
|
|
26
|
+
cause: hypothesized
|
|
27
|
+
outcome: validated
|
|
28
|
+
method: "the same values succeeded first try when moved to inputs per the input template"
|
|
29
|
+
graduated_to: ["galaxy-mcp get_workflow_input_template plus invoke_workflow preflight"]
|
|
30
|
+
upstream: ["galaxy-mcp#55"]
|
|
31
|
+
supersedes: []
|
|
32
|
+
---
|
|
33
|
+
|
|
34
|
+
## Symptom
|
|
35
|
+
|
|
36
|
+
Invocation rejected with a validation error pointing into `parameters`. Observed: a model retried
|
|
37
|
+
two dozen times varying the key -- label, step index, uuid -- while the real problem was the slot.
|
|
38
|
+
|
|
39
|
+
## Cause
|
|
40
|
+
|
|
41
|
+
Inferred, not checked against Galaxy source: every workflow input -- datasets, collections and
|
|
42
|
+
scalar parameter inputs alike -- belongs in `inputs`. `params` overrides tool parameters on
|
|
43
|
+
non-input steps and its values are dicts.
|
|
44
|
+
|
|
45
|
+
## Check first
|
|
46
|
+
|
|
47
|
+
Was the workflow input template fetched? Does the failing payload put a scalar under `params`?
|
|
48
|
+
|
|
49
|
+
## Intervention
|
|
50
|
+
|
|
51
|
+
Fetch the input template and fill it in as returned. Do not retry with a different key form; if the
|
|
52
|
+
second attempt fails the same way, stop and re-read the template.
|
|
53
|
+
|
|
54
|
+
## Validate
|
|
55
|
+
|
|
56
|
+
The invocation is accepted and its recorded inputs match what was intended.
|
|
57
|
+
|
|
58
|
+
## Does NOT apply when
|
|
59
|
+
|
|
60
|
+
You really are overriding a tool step's parameter -- then `params` with a dict value is right.
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: Lesson
|
|
3
|
+
title: Repeat-group tool params written with underscores are accepted but silently mis-applied
|
|
4
|
+
description: Galaxy's flat parameter form addresses repeat members with a pipe; an underscore key is ignored rather than rejected, so the repeat falls back to defaults and the job still reports ok.
|
|
5
|
+
tags: [repeat-params, tool-parameters, silent-failure, galaxy-api]
|
|
6
|
+
status: stable
|
|
7
|
+
generated: { by: "human:loom-maintainers", at: "2026-09-30" }
|
|
8
|
+
stale_after: "2027-03-31"
|
|
9
|
+
sources:
|
|
10
|
+
- { id: "loom#285" }
|
|
11
|
+
- { id: "loom#295" }
|
|
12
|
+
|
|
13
|
+
kind: pitfall
|
|
14
|
+
stage: [tool-parameterization, result-interpretation]
|
|
15
|
+
trigger:
|
|
16
|
+
signatures: []
|
|
17
|
+
tools: [datamash_ops]
|
|
18
|
+
mcp_tools: [galaxy_run_tool]
|
|
19
|
+
formats: []
|
|
20
|
+
hosts: []
|
|
21
|
+
extensions: []
|
|
22
|
+
step_keywords: ["repeat", "operations", "aggregate", "group by"]
|
|
23
|
+
cues: "Tool inputs contain keys shaped like name underscore number underscore field."
|
|
24
|
+
applies_to: { versions: "unknown", tested: "Datamash via galaxy-mcp run_tool" }
|
|
25
|
+
evidence:
|
|
26
|
+
symptom: verified
|
|
27
|
+
cause: hypothesized
|
|
28
|
+
outcome: unvalidated
|
|
29
|
+
method: "a wrong aggregate was observed; the pipe-form keys produced the expected one"
|
|
30
|
+
graduated_to: ["loom docs repeat-parameter note", "galaxy-mcp tool input template"]
|
|
31
|
+
upstream: ["galaxy-mcp#52"]
|
|
32
|
+
supersedes: []
|
|
33
|
+
---
|
|
34
|
+
|
|
35
|
+
## Symptom
|
|
36
|
+
|
|
37
|
+
A tool with a repeat block runs to `ok`, but the result reflects default or wrong repeat values --
|
|
38
|
+
a different operation or column than requested. No error anywhere.
|
|
39
|
+
|
|
40
|
+
## Cause
|
|
41
|
+
|
|
42
|
+
Hypothesized: Galaxy's flat parameter form addresses repeat members as `block_0|field`. A key like
|
|
43
|
+
`block_0_field` is not rejected; it is ignored, and the repeat falls back to defaults.
|
|
44
|
+
|
|
45
|
+
## Check first
|
|
46
|
+
|
|
47
|
+
Look at the inputs actually submitted. Any repeat member addressed with an underscore instead of a
|
|
48
|
+
pipe? Compare the job's recorded parameters with what was intended.
|
|
49
|
+
|
|
50
|
+
## Intervention
|
|
51
|
+
|
|
52
|
+
Use the pipe form, for example `operations_0|op_name`, preferably taken verbatim from the tool's
|
|
53
|
+
input template rather than constructed by hand.
|
|
54
|
+
|
|
55
|
+
## Validate
|
|
56
|
+
|
|
57
|
+
Read back the job's parameters and confirm the repeat values are the requested ones. Spot-check one
|
|
58
|
+
output value by hand.
|
|
59
|
+
|
|
60
|
+
## Does NOT apply when
|
|
61
|
+
|
|
62
|
+
The tool errored at submit -- that is a different problem. Conditionals use the same pipe
|
|
63
|
+
addressing but fail differently.
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: Lesson
|
|
3
|
+
title: A successful run_tool response means queued, not finished
|
|
4
|
+
description: Single-tool submission returns at queue time and there is no invocation object to poll, so nothing prompts the second look before the result is reported.
|
|
5
|
+
tags: [job-states, polling, async, galaxy-api]
|
|
6
|
+
status: stable
|
|
7
|
+
generated: { by: "human:loom-maintainers", at: "2026-09-30" }
|
|
8
|
+
stale_after: "2027-03-31"
|
|
9
|
+
sources:
|
|
10
|
+
- { id: "loom#210" }
|
|
11
|
+
- { id: "loom#281" }
|
|
12
|
+
- { id: "loom#293" }
|
|
13
|
+
|
|
14
|
+
kind: expectation
|
|
15
|
+
stage: [job-execution]
|
|
16
|
+
trigger:
|
|
17
|
+
signatures: []
|
|
18
|
+
tools: []
|
|
19
|
+
mcp_tools: [galaxy_run_tool, galaxy_run_user_tool]
|
|
20
|
+
formats: []
|
|
21
|
+
hosts: []
|
|
22
|
+
extensions: []
|
|
23
|
+
step_keywords: ["run tool", "submit", "job", "complete", "done"]
|
|
24
|
+
cues: "About to report a tool run as done."
|
|
25
|
+
applies_to: { versions: "any", tested: "galaxy-mcp" }
|
|
26
|
+
evidence:
|
|
27
|
+
symptom: verified
|
|
28
|
+
cause: verified
|
|
29
|
+
outcome: validated
|
|
30
|
+
method: "the job was later found in an error state after the agent had reported success"
|
|
31
|
+
graduated_to: ["loom async job poller", "loom job-status hint"]
|
|
32
|
+
upstream: []
|
|
33
|
+
supersedes: []
|
|
34
|
+
---
|
|
35
|
+
|
|
36
|
+
## Symptom
|
|
37
|
+
|
|
38
|
+
The agent reports an analysis step complete; the job is still running or has since errored.
|
|
39
|
+
|
|
40
|
+
## Cause
|
|
41
|
+
|
|
42
|
+
Single-tool submission returns at queue time. Unlike a workflow invocation there is no invocation
|
|
43
|
+
object to poll, so nothing prompts a second look.
|
|
44
|
+
|
|
45
|
+
## Check first
|
|
46
|
+
|
|
47
|
+
Has the job reached a terminal state? `ok` is success; `error`, `failed` and `deleted` are not;
|
|
48
|
+
`paused` and `waiting` are not terminal.
|
|
49
|
+
|
|
50
|
+
## Intervention
|
|
51
|
+
|
|
52
|
+
Poll the job to a terminal state before building on its outputs or reporting it.
|
|
53
|
+
|
|
54
|
+
## Validate
|
|
55
|
+
|
|
56
|
+
Terminal `ok`, and the expected outputs exist and are non-empty.
|
|
57
|
+
|
|
58
|
+
## Does NOT apply when
|
|
59
|
+
|
|
60
|
+
Never. Caveat: reaching the job via an output dataset does not work for jobs with no outputs,
|
|
61
|
+
collection-only outputs, or map-over runs where one call makes many jobs.
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: Lesson
|
|
3
|
+
title: A tool's built-in reference option is useless on a server that has no indexes for it
|
|
4
|
+
description: The cached-reference branch of a tool offers nothing when the server's data table is empty, and through a workflow the invocation validates and every sample fails minutes later.
|
|
5
|
+
tags: [reference-genome, data-tables, server-dependent, star]
|
|
6
|
+
status: draft
|
|
7
|
+
generated: { by: "human:loom-maintainers", at: "2026-09-30" }
|
|
8
|
+
stale_after: "2027-03-31"
|
|
9
|
+
sources:
|
|
10
|
+
- { id: "loom#198" }
|
|
11
|
+
- { id: "galaxy-mcp#62" }
|
|
12
|
+
|
|
13
|
+
kind: choice
|
|
14
|
+
stage: [tool-parameterization]
|
|
15
|
+
trigger:
|
|
16
|
+
signatures: ["requires a value, but no legal values defined"]
|
|
17
|
+
tools: [rna_starsolo, rna_star]
|
|
18
|
+
mcp_tools: []
|
|
19
|
+
formats: []
|
|
20
|
+
hosts: []
|
|
21
|
+
extensions: [".fasta", ".fa", ".gtf"]
|
|
22
|
+
step_keywords: ["reference", "genome", "index", "built-in", "cached", "genomedir"]
|
|
23
|
+
cues: "The tool offers a choice between a cached or built-in reference and one from the history."
|
|
24
|
+
applies_to: { versions: "any; depends on the server's data tables", tested: "STARsolo on a server with no STAR indexes" }
|
|
25
|
+
evidence:
|
|
26
|
+
symptom: verified
|
|
27
|
+
cause: verified
|
|
28
|
+
outcome: unvalidated
|
|
29
|
+
method: "the 400 at submit was quoted, and the server was confirmed to have zero indexes for the tool"
|
|
30
|
+
graduated_to: []
|
|
31
|
+
upstream: ["galaxy-mcp#62"]
|
|
32
|
+
supersedes: []
|
|
33
|
+
---
|
|
34
|
+
|
|
35
|
+
## Symptom
|
|
36
|
+
|
|
37
|
+
`Parameter 'genomeDir': requires a value, but no legal values defined` at submit. Through a
|
|
38
|
+
workflow it is worse: the invocation validates, and the failure shows up minutes later as a bare
|
|
39
|
+
tool error on every sample.
|
|
40
|
+
|
|
41
|
+
## Cause
|
|
42
|
+
|
|
43
|
+
The use-a-built-in-index branch of the tool was selected, and this server's data table for that
|
|
44
|
+
tool is empty.
|
|
45
|
+
|
|
46
|
+
## Check first
|
|
47
|
+
|
|
48
|
+
Does the select parameter for the built-in reference have any options on this server?
|
|
49
|
+
|
|
50
|
+
## Intervention
|
|
51
|
+
|
|
52
|
+
Switch to the history-reference branch and supply a FASTA, and an annotation where the tool needs
|
|
53
|
+
one, or run on a server that has the index.
|
|
54
|
+
|
|
55
|
+
## Validate
|
|
56
|
+
|
|
57
|
+
The job reaches `ok`, and the mapping rate is plausible for the organism -- a wrong reference also
|
|
58
|
+
"works".
|
|
59
|
+
|
|
60
|
+
## Does NOT apply when
|
|
61
|
+
|
|
62
|
+
The select has options and the chosen value is not among them -- that is a wrong-value problem.
|
package/lessons/log.md
ADDED
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
# Lesson log
|
|
2
|
+
|
|
3
|
+
OKF keeps a `log.md` beside the content as the corpus's audit trail. One entry
|
|
4
|
+
per change to what the corpus _says_, newest last. A reformat, a script change
|
|
5
|
+
or a snapshot rebuild is not an entry; a lesson added, retired, re-scoped or
|
|
6
|
+
re-verified is.
|
|
7
|
+
|
|
8
|
+
## 2026-09-30 -- schema v1, thirteen seed lessons
|
|
9
|
+
|
|
10
|
+
By: human:loom-maintainers
|
|
11
|
+
|
|
12
|
+
Opened the corpus with the thirteen seed lessons written on 2026-09-17, ported
|
|
13
|
+
from the draft v0 schema to v1. The port renamed `editorial` to `status`, moved
|
|
14
|
+
`evidence.provenance` into OKF `sources`, split the single v0 `cues` list into a
|
|
15
|
+
prose `cues` string plus the machine-matchable `trigger` sub-fields
|
|
16
|
+
(`mcp_tools`, `hosts`, `extensions`, `step_keywords`), dropped the `schema`, `id`
|
|
17
|
+
and `revision` fields (the path is the id), and added `description`, `kind`,
|
|
18
|
+
`generated` and `stale_after`. All thirteen carry `stale_after: 2027-03-31`.
|
|
19
|
+
|
|
20
|
+
Added, `status: draft`:
|
|
21
|
+
|
|
22
|
+
- `stats/na-coerced-to-zero-in-filters`
|
|
23
|
+
- `stats/de-contrast-direction-and-sample-labels`
|
|
24
|
+
- `reproduction/input-population-mismatch`
|
|
25
|
+
- `reproduction/methods-text-vs-executed-parameters`
|
|
26
|
+
- `data/downloaded-file-is-not-what-its-extension-says`
|
|
27
|
+
- `galaxy-tools/reference-index-not-on-server`
|
|
28
|
+
|
|
29
|
+
Added, `status: stable` with `graduated_to` filled, so they are kept for the
|
|
30
|
+
record and never surfaced:
|
|
31
|
+
|
|
32
|
+
- `galaxy-api/403-history-is-a-hard-stop`
|
|
33
|
+
- `galaxy-api/collection-into-single-dataset-input`
|
|
34
|
+
- `galaxy-api/connectedvalue-in-command-line`
|
|
35
|
+
- `galaxy-api/hid-is-not-an-id`
|
|
36
|
+
- `galaxy-api/invoke-workflow-inputs-not-params`
|
|
37
|
+
- `galaxy-api/repeat-param-pipe-keys`
|
|
38
|
+
- `galaxy-api/run-tool-returns-on-submit`
|
|
39
|
+
|
|
40
|
+
Two further seeds were written in September and are deliberately not here: both
|
|
41
|
+
describe a case nobody has a real instance of yet, and a lesson without an
|
|
42
|
+
observed instance is a guess.
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: Lesson
|
|
3
|
+
title: A faithful rerun can still be wrong when a normalizing step was fed a pre-filtered subset
|
|
4
|
+
description: A statistic normalized over its input is wrong if the input was hand-picked, and the rerun reproduces the error exactly, so provenance alone will never catch it.
|
|
5
|
+
tags: [reproduction, normalization, denominator, audit]
|
|
6
|
+
status: draft
|
|
7
|
+
generated: { by: "human:loom-maintainers", at: "2026-09-30" }
|
|
8
|
+
stale_after: "2027-03-31"
|
|
9
|
+
sources: []
|
|
10
|
+
|
|
11
|
+
kind: reproduction
|
|
12
|
+
stage: [data-acquisition, tool-parameterization, result-interpretation]
|
|
13
|
+
trigger:
|
|
14
|
+
signatures: []
|
|
15
|
+
tools: []
|
|
16
|
+
mcp_tools: []
|
|
17
|
+
formats: []
|
|
18
|
+
hosts: []
|
|
19
|
+
extensions: []
|
|
20
|
+
step_keywords: ["reproduce", "reproducing", "reproduction", "posterior", "fdr", "enrichment", "percentile", "rank", "normalize", "credible set"]
|
|
21
|
+
cues: "Reproducing a published analysis where a step computes a normalized quantity -- posterior, FDR, enrichment, rank, percentile."
|
|
22
|
+
applies_to: { versions: "n/a", tested: "one audited reproduction of a fine-mapping analysis" }
|
|
23
|
+
evidence:
|
|
24
|
+
symptom: verified
|
|
25
|
+
cause: verified
|
|
26
|
+
outcome: unvalidated
|
|
27
|
+
method: "traced by reading the job's actual inputs; the denominator differed from the full set"
|
|
28
|
+
graduated_to: []
|
|
29
|
+
upstream: []
|
|
30
|
+
supersedes: []
|
|
31
|
+
---
|
|
32
|
+
|
|
33
|
+
## Symptom
|
|
34
|
+
|
|
35
|
+
Results are close to the paper's but not equal: a set has a few members more or fewer, and every
|
|
36
|
+
downstream value drifts by a few percent in the same direction.
|
|
37
|
+
|
|
38
|
+
## Cause
|
|
39
|
+
|
|
40
|
+
A statistic normalized over its input, here posterior probabilities, was computed over a
|
|
41
|
+
hand-picked subset. The tool ran correctly. Rerunning reproduces the error, so provenance alone
|
|
42
|
+
will not catch it.
|
|
43
|
+
|
|
44
|
+
## Check first
|
|
45
|
+
|
|
46
|
+
For every normalizing step: how many records went in, and how many does the method assume? Compare
|
|
47
|
+
against the paper's stated N.
|
|
48
|
+
|
|
49
|
+
## Intervention
|
|
50
|
+
|
|
51
|
+
Feed the step the full population; filter afterwards.
|
|
52
|
+
|
|
53
|
+
## Validate
|
|
54
|
+
|
|
55
|
+
Input count matches the method's stated population, and the set membership matches the paper.
|
|
56
|
+
|
|
57
|
+
## Does NOT apply when
|
|
58
|
+
|
|
59
|
+
The step's output for one record does not depend on the others.
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: Lesson
|
|
3
|
+
title: When a rerun cannot find what the paper reports, compare the Methods parameters to the executed ones
|
|
4
|
+
description: A missing peak or row, or a uniform few-percent drift with ranks intact, is usually a window, threshold, top-N or version difference rather than a failed reproduction.
|
|
5
|
+
tags: [reproduction, parameters, versions, methods]
|
|
6
|
+
status: draft
|
|
7
|
+
generated: { by: "human:loom-maintainers", at: "2026-09-30" }
|
|
8
|
+
stale_after: "2027-03-31"
|
|
9
|
+
sources: []
|
|
10
|
+
|
|
11
|
+
kind: reproduction
|
|
12
|
+
stage: [metadata-reconciliation, result-interpretation]
|
|
13
|
+
trigger:
|
|
14
|
+
signatures: []
|
|
15
|
+
tools: []
|
|
16
|
+
mcp_tools: []
|
|
17
|
+
formats: []
|
|
18
|
+
hosts: []
|
|
19
|
+
extensions: []
|
|
20
|
+
step_keywords: ["reproduce", "reproducing", "reproduction", "methods", "paper", "missing", "not found", "threshold", "window", "top-n", "version"]
|
|
21
|
+
cues: "Reproducing a published analysis where a reported feature, row or peak is absent from the rerun."
|
|
22
|
+
applies_to: { versions: "n/a", tested: "one audited reproduction" }
|
|
23
|
+
evidence:
|
|
24
|
+
symptom: verified
|
|
25
|
+
cause: verified
|
|
26
|
+
outcome: unvalidated
|
|
27
|
+
method: "each discrepancy traced to a specific parameter or version difference"
|
|
28
|
+
graduated_to: []
|
|
29
|
+
upstream: []
|
|
30
|
+
supersedes: []
|
|
31
|
+
---
|
|
32
|
+
|
|
33
|
+
## Symptom
|
|
34
|
+
|
|
35
|
+
A table row, peak or feature from the paper is not in the rerun's output at all; or scores are
|
|
36
|
+
systematically a few percent off with ranks preserved.
|
|
37
|
+
|
|
38
|
+
## Cause
|
|
39
|
+
|
|
40
|
+
Four observed varieties: a window or range parameter narrower than the Methods describe, so the
|
|
41
|
+
feature lies outside what was scanned; a summary step's top-N or threshold dropping it; a tool
|
|
42
|
+
revision changing output columns; a model or tool version change shifting values uniformly.
|
|
43
|
+
|
|
44
|
+
## Check first
|
|
45
|
+
|
|
46
|
+
Tabulate Methods-stated versus executed values for windows, thresholds, top-N limits and versions.
|
|
47
|
+
Is the missing item outside a range or below a cutoff? Is the drift uniform with ranks intact?
|
|
48
|
+
|
|
49
|
+
## Intervention
|
|
50
|
+
|
|
51
|
+
Rerun with the Methods' parameters if they differ. If versions differ and cannot be matched, report
|
|
52
|
+
the drift as version drift, with its size, rather than as a failed reproduction.
|
|
53
|
+
|
|
54
|
+
## Validate
|
|
55
|
+
|
|
56
|
+
The missing item appears under the Methods' parameters, or its absence is explained by a named
|
|
57
|
+
parameter. Say which.
|
|
58
|
+
|
|
59
|
+
## Does NOT apply when
|
|
60
|
+
|
|
61
|
+
Parameters and versions match and the result still differs -- that is a real discrepancy; report
|
|
62
|
+
it.
|