diff options
author | Runxi Yu <me@runxiyu.org> | 2025-02-09 14:07:50 +0800 |
---|---|---|
committer | Runxi Yu <me@runxiyu.org> | 2025-02-09 14:08:22 +0800 |
commit | e4188c9796e71354c1e7c59284b5147eca0c2b15 (patch) | |
tree | 2ddd11f3193fd95892bde1a858fd71f1dca468ea /README.md | |
parent | {main,resources}.go: Serve static/ properly (diff) | |
download | forge-e4188c9796e71354c1e7c59284b5147eca0c2b15.tar.gz forge-e4188c9796e71354c1e7c59284b5147eca0c2b15.tar.zst forge-e4188c9796e71354c1e7c59284b5147eca0c2b15.zip |
README.md: Write some details
Diffstat (limited to 'README.md')
-rw-r--r-- | README.md | 50 |
1 files changed, 37 insertions, 13 deletions
@@ -2,16 +2,40 @@ ## Organization -URLs are like `https://forge.example.org/category/module`. The `category` may -represent a project on an organization's forge, or perhaps one particular user -on a multi-user public forge. The `module` is similar to a repository on -Forgejo, and may contain any non-empty subset of all available modules. - -The available modules are: -* Version-controlled repository hosting -* Patch review -* Mailing list -* Ticket tracker -* Wiki - -This is potentially subject to change. +URLs are like `https://forge.example.org/project_name/module_type/module_name`. + +The available `module_type`s are: +* `repos` for version control +* `tickets` for ticket trackers +* `mail` for mailing lists + +## Version-controled repos + +Currently we only support Git. + +### Merge requests + +Each version-controlled repo ("main repo") has an area for merge requests +("MR"s) which may be optionally enabled. A MR is a request to merge +changes from a Git ref ("source ref") into a branch in the main repo +("destination branch"). + +When creating a MR from the API, the Web interface, email, or SSH, it shall be +possible to create a special source ref, hosted in the main repo as a branch +with a branch name that begins with `merge_requests/`. Unsolicited pushes to +`merge_requests/` will automatically open a MR, returning instructions to edit +the description and manage the MR further via the standard error channel. + +MR branches shall be synced to automatically created MR-specific mailing lists. +These mailing lists should have archives accessible via read-only IMAP, JMAP, +or something else that achieves a similar result. + +## Ticket tracking + +Ticket tracking works like todo.sr.ht, though we also intend to support +IMAP/JMAP/etc. + +## Mailing lists + +Mailing lists are not designed to handle patchsets. Patchsets should be send to +the corresponding repo, where they are turned into Lindenii patchsets. |