Repository navigation
Conversation
…rations css(a, b) composing classes whose styles the build knows, bound to css() in the file or exported by another module, merges their atoms per property, selector, breakpoint and layer, conditions included, instead of joining classes whose winner the stylesheet order picked. vanilla-extract style([...]) passes each composed style as its own argument, keeping a style composed again later. Refs #688 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #688 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #688 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #688 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
…asurable Refs #688 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
…JSX spreads win Refs #688 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
…led order and JSX element className Refs #688 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #689 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
…uate shouldForwardProp at build time Refs #689 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
…ring Refs #689 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #691 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/eslint-plugin@1.0.22 → 1.0.23 - packages/eslint-plugin/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/react@1.0.44 → 1.0.45 - packages/react/package.jsonPatch
@devup-ui/reset-css@1.0.31 → 1.0.32 - packages/reset-css/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.
🚀 New features to boost your workflow:
|
This was referenced Oct 2, 2026
Open
No conflicted files; preserve composition changes and main ESLint checks.
No conflicted files; combine updated parent and PR changes.
No conflicted files; combine updated parent and PR changes.
Conflicted file: libs/extractor/src/lib.rs. Retain both composition helper and regression tests from PR 706 and Tailwind per-class regression tests from main 11790be; take rewritten main Tailwind implementation with Rust 1.99 assertions. bun.lock regenerated by bun install; no snapshots were hand-merged. Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Merge updated parent PR 706 (30247ba), containing main 11790be. Conflicted file: libs/extractor/src/prop_modify_utils.rs. Preserve PR 707's last-written className/style spread semantics and no spread_props parameter with capacity 2, together with main's per-class Tailwind compiler. No snapshots were hand-merged. 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 8, 2026
owjs3901
added a commit
that referenced
this pull request
Oct 8, 2026
Refs #688 #707 #776 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #688 #707 Keep the visitor unchanged at module scope so coverage analysis does not invent an uncovered nested declaration Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #688 #710 #707 Retain inherited captures for withComponent and as in JSX and TypeScript renderers Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #689 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #691 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #691 #695 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #682 #695 #688 #689 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #682 #695 #688 #689 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 #691 (M 세 번째 PR). #711 위에 쌓은 브랜치입니다(#706·#707·#710·#711 병합 후 차이는 마지막 커밋 하나).
문제
ref가 렌더링 대상까지 전달되지 않았습니다.변경
withComponent결과 포함)를forwardRef로 감싸고, ref를 props에 넣어 렌더링 대상에 넘깁니다.import { forwardRef as __devupForwardRef } from "react"를 추가합니다.동작 변화
__devupForwardRef((__devupRefProps, __devupRef) => (component)({ ...__devupRefProps, ref: __devupRef }))형태가 됩니다. 스냅샷 58개가 이 패턴만으로 바뀐 것을 스크립트로 확인했습니다.새로 생기는 오류
검증
cargo clippy -D warnings(Rust 1.99),cargo test1453개 통과.bun test5474개 통과, 커버리지 100%.50-ref.tsx를 probe로 확인했습니다.2026-10-08 main 11790bef를 병합하여 업데이트했습니다. 충돌 없이 갱신된 부모 PR의 변경과 main의 변경을 모두 보존했습니다.
2026-10-15 갱신: 갱신된 #711 497aba0 (main 76b1a15 포함)을 병합했습니다. 충돌 파일 visit.rs, extractor__tests__styled_components_of_any_base.snap, extractor__tests__styled_components_theme_resolves_to_css_variables.snap은 부모의 eager 타깃 바인딩 내부에 forwardRef를 배치하여 정의 시점 1회 평가와 렌더별 캡처·ref 전달을 함께 보존하고 CJS에는 require 바인딩 유지; 두 스냅샷은 재생성 후 any_base의 eager 경계·원래 typed 타깃과 theme의 CSS/필터 불변을 각각 확인 방식으로 해결했으며 부모 PR의 동작을 함께 보존했습니다. 새로 생기는 오류 없음.
2026-10-15 갱신: main 76b1a150을 포함한 갱신된 #711 497aba0f을 병합했습니다. 충돌 파일 없음 (추가 수정: styled_record_evaluation.rs, styled_record_evaluation_depth_tests.rs, styled_record_evaluation_tests.rs, styled_source_tests/mod.rs, forward_ref_captures.rs)은 기존 병합과 eager 타깃·forwardRef·CJS·prop 필터를 그대로 유지하고 새 일반 커밋 5ef8d416에서 캡처별 중첩 IIFE를 이름 추론 없는 (0, initializer) 순차 const의 단일 IIFE로 바꿔 기본 스택에서 수정; 형제 PR의 transient 기능은 섞지 않았으며 TS/CTS 다중 캡처·익명 이름·guard·ref·타깃 단일 평가의 RED/GREEN 회귀와 기본 스택 전체 hook 확인, 새 스냅샷 변화 없음 방식으로 해결했으며 부모 PR의 동작을 함께 보존했습니다. 새로 생기는 오류 없음.
2026-10-16 갱신: 갱신된 부모 #711 de94d66d972bae852e75c7a77f3598deb478a44f을 충돌 없이 자동 병합해 확정 main a6ecc12570338475df40a429c719160e63db86b5을 포함했습니다. 충돌 파일은 없으며 부모의 terminal 진단·Reads/Forward·className·숫자 처리와 이 PR의 forwardRef·eager 타깃 바인딩·이름을 보존하는 bounded capture binder를 모두 유지했습니다. 단일 IIFE 안의 sibling const 및 (0, value) 초기화 방식을 이전의 중첩 바인딩으로 되돌리지 않았고, 로컬·CI·코드·링커 어디에도 스택 확대를 추가하지 않았습니다. 새 스냅샷 생성·수락·수동 병합이나 새 오류·런타임 스타일러는 없습니다.
head 50c98563d5e9082490b1efebf0ebf18ea3f4661a의 두 부모는 5ef8d41 및 de94d66d972bae852e75c7a77f3598deb478a44f이며 깨끗한 트리에서 정상 push했습니다. 자동 병합의 정상 커밋 경로이므로 훅 우회 옵션은 사용하지 않았습니다. 기본 Rust 스택/jobs=2/전체 프로세스 6GiB 한도로 fmt, Rust 1.99 all-target Clippy, 일반 cargo test --workspace 4,110개, 최신 WASM/루트 빌드, bun lint, Bun 5,909개/실패 0개/커버리지 100%를 확인했습니다. 기존 경고 9개를 추가하지 않았으며 LSP는 사용 불가였습니다.
실제 공개 WASM+React/SSR 20개 검증은 부모 합성·attrs·타깃·prop 필터링 11개, object/callback ref×TS/TSX×native/retargeted 타깃의 여덟 가지에서 실제 React forward_ref 브랜드·최종 element의 ref identity·정확한 캡처 횟수, 익명 controller class 이름이 빈 문자열로 남는 한 가지를 포함합니다. SSR은 DOM에 ref를 부착하지 않으므로 callback 호출을 주장하지 않습니다. 아래는 대표 실제 생성 모듈/CSS와 전체 20개 SSR 결과이며 전체 실제 생성 출력도 작업 검증 아티팩트에 보존했습니다. 새 head의 Linux 100% 및 CI는 별도로 확인합니다.
실제 WASM/공개 API 검증 출력:
2026-10-16 CI 확인: head 50c98563d5e9082490b1efebf0ebf18ea3f4661a의 run 38776560990은 모든 job 및 Codecov가 통과했고 현재 head의 검증입니다. publish job 116565613186 실제 로그에서 Linux Rust 100.00% coverage, 13134/13134 lines covered, Bun 5909개/실패 0개/전체 커버리지 100%를 확인했습니다. 확정 main a6ecc12 포함 여부와 실제 merge 상태는 별도 최신 PR audit에서 재확인했습니다.