Conversation
…omponents Record ImportNamespaceSpecifier bindings and handle JSXMemberExpression references (e.g. `<Styled.Section>`) so the analyzer follows namespace imports to resolve the underlying builtin HTML elements. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Replace the N × git-cat-file + fs.writeFileSync loop in materializeGitTreeSnapshot with a single `git archive | tar` pipe. On a 4 140-file repository this reduces diff snapshot time from ~2 min to ~2 s by eliminating thousands of process spawns and disk round-trips. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Review Summary by QodoSupport namespace-imported styled-components and optimize git snapshot performance
WalkthroughsDescription• Resolve builtin elements from namespace-imported styled-components - Record ImportNamespaceSpecifier bindings for namespace imports - Handle JSXMemberExpression references (e.g. <Styled.Section>) - Follow namespace imports to resolve underlying HTML elements • Replace per-file git operations with streaming git archive - Eliminate thousands of process spawns and disk round-trips - Reduce diff snapshot time from ~2 min to ~6 s on large repositories Diagramflowchart LR
A["Namespace Import<br/>Styled.*"] -->|Record ImportNamespaceSpecifier| B["Bindings Storage"]
B -->|Resolve JSXMemberExpression| C["Member Reference<br/>e.g. Styled.Section"]
C -->|Follow namespace import| D["Source File Analysis"]
D -->|Resolve exported symbol| E["Builtin Element<br/>e.g. section"]
F["Git Tree Snapshot"] -->|Replace per-file<br/>cat-file| G["Streaming git archive<br/>pipe to tar"]
G -->|Extract to temp dir| H["Materialized Snapshot"]
File Changes1. e2e/react.test.ts
|
Code Review by Qodo
1.
|
Adopt dev's git archive + CoW clone implementation over our spawnSync variant — both solved the same per-file cat-file bottleneck, dev's version adds CoW snapshot optimization on top. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## dev #110 +/- ##
==========================================
+ Coverage 65.97% 66.13% +0.15%
==========================================
Files 39 39
Lines 2613 2640 +27
Branches 862 873 +11
==========================================
+ Hits 1724 1746 +22
+ Misses 526 525 -1
- Partials 363 369 +6 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
## [1.2.0-dev.1](v1.1.1-dev.1...v1.2.0-dev.1) (2026-03-28) ### Features * **react:** add usage diff and benchmark coverage ([#107](#107)) ([4ae9e65](4ae9e65)) ### Bug Fixes * **react:** resolve builtin elements from namespace-imported styled-components ([#110](#110)) ([2a76067](2a76067)) ### Performance * **react:** optimize git tree materialization for diff ([#109](#109)) ([b38bf71](b38bf71))
|
🎉 This PR is included in version 1.2.0-dev.1 🎉 The release is available on: Your semantic-release bot 📦🚀 |
Summary
ImportNamespaceSpecifierbindings and handleJSXMemberExpressionreferences (e.g.<Styled.Section>) so the analyzer follows namespace imports to resolve the underlying builtin HTML elements from styled-component factory calls in external files.git cat-file+fs.writeFileSyncloop inmaterializeGitTreeSnapshotwith a singlegit archive | tarstreaming pipe, reducing diff snapshot time from ~2 min to ~6 s on a 4,140-file repository.Related Issue
Closes #108
Validation
pnpm run checkcodex/issue-<number>-<slug>devNotes
git archive | tarapproach uses shell positional parameters ($0,$1,$2) to avoid injection risks while enabling streaming without memory buffering.