Conversation
…nd StyleX imports The generated stylesheet always resolved to an empty module, so Bun.build dropped every style, and the pre-parse gate only accepted import declarations of @devup-ui/react, so files using the alias packages, StyleX, subpaths or re-exports ran the runtime stubs. DevupUI() now serves the complete sheet to the CSS loader after defer(), and the gate reads the real imports with Bun.Transpiler.scanImports. Refs #686 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
… built stylesheets A stylesheet module is built on its first import, and the shared base is read from disk past the plugin, so styles extracted later were missing from webpack and Rsbuild output; Rsbuild also served a module-wide string kept only when it grew. The files the entries reach are now extracted before the build, the base on disk is kept current, and a compilation whose stylesheets changed is run once more, writing only the complete result. Rsbuild serves each stylesheet from the current sheet. Refs #686 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
…into feat/deterministic-numbering # Conflicts: # packages/next-plugin/src/loader.ts
…inistic-numbering
…ing order Refs #694 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #694 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
… forwarding alone Refs #694 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #694, #686 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #686 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #686 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #686 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #686 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #686 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #686 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #686 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #686 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #686 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
…orwarding Refs #686 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #686 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #686 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #686 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #686 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #686 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #686 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #686 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #686 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #686 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #686 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #686 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Contributor
Changepacks@devup-ui/wasm@1.0.83 → 1.0.84 - bindings/devup-ui-wasm/package.jsonPatch
@devup-ui/bun-plugin@1.0.22 → 1.0.23 - packages/bun-plugin/package.jsonPatch
@devup-ui/components@0.1.60 → 0.1.61 - packages/components/package.jsonPatch
@devup-ui/next-plugin@1.0.90 → 1.0.91 - packages/next-plugin/package.jsonPatch
@devup-ui/plugin-utils@1.0.17 → 1.0.18 - packages/plugin-utils/package.jsonPatch
@devup-ui/rsbuild-plugin@1.0.67 → 1.0.68 - packages/rsbuild-plugin/package.jsonPatch
@devup-ui/vite-plugin@1.0.73 → 1.0.74 - packages/vite-plugin/package.jsonPatch
@devup-ui/webpack-plugin@1.0.71 → 1.0.72 - packages/webpack-plugin/package.jsonPatch
|
Codecov Report✅ All modified and coverable lines are covered by tests.
... and 1 file with indirect coverage changes 🚀 New features to boost your workflow:
|
Refs #686 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #686 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #686 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #686 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
…es and exclusions Refs #686 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #686 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
…rors Refs #686 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
…ite proof Refs #686 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #686 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #686 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #686 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #686 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #686 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
owjs3901
added a commit
that referenced
this pull request
Oct 5, 2026
Refs #686 #694 #755 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #686 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #686 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
owjs3901
added a commit
that referenced
this pull request
Oct 6, 2026
Refs #686 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #686 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #686 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #686 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
owjs3901
added a commit
that referenced
this pull request
Oct 6, 2026
Refs #686, #694 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #686 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
owjs3901
added a commit
that referenced
this pull request
Oct 6, 2026
Refs #686 #694 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #686 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
owjs3901
added a commit
that referenced
this pull request
Oct 6, 2026
Refs #686 #694 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Refs #686 (H 권장 항목, W20 H1/W20b/W20c/W20d/W20e). #743 위에 쌓은 PR이며 #743이 먼저 병합되어야 합니다. main
a935315c(#747 포함)와 #7434f1f953c를 통합했습니다. #752의 Next coordinator 작업과 독립적으로 검증합니다.요약
WASM 경계, 모듈 resolver 및 Vite/Webpack/Rsbuild/Bun의 공통 동작을 수정합니다. Vite library/aggregate CSS는 실제 build input의 컴파일된 도달 closure가 완료된 뒤 정상 CSS 파이프라인으로 전달합니다. 스타일링 런타임, 의존성, private Vite adapter 또는 버전 pin을 추가하지 않습니다. #747의 네 보호 영역은 그대로 유지하며 main은 pre, MDX companion은 post/transform-only입니다.
동작 및 항목 상태
map === undefined검증추가 수정: dotted relative specifier와 dotted directory index, MDX provider를 통해 도달하는 JS 및 included package JS closure, Rsbuild 첫 mkdir/write 순서를 수정했습니다. Next 변경은 승인된 테스트 정렬뿐이며 production 코드는 변경하지 않았습니다. graph와 numbering의
includeMdx는 기본 false이고 각 MDX 플러그인은 자기 compiler가 실제 처리하는 확장자 목록만 전달합니다.Library CSS 및 CI 회귀
this.resolve/this.load/ModuleInfo로 실제 input, dynamic import, virtual/post-injected import 및 plugin-emitted input을 방문하며 CSS load 자체를 기다리는 순환은 피합니다. source tree 전체를 추출하지 않습니다.vite:css-post이전에 완전한 CSS를 제공합니다. foreign red → Devup green → foreign blue의 동일@layer b회귀에서 실제 optimizer 승자는 blue입니다. 늦은 asset splice는 사용하지 않습니다.af-a … af-f→o-a … o-f로 복원했습니다. 기존 zero-runtime E2E regex는 수정하지 않았습니다.plugin.ts측정 제외를 완전히 제거했고 등록 wrapper도 100%입니다. 공개 exports/ESM await/CJS 동작은 유지합니다.W21c 공유 API 추가
includeMdx: boolean | readonly string[]를 graph/scanner/numbering에 공통 적용합니다. 기본은 모두 off, true는.mdx만, 목록은.md,.mdown등 caller compiler가 처리하는 literal 확장자만 선택합니다.listSourceFiles(srcDir, exclude, options)는 기존 두 인자를 유지합니다.prepareSource(realAbsoluteFilename)은 string 또는{code,map}/undefined를 동기·비동기로 반환합니다. Hook 없는 graph는 기존 synchronous 결과, hook을 제공한 graph는 항상 Promise입니다. undefined만 raw file을 읽으며 compiler-injected provider/remark/rehype imports를 실제 파일 기준으로 해석합니다.alias는 string·false 또는 순서 있는 string/false 후보 배열을 받으며 tsconfig/native package 해석보다 먼저 적용합니다.$exact, segment subpath, 선언 순서, self/chain/cycle 및 각 후보의 완전한 해석을 설치된 enhanced-resolve 5.25.1과 실제 파일로 비교했습니다. 도달한 false는 즉시{ignored:true}이고 앞선 실제 파일 후보가 해석되면 그 후보가 우선합니다. 문자열 후보는 alias map을 다시 거치며 target과 같거나 그 아래인 요청은 다시 alias하지 않습니다. 모두 실패하면 importer 위치·key·후보를 보고하고 원래 request로 되돌아가지 않습니다. Wildcard는 기존 지원 범위 밖입니다.AliasUtils.js:239–249는 reached false를 처리하지만ResolverFactory.js:181–183은 mixed string/false 배열을 handler 이전에 TypeError로 거부합니다. 공유 resolver는 AliasUtils의 의미를 구현하며 Webpack은 자신의 factory 오류로 먼저 중단합니다. Rspack은 native map에서 mixed false 배열을 지원하고 첫 성공·false·빈 배열·terminal 실패 의미를 실제 resolver로 비교했습니다. Vite의 native alias 형식에는 false target이 없습니다.fce47fe9**에서 기존ModuleAliasesmap 타입을 유지하고ModuleAliasOptions에 순서 있는{name,alias,onlyModule?}descriptors/native false를 추가했습니다. Map trailing$는 exact이고 descriptor의 literal$와onlyModule:false는 prefix입니다. 중복 첫 rewrite 실패는 설치된AliasUtils.js:307–313처럼 terminal이며 뒤의 false/실제 파일로 우회하지 않습니다. Selfguard-only/빈 배열은 rewrite가 없어 다음 항목·raw request로 진행합니다. 기존 empty-map 오류는 native fallthrough로 변경했습니다. Webpack의 graph/setup/loader/cache와 Rsbuild의 native map-or-false를 같은 옵션으로 lossless 전달하며, 실제 native bundle 선택 결과 10개·root 6748/0·132개 소스100/100·build/nativeTS/lint/protected/WASM을 검증했습니다.exclude도 graph/scanner와 같은 matcher를 사용합니다. bare directory name은 모든 깊이, absolute path는 해당 directory/하위만 제외합니다. Windows separator/drive/path case를 정규화하며 같은 basename의 다른 source folder는 유지합니다. 제외된 manifest/source는 읽기 전에 차단합니다.(in compiled output)으로 표시합니다. 문자열·template text·주석·regex·JSX text의 예제 imports는 edge나 resolution attempt가 되지 않습니다.createModuleResolver도 같은 prepared hook을 동기적으로 사용하며remapError(error)를 가진 callable을 반환합니다. Thenable 또는 미준비.mdx/.md/선택된 Markdown은 importer:1:1·module·cause·JS/TS 대안의 오류이며 raw Markdown을 WASM에 넘기지 않습니다. Prepared caller는 모든codeExtract오류를remapError로 보내야 합니다. Store는 resolver instance/current generation과 실제 WASM id에 연결되며 모든 위치를 map 또는 compiled-output label로 처리합니다.e8abf152에서 parser-independent edge extraction을 완료했습니다. 모든 edge는 하나의 무의존성 scanner가 결정하며 optional Oxc는 syntax diagnostics만 제공합니다. AST/program getter는 edge를 바꾸지 않습니다. template${...}/nested template 및 JSX attribute/child braces 안의 literal import/require는 발견하고, 문자열·template text·주석·regex·JSX text와 비literal 인자는 edge가 아닙니다.typeof import()를 구분하고 ASI·return annotation·grouped ternary·generic ambient signature·for-await regex·type asbinding 회귀를 추가했습니다. 독립적인 실제 Oxc AST 비교에서 발견한 유효 문법 차이는 기대값을 바꾸지 않고 모두 수정했습니다.179fa6d3에서 extraction의 optional ninthsourceType: 'compiled-mdx'와 prepared/resolved module의 같은 field를 추가했습니다. 실제.mdown파일명으로 JS+JSX를 파싱하며 alias·imported constants·reexport·module evaluation·strip cache까지 타입을 전달합니다. Child가 importing source의 타입을 상속하지 않고 자기 파일/명시 타입을 사용합니다. Invalid type/getter와 override 없는 unknown extension은 no-import fastpath에서도 위치 지정 오류이며 실패한 sheet를 publish하지 않습니다..mdJSX 값은jsx:false/true·child type 기본/명시·map/no-map 8가지 부모 검증에서 모두 정적 blue CSS입니다. 기존 38개 실제 compiler/WASM 회귀와 확장 52개 검증도 통과했습니다. 각 plugin의 동일mdxExtensions목록·ninth argument·확실히 사용되는 binding guard를 연결하며 완료 전에는 ready로 전환하지 않습니다.c07d6c49raw request evidence: 성공한 graph는ScannedStaticImportGraph.requests에 scanner가 발견한 모든 occurrence를 importer·위치 순서로 유지합니다. 실제 절대 importer, literal에 쓰인 원문 escape, decoded specifier, UTF-16 offset·1-based 줄/열, 네 edge kind와 정확히 하나의 resolved/external/ignored/excluded/unresolved outcome을 제공합니다. Excluded는 실제 matched exclude entry를 기록하며 excluded/unresolved는 오류가 아닌 관찰입니다. List·record·position·outcome은 frozen이고 caller의 map/error는 변경하지 않습니다.importGraphFailureOf(error)로 읽으며 오류 property나 cast를 추가하지 않습니다. Prepared 위치는 실제 compiled text 기준이고 map은 metadata이며 원문 MDX 위치라고 주장하지 않습니다. U+2028/U+2029를 포함한 ECMAScript line terminator의 실제 raw/prepared/failure 위치를 RED→GREEN으로 검증했습니다. 기존 traversal/numbering/scanner object shape와 오류는 유지하며 새 build error는 없습니다.23463285resolution inputs: 각 resolved outcome의 readonlyinputs.fileDependencies/inputs.missingDependencies에 공유 resolver가 실제로 읽거나 검사한 lexical 파일과 실제 미존재 probe를 중복 없이 결정론적 순서로 기록합니다. Package manifest의 실제 exports/module/main 해석, tsconfig 상속/paths/baseUrl 및 먼저 실패한 alias/extension/index 후보를 기존 IO 지점에서 관찰하며 evidence를 위해 다시 해석하거나 가짜 후보를 추가하지 않습니다. Nested record/array도 frozen이고 기존 callable·WASM 반환 모양·해석 결과·traversal·오류는 유지합니다.onResolutionInputs는 setup·graph·평가 입력을 공개 watch seam으로 전달합니다. Webpack/Rspack loader는addDependency/addMissingDependency, Vite는addWatchFile을 사용합니다. Same-root loader의 생성/상속된 tsconfig 변경과 callback 소유권을 검증하고, client/SSR missing-input 상태를 environment별로 분리합니다. Vite의 실제 outside-root 미존재 입력 RED 회귀에만 공개server.watcher/moduleGraph를 연결하며 서버 종료 시 구독을 닫습니다. Native fs watcher·polling·전역 unignore·engine reset은 추가하지 않습니다.a-a/rgb(255,0,0)→a-b/rgb(0,0,255)를 부모가 확인했습니다. Cold build는 blue이고 red가 없습니다. 이전 transform의 미사용 atom이 dev sheet에 남는 것은 기존 TSX dev 편집과 같은 유지 동작이며 다른 module이 사용할 수 있으므로 9c에서 삭제하지 않습니다.MDX 선택과 확실한 사용 가드
플러그인
mdxExtensions의 기본값은['.mdx']이며.md와.mdown같은 literal 확장자는 opt-in입니다. 실제 compiler가 처리하는 같은 목록을 transform/filter/graph/resolver/numbering에 전달합니다. Vite/Webpack/Rsbuild는 프로젝트 compiler 이후의 JavaScript/JSX를 실제 파일명으로 추출하고, Bun은 프로젝트의@mdx-js/mdx로 직접 컴파일합니다. Bun의 선택된 MDX는 내용이 평범해도 compiler가 없으면 위치 지정 오류입니다.Vite 반환 목록은 main
devup-ui, 기존devup-ui:restore-forwarded-css, 그리고 독립적인 세 companion인devup-ui:mdx,devup-ui:aggregate-css-guard,devup-ui:compiled-source-guard입니다. main pre와 #747 네 영역을 유지하고 MDX는 post/transform-only입니다. 별도 컴파일 가드와 aggregate CSS 검사 책임을 합치지 않습니다.ids=[]로만 관찰되면 opaque 허용Runtime entry의
setTheme/getTheme/initTheme/useTheme/ThemeScript등은 가드 대상이 아닙니다. 이름·정적 member·destructuring으로 확실히 사용한 compile-time export만 오류로 판정하고, 일반 JS/TS의include제외와 의도된extractCss:falsepublishing 범위는 넓히지 않습니다. Runtime alias를 원하면 해당 compatibilityimportAliases[package]=false를 사용합니다. RspackfinishModules에서는 provided exports를 조회하지 않습니다.가드 감사의 실행 subexpression·literal-computed destructuring·require origin 누락은 실제 final-code RED→GREEN 회귀로 수정했습니다. 부모 root 6696/0, 132개 소스 각각 함수·라인100%, 실제 Rsbuild/Bun checkpoint, root build/native/lint 및 보호 영역 비교를 통과했습니다. Rspack의 실제
cjs full require/cjs require는 member/bound/destructuring에서 export IDs를 제공하지 않음을 별도 실빌드로 확인했으며 이 경우를 opaque 한계로 기록합니다. 이후 false alias·raw request evidence·jsxDEV 및 최종 head 검증은 아직 진행 중입니다.새로 생기는 오류
{path,code}:importer:1:1: module resolver cannot use ... at build time: cause(callback 계약에 span 없음)(in compiled MDX)표시@mdx-js/mdx설치 안내import.meta.glob또는 별도 precompiled CSS 사용build.cssCodeSplit:false대안mdxExtensionspattern/nonliteral 값: 확장자 option 위치와 literal leading-dot 대안mdxExtensions·compiler 대안. Alias disabling 대안은 실제 active compatibility alias에만 제시남는 한계 및 후속 작업
cssCodeSplit:false구성입니다. 다른 버전의 public seam이 완전한 ModuleInfo를 주지 않으면 조용히 부분 CSS를 내지 않고 오류를 냅니다.cssCodeSplit:false는 실빌드로 검증했습니다. 일반 split application 및 dev는 기존 동작을 유지합니다.import.meta.glob으로 바꿔야 하고 늦은 plugin input은 첫 generated CSS load 이전에 노출해야 합니다.libs/cssnaming을 변경하지 않습니다.Cannot run on the runtime을 낼 수 있습니다. 확장자를mdxExtensions에 넣고 별도 MDX plugin 대신 Devup이 project compiler로 컴파일하게 해야 합니다. 무해한 프로그램까지 보수적으로 거부하거나 새로운 alias adapter 계약을 추가하지 않습니다.ids=[]destructuring과 공개 export data로 추적 불가능한 renamed forwarding도 허용합니다. 숨겨진 compile-time export가 실행되면 runtime placeholder 오류가 남을 수 있으므로 Devup이 해당 확장자를 컴파일하게 해야 합니다. 같은 source라도 Webpack의 dependencies가 export IDs를 제공하면 오류입니다.moduleParsed/buildEnd가 완성한 forwarding graph를 사용하므로 build/build-watch 전용입니다. Serve에는 같은 완료 graph가 없으며 지원 밖 확장자는 개발 render 시 placeholder 오류를 낼 수 있습니다. Dev와 build 모두 compiler와mdxExtensions를 구성해야 합니다. Webpack/Rspack compilation 가드는 dev/watch에서도 같은 final dependencies를 사용합니다.onEnd/deferfinalization이 없으므로 전체 build ownership 보장을 주장하지 않습니다. Build onEnd 오류는 output write 이후에도 발생하고throw:false에서도 reject하므로 성공한 build 결과만 publish해야 합니다. Ownership 위치는 실제 importer:1:1 fallback이며 structured CSS 위치는 virtual stylesheet일 수 있습니다.server.watch.ignored및 기본 node_modules 제외를 우회하지 않으며 CSS는 해당 importing JS가 bundler 정책상 refresh될 때 갱신됩니다. 무시된 installed-package manifest 변경은 dev 재시작 또는 bundler의 자체 watch 설정으로 처리해야 합니다. Linked workspace는 symlink 설정에 맞는 실제 file identity를 등록합니다. Shared resolver의 packaged tsconfig lookup은require.resolve.paths()의 공개 검색 경로와 Devup의 실제 검사/읽기를 기록하지만 Node의 package 내부 비공개 probe는 관찰할 수 없습니다. Installed tsconfig package의 그런 내부 lookup이 달라지는 편집 후에는 dev를 재시작합니다.Bun.build에는 이 feature가 등록할 bundler watch API/continuous watch mode가 없습니다. 기존Bun.plugin및 CLI--watch의 imported code 변경 회귀 33개는 유지되며 그 증거를 없애거나 새 manifest-only watch 지원으로 확대하지 않습니다.검증
bun test: 6585 pass / 0 fail, Bun 내부 구현·등록 wrapper와 Vite helper를 포함해 120개 파일 각각 함수·라인 100%, Bun 측정 제외 없음realpathSync.native()사용cargo test --workspace, fmt, Rust1.99 clippy 통과. CI37197131055및37206093044publish에서 Rust wide-format 전 파일 100% 검증_jsx및jsx:true, Emotion alias, source map 생략, resolver getter/proxy/잘못된 반환 검증 통과<Box color="red"/>→ native<div className="a"/>,.a{color:red}; 정적width=4*2→.a{width:32px}; resolver fault는 이전 sheet를 바꾸지 않음apps/viteJS/CSS/HTML filename·SHA256가 수정 전과 동일.css.tsconstants, dynamic/virtual/post-injected edge, unreachable 제외, CSS imports/URL 및 custom hash names. unsafe split asset 4개 fail-closed 회귀 및 실제 30초 순환 오류도 검증37338236710의 Linux wide-format Rust fail-under100과 Bun100 게이트가 모두 통과하여 실제 gap이 아님을 확인했습니다. Native100%라고 주장하지 않습니다.CI 상태
최초
37197131055의 세 실패와37206093044의 불필요한 MDX numbering을 수정했습니다. 공유 API·alias arrays의 수정된 head03d8e845에서 CI37244998963은 publish·benchmark·landing-next-e2e·vinext-rsc-css-e2e 모두 SUCCESS입니다.Scanner head
e8abf152의 CI37262976654는 Codecov 외부 장애로 FAILURE입니다. Benchmark·Next E2E·vinext RSC 작업은 모두 SUCCESS이며 publish의 build·package entry/tarball 검증·lint·Rust100 threshold/Bun tests·preload 회귀·landing 양 CSS mode build/E2E까지 모두 통과했습니다. 유일한 실패는Upload to codecov.io에서 CLI 다운로드의curl (35) SSL handshake failure와 누락된 GPG signature입니다. 이후 housekeeping/changepack 단계는 실패 때문에 skip되어 실행했다고 주장하지 않습니다. 외부 장애 규칙에 따라 workflow 변경이나 반복 rerun을 하지 않으며 복구 후 코디네이터가 실패 작업을 다시 실행합니다.Source-type core head
179fa6d3의 CI37338236710은 네 작업 모두 SUCCESS이며 Codecov upload·clean publish checkout·changepack 단계까지 통과했습니다. 외부 서비스 복구 후 새 head의 정상 CI가 검증된 것이며 outage를 workflow 변경이나 검증 생략으로 우회하지 않았습니다. 플러그인 연결과 문서/Patch의 최종 head CI는 완료 후 별도 확인합니다.a6a094dd**를 29개 source/test whole-file exact-tree 절차로 push했습니다. 실제 hook과 부모 rerun은 **6696/0, 132개 파일 각각 함수·라인100%**이며 실제 Bun.plugin custom MDX render는<div class="a"></div>와.a{background:red}입니다. CI **37370860168**의 publish 111967335703은 SUCCESS이며 build/package entry/tarball·lint·Linux Rust 100%(9902/9902)/Bun 6696/0·각 소스100%·preload 8/0·landing 양 mode build/E2E·Codecov·cleancheckout·changepack까지 통과했습니다. Benchmark 111967335385, vinext RSC 111967335646, Next 111967335735는 hosted runner 미배정으로 0steps CANCELLED이며 세 작업 모두 annotationThe job was not acquired by Runner of type hosted even after multiple attempts를 확인했으므로 전체 green을 주장하지 않습니다. 외부 장애 규칙에 따라 workflow 변경이나 반복 rerun 없이 기록하고 코디네이터가 복구 후 해당 작업을 rerun합니다.28dc9a11**를 19개 whole source/test exact-tree 절차로 push했습니다. 실제 hook과 부모 rerun은 6721/0, 132개 소스 각각 함수·라인100%, 실제 ignored 양 API·기존 boundary·sourceType52 검증 통과입니다. Oracle가 지적한 inherited named export·lexical undefined shadow·실제 CJS prototype 세 사례를 부모가 양 API에서 RED로 재현하고, typed IgnoredObject·scope-independent void0·real Record 동작 보존으로 GREEN을 확인했습니다. 같은 Oracle의 outcome 재검토는 원래 세 blocker 해제를 APPROVE했습니다. LSP 미설치/daemon timeout은 native build/1.99 clippy/workspace tests로 검증했으며 LSP-clean이라고 주장하지 않습니다. CI **37393489474**의 Next·RSC·benchmark는 SUCCESS이고 publish는 실제 Rust coverage **99.97%(9951/9954)**로 실패했습니다.imported_constants.rs의 wide-format 83/1240/1516 세 줄(ignored literal serialization/spread/AST object)을 매핑했으며 native 회귀 보강을 진행합니다. 외부 장애나 phantom으로 처리하지 않고, coverage 제외/threshold 완화 없이 새 커밋으로 수정합니다.93846b90**를 별도 whole-file 테스트 커밋으로 push했습니다. Native 12개 focused test와 실제 hook의 extractor 1453, Bun 6721/0을 통과했으며 새 Linux coverage 결과는 별도 확인합니다. Descriptor checkpoint **fce47fe9**도 12개 paired source/test exact-tree·실제 hook **6748/0·소스별100%**로 push했습니다.76a59181**로 수정하고, 여섯 README의 완료된 alias/guard 계약을 **c4e8c2e9**로 갱신했습니다. CI **37407778231**은 네 작업 모두 SUCCESS이며 Linux Rust 100%(9954/9954), Bun 6766/0을 검증했습니다. 이 증거는 해당 committed head에 한정합니다.c07d6c49**는 일곱 whole-file exact-tree·실제 hook **6797/0·133개 소스 각각 함수/라인100%**로 push했습니다. 부모 fresh root 및 local Next16.3.6 webpack benchmark·package/WASM build·native types·Vite 네 보호 영역 검증을 통과했습니다. 최초 hook의 새 테스트 formatting 실패는 formatting만 수정한 새 commit attempt에서 통과했고 검증을 생략하지 않았습니다. 새 head CI **37449541555**는 네 작업 모두 SUCCESS, Linux Rust 100%(9954/9954), Bun 6797/0, preload 8/0이며 Codecov·clean publish checkout·changepack 단계까지 통과했습니다. 이 증거는 raw9b committed head에 한정합니다.23463285**는 29개 whole source/test exact-tree·실제 hook **6817/0·137개 소스 각각 함수/라인100%**로 push했습니다. 부모 fresh root·필수 local Next webpack benchmark·실제 Chromium computed style·Vite 보호 영역·모든 owned server/process 종료를 검증했습니다. Native 네 package 및 built public declaration consumer·전체 build·lint는 로그로 검증했고 기존 경고 2개만 유지했습니다. 새 head CI **37469092929**는 네 작업 모두 SUCCESS, Linux Rust 100%(9954/9954), Bun 6817/0, preload 8/0, Codecov·clean publish checkout·changepack까지 통과했습니다. 9b/9c는 새 build error를 만들지 않고 기존 IO/config 오류를 유지합니다.