923960fa4b
Follow-up to the salvaged #111004 commit, aligning it with the shape agreed on #110995: - Drop the HERMES_KANBAN_DISPATCH_PROFILES env bridge: non-secret behaviour lives in config.yaml only, like every other kanban.* key. - Read the key via load_config_readonly() with the same fail-open config read as the sibling kanban.* readers (configured_max_in_progress). - Fail closed when the key is set: the "none" sentinel is gone (an empty list already claims nothing), and an assignee that is not a valid profile id is never claimable instead of being lower-cased into the allowlist. - Trim the regression file to two invariants (allowlist without `default` buckets the card as nonspawnable AND turns has_spawnable_ready off; unset key keeps upstream behaviour). Both drive the real dispatch tick against a real config.yaml + kanban.db; the first is red on origin/main. - Docs: move the "Shared boards across homes" section out of the gateway-dispatcher paragraph, state that `default` collides by construction, add the config-reference row.
Website
This website is built using Docusaurus, a modern static website generator.
Installation
yarn
Local Development
yarn start
This command starts a local development server and opens up a browser window. Most changes are reflected live without having to restart the server.
Build
yarn build
This command generates static content into the build directory and can be served using any static contents hosting service.
Deployment
Using SSH:
USE_SSH=true yarn deploy
Not using SSH:
GIT_USER=<Your GitHub username> yarn deploy
If you are using GitHub pages for hosting, this command is a convenient way to build the website and push to the gh-pages branch.
Diagram Linting
CI runs ascii-guard to lint docs for ASCII box diagrams. Use Mermaid (````mermaid`) or plain lists/tables instead of ASCII boxes to avoid CI failures.