From e4188c9796e71354c1e7c59284b5147eca0c2b15 Mon Sep 17 00:00:00 2001 From: Runxi Yu Date: Sun, 09 Feb 2025 14:07:50 +0800 Subject: [PATCH] README.md: Write some details --- README.md | 46 +++++++++++++++++++++++++++++++++++----------- diff --git a/README.md b/README.md index c77dd2d1b5c967600986ec10cbbb3e80915e2e48..5c8366106963c0b6bb1a5b265f813e01598a63e2 100644 --- a/README.md +++ b/README.md @@ -2,16 +2,40 @@ # Lindenii Forge ## 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. +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. -The available modules are: -* Version-controlled repository hosting -* Patch review -* Mailing list -* Ticket tracker -* Wiki +### Merge requests -This is potentially subject to change. +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. -- 2.48.1