teqo-backup/.gitignore
Francisco Solla cb61cf1152 feat(C211): Central de Conteúdos interna — envio em lote, link, catalogação e publicação
Envio em lote (1 request raw-body por arquivo, fan-out ≤2, até 50 arquivos) e
adicionar por link (Instagram/YouTube; extração só pela Graph API da conta
própria, senão peça-link) em /campanha/comunicacao/conteudos. Cada peça tem
estado próprio (Processando/Pronto/Falhou + Reprocessar), transcrição/texto e
catalogação automática revisável; publicar/despublicar preserva arquivo, slug
e publishedAt.

- collections contentPiece + contentMedia (upload privado no S3) e migration
  20260923_032714_add_content_piece (slug único gerado no 1º publish,
  sourceUrl única, searchText com índice trigram)
- pipeline reusa C199 (job after() + reaper + retry condicional, transcrição
  DeepInfra, ffmpeg/chunk), o classificador de facetas do acervo e o
  institutionCatalog; curatedFields impede o job de sobrescrever curadoria
- gate único canReadCommunicationCatalog (advisor/leader negados); delete
  só pelo admin; sem Consent novo
- UI portada do design aprovado (lista desktop + cards mobile, diálogo de
  lote com progresso por arquivo, diálogo de link, ficha editável, kill
  switch); nav/chrome/column-picker/manifest atualizados
- instagramFeed expõe mediaUrl; revalidateTag ganha wrapper seguro fora de
  request (fixtures/scripts)
- testes: 2 unit specs, 1 int spec (16 casos) e 7 e2e na vertical
- follow-up de engenharia: #1267 (docs/plans/escala-dry-pos-c211.md)

Closes #1254
2026-09-23 02:25:15 -03:00

153 lines
3.9 KiB
Text
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.
# dependencies
/node_modules
/.pnp
.pnp.js
.yarn/install-state.gz
/.pnpm-store
/.idea/*
!/.idea/runConfigurations
# testing
/coverage
/playwright-report/
/test-results/
/.playwright-cli/
/.playwright-mcp/
# Aider (local agent history + tag cache)
.aider*
# next.js
/.next/
/.next-e2e/
/.next-e2e-check/
/out/
# Payload importMap (OPS99: build artifact, not committed)
/src/app/(payload)/admin/importMap.js
# OPS99: removed guard script (importMap now generated at build time)
/scripts/check-importmap-s3.mjs
# production
/build
# misc
.DS_Store
*.pem
# debug
npm-debug.log*
yarn-debug.log*
yarn-error.log*
# local env files
.env*.local
# vercel
.vercel
# typescript
*.tsbuildinfo
next-env.d.ts
.env
/media
/reelMedia
/recordingMedia
/contentMedia
# TSE open-data zip cache (pnpm db:seed:tse)
/data/tse/
# Research source deposits (paywalled books/papers obtained legally) — keep only README/NOTES
/docs/research/sources/**
!/docs/research/sources/**/
!/docs/research/sources/README.md
!/docs/research/sources/**/NOTES.md
# IBGE geometry download cache (pnpm build:geometries)
/data/geometries/
# IBGE demographics download cache (pnpm build:demographics)
/data/demographics/
# AI fill masters (pnpm images:fill — regenerable drafts, never commit)
/data/ai-fill/
# Câmara pilot media/JSON cache (pnpm camara:pilot — VOD MP4 + report, never commit)
/data/camara/
# Solla × Ceuci report HTML cache (scripts/build-solla-ceuci-salvador-report.mjs)
/data/solla-ceuci-salvador/
# C163 — city pre-trip report: snapshot/research/HTML cache + internal PDF/MD.
# The repo is public; the report carries campaign-internal data and is never committed.
/data/relatorios-cidade/
/docs/research/relatorios-cidade/
# C186 — dossiê Solla por cidade + boletim modelo: same rule (internal, dated,
# carry campaign-internal data). Only the skill/scripts/changelog are committed.
/data/dossie-solla-cidade/
/docs/research/dossie-solla-cidade/
# C187 — dossiê Solla por instituição + boletim modelo: same rule (C186).
/data/dossie-solla-instituicao/
/docs/research/dossie-solla-instituicao/
# C190 — dossiê Solla por tema/área + boletim modelo: same rule (C186).
/data/dossie-solla-tema/
/docs/research/dossie-solla-tema/
# C191 — Instagram data charts: raw input + chart-spec intermediates + final
# PNG/SVG carry campaign-internal data; the public repo never commits them.
/data/graficos-instagram/
/docs/research/graficos-instagram/
# C196 — reels tutoriais: o shot list é versionado (scripts/reels/shot-lists);
# o pacote (reel.mp4/capa.png/narracao.srt/roteiro.md/metadata.json) e os
# intermediários são regeneráveis.
/data/reels/
# C197 — venv do provider TTS (edge-tts) do rascunho de narração: local da
# workstation, nunca versionado (o deploy npm não o toca).
/scripts/reels/.venv/
# C208 — artes da Rádio Jorge Solla 1313 (zeno.fm): o que é versionado mora em
# public/campaign-kit/radio/; aqui ficam só rascunhos/previews locais.
/data/radio-artes/
# Local-only sensitive material (agents may read; never commit content)
/private/**
!/private/README.md
# Former tracked sensitive locations — never re-add
/docs/general-coordinator-interview/
/docs/sheets/
/output/
# Audio / media field captures
*.m4a
*.mp3
*.webm
# S21 — the int/e2e jingle fixture (~5 KB, sine tone): the only audio the repo
# commits; every real jingle lives in the media collection.
!tests/fixtures/*.mp3
# opencode secrets (Penpot MCP token, etc.)
.opencode/secrets/
# Design review screenshots (regenerable via Playwright, never commit)
/*.png
# Proprietary design font files kept only in the local workspace
/public/arial-mt/
# S15 — MediaPipe wasm runtime, copied from node_modules at dev/build time
/public/cards/mediapipe/
/data/encode/
/data/poster-candidates/
# Changelog aggregate is a regenerable artifact (OPS85) — entries live in docs/changelog/
/docs/CHANGELOG-AGENTS.md
/data/tse-2022/