GitHub Actions Plan
The GitHub Actions workflow should build and deploy the MkDocs site automatically.
The workflow has a narrow responsibility: publish documentation only. Solution generation depends on the local merged_problems.json, an Ollama service, and large-model hardware, so it should not run on GitHub-hosted runners.
Trigger Rules
Recommended triggers:
pushtomainwhen documentation site files change.workflow_dispatchfor manual deployment.
The workflow should avoid running on unrelated code changes. Path filters should include:
docs-site/**.github/workflows/docs.yml- documentation entry files if needed
Build Steps
- Check out the repository.
- Set up Python.
- Install MkDocs and plugins.
- Run
mkdocs build --strict. - Upload the built site artifact.
- Deploy to GitHub Pages.
Deployment Boundary
flowchart LR
A[Push docs-site or workflow] --> B[GitHub Actions]
B --> C[Install docs-site/requirements.txt]
C --> D[mkdocs build --strict]
D --> E[Upload Pages artifact]
E --> F[GitHub Pages]
G[Local Ollama solution generation] -.not executed in Actions.-> B
Path filters reduce irrelevant runs: generator code changes do not always require documentation deployment, while changes under docs-site/** or .github/workflows/docs.yml should rebuild the site.
Permissions
Use the minimum permissions required for GitHub Pages:
contents: readpages: writeid-token: write
These permissions cover repository reading, Pages artifact publishing, and OIDC deployment. The workflow does not need repository write access or model-service access.