hub+web: accept a repository URL on any forge host, link only (self-hosted GitLab too)
tsk-rzhydxnsav4m proposed
Owner wish 2026-11-05: a person must be able to create a project and start working even when the repository lives on a self-hosted forge (e.g. a private GitLab behind a firewall). Today hub/src/maity_hub/forge.py:32 knows only github.com, so repository.url is refused with not_a_configured_forge.
Proposal (part a, split from tsk-sqpcbndm0tvd):
repository.urlaccepts anyhttps://<host>/<owner>/<name>(also nested GitLab groups, decide in the contract).forgeisgithubfor github.com, else derived where known (gitlab.com, a Gitea/Bitbucket host) orother.- Off GitHub, the hub only stores and links: repository link, and a merge-requests/pull-requests link where the forge kind is known. It probes nothing (
probe_configured: false) and sends no token there. Agents with access use the repository directly. - Security: the hub never fetches the URL. Check what a user-set host could still trigger (avatar fetch, KTW dashboard read §11.3, webhooks) and keep all of it GitHub-only or explicitly allowlisted.
- Contract first: docs/api.md §6.1/§11 now say "a forge host the operator configured", which the code does not offer. Align the wording with what this card builds.
Part b (real probes, CI status and MRs for reachable GitLab servers) stays on tsk-sqpcbndm0tvd.