Pular para o conteúdo
Transparência

Changelog

Histórico de mudanças públicas do Skin Trackers. Features, fixes, updates editoriais + compliance. Cada entrada referencia o commit ou doc mais detalhado se aplicável.

Maio 2026

  1. Feature·

    Sistema de charts unificado — paleta, tooltips, axis e formatters compartilhados

    Refactor de 6 componentes de chart (IndexLandingHero, IndexDetailChart, SkinDetailChart, MarketOverview, AllocationDonut, SpendingTimeline) pra single source of truth. Antes: hex values (#20252F, #14171D, #6b7280, #F5C518) repetidos inline em cada chart, tooltip styles duplicados, tickFormatters ad-hoc. Depois: lib/chart-colors.ts canonical (CHART_COLORS + CHART_TOOLTIP_PROPS + CHART_GRID_PROPS + CHART_AXIS_PROPS), lib/chart-fmt.ts com fmtAxisCompact/Currency/Date/Pct, primitivo <ChartEmpty> com role=status. Brand token tweak agora propaga pra família inteira em uma edição.

Abril 2026

  1. Feature·

    Screener polish wave — URL state, CSV export, USD/BRL toggle, 9 melhorias

    9 fases de polish em /screener (a rota com 75% de concentração de visitantes). R6: filtros agora sincronizam com querystring (link compartilhável tipo /screener?sti=sti-100&mindd=20&liq=1, distribuição via Reddit/Twitter/ChatGPT escala). R1: linha 'Showing: 1y · all · sorted by biggest drops first' atualiza live. R4+R11: helper text nos inputs numéricos + Reset filters CTA. F1: Download CSV das rows visíveis com filename auto-rotulado. F4: toggle USD/BRL com locale-aware default e localStorage persist. R2/R3: KPIs consistentes (filtered avg + ratio X/Y). R5: badge ATH em drawdown positivo. R7/R8: tooltips em Bid/Ask + Hist. R9: sparkline tooltip 'start → end (Δ%)'. R10: search clear button. R12: STI label normalizado pra 'Tudo'.

  2. Feature·

    EN coverage completa — 11 rotas mirror em inglês

    /en/* agora cobre toda a superfície PT: /en/analise (hub redirect) + /en/analise/{top-skins, cheap-vs-ath, best-knives, most-expensive-skins} (4 aggregators com FAQPage schema EN), /en/inventario, /en/watchlist, /en/settings (auth-gated mirrors), /en/comece-aqui (onboarding 3-níveis), /en/changelog, /en/privacidade (LGPD + DPO em EN), /en/termos, /en/indices/[id]/basket (full sortable basket), /en/skin/[id] (skin detail completa). Todas com hreflang alternates (pt-BR/en-US/x-default) + en-US locale formatting. Sitemap registra todas (incluindo per-skin /en/skin/<slug>). TabNav PT_TO_EN_SLUG completo.

  3. Fix·

    PostHog SDK ausente do bundle de produção — env var build cache

    Diagnóstico: bundle de prod tinha 0 referências a PostHog (0 chunks com 'posthog'/'phc_'/'capture_pageview'), apesar de NEXT_PUBLIC_POSTHOG_KEY estar setado no Railway. Root cause: deploy anterior foi feito antes da var ser adicionada, e empty-commit não força rebuild Nixpacks (cache by file hash). Fix: commit 8ae730f com mudança real em PostHogProvider.tsx forçou rebuild fresco. Bundle agora tem chunk 9da6db1e (186KB) com SDK completo. Capture endpoint validado via 4 test events ingeridos no projeto. Diagnostic console.log temporário até primeiro evento orgânico ser confirmado.

  4. Fix·

    PT description leak em /en/indices/[id]

    Rota /en/indices/[id] renderizava descrição em PT direto do CANONICAL_COPY ('Top 30 por market cap entre skins com histórico'). Fix: IndexDefinition.description_en field populado pra todos 7 índices (sti-30/100/500/1000/cases/stickers/agents); /en/indices/[id] prefere description_en com fallback pra description.

  5. Feature·

    STI Cases uncap — todas as cases que cumprem methodology

    Cap de STI Cases elevado de 30 pra 200 (effectively uncapped) pra incluir TODAS as cases que passam filtros (price min, liquidity min, history min). Cesta cresceu de 30 → 40 cases (10 novas: eSports 2013, Huntsman, Vanguard, Chroma, Shadow, Falchion + outras). Retorno cumulativo passa de +763.9% → +779.3% desde 03/2021. Decisão: STI Cases não deve mirror STI 30 cap — universo de containers é finito e o produto deve refletir todas elegíveis.

  6. Feature·

    Steam scrape Railway-immune — daily scrape via GH Actions runner direto

    Daily Steam Market scrape (~31k items, 2.5h) migrado de Railway spawn detached (que sofria SIGTERM kills durante deploys) pra GH Actions runner direto. Validação produção: 25k items inserted em 2h15m, 735ms endpoint latency. Pattern aplicado também a price_history granular (top 500 skins, ~17k pontos por skin). Daily freshness garantida.

  7. Feature·

    Coverage gap fix — skins table populada (529 → 24.476)

    import-prices endpoint agora upserta skins junto com market_prices em transação atômica. Resultado: 96% das skins do market_prices que eram orphans (não apareciam em /skin/[id]) agora têm row em skins table. Includes JOIN com catalog_items pra metadata weapon/wear/image_url.

  8. Feature·

    Cross-source validation automática — DMarket weekly

    Workflow scrape-cross-source-weekly.yml (GH Actions runner direto) faz scrape DMarket de 297/298 skins do universo STI, gera report cross-source delta com flagging >25%/>50%, auto-commita MD datado em docs/audits/cross-source-delta-YYYY-MM-DD.md. Delta médio 13,8% (saudável, dentro de banda fee differencial).

  9. Docs·

    Rigor estatístico — confidence intervals nos retornos STI

    Nova seção /metodologia#rigor-estatistico publica CI 95% (SE-based + bootstrap não-paramétrico) pros retornos STI 30/100/500/Cases. Achado quantitativo mais forte: STI Cases é a única série com CI 95% inteiramente positivo (+7% a +99%/ano), evidência defensável de alpha real. Outras séries cruzam zero — declarado honestamente.

  10. Feature·

    R2 archival externo + Cloudflare backups

    Backups SQLite agora também sobem mensalmente pra Cloudflare R2 (free tier 10GB) além do GitHub Releases. Workflow backup-r2-archival.yml dia 1 do mês 06:00 UTC. Defesa contra cenário improvável de GitHub conta deletada / repo apagado.

  11. Docs·

    Correlação reportada em 3 dimensões — finding de audit aplicado

    Correlation sensitivity audit identificou que r=0,77 publicado era levels correlation. /metodologia#correlacao agora publica r=0,82 levels + r=0,26 returns + r≈0 rolling 12m, com interpretação estatística de cada. Consistente com literatura acadêmica (Frontiers AI Nov/2025). Zero impacto em backtest — é mudança de framing, não de fórmula.

  12. Fix·

    Skin detail page — banner 'fora do universo' pra skins não-rastreadas

    Páginas /skin/[id] de skins catalogadas mas fora do universo STI (sem price_history) antes renderizavam template com dashes vazios. Banner aside role=note explica explicitamente que skin está fora do tracking ativo + links úteis pra explorar universo coberto.

  13. Feature·

    Universe export completo — STI 30/100/500 + Cases + 56 containers

    Docs/universe/ com listas exportáveis: STI 30 (30 constituents), STI 100 (100), STI 500 (260 — cap teórico 500 não atingido documentado), STI Cases (30 — cap atingido 2026-04-23, posteriormente raised pra 200/uncapped em 2026-04-25), 56 containers no catalog. Scripts scrape-csfloat-universe.ts + scrape-pricempire-universe.ts prontos pra user rodar cross-source.

  14. Feature·

    Launch readiness plan executado — Silver → Gold 60 dias

    Plano formal de 10 gaps pra virar o produto de Silver (auto-avaliado) pra Gold (com validação externa). 8 gaps internos fechados, 2 aguardam review externo (lawyer LGPD + quant methodology). Target launch: 24/06/2026.

  15. Feature·

    RUM (Real User Monitoring) ativado

    Web Vitals (LCP, CLS, INP, FCP, TTFB) passam a ser coletados via web-vitals lib em 100% dos users, reportando pra Sentry + Plausible. Substitui dependência exclusiva de Lighthouse CI sintético.

  16. Security·

    Pre-commit hook detecta auth comentado em rotas críticas

    Husky hook agora bloqueia commits com código de autenticação comentado em /api/admin/**, lib/auth-*, lib/session. Lição do tabletop IR exercise simulando P1 data breach.

  17. Compliance·

    Steam® + CS2® disclaimer de trademark no footer

    Disclaimer explícito de não-afiliação com Valve Corporation + atribuição de Steam Community Market como fonte de dados. Compliance com práticas de good-faith scraping.

  18. Fix·

    Mobile: drawer não gera scroll horizontal + sticky header universal

    3 bugs descobertos em audit responsive real-viewport: (1) MobileNav drawer com translate-x-full contribuía 315px a body.scrollWidth, (2) newsletter form overflow em tablet grid 3-col, (3) .nav-root { position: relative } em globals.css override silencioso de Tailwind .sticky. Header nunca foi sticky em nenhum device — corrigido.

  19. Feature·

    Table of Contents em /metodologia

    Doc de 22k chars passou a ter navegação: sidebar sticky em desktop, horizontal scroll em mobile. 22 anchors cobrindo 11 seções principais. Anchor navigation com scroll-margin-top 96px pra não esconder atrás do header.

  20. Docs·

    Nova seção /metodologia#replicabilidade

    4 camadas que explicam por que o produto é difícil de replicar mesmo com metodologia aberta: (1) 6 anos de histórico, (2) calibração empírica das fórmulas, (3) correlação r=0.77 com confiança de dados tratados, (4) disclosures públicas como moat de credibilidade.

  21. Compliance·

    LGPD — data map + privacy rights process + DPO designação

    Inventário formal de dados coletados (art. 37), processo operacional para atender direitos em 15 dias úteis (art. 18-19), declaração de Encarregado (art. 41), templates de resposta A/B/C/D, inventário de 8 third-party processors.

  22. Security·

    Weekly health check workflow + nightly security probe

    Automação de drift detection: domingo 06h UTC probe de 11 rotas core + HTML structure + SEO markers. Complementar ao nightly security-post-deploy-probe (03h UTC). Ambos abrem issue automática em fail.

  23. Fix·

    STI 30 periodicity bug corrigido

    Volatilidade annualization usava √365 sempre. Séries monthly tinham vol inflada 5.5×. Fix: detectPeriodicity calcula fator correto via gap mediano (daily=365, weekly=52, monthly=12) + filtro de cadência mista dropa transições heterogêneas antes do stdev.

  24. Feature·

    STI Cases v1 publicado

    Índice separado de contêineres (30 cases por market cap). Universo disjunto do STI de skins. Retorno reported: +763.9% em 6 anos, +52.8% CAGR.

  25. Docs·

    Metodologia audit Lane 1 + Lane 2 completas

    3 blockers corrigidos: fee breakdown invertido (5% Steam + 10% publisher), STI 30 rebalance trimestral (tabela por tier), factsheets com fee disclosure fineprint.

Esta página é mantida manualmente e reflete mudanças significativas públicas.

Voltar ao Mercado

Changelog — Skin Trackers