diff --git a/AGENTS.md b/AGENTS.md index 53bae1b..475d30b 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -40,3 +40,9 @@ If `dist/markdown/` is not available locally, the specification - Do NOT modify the RST source under `src/`. - Changes to this specification MUST be made upstream in the vendor repository. + +## Maintaining This Repository + +If you are explicitly invoked to maintain this specification repository +(building, publishing, or managing URLs), see `CONTRIBUTING.md` for +instructions. diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 0000000..d8f7d57 --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,100 @@ +# Contributing to the MIME TODO Specification + +This document covers how to maintain the MIME TODO specification repository: +building, deploying, and managing URLs. + +--- + +## Prerequisites + +All build and publish commands run inside a pipenv environment. Install +dependencies first: + +```sh +pipenv install +``` + +--- + +## Building + +### HTML + +```sh +pipenv run make build/html +``` + +Output: `build/html/` + +### Markdown (agent-consumable) + +```sh +pipenv run make dist/markdown +``` + +Output: `dist/markdown/` + +### Both + publish + +```sh +pipenv run make all +``` + +--- + +## Publishing + +The specification is served from `specs.code.tiararodney.com`. The `publish` +Makefile recipe deploys both `build/html` and `dist/markdown` via rsync: + +```sh +pipenv run make publish +``` + +This uploads to: + +``` +root@tiararodney.com:/root/webserver/srv/http/spec.tiararodney.com/mime-todo +``` + +The resulting web structure is: + +``` +https://specs.code.tiararodney.com/mime-todo/ +├── html/ ← HTML output +└── markdown/ ← Markdown output (agent-consumable) + ├── README.md ← The specification + └── AGENTS.md ← Agent consumption instructions +``` + +--- + +## URL Management + +The following files contain URLs pointing to the web server. If the server +address, path structure, or spec name changes, update these: + +- `AGENTS.md` — the "Consuming the Specification" section lists direct URLs + +If this spec is bundled inside another spec (e.g., tiara-gitflow-spec), that +parent spec's `AGENTS.md` and `CONTRIBUTING.md` will also reference these +URLs and must be updated accordingly. + +--- + +## Release Process + +1. Make changes to `src/README.rst` +2. Build: `pipenv run make build/html dist/markdown` +3. Review the output +4. Commit the source changes and the built `dist/markdown/` output +5. Publish: `pipenv run make publish` + +--- + +## Rules + +- Do NOT modify this spec inside a consuming repository. Changes MUST be + made upstream in this repository. +- The `dist/markdown/` directory is committed so that consuming repositories + have access to the agent-consumable output without needing to build. diff --git a/Makefile b/Makefile index 4e799c8..f40eef4 100644 --- a/Makefile +++ b/Makefile @@ -13,4 +13,4 @@ publish: clean: - rm -rv build + rm -rv build dist diff --git a/dist/doctrees/AGENTS.doctree b/dist/doctrees/AGENTS.doctree index 8bdfec2..dec042e 100644 Binary files a/dist/doctrees/AGENTS.doctree and b/dist/doctrees/AGENTS.doctree differ diff --git a/dist/doctrees/README.doctree b/dist/doctrees/README.doctree index 12d1552..6970444 100644 Binary files a/dist/doctrees/README.doctree and b/dist/doctrees/README.doctree differ diff --git a/dist/doctrees/environment.pickle b/dist/doctrees/environment.pickle index 5dc94bf..df258b0 100644 Binary files a/dist/doctrees/environment.pickle and b/dist/doctrees/environment.pickle differ diff --git a/dist/markdown/AGENTS.md b/dist/markdown/AGENTS.md index f27ba41..e3e2e27 100644 --- a/dist/markdown/AGENTS.md +++ b/dist/markdown/AGENTS.md @@ -16,8 +16,11 @@ access. Do NOT parse the RST source under `src/` directly. If `dist/markdown/` is not available locally, the specification (including this `AGENTS.md`) can be retrieved from -`specs.code.tiararodney.com`, which provides HTML indexes that can be -traversed to locate the applicable markdown files. +`specs.code.tiararodney.com`: + +- Specification: `https://specs.code.tiararodney.com/mime-todo/markdown/README.md` +- Agent instructions: `https://specs.code.tiararodney.com/mime-todo/markdown/AGENTS.md` +- Index: `https://specs.code.tiararodney.com/mime-todo/markdown/` ## What This Spec Defines @@ -37,3 +40,9 @@ traversed to locate the applicable markdown files. - Do NOT modify the RST source under `src/`. - Changes to this specification MUST be made upstream in the vendor repository. + +## Maintaining This Repository + +If you are explicitly invoked to maintain this specification repository +(building, publishing, or managing URLs), see `CONTRIBUTING.md` for +instructions.