CAPTURE_KIT

VS Code screenshot capture kit

Verified staging for the VS Code extension figures (Fig 3, Fig S4–S7). Every diagnostic below was confirmed via gxwf validate against the same cache the extension uses, so what the editor renders is known-correct before you capture it.

Subject workflow

IWC “Taxonomy Profiling and Visualization with Krona” — 3 tool steps (kraken2krakentools_kreport2kronataxonomy_krona_chart). Small enough that all three steps + their diagnostics fit one editor viewport. Source: iwc/workflows/microbiome/pathogen-identification/taxonomy-profiling-and-visualization-with-krona/.

Files in this kit

FilePurpose
krona-demo.gxwf.ymlClean Format 2 — validates strict-clean. Baseline / before-shots.
krona-demo-broken.gxwf.ymlFormat 2 with 3 planted errors in distinct steps (below). Main subject for Fig 3 / Fig S2.
krona-demo-broken.gaSame 3 errors in native .ga (object tool_state). For Fig S4 native parity.
krona-legacy.gaClean workflow with string-encoded tool_state (legacy form). For Fig S5 quick fix.

Planted errors (verified)

StepEditClassWhat the editor shows
kraken2 (step 2)min_base_quality: high (was 0)type mismatchError on the value: min_base_quality expects a number, actual "high"
kraken2 (step 2)use_name: (was use_names:)unknown parameterWarning on the key: Unknown tool parameter 'use_name'.editor/LSP-only; the gxwf validate CLI does NOT surface this, so the screenshot is the only evidence for this class
taxonomy_krona_chart (step 4)type_of_data_selector: txt (was text)illegal selectError on the value listing legal options: must be one of text, taxonomy

CLI cross-check (default cache): gxwf validate krona-demo-broken.gxwf.yml --jsonsummary {ok:1, fail:2, skip:0} (the third, the unknown-param warning, is editor-only).

Prerequisite: warm cache (already done on this machine 2026-06-18)

The extension reads ~/.galaxy/tool_info_cache by default. The 3 Krona tools were added there via:

galaxy-tool-cache populate-workflow <Taxonomy-Profiling-...-Krona.ga>

On a fresh machine, re-run that once so the extension validates offline. (galaxyWorkflows.toolCache.directory is machine-scoped, so prefer populating the default cache over a workspace setting.)

Launch

From the extension checkout (galaxy-workflows-vscode, built — client/dist + server dists present):

code --extensionDevelopmentPath=. /tmp/gxwf_capture   # or this capture-kit folder

Diagnostics (squiggles + Problems panel) and the Tools: N cached status bar render automatically once the language server resolves — no interaction needed for those.

Per-figure capture checklist

Automation notes

screencapture (macOS) is available; cliclick is not, osascript is. Non-interactive shots (diagnostics, Problems panel, status bar) can be screen-captured after launch. Transient popups (hover/completion/quick-fix menu) need either a human at the keyboard (≈5 quick captures) or fragile osascript keystroke automation.

In practice the transient-popup figures were captured headlessly via the browser extension host (vscode-test-web) driven by Playwright — completion dropdowns and the Insert Tool Step ToolShed QuickPick render in the workbench DOM and are scriptable there. The five curated results live in web-shots/ (inventory + provenance in ../MANIFEST.md, “Web-mode GUI captures”). Save additional captures as figures/fig3_vscode.png, figS4_native_parity.png, etc. (see ../MANIFEST.md).