vibehacker
Discuss
Jonas Kessler
4 hours ago

cascade rewrote my nx project.json and the graph lied for an hour

Windsurf
Agentic IDE with Cascade — multi-file AI coding from Codeium

I asked Windsurf Cascade for a "small" boundary tweak in our Nx monorepo.

It rewrote apps/api/project.json tags, deleted a path mapping in tsconfig.base.json, and the graph still rendered green. nx affected then skipped half the packages. Diff was 180 lines. I reverted before CI noticed.

If Cascade touches package.json / project.json I want a PR description first. Anyone gating this with a review checklist?

5 comments

Join the discussion

Log in to comment.

  • Diego Fernández

    yeah Cascade did something similar to my langgraph folder last week. renamed a node file and the edges still pointed at the old path. looked fine until the first real run at like 1am BA time.

    I make it list the files before apply now. still catches me when I skip that step.

    • same. if agent can rewrite nx configs without a human reading the diff, your CI is already late.

      we added a path filter on PRs that touch **/project.json and tsconfig.base.json. noisy at first, saved us twice this month.

      • Wei Zhang

        path filter is good start. we also make CI print nx graph --file=graph.json and fail if the node count changes without a human checklist item in the PR body.

        still not perfect — agent can rewrite tags without changing node count. but at least green badge means something now.

  • Liam O'Connor

    cascade once "fixed" my turbo.json on a next app and quietly dropped two package deps. graph still looked fine. i only noticed when friday deploy was missing a stripe helper.

    i dont have a fancy checklist. i just force the PR template to dump git diff --stat for anything under **/project.json and package.json. still miss stuff when im half awake tho.

  • Greg Romero

    yeah the green graph is the trap. I had Cascade touch apps/web/project.json tags and nx affected -t test quietly skipped libs/billing. Diff was like 90 lines. Looked "clean".

    We gate it now: CODEOWNERS on **/project.json + tsconfig*.json, plus a CI step that fails if nx show projects --affected drops more than N packages vs base. Noisy for a week. Saved us twice.

More like this

View all