teqo/scripts
Francisco Solla c90f70aab4 ops(OPS76): tracker de Issues migra do Forgejo para o GitHub — GitHub como host único
Decisão (2026-08-21): o GitHub passa a ser a fonte única — main, branches,
PRs, CI via Actions E tracker de Issues. O Forgejo deixa de ser canal ativo
(git.e issue tracker congelados pós-convergência).

Data: 17 issues migradas do Forgejo para o GitHub (frontmatter id/depends/
serializes/priority/model preservados, labels mapeados, comment de origem
em cada uma; tabela Forgejo→GitHub registrada).

Tooling: github-api.mjs estendido com a camada de issues/labels/comments/
close/workflow-dispatch/contents (mesmo shape normalizado do forgejo-api);
18 scripts trocam o transporte forgejo-api → github-api; forgejo-api.mjs e
seu teste (961 linhas) removidos; teste githubApi.unit.spec.ts novo (7 casos);
issue-transition-on-merge.mjs renomeado e reapontado.

Flips pós-merge: issue-done e plan-issue-ready agora usam o GITHUB_TOKEN com
issues:write no repo (sem FORGEJO_API_TOKEN) e fecham/flipam Issues no GitHub.

Docs: AGENTS.md, AGENT-OPS.md e skills do fluxo vivo (work-issue, plan-issue,
project-status, capture-review-debts, worktree-next-issue, agent-work-issue)
apontam o tracker para github.com/fsolla/teqo/issues.

Gates: tsc/lint/format/knip/cycles/unit 2416 verdes.
2026-08-21 08:19:06 -03:00
..
consent-texts Restore full roadmap detail and align project documentation. 2026-07-19 16:19:36 -03:00
lib ops(OPS76): tracker de Issues migra do Forgejo para o GitHub — GitHub como host único 2026-08-21 08:19:06 -03:00
agent-claim.mjs ops(OPS76): tracker de Issues migra do Forgejo para o GitHub — GitHub como host único 2026-08-21 08:19:06 -03:00
agent-file-miss.mjs ops(OPS76): tracker de Issues migra do Forgejo para o GitHub — GitHub como host único 2026-08-21 08:19:06 -03:00
agent-pool.mjs ops(OPS76): tracker de Issues migra do Forgejo para o GitHub — GitHub como host único 2026-08-21 08:19:06 -03:00
agent-prioritize.mjs ops(OPS76): tracker de Issues migra do Forgejo para o GitHub — GitHub como host único 2026-08-21 08:19:06 -03:00
agent-promote-related-on-merge.mjs ops(OPS76): tracker de Issues migra do Forgejo para o GitHub — GitHub como host único 2026-08-21 08:19:06 -03:00
agent-ready.mjs ops(OPS76): tracker de Issues migra do Forgejo para o GitHub — GitHub como host único 2026-08-21 08:19:06 -03:00
agent-register.mjs ops(OPS76): tracker de Issues migra do Forgejo para o GitHub — GitHub como host único 2026-08-21 08:19:06 -03:00
agent-status.mjs ops(OPS76): tracker de Issues migra do Forgejo para o GitHub — GitHub como host único 2026-08-21 08:19:06 -03:00
assert-local-database.mjs Engineering Pass 3: consolidate patterns and lock them with guards. 2026-07-29 06:11:29 -03:00
build-bahia-demographics.mjs Engineering Pass 3: consolidate patterns and lock them with guards. 2026-07-29 06:11:29 -03:00
build-bahia-geometries.mjs Engineering Pass 3: consolidate patterns and lock them with guards. 2026-07-29 06:11:29 -03:00
build-bahia-tse-city-codes.mjs Engineering Pass 3: consolidate patterns and lock them with guards. 2026-07-29 06:11:29 -03:00
build-changelog.mjs OPS44: changelog por entrega + guards de docs + merge por rebase 2026-08-13 17:55:22 +00:00
build-election-aggregates.mjs B13+: concordância LQ, readout de escopo no mapa e DRY do build de agregados. 2026-07-29 16:26:43 -03:00
build-municipality-zone-geometries.mjs Engineering Pass 3: consolidate patterns and lock them with guards. 2026-07-29 06:11:29 -03:00
check-changelog-append-only.mjs OPS44: changelog por entrega + guards de docs + merge por rebase 2026-08-13 17:55:22 +00:00
check-docs-conflict-markers.mjs OPS44: changelog por entrega + guards de docs + merge por rebase 2026-08-13 17:55:22 +00:00
check-plans-only-pr-closes.mjs OPS12 — CI bloqueia Closes/Fixes em PR só docs/plans 2026-08-01 11:26:19 +00:00
check-push-chain.mjs ops(OPS51): migra o banco de produção do Neon para o Postgres do homeserver (teqo_1313) 2026-08-17 22:41:18 +00:00
check-test-locations.mjs chore: migrate .cursor/ references to .agents/ folder 2026-08-05 00:09:09 -03:00
ci-scope.mjs chore(OPS62): CI fail-fast estrutural — job único checks sequencial (X1) 2026-08-18 23:26:13 +00:00
configure-branch-protection.mjs feat(OPS71): CI/PR/deploy no GitHub Actions — tracker de Issues permanece no Forgejo (Closes #97) 2026-08-19 19:17:19 -03:00
db-doctor.mjs feat(worktree): ambientes isolados por worktree — porta própria, bancos próprios, migrations no provision 2026-08-08 11:33:07 -03:00
db-pull.mjs ops(OPS51): migra o banco de produção do Neon para o Postgres do homeserver (teqo_1313) 2026-08-17 22:41:18 +00:00
db-start.mjs fix(OPS37): db:start idempotente — não recria o container Postgres compartilhado (no-op quando saudável; --force-recreate explícito) 2026-08-10 20:40:36 -03:00
deploy-homeserver.sh merge(OPS75): convergência Forgejo→GitHub — GitHub como fonte única 2026-08-21 01:41:18 -03:00
dev.mjs fix(OPS40): pnpm dev honra o PORT do .env.local — next dev -p via scripts/dev.mjs (Closes #682) 2026-08-11 20:04:07 -03:00
e2e-affected.mjs ci(pr): cascade phase1→phase2 with blast-radius skips 2026-07-31 20:57:18 -03:00
ensure-repo-deps.mjs feat(ops): auto-promote stage→main e merge em stage sem exigir head (#68) 2026-07-30 21:12:52 -03:00
fill-image.mjs feat(site): publica home da campanha Jorge Solla 1313 2026-08-16 00:49:24 -03:00
gate-ci.mjs style(OPS72): alinha continuação do comentário do gate-ci.mjs (prettier) 2026-08-20 02:12:39 +00:00
git-push.mjs feat(ops): auto-promote stage→main e merge em stage sem exigir head (#68) 2026-07-30 21:12:52 -03:00
github-pr-automerge.mjs fix(OPS71-FLIP): flip pós-merge silencioso no GitHub — PAT no arm do auto-merge, dispatch de recuperação, close da Issue, retry 410 2026-08-19 22:45:29 -03:00
github-pr.mjs fix(OPS71): parse de --body-file no github-pr.mjs 2026-08-19 19:17:19 -03:00
guard-dev-db.mjs Engineering Pass 3: consolidate patterns and lock them with guards. 2026-07-29 06:11:29 -03:00
import-projecao.mjs fix(campanha): preserve StateDeputy migration identity 2026-08-06 18:38:47 -03:00
issue-transition-on-merge.mjs ops(OPS76): tracker de Issues migra do Forgejo para o GitHub — GitHub como host único 2026-08-21 08:19:06 -03:00
issue.mjs ops(OPS76): tracker de Issues migra do Forgejo para o GitHub — GitHub como host único 2026-08-21 08:19:06 -03:00
recover-media.mjs ops(OPS52-media-guard): reconcile do media:recover exige MEDIA_RECOVER_CONFIRM=1 (guard de intenção explícita) 2026-08-18 12:45:32 -03:00
regenerate-municipality-catalog-snapshot.mjs Engineering Pass 3: consolidate patterns and lock them with guards. 2026-07-29 06:11:29 -03:00
render-ui-draft.mjs chore(plan-issue): rascunho UI/UX do gate vira HTML+Tailwind commitado no repo (ad-hoc) 2026-08-11 19:14:21 -03:00
resize-images.mjs feat(site): publica home da campanha Jorge Solla 1313 2026-08-16 00:49:24 -03:00
run-e2e-affected.mjs fix(S6-FOLLOWUP): test:e2e:affected rodava a suíte completa — --no-deps desliga o closure de deps dos projects em runs filtrados 2026-08-18 19:09:12 -03:00
seed-consent.mjs Engineering Pass 3: consolidate patterns and lock them with guards. 2026-07-29 06:11:29 -03:00
seed-loader.mjs Add TSE 2022 election results model and local seed import. 2026-07-18 18:25:19 -03:00
seed-minimal.mjs feat(C112): múltiplos telefones por pessoa — Contact.phones array (ordem = prioridade) 2026-08-11 10:47:02 -03:00
seed-posts.mjs chore(OPS60): guard SEED_MEDIA_CONFIRM para escrita no bucket via db:seed:posts 2026-08-18 20:11:54 +00:00
seed-tse-results.mjs Engineering Pass 3: consolidate patterns and lock them with guards. 2026-07-29 06:11:29 -03:00
test-affected.mjs ci(pr): cascade phase1→phase2 with blast-radius skips 2026-07-31 20:57:18 -03:00
worktree.mjs ops(OPS76): tracker de Issues migra do Forgejo para o GitHub — GitHub como host único 2026-08-21 08:19:06 -03:00