The card that reads Codeberg
The sidebar has a commits card. Until now it read GitHub, full stop — which is a strange default for an engine whose natural habitat is the Fediverse, where the code lives on Codeberg or on somebody's own Forgejo, and GitHub is the mirror you keep for one widget's sake.
One of the first people outside this project to run the engine asked the obvious question, and the answer shipped: widgets.commits.instance takes the server's address, and that is the whole configuration.
One key, not two
There is no forge_type beside it. An address already answers what kind of host it is — Gitea and Forgejo speak the same API, and a key that must agree with another key is a config mistake waiting for its moment. Leave instance out and the card reads GitHub, exactly as before.
Cheaper than the original
The forge path costs one request where GitHub costs one per commit, because a Gitea activity item carries the commits it is about — message and timestamp included. A card on your own Forgejo is lighter on your own server than the GitHub card ever was on theirs.
The mistake is caught standing up
An empty commits card is indistinguishable from "has not pushed lately", so doctor checks the address before that ambiguity can start: a pasted @handle or a bare host name is refused with a sentence, and an address with a path after it is flagged as worth checking — with the API endpoint that settles it. ./style.sh asks the new question too, on configs written before this key existed as well.

Comments