Add repository-driven site theme

This commit is contained in:
2026-07-23 20:14:42 -07:00
parent b918b70fe4
commit dcc03c78ec
18 changed files with 845 additions and 16 deletions
+13 -8
View File
@@ -17,15 +17,19 @@ Cloudflare Pages, Docker, or a public Control Plane.
2. Add that Gitea repository as the remote for this local repository.
3. Push the default branch to Gitea.
4. Connect the repository in the Labyricorn Control Plane.
5. Synchronize it and confirm `.labyricorn/site.yml` is valid.
6. Confirm that the `page`, `article`, and `project` models are installed and
5. Synchronize it and confirm `.labyricorn/site.yml` and the root `site.yml`
are valid.
6. Validate `.theme/theme.yml`, every referenced Liquid template, and the
declared stylesheet before creating a release.
7. Confirm that the `page`, `article`, and `project` models are installed and
enabled in Labyricorn.
7. Confirm discovery finds the three Markdown documents in this repository.
8. Preview the generated routes and resolve any validation errors.
9. Build the site.
10. Publish the completed build to the local canonical site.
11. Verify the homepage, article, and project page from a browser.
12. Record the deployed Git revision and active local release.
8. Confirm discovery finds the three Markdown documents in this repository.
9. Preview the generated routes and resolve any validation errors.
10. Build the site.
11. Publish the completed build to the local canonical site.
12. Verify the homepage, article, project index, and project page from a
browser.
13. Record the deployed Git revision and active local release.
## Required proof
@@ -33,6 +37,7 @@ The initial deployment is successful only when all of the following are true:
- the repository revision shown by Labyricorn matches Gitea;
- configuration validation uses the committed `site.yml`;
- theme validation uses the committed `.theme/theme.yml` and declared files;
- all three source documents are discovered without filename heuristics;
- generated routes come from configured model behavior;
- the public pages are served from the activated local release;