jackwener / jackwener/OpenCLI

OpenCLIApp macOS bundle ships ~1600 unnecessary test files (domino test suite + opencli's own tests)

Open
#2,412 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
JavaScript
Stars
29.3k
Forks
2.9k
Avg merge
15h 36m
Merged PRs (30d)
70

Description

The macOS app (OpenCLIApp 0.1.38, aarch64) bundles `Resources/node_modules` = 145 MB, and a big chunk of it is test artifacts that slow down install/extraction:

- `Resources/node_modules/@mixmark-io/domino/test/` — **959 files, 7 MB** (94% of domino's file count; the npm package ships its whole test suite, and upstream mixmark-io/domino has been unmaintained since 2024 — their PR #2 fixing this was never merged)
- `Resources/node_modules/@jackwener/opencli/**` — **639 `*.test.*` / `__fixtures__` files** from the published opencli tarball

Both have public-side fixes now:
- #2410 removes opencli's own test files from the npm tarball
- #2411 prunes domino's `test/` in postinstall

However, if the OpenCLIApp build (repo appears to be private) stages `node_modules` with `--ignore-scripts`, the postinstall prune in #2411 won't run there. In that case the app packaging step should prune explicitly after staging, e.g.:

```sh
find Resources/node_modules -type d \( -name test -o -name tests -o -name __fixtures__ \) -exec rm -rf {} + 2>/dev/null
find Resources/node_modules -name '*.test.*' -delete
```

Happy to PR that too if the app repo becomes accessible.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Contributor guide

Open the contributing guide

Research direction

Start by locating the macOS app packaging step that stages Resources/node_modules and determine whether it uses --ignore-scripts. Verify the bundled tree for domino/test, __fixtures__, and *.test.* files, then confirm the finished bundle no longer contains those artifacts and is smaller.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript, macos, node.js
Domain
build-system, cli, release
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.