Moderação do preço colaborativo

As regras que decidem qual observação entra na conta, e o que acontece quando alguém discorda. Estão publicadas porque uma referência de preço que não explica como foi calculada não vale nada — quem consulta precisa poder auditar, e quem contribui precisa saber o que esperar.

O que entra na conta

Uma observação só pesa se:

  • estiver ativa (não removida pelo autor);
  • tiver sido vista há menos de 18 meses. Depois disso ela vale zero, e não "quase zero": um número que sobrevive de migalhas é pior do que admitir que não há dado recente;
  • estiver dentro da cerca de Tukey (1,5 × distância interquartil), a mesma do boxplot. Com menos de 4 observações nada é descartado, porque com três pontos não há distribuição e a cerca jogaria fora justamente o preço certo.

A tela sempre diz quantas ficaram de fora.

Quanto cada uma pesa

Nenhum fator sozinho decide. A conta é multiplicativa:

FatorFaixaPor quê
Tipovendido 1,0 · anunciado 0,6anúncio é opinião do vendedor; venda é acordo entre duas pessoas
Fonte1,0 (QVMC) a 0,5 (outro)do mais verificável ao que ninguém consegue conferir
Idademeia-vida de 90 diasrotação, reprint e hype mexem em semanas
Votos na observação±40%a comunidade corrige, não decide
Reputação do autor±25%histórico é sinal fraco sobre um preço específico
Vendedor0,9 se desconhecidoleiloeiro e loja veem mais mercado

Os tetos de voto e reputação existem por um motivo: sem eles, bastaria juntar gente para inventar o preço de uma carta. Uma observação bem documentada e impopular continua valendo.

O peso da reputação é menor que o do voto de propósito. Quem contribui bem há meses pode errar uma carta, e quem errou antes pode acertar esta. Dar peso demais ao autor transformaria a base num clube — e clube é o que uma referência pública não pode ser.

Duplicatas

Duas regras, uma dura e uma estreita:

  • Mesmo link, mesma variante: recusado pelo banco, por índice único. É literalmente o mesmo anúncio.
  • Mesma fonte, mesmo preço ao centavo, datas a até 3 dias: recusado pela aplicação, com a mensagem explicando.

A segunda regra é estreita de propósito. Carta comum tem preço de tabela, e duas vendas idênticas de verdade existem — alargar isto começaria a descartar dado legítimo numa amostra que já é pequena.

Quem pode o quê

AçãoQuem
Registrar observaçãoqualquer conta
Confirmar ou contestarqualquer conta, menos o autor da observação
Remover uma observaçãosó o autor dela, e com motivo
Suspender contribuições de alguémsó o operador, na mão

Não existe papel de moderador, e isso é uma decisão, não um esquecimento: moderador sem regra publicada é pior que nenhum — ele vira uma pessoa com poder sobre o preço de todo mundo, escolhida por ninguém. Enquanto a regra não estiver decidida, o que a comunidade tem é a contestação, que é pública e reversível.

A trilha

/preco/contestadas mostra tudo que está em disputa e tudo que foi removido, com o motivo. Uma trilha que só mostra o que continua de pé não é trilha: o que interessa auditar é justamente o que saiu da conta.

Remover não apaga. A linha continua no banco com estado = 'removida', quem removeu e por quê. Isso é o que permite responder "por que o preço desta carta mudou em março?" seis meses depois.

Suspender alguém

Último recurso, para quem envenena a base de propósito. Suspender não apaga as observações existentes; o que para é a entrada de novas.

O caminho normal é a tela em /operacao, atrás do mesmo ehDono() de sempre — não é um papel de moderador novo, é o mesmo operador com um botão em vez do psql. Busca por e-mail exato, liga ou desliga preco_suspenso, e lista quem está suspenso agora.

O psql continua documentado como caminho de emergência: a tela depende do app estar de pé, e um app fora do ar é justamente quando dá mais vontade de suspender alguém às pressas.

ssh cartoteca "docker exec -i tracker-db-1 psql -U tcg -d tcg -c \\
  \"update profiles set preco_suspenso = true where slug = 'SLUG-DA-PESSOA'\""

Para reverter, false. Registre o motivo em algum lugar durável — este documento não guarda decisão, guarda regra.

O que ainda não é resolvido

Escrito aqui porque risco não documentado é risco que ninguém trata:

  • Contas múltiplas. Ficou mais barato desde que o cadastro abriu em 20/08/2026: antes era preciso um segundo convite, agora basta um segundo e-mail para confirmar a própria observação pela outra conta. O que limita o estrago são duas coisas, e nenhuma delas impede: a verificação exige uma caixa que receba de verdade, e o teto de ±40% no voto segura o quanto uma conta a mais move o número.
  • Votos combinados. Duas pessoas de acordo movem o peso dentro do teto. A defesa real seria exigir reputação para votar, o que travaria a base no começo — e é a base no começo que mais precisa de gente.
  • Link falso. A URL é conferida quanto a protocolo, tamanho e coerência com a fonte declarada, mas ninguém abre para ver se o anúncio existe.

Nenhum dos três se resolve com código sozinho. Os três ficam menores à medida que a amostra cresce, que é mais um motivo para o número na tela sempre vir com o tamanho dela ao lado.