teqo-backup/scripts/lib
Francisco Solla dabc00f46c ops(OPS52): migra a media de produção do Vercel Blob para o Garage S3
- payload.config.ts: vercelBlobStorage -> s3Storage (@payloadcms/storage-s3)
  com endpoint Garage (forcePathStyle, region garage); bucket privado — o
  staticHandler do plugin streama os objetos em /api/media/file/<filename>,
  mantendo o contrato de URL relativa das 40 rows pré-existentes
- src/utilities/mediaStorage.ts: resolveS3StorageEnv fail-closed (S3_* parcial
  -> throw no boot com a lista exata; nenhuma -> storage local dev/test)
- seed-posts: remove pre-delete do @vercel/blob (S3 sobrescreve nativamente)
- worktree-env.mjs: s3EnvCopiedLines all-or-nothing (unit-testada)
- envs S3_BUCKET/S3_ENDPOINT/S3_REGION/S3_ACCESS_KEY_ID/S3_SECRET_ACCESS_KEY
  no .env.example/.env.test; cloud-setup.sh sem o sed morto do blob
- deps: -storage-vercel-blob -@vercel/blob +storage-s3; importMap regenerado
- docs: impl plan (revisão A->B: Garage v2 sem acesso anônimo na API S3),
  AGENTS.md, changelog 2026-08-18-ops52
2026-08-17 22:36:34 -03:00
..
agent-forgejo.mjs OPS50: port CI e scripts de agentes do GitHub para o Forgejo 2026-08-16 23:32:20 -03:00
agent-plan-lifecycle.mjs OPS50: port CI e scripts de agentes do GitHub para o Forgejo 2026-08-16 23:32:20 -03:00
agent-pool-cursor.mjs feat(agent-pool): orquestrador de pool de workers Cursor Cloud (fases A–D) (#65) 2026-07-30 20:08:34 -03:00
agent-pool-eligibility.mjs OPS50: port CI e scripts de agentes do GitHub para o Forgejo 2026-08-16 23:32:20 -03:00
agent-pool-forgejo.mjs OPS50: port CI e scripts de agentes do GitHub para o Forgejo 2026-08-16 23:32:20 -03:00
agent-pool-models.mjs fix(agent-pool): stop exporting unused POOL_DEFAULT_MODEL_SLUG 2026-08-01 06:58:33 +00:00
agent-pool-prompt.mjs OPS44: changelog por entrega + guards de docs + merge por rebase 2026-08-13 17:55:22 +00:00
agent-pool-state.mjs OPS50: port CI e scripts de agentes do GitHub para o Forgejo 2026-08-16 23:32:20 -03:00
changelog.mjs OPS44: changelog por entrega + guards de docs + merge por rebase 2026-08-13 17:55:22 +00:00
cli.mjs fix(ci OPS50): guards de banco aceitam o gateway da bridge do runner (RFC1918) — postgres do services: fica no IP do gateway, não em localhost 2026-08-17 03:46:16 -03:00
conflictMarkers.mjs OPS44: changelog por entrega + guards de docs + merge por rebase 2026-08-13 17:55:22 +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
e2e-affected-manifest.mjs test(C139): suite e2e campaignContacts e remapeamento do manifest 2026-08-13 15:16:34 -03:00
forgejo-api.mjs OPS50: port CI e scripts de agentes do GitHub para o Forgejo 2026-08-16 23:32:20 -03:00
imageFill.mjs feat(site): publica home da campanha Jorge Solla 1313 2026-08-16 00:49:24 -03:00
imageResize.mjs feat(site): publica home da campanha Jorge Solla 1313 2026-08-16 00:49:24 -03:00
plansOnlyClosesGuard.mjs OPS12 — CI bloqueia Closes/Fixes em PR só docs/plans 2026-08-01 11:26:19 +00:00
seed-minimal-manifest.mjs chore: drop unused exports flagged by knip 2026-07-30 05:24:52 -03:00
test-affected-core.mjs fix(gate): seleção e2e contendo apenas o spec setup vira none (setup é dev-only; OPS39) 2026-08-11 15:47:12 -03:00
topology.mjs B8+: escala das malhas em unidades reais, contrato do map key e degradacao 2026-07-27 01:59:36 -03:00
worktree-env.mjs ops(OPS52): migra a media de produção do Vercel Blob para o Garage S3 2026-08-17 22:36:34 -03:00
worktree.mjs OPS33: worktree next claima deterministicamente a Issue (--issue N, reopen) e launch com /work-issue --issue N 2026-08-10 19:46:54 -03:00