Answer with a reference and the public issue list, never the forge address #13

Open
svc-claude wants to merge 1 commit from fix/public-issue-url into main
Collaborator

Fixes #12. Part of laurence/helia#412.

The 201 answer used to carry the forge's own address for the new issue, which is private. It now carries issue_number, a reference such as HEL-81, and issue_url set to the public issue list. The two new settings have safe defaults (https://github.com/qisback/helia/issues and HEL), so the stack needs no change to behave correctly. The relay refuses to start if the public address is not https or is on the forge's own host, so a mistake in the setting cannot put the forge back in the answer.

Clients that show issue_url still work, and the matching Helia change (laurence/helia#508) ignores the address anyway.

Docs: README configuration table and docs/PROTOCOL.md (the 201 answer). The relay has no CHANGELOG.

This touches the same code as #9 (several projects). Whichever merges second needs a small rebase: the reference prefix will become a per-project setting there.

Automated testing

I ran formatting, clippy with warnings denied and the whole test suite on the build machine, and all passed. New tests check that the end-to-end 201 answer carries HEL-7 and the public list and contains nothing from the forge's address, that a public address which is not https or is on the forge host is refused (including a different letter case and a port), and that the reference prefix must be 1 to 8 capital letters.

Fixes #12. Part of laurence/helia#412. The 201 answer used to carry the forge's own address for the new issue, which is private. It now carries `issue_number`, a `reference` such as `HEL-81`, and `issue_url` set to the public issue list. The two new settings have safe defaults (`https://github.com/qisback/helia/issues` and `HEL`), so the stack needs no change to behave correctly. The relay refuses to start if the public address is not https or is on the forge's own host, so a mistake in the setting cannot put the forge back in the answer. Clients that show `issue_url` still work, and the matching Helia change (laurence/helia#508) ignores the address anyway. Docs: README configuration table and `docs/PROTOCOL.md` (the 201 answer). The relay has no CHANGELOG. This touches the same code as #9 (several projects). Whichever merges second needs a small rebase: the reference prefix will become a per-project setting there. ## Automated testing I ran formatting, clippy with warnings denied and the whole test suite on the build machine, and all passed. New tests check that the end-to-end 201 answer carries `HEL-7` and the public list and contains nothing from the forge's address, that a public address which is not https or is on the forge host is refused (including a different letter case and a port), and that the reference prefix must be 1 to 8 capital letters.
Answer with a reference and the public issue list, never the forge address
Some checks failed
ci / clippy (pull_request) Successful in 38s
ci / fmt (pull_request) Successful in 19s
ci / deny (pull_request) Failing after 1m30s
ci / reuse (pull_request) Successful in 7s
ci / test (pull_request) Successful in 43s
ci / musl (pull_request) Successful in 1m6s
7bbf382c48
svc-claude changed title from Answer with a reference and the public issue list, never the forge address to WIP: Answer with a reference and the public issue list, never the forge address 2026-11-11 16:18:47 +00:00
svc-claude changed title from WIP: Answer with a reference and the public issue list, never the forge address to Answer with a reference and the public issue list, never the forge address 2026-11-11 16:20:00 +00:00
svc-claude scheduled this pull request to auto merge when all checks succeed 2026-11-11 16:20:02 +00:00
Some checks failed
ci / clippy (pull_request) Successful in 38s
Required
Details
ci / fmt (pull_request) Successful in 19s
Required
Details
ci / deny (pull_request) Failing after 1m30s
Required
Details
ci / reuse (pull_request) Successful in 7s
Required
Details
ci / test (pull_request) Successful in 43s
Required
Details
ci / musl (pull_request) Successful in 1m6s
Required
Details
Some required checks were not successful.
You are not authorized to merge this pull request.
View command line instructions

Checkout

From your project repository, check out a new branch and test the changes.
git fetch -u origin fix/public-issue-url:fix/public-issue-url
git switch fix/public-issue-url
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
laurence/helia-feedback-relay!13
No description provided.