Skip to content

cleanup(dead-exports): remove 797 linhas de código morto em mockData + useColorSystem (F1-1.x Onda E)#120

Merged
adm01-debug merged 1 commit into
mainfrom
cleanup/dead-exports-mock
May 9, 2026
Merged

cleanup(dead-exports): remove 797 linhas de código morto em mockData + useColorSystem (F1-1.x Onda E)#120
adm01-debug merged 1 commit into
mainfrom
cleanup/dead-exports-mock

Conversation

@adm01-debug
Copy link
Copy Markdown
Owner

@adm01-debug adm01-debug commented May 9, 2026

Onda E do plano F1 — primeira leva de código morto

Audito identificou 1.013 exports órfãos. Esta PR ataca os 2 arquivos de maior densidade.

📊 Resultado

Arquivo Antes Depois Redução
src/data/mockData.ts 812 94 -718L (-88%)
src/hooks/useColorSystem.ts 252 173 -79L (-31%)
Total 1064 267 -797L

🔍 Auditoria detalhada

mockData.ts: 20 exports → apenas 6 usados

Validei via grep em src/, tests/, e2e/. Removi 14 exports com zero callers:

  • 7 interfaces órfãs (Product, ProductVariation, ProductColor, KitItem, Client, PurchaseHistory, PurchaseItem) — duplicavam tipos de @/types/product-catalog
  • 7 constantes órfãs (COLORS, NICHOS, FAIXAS_PRECO, MATERIAIS, PRODUCTS, CLIENTS) — mock data sem uso real

useColorSystem.ts: 3 hooks órfãos

  • useColorGroups, useColorNuances, useColorVariations — zero callers no app inteiro
  • Mantidos: useColorSystem (12 callers), helpers e types ainda em uso

✅ Validação

  • 3 imports de @/data/mockData ainda funcionais
  • 12 usos de useColorSystem ainda funcionais
  • Type ColorNuance preservado (importado por ColorGroupFilter.tsx)
  • Function fetchExternalColors (interna) preservada

⚠️ Risk

🟢 Baixo. Apenas remoções comprovadamente órfãs.

📋 Test plan

  • grep callers = válido
  • -797L líquidas
  • CI verde
  • CodeRabbit OK

Summary by CodeRabbit

  • Refatoração
    • Limpeza e otimização do código removendo componentes e interfaces internas não utilizados.
    • Simplificação da API de hooks para melhor manutenibilidade e redução de complexidade.

Review Change Stack

## Onda E do plano de auditoria F1

Auditoria identificou 1.013 exports órfãos. Esta primeira leva ataca os
2 arquivos com maior densidade de código não usado.

## Mudanças

### `src/data/mockData.ts` (812 → 94 linhas, -88%)

Auditei todos os 20 exports. Apenas 6 são realmente importados pelo app:
- `Category` (interface) ← `ProductCategoryBadges.tsx`
- `Supplier` (interface) ← `useSearch.ts`
- `CATEGORIES, SUPPLIERS` ← `useSearch.ts`
- `PUBLICO_ALVO, DATAS_COMEMORATIVAS, ENDOMARKETING` ← `ProductMarketingSection.tsx`

**Removidos** (zero callers):
- Interfaces órfãs: `Product`, `ProductVariation`, `ProductColor`,
  `KitItem`, `Client`, `PurchaseHistory`, `PurchaseItem` —
  duplicavam tipos de `@/types/product-catalog`
- Mock data órfão: `COLORS`, `NICHOS`, `FAIXAS_PRECO`, `MATERIAIS`,
  `PRODUCTS` (412 linhas de produtos fake), `CLIENTS` (174 linhas
  de clientes fake)

### `src/hooks/useColorSystem.ts` (252 → 173 linhas, -31%)

3 hooks órfãos removidos (validados por grep — zero callers):
- `useColorGroups` (12 linhas)
- `useColorNuances` (22 linhas)
- `useColorVariations` (35 linhas)

Mantidos: `useColorSystem` (12 callers), `formatColorName` (8),
`findVariationBySlug` (4), `findGroupBySlug` (4), `isLightColor`,
e os types `ColorGroup`, `ColorVariation`, `ColorNuance`,
`ColorFilters` (todos importados pelo `ColorGroupFilter`).

## Validação de equivalência

- ✅ Todos os imports de `@/data/mockData` ainda funcionais (3 callers)
- ✅ Todos os usos de `useColorSystem` ainda funcionais (12 callers)
- ✅ `fetchExternalColors` interna preservada (usada por `useColorSystem`)
- ✅ `ColorNuance` type preservado (usado em `ColorGroupFilter.tsx`)

## Risk

🟢 **Baixo**. Apenas remoção de exports comprovadamente órfãos via grep
em src/, tests/ e e2e/. Nenhum import/uso real foi tocado.

## Test plan

- [x] grep imports de @/data/mockData = só os 3 callers válidos
- [x] grep usos dos 3 hooks removidos = zero
- [x] Tipos ColorNuance/ColorGroup/etc preservados (usados externamente)
- [x] -797 linhas líquidas
- [ ] CI verde (typecheck + tests + smoke)
- [ ] CodeRabbit OK
Copilot AI review requested due to automatic review settings May 9, 2026 20:44
@vercel
Copy link
Copy Markdown

vercel Bot commented May 9, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
promo-gifts Ready Ready Preview, Comment May 9, 2026 8:45pm

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented May 9, 2026

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: b6d26ce5-4568-4c59-88b2-7466ed6d0d15

📥 Commits

Reviewing files that changed from the base of the PR and between bf305b7 and aecd538.

📒 Files selected for processing (2)
  • src/data/mockData.ts
  • src/hooks/useColorSystem.ts
💤 Files with no reviewable changes (1)
  • src/hooks/useColorSystem.ts

Walkthrough

PR remove tipos obsoletos e constantes de mock não utilizados do mockData, reducindo a superfície de exportação para apenas PUBLICO_ALVO e ENDOMARKETING. Remove também hooks segregados de cores, mantendo apenas useColorSystem para acesso consolidado.

Changes

Limpeza de Exports Não Utilizados

Layer / File(s) Resumo
Documentação e Header
src/data/mockData.ts
Header atualizado refletindo redução drástica de exports (736 linhas removidas), com lista explícita do que permanece.
Remoção de Tipos de Produto e Cliente
src/data/mockData.ts
Interfaces Product, ProductVariation, ProductColor, KitItem, Client, PurchaseHistory e PurchaseItem removidas do módulo.
Remoção de Constantes de Mock
src/data/mockData.ts
Constantes COLORS, NICHOS, FAIXAS_PRECO, MATERIAIS, PRODUCTS e CLIENTS removidas; dependiam dos tipos eliminados.
Ajustes de Formatação
src/data/mockData.ts
PUBLICO_ALVO e ENDOMARKETING recebem comentários de seção de marketing e compactação de layout, valores preservados.
Simplificação da API de Cores
src/hooks/useColorSystem.ts
Hooks useColorGroups, useColorNuances e useColorVariations removidos; useColorSystem permanece como ponto único de entrada consolidado.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~12 minutes

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Title check ✅ Passed O título é específico e claro: descreve a remoção de código morto (dead-exports) em dois arquivos e quantifica a redução (-797 linhas). Alinha perfeitamente com as mudanças.
Description check ✅ Passed A descrição é completa e bem estruturada: contexto do problema, resultado quantificado, auditoria detalhada dos itens removidos, validação de zero callers e plano de testes. Cobre os pontos críticos.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch cleanup/dead-exports-mock

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Remove código morto identificado por auditoria, reduzindo superfície de manutenção e tamanho de módulos utilitários usados no app (mock constants e sistema de cores).

Changes:

  • Remove exports órfãos (interfaces e constantes de mock) de src/data/mockData.ts, mantendo apenas os símbolos efetivamente usados.
  • Remove hooks individuais sem callers (useColorGroups, useColorNuances, useColorVariations) de src/hooks/useColorSystem.ts, preservando useColorSystem e utilitários.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.

File Description
src/data/mockData.ts Enxuga o módulo para manter apenas constantes/tipos consumidos pelo app.
src/hooks/useColorSystem.ts Remove exports de hooks sem uso, mantendo o hook principal e helpers.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread src/data/mockData.ts
Comment on lines +4 to +10
* Reduzido de 812 → ~110 linhas em 09/05/2026 (Faxina F1 Onda E):
* - Removidos: Product, ProductVariation, ProductColor, KitItem, Client,
* PurchaseHistory, PurchaseItem (interfaces nunca importadas daqui — duplicavam
* tipos de @/types/product-catalog).
* - Removidos: COLORS, NICHOS, FAIXAS_PRECO, MATERIAIS, PRODUCTS, CLIENTS
* (mock data órfão, sem callers).
*
@adm01-debug adm01-debug merged commit a994321 into main May 9, 2026
18 of 19 checks passed
@adm01-debug adm01-debug deleted the cleanup/dead-exports-mock branch May 9, 2026 20:51
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