Skip to content

fix(pack): inherit source map options for inline CSS injectors - #3457

Merged
fireairforce merged 1 commit into
nextfrom
zoomdong/fix-inline-css-minify-no-sourcemap
Nov 12, 2026
Merged

fireairforce merged 1 commit into
nextfrom
zoomdong/fix-inline-css-minify-no-sourcemap

Conversation

@fireairforce

@fireairforce fireairforce commented Nov 12, 2026 •

Copy link
Copy Markdown
Member

Fix missing minified library output when inline CSS is enabled and source maps are disabled. Generated CSS injectors now inherit the module context's source map options.

Adds a native regression test and ecosystem coverage.

Validation: library tests, Father tests with the local fix, formatting, and Clippy passed.

@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Nov 12, 2026 •

Copy link
Copy Markdown
Codex Review Summary: ✅ Completed

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-11-12T03:12:58.855854Z a31420c PR opened
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@github-actions

Copy link
Copy Markdown

📊 Performance Benchmark Report (with-antd)

Utoopack Performance Report

Report ID: utoopack_performance_report_20261112_031916
Generated: 2026-11-12 03:19:16
Trace File: trace_antd.json (0.3GB, 0.88M spans)
Test Project: examples/with-antd


Executive Summary

Metric Value Assessment
Total Wall Time 6,321.7 ms Baseline
Total Thread Work (de-duped) 19,595.4 ms Non-overlapping busy time
Effective Parallelism 3.1x thread_work / wall_time
Working Threads 10 Threads with actual spans
Thread Utilization 31.0% ⚠️ Suboptimal
Total Spans 879,559 All B/E + X events
Meaningful Spans (>= 10us) 214,205 (24.4% of total)
Tracing Noise (< 10us) 665,354 (75.6% of total)

Build Phase Timeline

Shows when each build phase is active and how much CPU it consumes.
Self-Time is the time spent exclusively in that phase (excluding children).

Phase Spans Inclusive (ms) Self-Time (ms) Wall Range (ms)
Resolve 44,751 6,144.3 1,626.8 3,168.5
Parse 8,162 1,362.1 1,024.8 5,489.2
Analyze 138,516 41,814.2 8,241.9 5,417.3
Chunk 5,445 5,003.2 773.6 2,112.1
Codegen 14,132 2,117.0 1,383.3 2,110.4
Emit 30 31.1 15.6 6.1
Other 3,169 10,370.6 4,870.1 6,321.7

Workload Distribution by Diagnostic Tier

Category Spans Inclusive (ms) % Work Self-Time (ms) % Self
P0: Scheduling & Resolution 184,539 50,940.1 260.0% 10,384.2 53.0%
P1: I/O & Heavy Tasks 2,780 103.1 0.5% 87.6 0.4%
P2: Architecture (Locks/Memory) 0 0.0 0.0% 0.0 0.0%
P3: Asset Pipeline 25,577 8,432.4 43.0% 3,131.8 16.0%
P4: Bridge/Interop 0 0.0 0.0% 0.0 0.0%
Other 1,309 7,366.9 37.6% 4,332.4 22.1%

Top 20 Tasks by Self-Time

Self-time is the exclusive duration: time spent in the task itself, not in sub-tasks.
This is the most accurate indicator of where CPU cycles are actually spent.

Self (ms) Inclusive (ms) Count Avg Self (us) P95 Self (ms) Max Self (ms) % Work Task Name Top Caller
5,006.6 27,789.4 105,550 47.4 0.1 17.8 25.5% module module (65%)
2,832.9 3,227.6 19 149101.3 344.9 505.7 14.5% save snapshot persist (5%)
1,959.0 2,057.4 2,242 873.8 2.6 204.4 10.0% analyze ecmascript module module (77%)
1,247.1 11,926.5 30,693 40.6 0.1 5.6 6.4% process module process module (81%)
1,052.8 2,980.4 23,440 44.9 0.1 6.0 5.4% internal resolving internal resolving (74%)
960.5 1,297.7 5,990 160.3 0.6 41.4 4.9% parse ecmascript parse ecmascript (66%)
775.4 846.6 11,959 64.8 0.2 9.1 4.0% precompute code generation generate merged code (55%)
691.7 2,128.0 1,036 667.7 2.1 207.9 3.5% generate merged code chunking (62%)
596.3 4,715.2 4,118 144.8 0.2 40.5 3.0% chunking chunking (26%)
566.3 3,156.2 20,733 27.3 0.0 5.0 2.9% resolving module (56%)
513.2 2,848.1 1,422 360.9 0.2 95.7 2.6% write all entrypoints to disk write all entrypoints to disk (15%)
425.9 425.9 329 1294.5 0.9 273.1 2.2% generate source map code generation (83%)
407.0 407.0 11 37003.2 162.7 224.4 2.1% blocking save snapshot (55%)
374.4 777.9 134 2793.8 6.1 220.1 1.9% emit code emit code (42%)
182.0 844.5 1,844 98.7 0.2 52.1 0.9% code generation code generation (85%)
172.9 282.9 1,256 137.6 0.3 22.5 0.9% compute async chunks compute async chunks (46%)
64.3 64.3 2,170 29.6 0.0 3.1 0.3% read file parse ecmascript (91%)
24.5 155.7 438 55.8 0.1 3.0 0.1% async reference async reference (43%)
15.4 15.4 11 1397.5 4.4 4.7 0.1% write file apply effects (100%)
14.5 14.5 10 1450.5 6.1 8.0 0.1% compute binding usage info write all entrypoints to disk (20%)

Critical Path Analysis

The longest sequential dependency chains that determine wall-clock time.
Focus on reducing the depth of these chains to improve parallelism.

Rank Self-Time (ms) Depth Path
1 730.1 3 persist → save snapshot → blocking
2 430.5 6 chunking → generate merged code → emit code → emit code → emit code → read file
3 329.3 2 save snapshot → blocking
4 323.1 4 chunking → generate merged code → emit code → generate source map
5 204.5 3 process module → process module → analyze ecmascript module

Batching Candidates

High-volume tasks dominated by a single parent. If the parent can batch them,
it drastically reduces scheduler overhead.

Task Name Count Top Caller (Attribution) Avg Self P95 Self Total Self
process module 30,693 process module (81%) 40.6 us 0.07 ms 1,247.1 ms
internal resolving 23,440 internal resolving (74%) 44.9 us 0.09 ms 1,052.8 ms

Duration Distribution

Range Count Percentage
<10us 665,354 75.6%
10us-100us 135,300 15.4%
100us-1ms 67,475 7.7%
1ms-10ms 11,171 1.3%
10ms-100ms 219 0.0%
>100ms 40 0.0%

Action Items

  1. [P0] Focus on tasks with the highest Self-Time — these are where CPU cycles are actually spent.
  2. [P0] Use Batching Candidates to identify callers that should use try_join or reduce #[turbo_tasks::function] granularity.
  3. [P1] Check Build Phase Timeline for phases with disproportionate wall range vs. self-time (= serialization).
  4. [P1] Inspect P95 Self (ms) for heavy monolith tasks. Focus on long-tail outliers, not averages.
  5. [P1] Review Critical Paths — reducing the longest chain depth directly improves wall-clock time.
  6. [P2] If Thread Utilization < 60%, investigate scheduling gaps (lock contention or deep dependency chains).

Report generated by Utoopack Performance Analysis Agent

@fireairforce
fireairforce merged commit a505d98 into next Nov 12, 2026
97 of 124 checks passed
@fireairforce
fireairforce deleted the zoomdong/fix-inline-css-minify-no-sourcemap branch November 12, 2026 03:38
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