diff --git a/JOJ3-Configuration-Schema.md b/JOJ3-Configuration-Schema.md index 2e76967..bb8b1c8 100644 --- a/JOJ3-Configuration-Schema.md +++ b/JOJ3-Configuration-Schema.md @@ -7,6 +7,22 @@ Levels: - assignment: homework or project (no meta config needed at that level) - task: exercise or milestone +## Commit message and course-joj repo tree + +Commit messages must follow conventional commits format: `type[scope]: message`. We use `scope` to track the exact task which is being worked on. + +Basic rules: +- health check is **always** run first +- all non JOJ stages are run on each push +- JOJ is only triggered if the message is `joj` or `joj` appears in the message **TBD** + +Scope usage: +- `scope` must match joj config tree (`home/tt/.config/joj` subtree in `course-joj` repo), eg. if tree is `h1/ex2` the `scope` must be `h1/ex2`, if tree is `hw4/1` then scope is also `hw4/1`. +- if a scope is invalid then return a warning containing the list of valid scopes and exit nicely (either this is a typo, or this an exercise that do not require coding) +- as health check must always be run, `scope` should be checked after it + + + ## Repo level Teaching team info, eg. useful to check who triggered a grading.