Skip to content

Polish onboarding runtime error states#2116

Merged
wesbillman merged 6 commits into
mainfrom
harness-error-states
Jul 19, 2026
Merged

Polish onboarding runtime error states#2116
wesbillman merged 6 commits into
mainfrom
harness-error-states

Conversation

@cynfria

@cynfria cynfria commented Jul 19, 2026

Copy link
Copy Markdown
Contributor

Why

Keep onboarding harness-card errors compact and readable without shifting card content or obscuring the setup action.

What

  • Pin short 12px error labels to the bottom of runtime cards while preserving their existing content positions
  • Show sanitized explanatory detail in an accessible, theme-aware tooltip below the card
  • Keep setup and retry actions in the existing pill affordance
  • Add deterministic Playwright coverage for install, sign-in, authentication-status, and configuration errors

Risk Assessment

Low — the production change is limited to onboarding runtime-card error presentation and existing action placement. The remaining changes are E2E-only mock support and regression coverage.

References

Generated with Peppermint Butler

npub19x6jnl6rhepymwyl2xlltz3ce7rfg2ktllle3g2vu59n3s490k8s9n40l3 added 5 commits July 18, 2026 21:32
Co-authored-by: npub19x6jnl6rhepymwyl2xlltz3ce7rfg2ktllle3g2vu59n3s490k8s9n40l3 <29b529ff43be424db89f51bff58a38cf86942acbffff98a14ce50b38c2a57d8f@sprout-oss.stage.blox.sqprod.co>
Signed-off-by: npub19x6jnl6rhepymwyl2xlltz3ce7rfg2ktllle3g2vu59n3s490k8s9n40l3 <29b529ff43be424db89f51bff58a38cf86942acbffff98a14ce50b38c2a57d8f@sprout-oss.stage.blox.sqprod.co>
Co-authored-by: npub19x6jnl6rhepymwyl2xlltz3ce7rfg2ktllle3g2vu59n3s490k8s9n40l3 <29b529ff43be424db89f51bff58a38cf86942acbffff98a14ce50b38c2a57d8f@sprout-oss.stage.blox.sqprod.co>
Signed-off-by: npub19x6jnl6rhepymwyl2xlltz3ce7rfg2ktllle3g2vu59n3s490k8s9n40l3 <29b529ff43be424db89f51bff58a38cf86942acbffff98a14ce50b38c2a57d8f@sprout-oss.stage.blox.sqprod.co>
Co-authored-by: npub19x6jnl6rhepymwyl2xlltz3ce7rfg2ktllle3g2vu59n3s490k8s9n40l3 <29b529ff43be424db89f51bff58a38cf86942acbffff98a14ce50b38c2a57d8f@sprout-oss.stage.blox.sqprod.co>
Signed-off-by: npub19x6jnl6rhepymwyl2xlltz3ce7rfg2ktllle3g2vu59n3s490k8s9n40l3 <29b529ff43be424db89f51bff58a38cf86942acbffff98a14ce50b38c2a57d8f@sprout-oss.stage.blox.sqprod.co>
Co-authored-by: npub19x6jnl6rhepymwyl2xlltz3ce7rfg2ktllle3g2vu59n3s490k8s9n40l3 <29b529ff43be424db89f51bff58a38cf86942acbffff98a14ce50b38c2a57d8f@sprout-oss.stage.blox.sqprod.co>
Signed-off-by: npub19x6jnl6rhepymwyl2xlltz3ce7rfg2ktllle3g2vu59n3s490k8s9n40l3 <29b529ff43be424db89f51bff58a38cf86942acbffff98a14ce50b38c2a57d8f@sprout-oss.stage.blox.sqprod.co>
Co-authored-by: npub19x6jnl6rhepymwyl2xlltz3ce7rfg2ktllle3g2vu59n3s490k8s9n40l3 <29b529ff43be424db89f51bff58a38cf86942acbffff98a14ce50b38c2a57d8f@sprout-oss.stage.blox.sqprod.co>
Signed-off-by: npub19x6jnl6rhepymwyl2xlltz3ce7rfg2ktllle3g2vu59n3s490k8s9n40l3 <29b529ff43be424db89f51bff58a38cf86942acbffff98a14ce50b38c2a57d8f@sprout-oss.stage.blox.sqprod.co>

@wesbillman wesbillman left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This goes beyond presentation-only error polish.

The diff adds new runtime-query/refetch behavior for authStatus: unknown and changes failed install behavior from a static error state to a retrying SET UP action that invokes installation again. Those are functional setup-flow changes, not merely compact labels/tooltips. Please retain the existing action/query behavior and limit this PR to rendering the existing errors, or split the retry/refetch behavior into a separate PR.

Also, the install tooltip currently uses runtimeDetailText(runtime) rather than the install failure detail, so “Setup failed” can explain only the pre-install availability state (for example, “adapter missing”), not why setup failed. A sanitized failure explanation should be derived without changing the action lifecycle.

Current-head CI is green, but the branch is one commit behind main; rebase and rerun CI after narrowing.

Keep installation stderr sanitized while describing the failed setup attempt
instead of the runtime's pre-install availability state.

Co-authored-by: Pinky <44b8e82baa6e0e254e0208d68f335c283c94e7b78dd1fa10d5a49d3f13dd0435@sprout-oss.stage.blox.sqprod.co>
Signed-off-by: Wes <wesbillman@users.noreply.github.com>
@wesbillman
wesbillman marked this pull request as ready for review July 19, 2026 15:55
@wesbillman
wesbillman requested a review from a team as a code owner July 19, 2026 15:55

@wesbillman wesbillman left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The recovery actions are valid, raw installation errors remain sanitized, and the updated tooltip now truthfully describes the failed setup attempt. The focused E2E expectation covers the corrected copy. Approved pending fresh CI on b200602.

@wesbillman
wesbillman enabled auto-merge (squash) July 19, 2026 16:07
@wesbillman
wesbillman merged commit 31090b1 into main Jul 19, 2026
26 checks passed
@wesbillman
wesbillman deleted the harness-error-states branch July 19, 2026 16:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants