Skip to content

Add automatic-paste readiness diagnostics #29

Description

@sri-rang

Problem

Users can enable automatic paste without knowing whether the required session-specific helper is usable. On X11 this depends on xdotool; on Wayland it depends on ydotool, its daemon/socket, and external input-device permissions. Most remediation currently exists only in the Arch-focused README, and users may discover a problem only after completing a dictation.

Expected outcome

Users know whether automatic paste is ready before relying on it and receive concise, actionable recovery guidance when it is unavailable or misconfigured.

Scope

  • Present session-specific automatic-paste readiness in Settings.
  • Detect missing helper executables and common helper or daemon failures without changing system configuration.
  • Relate readiness to the active session and configured paste shortcuts.
  • Provide concise remediation guidance and link to focused documentation.
  • Preserve clipboard fallback and make that fallback explicit when automation is unavailable.
  • Refresh readiness after relevant configuration or environment changes where practical.

Non-goals

  • Installing packages.
  • Starting or enabling services.
  • Changing /dev/uinput permissions or group membership.
  • Requesting elevated privileges.
  • Guaranteeing that focus remains unchanged on Wayland.
  • Selecting target-specific paste commands automatically.

Acceptance criteria

  • Settings distinguishes ready, unavailable, and misconfigured automatic-paste states.
  • Diagnostics use the active desktop session and configured paste behavior.
  • Enabling an unavailable configuration immediately produces actionable guidance.
  • Missing xdotool, missing ydotool, daemon/socket failure, and helper execution failure have distinct useful messages where they can be distinguished reliably.
  • Kastword never requests elevation or modifies system configuration.
  • Clipboard-only delivery remains functional in every failure state.
  • Status updates do not claim readiness when only executable presence has been verified.
  • Deterministic tests cover missing executables, daemon/socket failure, helper failure, clipboard fallback, and recovery.
  • Documentation separates generic behavior from distribution-specific setup commands.

Dependencies and risks

Readiness checks may differ across distributions and helper versions. Detection must avoid false guarantees and degrade to an honest unknown or unavailable state.

Related work

Issue #16 addressed target-aware automatic-paste behavior and shortcut policy, not setup readiness or diagnostics.

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions