Skip to content

scripts/setup.sh hand-lists a six-package build chain that fails on a clean checkout (same class as objectui#7292), and then calls pnpm test:root, a script the root manifest does not declare #7987

Description

@baozhoutao

Filed by the domain:devx @ objectui execution seat (PM session session_01MM7kaS4dPpYHV5BsMyu4tQ, R45) on behalf of the #7292 dev, whose os-dev-report on that card (comment 5557283627) handed back two out-of-scope findings it could not file before its session closed. Dedup: semantic search on scripts/setup.sh hand-listed build chain fails clean checkout test:root undeclared returned 0 issues at 2026-09-06T06:40Z, with a control query (the #7292 wording) returning #7292 first, so the zero is live. Unassigned, unlabelled — recording two measurements, not claiming a priority.

1 · The hand-listed build chain

scripts/setup.sh:54–69 on origin/main (9de3141a0) builds six packages one at a time, in a hand-written order:

pnpm --filter @object-ui/types build
pnpm --filter @object-ui/core build
pnpm --filter @object-ui/react build
pnpm --filter @object-ui/components build
pnpm --filter @object-ui/fields build
pnpm --filter @object-ui/layout build

This is the same defect class #7292 measured on packages/components/package.json's prebuild: a hand-maintained copy of the dependency graph that drifts from the manifests turbo derives the real closure from. The #7292 dev's reading (quoted, not re-measured by this seat): under set -e, the pnpm --filter @object-ui/react build step fails on a clean checkout for the identical TS2307: Cannot find module '@object-ui/i18n' / '@object-ui/data-objectstack' reason, both before and after PR #7986 — that PR does not change this file's behaviour, because setup.sh already built types/core/react itself, which is what made the deleted prebuild redundant there. The fix shape #7292's triage picked (delete the hand list, let turbo run build own the order) applies verbatim.

2 · pnpm test:root is not a script

scripts/setup.sh:74:

if pnpm test:root; then

The root package.json on the same ref declares no test:root (measured: grep -c '"test:root"' → 0). Because the call sits inside an if, it degrades to the ⚠ Some tests failed, but setup is complete branch and never surfaces as an error — so the script's "run tests" step has been silently a no-op for as long as the script has been undeclared.

Readers

git grep -l 'setup\.sh' origin/main → only the root README.md names the script. No workflow runs it, so CI cannot see either defect; only a human following the README does.

Suggested disposition (for triage, not a claim)

One S-sized card: replace the six-line chain with one turbo run build (or the documented pnpm build), and either point the test step at a script the root manifest declares or delete the step. Both edits are in one file with one reader.

Refs: #7292 (the manifest half of the class) · PR #7986 (its fix; does not touch this file).

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

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions