Skip to content

refactor(web): remove unused input component variants - #10223

Closed
juliusmarminge wants to merge 1 commit into
cleanup-web/overlay-componentsfrom
cleanup-web/input-components
Closed

refactor(web): remove unused input component variants#10223
juliusmarminge wants to merge 1 commit into
cleanup-web/overlay-componentsfrom
cleanup-web/input-components

Conversation

@juliusmarminge

@juliusmarminge juliusmarminge commented Sep 5, 2026

Copy link
Copy Markdown
Member

The input modules carry variants with no callers. Remove unused combobox chips, autocomplete wrappers, select helpers, number-field scrubbing, and other unused input variants.

Remove the NumberField context with its only consumer while preserving root IDs and props. Keep the Combobox chips-ref context and popup anchor behavior; only its unread multiple field is removed.

Layer 2 of 7 in the web runtime-export cleanup stack. Based on #10222.

Verification at the integrated stack tip: vp run --filter @t3tools/web test passes all 4,052 tests across 333 files. Web typecheck and changed-file lint/format pass. The stack passes vp run knip:check, including repository file/dependency checks and runtime-export checks for web and all seven internal packages.

Model: gpt-6 astra. Harness: Codex in T3 Code.

Note

Remove unused input component variants from autocomplete, combobox, and other UI modules

  • Strips unused wrapper components and their named exports across seven UI modules, with the largest changes in combobox.tsx and autocomplete.tsx
  • In combobox.tsx, drops the multiple field from ComboboxContext and memoizes the provider value with an empty dependency list
  • In number-field.tsx, removes NumberFieldContext, NumberFieldScrubArea, and CursorGrowIcon; the field ID is still passed directly to the primitive root
  • Removes SelectButton and SelectSeparator from select.tsx, InputGroupText and InputGroupTextarea from input-group.tsx, Radio/RadioGroupItem from radio-group.tsx, and ToggleGroupSeparator from toggle-group.tsx
  • Risk: any in-tree or external consumer importing the removed named exports (e.g. ComboboxChips, SelectButton, AutocompleteRow, NumberFieldScrubArea, InputGroupTextarea, Radio) will fail to compile

Macroscope summarized 9d12bd7.

@github-actions github-actions Bot added vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. size:L 100-499 changed lines (additions + deletions). labels Sep 5, 2026
@github-actions

github-actions Bot commented Sep 5, 2026

Copy link
Copy Markdown
Contributor

Thread transfer impact

✅ Thread transfer remains within every enforced ceiling.

ℹ️ No successful main baseline artifact is available yet. This run establishes the initial measurement.

Provider Metric Main baseline This PR Impact PR ceiling
Codex Total thread wire 13.5 KiB 15.1 KiB
Codex Thread snapshot wire 7.0 KiB 7.3 KiB
Codex Live turn WebSocket wire 6.5 KiB 7.8 KiB
Codex Live turn WebSocket decoded 57.0 KiB 66.4 KiB
Codex Live turn messages 8 21
Claude Total thread wire 13.6 KiB 15.1 KiB
Claude Thread snapshot wire 7.0 KiB 7.3 KiB
Claude Live turn WebSocket wire 6.5 KiB 7.8 KiB
Claude Live turn WebSocket decoded 57.8 KiB 66.4 KiB
Claude Live turn messages 9 21

Baseline: unavailable · PR result: 9d12bd7 · Source CI: success

Scenario and decoded snapshot size

10 historical turns, 5 command tools per turn, 878.9 KiB retained MCP result per historical turn, and a 1.05 MiB retained result in the measured turn.

  • Codex decoded thread snapshot: 113.8 KiB
  • Claude decoded thread snapshot: 114.5 KiB

Updated in place by a trusted workflow. PR artifacts are strictly validated and never executed.

@juliusmarminge
juliusmarminge marked this pull request as ready for review September 5, 2026 23:25
@macroscopeapp

macroscopeapp Bot commented Sep 5, 2026

Copy link
Copy Markdown
Contributor

Approvability

Verdict: Approved at 9d12bd7

Macroscope's review found this PR approvable — This is a deletion-only cleanup of unused internal UI wrappers and exports across seven web component files. Existing in-repository callers and retained component behavior are unchanged, with no product-default, deployment, security, billing, or static-analysis implications identified.

You can add or adjust custom eligibility rules. Learn more.

@juliusmarminge

Copy link
Copy Markdown
Member Author

Closing this layer after maintainer review. Core UI component modules are kept as complete pasted component sets, so this partial subcomponent cleanup is intentionally dropped. #10228 now records the matching Knip export exception while retaining whole-file detection.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:L 100-499 changed lines (additions + deletions). vouch:trusted PR author is trusted by repo permissions or the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant