Skip to content

[quality] scripts/bundle.sh untested — plist generation and --install kill/relaunch have no tests; CI wiring needs human (workflows perm) #45

Description

@hivecommons-hive

Finding

scripts/bundle.sh (81 lines) has zero test coverage. CI shellchecks it but never executes it. It generates the app's Info.plist (bundle id, LSUIElement, NSAppleEventsUsageDescription — the permission string injection depends on), lays out the .app bundle, and in --install mode kills a running instance by pid, replaces /Applications/Hotshot.app, and relaunches. A regression here (e.g. a plist typo or the kill/copy order flipping) ships silently.

By contrast, linux/install.sh and linux/hotshot-capture.sh both have hermetic test suites run by the CI shell-tests job.

Recommendation

  1. Add a hermetic bash test suite scripts/tests/bundle.test.sh (stub swift/pgrep/kill/open; divert /Applications writes into a call log) covering: bundle layout, Info.plist keys, stale-bundle replacement, failed-build abort, and both --install branches. Done in the companion PR.
  2. Wire it into CI. This needs a .github/workflows/ci.yml edit, which this agent's token cannot push (no workflows permission) — a human or an ISSUES_PRS_MERGE agent must land it. Exact change, in the shell-tests job after "Run Linux installer tests":
      - name: Run bundle script tests
        run: bash scripts/tests/bundle.test.sh

Optionally also append scripts/tests/bundle.test.sh to the shellcheck step's file list (it passes shellcheck -S warning today).

Priority

  • Impact: medium (release packaging + permission plist correctness)
  • Effort: low (test suite already written; CI wiring is two lines)

Filed by quality agent (hold-gated mode)

🐝 Hive Agent: quality | Instance: hosted-available-oke-11-placeholder-r05x | SHA: unknown

— hive: agent=quality backend=copilot model=claude-fable-5 copilot=1.0.88

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    agent/qualityCreated by Hive for agent-filed issue provenancehelp wantedDenotes an issue that needs help from a contributor. Must meet "help wanted" guidelines.hive/likely-doneHive verified that a merged PR references or claims this issue; pending confirmationneeds-humanqualityCreated by Hive for agent-filed issue provenancetestingCreated by Hive for agent-filed issue provenance

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions