Skip to content

fix: restore ci after deps update - #472

Merged
antfu merged 4 commits into
mainfrom
fix/ci-after-deps-update
Oct 30, 2026
Merged

antfu merged 4 commits into
mainfrom
fix/ci-after-deps-update

Conversation

@antfubot

@antfubot antfubot commented Oct 30, 2026 •

Copy link
Copy Markdown
Collaborator

Summary

CI on main fails in every job since the chore: update deps commit (ce88297). This PR fixes the build error and the two failures it was hiding.

  • Nuxt build (TS2883). @nuxt/kit 4.6.2 moved @nuxt/schema to a peer dependency. The inferred NuxtModule type of the default exports in packages/nuxt/src/{hub,single}.ts could not be named anymore, so @devframes/nuxt#build failed. @nuxt/schema is now in the build catalog and in packages/nuxt as a devDependency and a peer dependency (same range as @nuxt/kit's peer).
  • Knip. The stale @nuxt/schema ignore for packages/nuxt is removed. The root @x18n/cli (added in the deps update) is ignored, because no script calls it yet.
  • API snapshots. rolldown 1.2.13+ (via tsdown 0.23.1) emits export { t as x } from "./chunk-HASH.mjs" instead of an import followed by an export. tsnapi 1.5.0 snapshots that form as raw re-exports with hashed chunk names, so 23 snapshots failed. Instead of accepting those, the build catalog pins tsdown: 0.23.0, and a scoped tsdown>rolldown: 1.2.12 override keeps its bundler on the old output. The API snapshots are unchanged from main. (An earlier commit in this PR accepted the hashed snapshots; the last commit restores them.)

Rollout and follow-up

A tsnapi fix that resolves the new re-export form (and chunks in parent folders) is in progress upstream. When it is released: bump tsnapi, drop the tsdown>rolldown override, move tsdown back to ^0.23.1, and regenerate the snapshots. This does not block merge.

Verification

  • pnpm lint - pass
  • pnpm knip - pass
  • pnpm typecheck - pass
  • pnpm build - pass (was failing on @devframes/nuxt#build)
  • pnpm build --force (no turbo cache) - pass, with tsdown 0.23.0 / rolldown 1.2.12
  • pnpm test - 1803 passed, 13 skipped, run with the local HTTP proxy env vars unset (with the proxy set, the two [::1] loopback tests in dev.test.ts / initiate.test.ts fail locally). Not verified on CI yet.

Written with the help of Claude Code.

🤖 Generated with Claude Code

antfubot and others added 3 commits October 30, 2026 22:12
@nuxt/kit 4.6.2 moved @nuxt/schema to a peer dependency, so the
inferred `NuxtModule` type of the default exports could not be
named anymore (TS2883) and the build failed.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Drop the stale @nuxt/schema ignore for packages/nuxt, and ignore the
root @x18n/cli, which no script calls yet.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
rolldown 1.2.14 emits `export { t as x } from "./chunk"` instead of
an import followed by an export. tsnapi 1.5.0 prints that form as a
re-export, so the snapshots now show chunk re-exports. The exported
names are unchanged.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@vercel

vercel Bot commented Oct 30, 2026 •

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
devframe Ready Ready Preview Oct 30, 2026 10:25pm UTC

@github-actions

github-actions Bot commented Oct 30, 2026 •

Copy link
Copy Markdown

👁️‍🗨️ Review this pull request with grouped, summarized diffs at:
👉 https://pulls.review/gh/devframes/devframe/472?from=github-actions[bot]

raw result

💭 analyzed by vercel-ai-gateway/anthropic/claude-sonnet-5
🕰️ 2026-10-30 22:23 UTC
🔗 head a490b53
🤖 automated by pulls.review

{
  "headSha": "a490b53c7919c64f0c98e54273478264459fed28",
  "result": {
    "overallSummary": "Fixes CI, which has been broken since the `chore: update deps` commit: `@nuxt/kit` 4.6.2 made `@nuxt/schema` a peer dependency (breaking the Nuxt module's type build), and rolldown 1.2.13+'s new re-export output broke API snapshots. The fix declares `@nuxt/schema` explicitly, updates knip's ignore list, and pins `tsdown`/`rolldown` to restore the previous build output without touching the snapshots themselves.",
    "groups": [
      {
        "key": "fix-ci-deps",
        "label": "Restore CI after deps update",
        "summary": "Fixes CI regressions introduced by the deps update: adds `@nuxt/schema` as a peer/dev dependency of `packages/nuxt` so its `NuxtModule` type can be named again, updates knip's ignored dependencies accordingly, and pins `tsdown`/`rolldown` to avoid snapshot-breaking output changes.",
        "category": "build",
        "filePaths": [
          "knip.jsonc",
          "pnpm-lock.yaml",
          "pnpm-workspace.yaml",
          "packages/nuxt/package.json"
        ],
        "fileNotes": [
          {
            "path": "pnpm-workspace.yaml",
            "text": "Pins `tsdown` to 0.23.0 and overrides `tsdown>rolldown` to 1.2.12 to keep bundler output stable until tsnapi supports the new re-export form; temporary workaround with a follow-up noted in the PR description."
          },
          {
            "path": "packages/nuxt/package.json",
            "text": "Adds `@nuxt/schema` as both a peerDependency and devDependency (matching `@nuxt/kit`'s peer range) since `@nuxt/kit` 4.6.2 made it a peer dependency instead of bundling it transitively."
          },
          {
            "path": "knip.jsonc",
            "text": "Removes the now-stale `@nuxt/schema` ignore for `packages/nuxt` and adds an ignore for the newly introduced `@x18n/cli`, which isn't called by any script yet."
          },
          {
            "path": "pnpm-lock.yaml",
            "text": "Generated lockfile update reflecting the dependency/catalog/override changes."
          }
        ]
      }
    ],
    "schemaVersion": 1,
    "source": "llm",
    "generatedAt": "2026-10-30T22:23:49.378Z",
    "model": "vercel-ai-gateway/anthropic/claude-sonnet-5",
    "locale": "en"
  }
}

rolldown 1.2.13+ emits `export { t as x } from "./chunk"`. tsnapi 1.5.0
snapshots that form as raw re-exports with hashed chunk names, which
change on every chunk change. Pin tsdown to 0.23.0 and its rolldown to
1.2.12 until tsnapi resolves the new form, and restore the previous
API snapshots.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@antfu
antfu merged commit 7040223 into main Oct 30, 2026
13 of 14 checks passed
@antfu
antfu deleted the fix/ci-after-deps-update branch October 30, 2026 22:41

This branch was successfully deployed

1 active deployment
Preview — a490b53c Deployed Oct 30, 2026 by vercel[bot]
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.

2 participants