-
Notifications
You must be signed in to change notification settings - Fork 0
About this wiki
Every page you can see lives in
docs/wiki/ in the repository. That
folder is the master copy. A push to main that touches it republishes the whole wiki, overwriting
whatever is here.
An edit made in the GitHub wiki editor will be silently destroyed by the next merge. To change a
page, open a pull request against docs/wiki/. If that is more ceremony than you want,
file an issue saying what is wrong and somebody will
carry it.
| This wiki |
/docs in the repository |
|---|---|
| How to use the app | How the app works |
| Read by a Session Manager on a Tuesday night | Read by whoever is changing the code |
| Roles, screens, tasks, vocabulary | Design decisions, API shapes, gotchas |
| Runbooks — read with a terminal open |
The rule of thumb: if it stops being true when the code changes, it goes next to the code. A page here that restates a design decision will drift out of date on its own, so it links to that decision instead of repeating it.
- One page per role, and each is deliberately short. It says what the role can do, in the order they will do it, and links onward.
- One page per task, shared across every role allowed to do it. There is no per-role copy of the same instructions — five parallel manuals is five things to keep in step, and they will not stay in step.
- One page per fact. Permissions are stated in Roles and permissions and nowhere else; vocabulary is in the Glossary and nowhere else. Everything else links to them.
Task pages get written when somebody actually needs one — usually the second time the same question gets asked. Tasks tracks which exist.
-
Flat folder, no subdirectories apart from
images/. The wiki has no folders; a page's name is its filename. -
Hyphens become spaces in the page title.
Guide-Team-Admin.mdshows up as Guide Team Admin. -
README.mdis the landing page. It is published asHome, and it is also what github.com renders when somebody browsesdocs/wiki/— one file, right in both places. -
Link to a sibling page with
.md:[Team Admin](Guide-Team-Admin.md). The link works while browsing the repository, and the build strips the extension for the wiki. -
Link into the rest of
/docswith../:[deploy](../runbooks/deploy-a-release.md). The wiki is a different repository and cannot follow that, so the build turns it into an absolute URL. -
Screenshots go in
images/and are written. The build copies them into the wiki and repoints the link at the wiki's own raw host. Seeimages/README.md— it has the one rule that matters, which is never to screenshot real candidate data. -
The sidebar and footer are generated, not files here. Their running order lives in
scripts/build_wiki.py(and, for the in-app copy,HelpPages.cs— keep the two the same); a new page appears in the sidebar without touching either, just at the bottom until it is given a place in the order. - These pages are also served inside the app under Help → Documentation, rendered from the same files with the same link rules. Anything that reads well here reads well there.
- Anything a reader should not see does not go in this folder.
.github/workflows/publish-wiki.yml runs scripts/build_wiki.py on any push to main that
touches docs/wiki/, plus on demand from the Actions tab. The script empties the wiki checkout and
rewrites it, so a page deleted here disappears from the wiki rather than lingering with nothing
pointing at it.
It is the same mechanism as the sibling Course Ops repository, on purpose — two projects that publish a wiki this way should not have two mechanisms to learn.
- Start here — the landing page, if you arrived at this one from search
- Tasks — which how-to pages exist and which are still to be written
- File an issue — the low-ceremony way to report something wrong on any page here
These pages are generated from docs/wiki/ in the repository and are replaced on every change there. Edits made here will be overwritten - open a pull request instead.