Problem
The always-on storyboard summary tells you how many steps were skipped but not why, so launch-readiness tooling can't act on the result without grovelling through --json output.
── A2A ──
→ http://localhost:8123/
Steps: 26 passed, 3 failed, 30 skipped
Duration: 1.8s
Is that 30 skipped because the agent doesn't expose one tool, or because it's missing ten? Could be a one-day fix, could be a quarter of work — the summary doesn't tell you. Today the only way to find out is:
- Pipe the run to
--json
- Walk the JSON tree
- Aggregate
skip_reason + dig the missing tool/skill name out of warnings[]
I just wrote that script for our internal storyboard check. It belongs upstream.
Proposal
Add a Skip causes block to the always-on summary, grouped by reason and listing the affected scenarios:
── A2A ──
Steps: 26 passed, 3 failed, 30 skipped
Skip causes:
[26] missing_test_controller — agent doesn't expose comply_test_controller
Affected: capability_discovery, account_setup, governance_setup,
product_discovery, create_buy, creative_sync,
delivery_monitoring, delivery_reporting/*, create_media_buy_async/*
[ 2] missing_tool: sync_accounts — agent doesn't advertise tool
Affected: refine_products/setup
[ 2] missing_tool: list_accounts — agent doesn't advertise tool
Affected: refine_products/setup
The data is already in --json output (skip_reason per step, missing tool/skill named in warnings[]); this is purely a presentation change in the human-readable summary.
Why it matters
- Teams reading CI output need this to triage: "we're 26 skips away from full coverage because of one missing tool" is actionable. "30 skipped" without cause isn't.
- Disambiguates a one-line fix (advertise an existing tool) from a new feature build (implement comply_test_controller seeding).
- The PR review path (
STORYBOARD-FAIL → ❌ counts in markdown summary when $GITHUB_STEP_SUMMARY is set) would benefit from the same block.
Variant
Also worth considering: a --skip-cause-budget N flag that fails the run if more than N causes are unresolved. Lets teams ratchet down skip count over time without each fix being invisible until somebody runs --json.
Happy to send the PR if direction is agreed.
Problem
The always-on storyboard summary tells you how many steps were skipped but not why, so launch-readiness tooling can't act on the result without grovelling through
--jsonoutput.Is that 30 skipped because the agent doesn't expose one tool, or because it's missing ten? Could be a one-day fix, could be a quarter of work — the summary doesn't tell you. Today the only way to find out is:
--jsonskip_reason+ dig the missing tool/skill name out ofwarnings[]I just wrote that script for our internal storyboard check. It belongs upstream.
Proposal
Add a
Skip causesblock to the always-on summary, grouped by reason and listing the affected scenarios:The data is already in
--jsonoutput (skip_reasonper step, missing tool/skill named inwarnings[]); this is purely a presentation change in the human-readable summary.Why it matters
STORYBOARD-FAIL→ ❌ counts in markdown summary when$GITHUB_STEP_SUMMARYis set) would benefit from the same block.Variant
Also worth considering: a
--skip-cause-budget Nflag that fails the run if more than N causes are unresolved. Lets teams ratchet down skip count over time without each fix being invisible until somebody runs --json.Happy to send the PR if direction is agreed.