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>
Refs #690 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
… and conditional styles Refs #690 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
…h Emotion Refs #690 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #690 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
…ed parameters Refs #690 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #690 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
…ead through namespaces Refs #695 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
…akes from the visitor Refs #695 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
…eclared after their use Refs #695, #686 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #695 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #695 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
…nding Refs #695 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #695 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #695 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #695 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #695 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #685, #694 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #685, #694 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #685, #694 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #685, #694 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #685, #694 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #685, #694 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #685, #694 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #685, #694 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
…graphs Refs #685, #694 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #685, #694 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #685, #694 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #685, #694 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #685, #694 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #690 Refs #693 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #690, #693 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #690, #693 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
… suffixes Refs #690, #693 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #690, #693 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #690, #693 Draft checkpoint: inherited enumerable properties behind object-literal __proto__ can still be silently omitted by demand projection. The next increment must fix this before PR readiness. Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #690, #693 Project literal prototypes and computed own keys exactly, forward narrowed aliases, and ignore receiver reads inside omitted methods. Regressions prevent the silent inherited-property drop disclosed by the preceding draft checkpoint. Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
…nance Refs #690, #693 Union native and Devup consumer demands before one selected execution, preserving producer variables, D1 atoms, selector identity, live bindings, runtime edges and original source locations without initializer replay. The original const name='style' namespace fixture now compiles exactly because the key is statically proven, as authorized by the coordinator. Separate genuinely unknown keys retain located cause and fix diagnostics, and unproved API/data mutation and runtime escapes remain errors. Preserve selected CommonJS data/callable closures, runtime-only Box inputs and JavaScript statement boundaries during native API normalization. Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #690, #693 Reject self-cyclic token contracts with a bounded original-site diagnostic while preserving path-sensitive shared DAGs. Return quoted local font families, reject authored fontFamily descriptors, and keep global font behavior unchanged. Share lazy native for-in enumeration between contracts and both styleVariants forms, preserving inherited keys, hidden shadows, and getter or mapper mutations in exact selected initializers. The original test_font_faces expectation and eight extractor snapshots change only local family quotation to match upstream semantics; fixture inputs, identifier schedules, font-face property maps, selectors and unrelated declarations stay unchanged. Four new raw-value expectations were corrected to the quoted representation while retaining their complete rule-map oracles. 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 #690 (D: vanilla-extract 테마 및 모듈 값), #693 (K: DOC-09). 이 PR은 #757 위에 쌓인 변경이며, #757 및 그 기반 PR #750이 먼저 병합되어야 합니다. 병합 대상은
main이며 자동 병합하지 않습니다.요약
현재 네 번째 검증 단계입니다. stylesheet와 static styling-data 일반 모듈의 테마/변수 검증, imported base D1, selector identity, default/aliased/forwarded exports,
theme.cssgraph 및 consumer 타입을 수정했습니다. 혼합 application/runtime 모듈의 targeted exact-slice 평가는 다음 수정 대상입니다.동작
fallbackVar의 마지막 값을 제외한 인자는 CSS 변수 참조여야 하며, 오른쪽부터 중첩 fallback을 구성합니다.createGlobalThemeContract는 직접 지정하거나 mapper가 반환하는 이름을 문자열 그대로 검증합니다. null/숫자/object의 문자열 변환으로 잘못된 이름을 생성하지 않습니다.@layerobject-rest 동작을 보존합니다..css.ts/.css.js의 imported base는 실제 producer가 출력한 typed atom metadata로 합성합니다. 뒤의 값이 동일 property/selector/breakpoint/layer의 앞선 값을 제거하며, 외부 class와 selector anchor는 유지합니다. 객체/base가 교차하거나 반복되는 순서도 보존합니다../theme.css및 TS path alias가 가리키는.css.ts/.css.js를 module evaluator와 source graph가 같은 resolver로 찾습니다. graph의 source 범위와 기존 raw CSS/extension 조건은 유지합니다.assignVars, variants callback, vars style rule, debug IDs/property declaration의 타입을 실제 API에 맞춥니다.새로 생기는 오류
모든 오류는 원본
file:line:col, 원인 및 수정 방법을 표시합니다.Tokens don't match contract: 누락/추가된 키, leaf/object 또는 빈 중첩 object 구조 불일치. 전체 계약과 일치하는 값을 제공하거나 일치하는 하위 계약을 전달합니다.Invalid variable name:fallbackVar의 마지막 fallback 이전 인자가var(--name)참조가 아닙니다.Invalid variable name for "nested.path": 전역 계약의 직접 이름 또는 mapper 반환값이 CSS 식별자 escaping으로 바뀌지 않는 유효한 문자열 이름이 아닙니다.TypeError: Theme tokens must be an object: null/undefined/string/number/boolean을 테마 token object 대신 전달했습니다. token object 또는 계약과 일치하는 token object를 전달합니다. upstream의@layer in tokens오류 의미를 유지하면서 원인/수정 방법을 표시합니다.남는 한계
static styling-data 일반 모듈은 지원하지만, JSX/host/runtime 코드가 섞인 application 모듈과 ordinary dependency의 unrelated runtime exports는 아직 targeted slice가 필요합니다. 해당 경로는 새 full evaluation을 선택하지 않으며 완료로 주장하지 않습니다. recipes/sprinkles(#718), StyleX(#758), 문서 페이지(W23)는 범위 밖입니다.
검증
6d0c9c837598a08103051f51effda5ea65ffb2fc에서 case-058/059를.ts,.tsx,.js,.jsx,.mjs,.css.ts,.css.js각각 real WASM probe로 재현했습니다. imported fixture는--modules와 실제theme.css.ts/tokens.ts를 사용합니다.assignVars의 CSS 선언이 유지되는 것을 확인했습니다.9b36c0d9fcb8ca9370632007cf57c9f97ebe91e2는 전체 파일을 stage한 exact-tree로 실제 pre-commit hooks를 통과했습니다: fmt/clippy/ESLint(기존 경고 2개), Rust tests 3,180 passed/0 failed, Bun tests 5,504 passed/0 failed.--fail-under 100결과를 기준으로 후속 테스트를 보완합니다. Bun aggregate는 100%지만 Vite plugin의 개별 line coverage는 99.63%(303행)였으므로 이것도 최종 CI 결과와 구분합니다.37307304947은 Rust 99.99%에서 parentsplit_layer의 한 줄만 미실행이라 실패했습니다. 나머지 landing-next-e2e/benchmark/vinext-rsc-css-e2e는 성공했습니다. 해당 경로는 단순 coverage padding 대신 실제 non-object token 오류로 수정하고 10개 negative regressions를 추가했습니다.6fb817185bab67fdf3fcc23d539454915b4a9c38: foreground Rust1.99 clippy, extractor2,517unit+4integration, root/WASM build 및 실제probe 성공 후 exact-tree hooks 통과(Rust3,240/Bun5,511,0fail). selector identity는 declaration-free marker로 유지하며 atomic property를 다시 붙이지 않습니다. 원본 export/local mapping을 읽고 initializer를 재실행하지 않습니다.37365809758의 모든4jobs는 runner미할당/zero steps로 cancelled였습니다. coordinator가 GitHub-hosted runner incident를 확인했으므로 workflow변경/반복rerun 없이 기록합니다. 복구 후 coordinator가 재시도합니다.추가 Imported 값 Probe 수정
실제 Probe: Stylesheet 두 종류
동일 fixture를
.css.ts및.css.js로 각각 fresh process에서 실행했습니다. imported case는 실제theme.css.ts/tokens.ts와--modules를 사용했습니다.일반
.ts/.tsx/.js/.jsx/.mjs의 수정 전에는 case-058의vars.colors.bg(6:20), case-059의vars.space(7:23)가 모두 같은 located 오류였습니다. 네 번째 commit099830a71b382bb114ced10aec0a7e9c9a8446f5의 real WASM probe에서는 모든7종류가 동일하게 아래 결과를 출력했습니다(--modules사용):Namespace all16 API fixture 및 assignVars 일반-module fixture도 실제 WASM에서 오류 없이 컴파일했습니다. Foreground14focused/2,531unit+4integration/clippy/rootbuild와 exact-tree hooks(Rust3,254/Bun5,511,0fail)를 확인했습니다. 혼합 application 모듈 slice는 아직 완료가 아닙니다.
W35d Demand View 체크포인트
아래 상태는 위의 과거 진행 기록보다 우선합니다. PR은 draft이며 아직 완료 또는 병합 준비 상태가 아닙니다.
tokens={__proto__:{space:'8px'},browser:window.document}의 상속된 enumerabletokens.space를 demand view에서 읽으면 아직box=''및 빈 CSS로 조용히 누락됩니다. 실제W35d-demand-supplemental.log로 확인했습니다. 이 체크포인트는 그 오류를 포함하며, 다음 별도 커밋에서 regression-first로 수정합니다. 원본 위치의 원인/수정 방법이 있는 build error 또는 정확한 값만 허용하며 조용한 누락은 최종 동작으로 허용하지 않습니다.W35d 상속 속성 후속 수정 완료
위 체크포인트에 공개한 상속 속성의 조용한 누락은 별도 커밋
f3fe8c87bf5d9417afd04711743599ca2de766e9에서 수정했습니다. PR은 여전히 draft이며 decision9/10 및 Linux 100% coverage의 완료를 주장하지 않습니다.__proto__setter와 computed own['__proto__']를 구분하고, own shadowing/중첩 prototype/local·imported alias의 필요한 member path만 정확히 선택합니다.this.browser때문에 unrelated browser field를 실행하던 오류도 regression-first로 수정했습니다. 20개 prototype 회귀는 수정 전 3 pass/17 fail, omitted-method 회귀는 0 pass/1 fail이었고, 수정 후 ordinary 234개 모두 통과했습니다.export const box=""/빈 CSS였던 inherited space는 이제export const box="f0_0 a",.a{margin:8px}를 출력합니다. 호출되는 receiver helper와 미호출 method 모두 margin:8px를 보존하며 native callable SCC는 color:blue/padding:1px를 보존합니다.window.document이면 원본 producer의W35d-demand-prototype-unknown.ts:2:23에서 필요한 exact/static input과 CSS variable 수정 방법이 있는 build error입니다. 성공한 빈 box로 감추지 않습니다.