Skip to content

Expand Windows integration coverage #8

Description

@dinsley

Summary

Priority: P1

Expand Windows-specific automated and manual integration coverage beyond the current cross-platform unit and build checks.

CI already runs the project check on windows-latest, and executable resolution has a Windows unit test. The remaining risk is at the process and desktop-integration boundary: real installation locations, paths containing spaces, CRLF streaming, detached child behavior, timeouts, and Stream Deck's runtime environment.

Proposed scope

  • Add a Windows subprocess test fixture that behaves like the relevant Amp commands without requiring an Amp account.
  • Exercise:
    • executable discovery and explicit paths;
    • paths containing spaces and non-ASCII characters;
    • argument passing without shell interpolation;
    • CRLF and chunked JSONL output;
    • stdout/stderr bounds;
    • acknowledgement parsing;
    • timeout and child termination;
    • detached command lifetime after acknowledgement; and
    • plugin shutdown while a child or retry is active.
  • Document expected Amp installation discovery on Windows.
  • Add a repeatable manual smoke-test checklist for a real Windows Stream Deck installation and authenticated Amp CLI.
  • Record which behaviors cannot be established in hosted CI because they require hardware, Stream Deck, or user authentication.

Acceptance criteria

  • Windows CI runs the subprocess compatibility suite using a disposable fake Amp executable.
  • No command path relies on shell quoting or an interactive terminal environment.
  • CRLF and arbitrarily chunked stream records are covered.
  • Timeout, process exit, spawn error, and accepted-then-failed cases are covered.
  • The manual checklist verifies status monitoring, selection, open, review, ship, archive, restart, and log collection.
  • README.md or troubleshooting documentation clearly describes supported Windows setup and known limitations.
  • At least one real Windows test result is recorded before Windows support is considered fully verified for a release.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requesthelp wantedExtra attention is neededjavascriptPull requests that update javascript code

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions