Skip to content

PHPAY-167: apontar os canais do projeto para canais que existem - #168

Merged
mariolucasdev merged 2 commits into
developfrom
fix/phpay-167
Oct 26, 2026
Merged

mariolucasdev merged 2 commits into
developfrom
fix/phpay-167

Conversation

@mariolucasdev

@mariolucasdev mariolucasdev commented Oct 26, 2026 •

Copy link
Copy Markdown
Collaborator

Closes #167.

phpay.io não existe no DNS — NXDOMAIN na raiz e no subdomínio, sem MX. E
todo canal do projeto apontava para lá: relato de vulnerabilidade, conduta,
suporte, licenciamento comercial, e a homepage do repositório e do Packagist.

Numa biblioteca de pagamentos, um canal de segurança que promete e não entrega é
pior que não ter: ele desencoraja o relato responsável e manda quem encontrou a
falha para o vazio.

Para onde foram

canal antes agora
vulnerabilidade sec@phpay.io relato privado do GitHub
conduta fale@phpay.io mesmo canal privado
suporte fale@phpay.io Issues
homepage doc.phpay.io índice de docs/
rodapé do README fale@phpay.io Issues + política de segurança

O composer.json ganhou homepage e o bloco support — que é o que o Packagist
renderiza como Issues, Source e Docs. Os dois estavam ausentes.

Fora deste PR, porque é configuração: liguei o relato privado de
vulnerabilidade
(estava desligado) e troquei a homepage do repositório.

O licenciamento comercial também entrou

Era o último lugar com o domínio morto, e ficou de fora até haver endereço
decidido — um formulário de vulnerabilidade não substitui o convite a tratar de
termos alternativos. Agora o LICENSE.md e o README apontam para
mariolucasdev@gmail.com.

Duas linhas, só o endereço: nada mais do texto da licença foi tocado.

Com isso o domínio morto não sobra em canal nenhum. As únicas ocorrências que
restam estão no smoke.php, como chave Pix de exemplo — valor falso de
fixture, não canal.

Uma ressalva que vai junto

O relato privado do GitHub é rotulado para vulnerabilidade. Usá-lo para
denúncia de assédio funciona tecnicamente — é canal privado para os mantenedores
—, mas para quem precisa denunciar não é óbvio nem acolhedor, e quem tem acesso a
advisories de segurança passa a ver o relato.

Um e-mail resolveria melhor. Enquanto não houver, canal privado é melhor que
endereço que não existe. Troca de uma linha quando você decidir o endereço.

Verificação

composer test: lint, 770 testes, PHPStan nível 9, 113 links. O composer.json
segue válido e com os acentos intactos — conferi, porque já estraguei isso hoje
usando json.dumps.

phpay.io does not resolve - NXDOMAIN on the root and on the subdomain, with
no MX - and every channel of the project pointed there: the security report,
the code of conduct, support, commercial licensing, and the homepage of both
the repository and Packagist.

In a payments library a security channel that promises and does not deliver
is worse than none: it discourages responsible disclosure and sends whoever
found the flaw nowhere.

The channels now use GitHub's own, which need no domain:

- security: the private vulnerability report, enabled on the repository.
  SECURITY.md, config.yml and bug_report.yml point at the form.
- code of conduct: the same private channel.
- support: Issues, which already exist.
- composer.json gains homepage and the support block, which is what Packagist
  renders as Issues, Source and Docs. Both were absent.
- the README footer no longer carries the dead address; it links Issues and
  the security policy next to the author's profile.

Left alone on purpose: the commercial licensing invitation in LICENSE.md and
in the README. It asks the reader to write about alternative terms, and that
needs an address someone reads, not a vulnerability form. It stays as it is
until one is decided.

A caveat recorded with the change: GitHub's private report is labelled for
vulnerabilities. Using it for a harassment report works technically - it is a
private channel to the maintainers - but it is neither obvious nor welcoming
for someone who needs to report, and whoever can see security advisories can
see the report. An address would serve better; until there is one, a private
channel beats an address that does not exist.
The last place the dead domain remained. LICENSE.md invites the reader to
write about alternative terms and the README repeats it, and both pointed at
a domain with no DNS - so the one path a company has to license this
commercially reached nobody.

A vulnerability form could not stand in for it, which is why it was left
until an address was decided. Two lines, the address only; nothing else in
the licence text was touched.
@mariolucasdev
mariolucasdev merged commit 903be78 into develop Oct 26, 2026
8 checks passed
@mariolucasdev
mariolucasdev deleted the fix/phpay-167 branch October 26, 2026 18:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Os canais do projeto apontam para um domínio que não existe

1 participant