Skip to content

Offer specific external remediation and recheck for managed setup blocks #292

Closed

Description

@Staphylococcus

Problem

Ready NixOS services are correctly checked before rejecting imperative repair. Missing managed requirements are Blocked with retryable=false, however, so the central modal offers cancellation and a generic unsupported message but no concrete external instructions or Recheck.

The audit reproduced a gated blocked view with no primary action, an empty description, and rejected Submit. External daemon publication can resolve admission, but the user has no guided completion path. KWin additionally blocks unrecognized plugin locations or non-6 versions; the broad Plasma compatibility documentation does not explain that hard-gate boundary.

Code: service block, blocked presentation, KWin applicability/support.

Scope

Publish exact unmet service/binding/plugin facts and distinguish declarative ownership, immutable systems, and unsupported compositor versions/layouts. Present truthful external repair guidance and an explicit recheck path in the existing modal. Document supported desktop/version boundaries.

This is recovery UX/safety for recognized managed or unsupported contexts, not delivery of the declarative installer/update contract in #253/#254 or general immutable installation layouts in #24.

Acceptance

  • Already-ready NixOS services/bridges remain Complete without imperative writes or installer-byte requirements.
  • Missing managed requirements identify what to repair, where ownership resides, and what must be verified afterward.
  • Recheck performs inspection/reassessment only; it never starts an unsupported imperative repair.
  • Unsupported compositor/version/layout states are explicit and never silently reclassified as NotApplicable/Complete.
  • Native adapter and composed GUI tests cover ready, missing, misbound, externally repaired, and still-unsupported states.
  • Validation separates Nix source/build, activation, and live readiness; OSTree is not assumed equivalent to the Nix service path.

Follow-up to #275.

Dependencies: #287, #289.

Implementation and validation

Implemented on dev by PR #295. Acceptance is supported by the merged regression coverage and native recovery validation record, including the 1.10.0 KWin provisioner recheck. Release preparation #298 tracks final candidate CI and promotion. Published in LG Buddy 1.10.0. The release workflow passed; independently downloaded public assets match the reviewed build and identify release commit 1ac8cd3f191a965c3863b938ce2eba4ae0db8e7d.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

      Milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions