Skip to content

fix(ci): run madge from an isolated install — typescript@7 has no JS API - #347

Merged
sebyx07 merged 1 commit into
mainfrom
fix/madge-typescript-api
Oct 7, 2026
Merged

sebyx07 merged 1 commit into
mainfrom
fix/madge-typescript-api

Conversation

@sebyx07

@sebyx07 sebyx07 commented Oct 7, 2026 •

Copy link
Copy Markdown
Contributor

Fixes the red `bun (test + lint)` job on main (since the TypeScript 7.0.2 bump, 2026-09-08).

Root cause: `bunx madge --circular` crashed with `TypeError: Cannot read properties of undefined (reading 'Cjs')`. madge parses .ts via `@typescript-eslint/typescript-estree`, which needs the TypeScript JS API — typescript@7 does not ship one. The root `overrides: { typescript: $typescript }` forced madge's tree onto 7. Removing the override instead breaks `npm install` (ERESOLVE: madge's typescript peer can't be 5.x next to root 7.x).

Fix: remove madge from root devDependencies; CI runs pinned `bunx madge@8.0.0 --circular packages/*/src`, an isolated install that resolves typescript 5.9. The check is unchanged: still 342 files, still fails on an injected cycle (verified locally). `npm install`, lint and typecheck verified locally.

Also removes a stale Blacksmith comment from the runner migration.

🤖 Generated with Claude Code


View with [code]smith Autofix with [code]smith
Need help on this PR? Tag @codesmith-bot with what you need. Autofix is disabled.

The bun job's import-cycle step crashed on main with
"TypeError: Cannot read properties of undefined (reading 'Cjs')" since the
TypeScript 7.0.2 bump. madge parses .ts through @typescript-eslint/typescript-estree,
which needs the TypeScript JS API; typescript@7 no longer ships it. As a
workspace devDep, the root overrides entry (typescript: $typescript) forced
madge's tree onto 7. Dropping the override instead breaks npm install
(ERESOLVE: madge's typescript peer cannot be 5.x beside a root 7.x).

madge leaves the workspace and CI runs a pinned bunx madge@8.0.0, whose own
install resolves typescript 5.9. Same check, same scope: verified it still
processes all 342 files and fails on an injected cycle.

Also drops a stale Blacksmith comment left by the runner migration.
@coderabbitai

coderabbitai Bot commented Oct 7, 2026

Copy link
Copy Markdown

Warning

Review limit reached

The included review limit has been reached and this organization has disabled usage-based review continuation. Wait for reviews to reset or ask a billing admin to change After included review limits.

  • Ask an admin to enable usage-based reviews

Open in CodeRabbit

Reviews can continue after your included limit without a manual trigger. An admin must approve usage-based billing.

Next included review available in 28 minutes.

Check out review usage here.

View limit details

Limit details: You’ve used the included review currently available. Your 105 included PR review attempts over the past 7 days set your current allowance at 1 review per hour.

Learn how review limits work.

Review configuration:

⚙️ Run configuration
  • Configuration used: Repository: developerz-ai/ai-task-master/.coderabbit.yml
  • Review profile: CHILL
  • Plan: Essentials
  • Run ID: 0f92b069-e173-4ae5-8e31-d859ec937d90
📥 Commits

Reviewing files that changed from the base of the PR and between 9139505 and c2731f8.

⛔ Files ignored due to path filters (1)
  • bun.lock is excluded by !**/*.lock, !**/bun.lock
📒 Files selected for processing (2)
  • .github/workflows/ci.yml
  • package.json
  • Autopilot · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Comment @coderabbitai help to get the list of available commands.

@sebyx07
sebyx07 merged commit 6a428f1 into main Oct 7, 2026
4 checks passed
@sebyx07
sebyx07 deleted the fix/madge-typescript-api branch October 7, 2026 22:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant