Skip to content

install.sh --full leaves a fresh pnpm workspace partially linked, yet reports 'Dev-dependencies installed → nothing to do' #533

Description

@artyhoo

Summary

On a fresh clone (zero node_modules), install.sh ts-server --full runs pnpm add -D -w but leaves the workspace partially linkedpackages/config and apps/mobile end up without node_modules, and the workspace package @timeliner/config is not symlinked. As a result typecheck/lint/test fail, while the installer's "Next steps" prints "✓ Dev-dependencies installed → nothing to do."

A plain pnpm install afterwards fixes everything (typecheck → exit 0).

Environment

  • Fresh clone (no node_modules), pnpm 10.19
  • install.sh ts-server --full, framework staging fbbd239

Steps to reproduce

git clone <consumer> /tmp/cr && cd /tmp/cr && git checkout <clean-baseline>
bash /path/to/install.sh ts-server --full
npm run typecheck   # FAIL

Expected

After --full (which runs pnpm add -D -w), the whole workspace is linked and typecheck/lint/test run.

Actual

packages/config and apps/mobile have no node_modules; @timeliner/config is not symlinked → typecheck fails:

api:typecheck: error TS2688: Cannot find type definition file for 'node'.
api:typecheck: tsconfig.json(2,14): error TS6053: File '@timeliner/config/tsconfig/node.json' not found.
… WARN  Local package.json exists, but node_modules missing, did you mean to install?

Yet the installer's "Next steps" says:

4. ✓ Dev-dependencies installed into node_modules/ — nothing to do.

A subsequent plain pnpm install links everything → npm run typecheck exit 0. So pnpm add -D -w produced an incomplete workspace link.

Impact

On a cold clone (= exactly the clean-room acceptance scenario), typecheck/lint/test are falsely red while the installer message says there's nothing to do → the consumer is misdirected.

Caveat (honest)

This may be specific to a fully fresh clone — a real consumer adopting AIF usually already has a warm node_modules. Lower priority than the format / pre-push defects.

Suggested fix

After pnpm add -D -w, follow with a full pnpm install (or use it directly), or drop the over-claim in "Next steps" and explicitly recommend pnpm install on a fresh tree.


Found on a consumer polygon (timeliner, pnpm monorepo). Acceptance run R5, framework staging fbbd239.

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

    enhancementNew feature or request

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions