Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .sync/dep-parity.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"$note": "Upstream's pinned versions for every dependency both trees declare in the SAME section, snapshotted at `cursor`. The sync ports deltas, which is correct per commit and lets a one-time divergence become permanent: once a version is off upstream's line, every later `chore(deps)` batch skips it, because those ports bump only where this fork already matched upstream's pre-image. `prettier` sat at ^3.8.4 against upstream's ^3.9.6 for that reason, through four ported batches, until this file was written. Section-aware on purpose: 18 packages are declared on both sides but in different sections — the whole `@tiptap/*` family is a peer `^3` upstream and a dependency `^3.29.2` here, and `ai` is a peer there and a devDependency here. Those are structural divergences, not drift, and comparing a peer range against a dependency range says nothing. They are absent from this file by construction rather than by omission. Guarded by `test/utils/dep-parity.spec.ts`. Refresh with `node .sync/dep-parity.mjs <path-to-nuxt-ui-mirror> [cursor]`, which preserves `exceptions`.",
"cursor": "b6cb89725b3f3e9bb26583cb3177a921bb4a5e5b",
"cursor": "ee37a5b4a8af2c8fa651288dcfbb263710f6d907",
"manifests": {
"package.json": {
"dependencies": {
Expand Down
42 changes: 42 additions & 0 deletions .sync/log/ee37a5b4a8af2c8fa651288dcfbb263710f6d907.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
# n/a — nuxt/ui@ee37a5b4a8af2c8fa651288dcfbb263710f6d907

**Upstream:** chore(github): drop `@nuxt/ui` placeholder from consumer fixtures

**Decision:** n/a — all three files are part of the `module.yml` consumer job,
which does not exist here. Recorded as absent one batch ago in `b2cb53f8`.

## Upstream change

A follow-up to `b2cb53f8`, fixing the fixtures it added. `@nuxt/ui: "latest"` is
removed from both `test/fixtures/consumer/{full,minimal}/package.json`, and the
comment above the install step says why:

> No lockfile **and no `@nuxt/ui` entry in the fixtures** on purpose: a fresh
> resolve is the only setup that catches missing optional peers. With `@nuxt/ui`
> already declared, pnpm resolves the published release first and satisfies the
> optional peers from its dependencies.

In other words the placeholder defeated the job: the fixture pulled the *released*
package, whose dependency tree already supplies the peers, so the pkg.pr.new build
under test was never the thing whose peers got checked. Two `@tiptap/*` entries go
with it for the same reason.

## Why it does not apply

`.github/workflows/module.yml` does not exist here, and neither does
`test/fixtures/`. Both were recorded as absent when `b2cb53f8` was processed
(#598): this fork tests the module through `test:module`
(`vitest run --config vitest.module.config.ts` over `test/module/`) as an ordinary
`ci.yml` gate step, against the source tree inside the workspace rather than
against a published preview build.

## The finding still stands, and is sharper now

The `b2cb53f8` journal recorded the idea behind that job as a real gap this fork
does not cover — resolving the published package from **outside** the workspace,
with **no lockfile**, to catch a missing optional peer.

This commit is the evidence that the gap is easy to leave open by accident even
when you build the job for it. Upstream wrote the fixture, wired the workflow, and
still had it silently testing the wrong package until they noticed. If that gap is
ever closed here, the fixture must not name the package under test.
12 changes: 9 additions & 3 deletions .sync/nuxt-ui.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"upstream": "nuxt/ui",
"branch": "v4",
"cursor": "b6cb89725b3f3e9bb26583cb3177a921bb4a5e5b",
"cursor": "ee37a5b4a8af2c8fa651288dcfbb263710f6d907",
"_cursor_note": "cursor = last upstream commit ported into b24ui. The sync is manual by decision: one commit at a time, oldest-first, each with a `.sync/log/<sha>.md` journal and an entry in `processed`. There is no dispatcher, no porter workflow and no kill-switch — `.sync/PORTING.md` is the whole procedure. `processed` is maintained per port (backfilled #68-#72 on 2026-06-09).",
"processed": {
"2799fa6f2b25ce3eb15e050f3ef7c57d0d9a2fdb": {
Expand Down Expand Up @@ -1975,10 +1975,16 @@
"summary": "chore(deps): shorten peer dependency ranges (#6961) — 11 of our 13 peers normalised (^3.0.0 -> ^3 etc.), all verified semantically identical with semver.subset both ways. The fork-only `vue: ^3.5.0` peer and `yup: ^1.7.0` keep their real floors, which is the same rule upstream applied"
},
"b6cb89725b3f3e9bb26583cb3177a921bb4a5e5b": {
"pr": "pending-merge",
"b24ui_sha": "pending-merge",
"pr": 606,
"b24ui_sha": "72c96054",
"decision": "port",
"summary": "refactor(unplugin): resolve vue runtime paths from a file url — second half of b0e1d715; an absolute Windows path like `D:/...` parses as a `d:` url scheme, so the four sites take a relative id against a new `runtimeUrl` (pathToFileURL of runtimeDir WITH a trailing slash, which is load-bearing). Drops the now-unused `join` import from bitrix24-environment.ts, as upstream does"
},
"ee37a5b4a8af2c8fa651288dcfbb263710f6d907": {
"pr": "pending-merge",
"b24ui_sha": "pending-merge",
"decision": "n/a",
"summary": "chore(github): drop `@nuxt/ui` placeholder from consumer fixtures — n/a: module.yml and test/fixtures/ do not exist here (recorded with b2cb53f8 / #598). Worth noting the reason: the placeholder made the job resolve the released package, so the build under test was never the one whose optional peers were checked"
}
}
}
Loading