docs: establish the CacheRoute developer and maintenance handbook - #184
Conversation
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 32295d1e20
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| base = subprocess.run(["git", "show", "HEAD:README.md"], cwd=ROOT, check=True, text=True, capture_output=True).stdout | ||
| diff = subprocess.run(["git", "diff", "--unified=0", "HEAD", "--", "README.md"], cwd=ROOT, check=True, text=True, capture_output=True).stdout |
There was a problem hiding this comment.
Compare README checks against the parent commit
When this test runs in a normal CI or clean checkout after the commit is checked out, both commands use HEAD, so git diff --unified=0 HEAD -- README.md is empty and git show HEAD:README.md already contains the new handbook link. The following assertions then fail even though the tree is clean; I confirmed python3 -m pytest -q test/test_documentation_governance.py fails at the added-link count. Use the parent/base revision or a checked-in fixture instead of HEAD for this regression check.
Useful? React with 👍 / 👎.
### Motivation - Implement the documentation-governance work requested by Issue #180 by adding a concise developer handbook and a small same-PR governance update to AGENTS.md while preserving existing runtime behavior and package discovery. - Provide a single navigation and validation surface for maintainers to consult before changing public or structural surfaces, and ensure the handbook is repository-only (not packaged). - Record current implemented observability behavior from the merged PR #183 as Current and keep broader Issue #141 work on the roadmap (not claimed as implemented). ### Description - Added the developer handbook under `doc/developer-handbook/` with the required chapters: `README.md`, `architecture-and-evolution.md`, `package-and-module-map.md`, `public-api-and-data-models.md`, `runtime-flows.md`, `configuration-and-interfaces.md`, `compatibility-and-migrations.md`, `development-and-validation.md`, `documentation-governance.md`, and `glossary.md`. - Updated `AGENTS.md` to include the focused documentation-governance section and the same-PR checklist linking to `doc/developer-handbook/README.md`. - Made the two minimal root README edits: added a top-navigation link to the Developer Handbook and a Documentation table row pointing to `doc/developer-handbook/README.md`. - Added and adjusted validation tests: added `test/test_documentation_governance.py`, updated `test/test_wheel_install.py` and `test/test_repository_governance.py` to allowlist handbook references for governance checks and to assert handbook files remain repository-only in wheels. - Confirmed and documented PR #183 observability propagation and Proxy-local collection as Current in the handbook; explicitly left Issue #141 as incomplete in the roadmap and non-current. - Head SHA: `b78ab930cc77100134b7e21eda3f4b2d0f8c000a`; Base/main SHA: `3ff12ce323f882b7ed3aba751aac252cf04b0029`. - Changed files (complete list): `AGENTS.md`, `README.md`, `doc/developer-handbook/README.md`, `doc/developer-handbook/architecture-and-evolution.md`, `doc/developer-handbook/package-and-module-map.md`, `doc/developer-handbook/public-api-and-data-models.md`, `doc/developer-handbook/runtime-flows.md`, `doc/developer-handbook/configuration-and-interfaces.md`, `doc/developer-handbook/compatibility-and-migrations.md`, `doc/developer-handbook/development-and-validation.md`, `doc/developer-handbook/documentation-governance.md`, `doc/developer-handbook/glossary.md`, `test/test_documentation_governance.py`, `test/test_repository_governance.py`, `test/test_wheel_install.py`. ### Testing - Ran compilation and the required test suites from the PR checklist with the following results: `python3 -m compileall -q src test` (PASSED); `python3 -m pytest -q test/test_documentation_governance.py` (9 passed); `python3 -m pytest -q test/test_repository_governance.py` (23 passed); `python3 -m pytest -q test/test_namespace_layout.py` (10 passed); `python3 -m pytest -q -s test/test_source_checkout_imports.py` (passed as run in this environment); `python3 -m pytest -q -s test/test_wheel_install.py -m "not network"` (3 passed, 1 deselected); `python3 -m pytest -q test/observability` (158 passed); `python3 -m pytest -q test/test_contract_foundation.py` (5 passed); `python3 -m pytest -q test/test_contract_service_migration.py` (11 passed); `git diff --check` (no issues). - Wheel build step (`python3 -m build --no-isolation`) could not be completed in this execution environment because the `build` tool could not be installed due to network access restrictions, so that command is ENVIRONMENT-BLOCKED and must be run in CI or a network-enabled environment to produce the final wheel artifact. - Confirmations: handbook files are repository-only (not added to package discovery), AGENTS.md links to the handbook, PR #183 observability behavior is documented as Current, and broader Issue #141 remains on the roadmap (not claimed Current). Closes #180 Refs #137 Refs #141 Refs #157 Refs #159 Refs #178 Refs #179 Refs #182 Refs #183
…n tests ### Motivation - Provide a canonical Developer and Maintenance Handbook to centralize guidance on public surfaces, architecture status, runtime flows, compatibility, and validation governance. - Enforce documentation governance so non-trivial code changes audit and update handbook content in the same PR and preserve a single source-of-truth for public/structural surfaces. - Surface the handbook in top-level docs and agents guidance so reviewers and automation reference the new guidance during reviews and migrations. - Add automated checks to detect missing handbook files, broken local Markdown links, and required package/package-map coverage in documentation. ### Description - Added a new handbook under `doc/developer-handbook/` with chapters: `README.md`, `architecture-and-evolution.md`, `package-and-module-map.md`, `public-api-and-data-models.md`, `runtime-flows.md`, `configuration-and-interfaces.md`, `compatibility-and-migrations.md`, `development-and-validation.md`, `documentation-governance.md`, and `glossary.md`. - Updated `AGENTS.md` to require reading the handbook for non-trivial work and to document the same-PR handbook maintenance rule and a focused checklist for documentation governance. - Updated `README.md` to link to the new `doc/developer-handbook/README.md` and added a handbook entry in the documentation table. - Added `test/test_documentation_governance.py` to validate handbook presence, README link hygiene, local Markdown links, explicit `__all__` API catalog entries, and package-map coverage, and adjusted `test/test_repository_governance.py` and `test/test_wheel_install.py` to account for the new handbook files and expectations. ### Testing - No automated tests were executed as part of this PR; new validation tests were added but not run here. - Added tests to run: `test/test_documentation_governance.py`, `test/test_repository_governance.py` (updated), and `test/test_wheel_install.py` (updated). - The handbook includes a `development-and-validation.md` checklist that documents the recommended commands to validate the changes, including `python3 -m pytest -q test/test_documentation_governance.py` and `python3 -m build --no-isolation` for wheel checks.
…n tests ### Motivation - Provide a canonical Developer and Maintenance Handbook to centralize guidance on public surfaces, architecture status, runtime flows, compatibility, and validation governance. - Enforce documentation governance so non-trivial code changes audit and update handbook content in the same PR and preserve a single source-of-truth for public/structural surfaces. - Surface the handbook in top-level docs and agents guidance so reviewers and automation reference the new guidance during reviews and migrations. - Add automated checks to detect missing handbook files, broken local Markdown links, and required package/package-map coverage in documentation. ### Description - Added a new handbook under `doc/developer-handbook/` with chapters: `README.md`, `architecture-and-evolution.md`, `package-and-module-map.md`, `public-api-and-data-models.md`, `runtime-flows.md`, `configuration-and-interfaces.md`, `compatibility-and-migrations.md`, `development-and-validation.md`, `documentation-governance.md`, and `glossary.md`. - Updated `AGENTS.md` to require reading the handbook for non-trivial work and to document the same-PR handbook maintenance rule and a focused checklist for documentation governance. - Updated `README.md` to link to the new `doc/developer-handbook/README.md` and added a handbook entry in the documentation table. - Added `test/test_documentation_governance.py` to validate handbook presence, README link hygiene, local Markdown links, explicit `__all__` API catalog entries, and package-map coverage, and adjusted `test/test_repository_governance.py` and `test/test_wheel_install.py` to account for the new handbook files and expectations. ### Testing - No automated tests were executed as part of this PR; new validation tests were added but not run here. - Added tests to run: `test/test_documentation_governance.py`, `test/test_repository_governance.py` (updated), and `test/test_wheel_install.py` (updated). - The handbook includes a `development-and-validation.md` checklist that documents the recommended commands to validate the changes, including `python3 -m pytest -q test/test_documentation_governance.py` and `python3 -m build --no-isolation` for wheel checks.
Motivation
Description
doc/developer-handbook/with the required chapters:README.md,architecture-and-evolution.md,package-and-module-map.md,public-api-and-data-models.md,runtime-flows.md,configuration-and-interfaces.md,compatibility-and-migrations.md,development-and-validation.md,documentation-governance.md, andglossary.md.AGENTS.mdto include the focused documentation-governance section and the same-PR checklist linking todoc/developer-handbook/README.md.doc/developer-handbook/README.md.test/test_documentation_governance.py, updatedtest/test_wheel_install.pyandtest/test_repository_governance.pyto allowlist handbook references for governance checks and to assert handbook files remain repository-only in wheels.b78ab930cc77100134b7e21eda3f4b2d0f8c000a; Base/main SHA:3ff12ce323f882b7ed3aba751aac252cf04b0029.AGENTS.md,README.md,doc/developer-handbook/README.md,doc/developer-handbook/architecture-and-evolution.md,doc/developer-handbook/package-and-module-map.md,doc/developer-handbook/public-api-and-data-models.md,doc/developer-handbook/runtime-flows.md,doc/developer-handbook/configuration-and-interfaces.md,doc/developer-handbook/compatibility-and-migrations.md,doc/developer-handbook/development-and-validation.md,doc/developer-handbook/documentation-governance.md,doc/developer-handbook/glossary.md,test/test_documentation_governance.py,test/test_repository_governance.py,test/test_wheel_install.py.Testing
python3 -m compileall -q src test(PASSED);python3 -m pytest -q test/test_documentation_governance.py(9 passed);python3 -m pytest -q test/test_repository_governance.py(23 passed);python3 -m pytest -q test/test_namespace_layout.py(10 passed);python3 -m pytest -q -s test/test_source_checkout_imports.py(passed as run in this environment);python3 -m pytest -q -s test/test_wheel_install.py -m "not network"(3 passed, 1 deselected);python3 -m pytest -q test/observability(158 passed);python3 -m pytest -q test/test_contract_foundation.py(5 passed);python3 -m pytest -q test/test_contract_service_migration.py(11 passed);git diff --check(no issues).python3 -m build --no-isolation) could not be completed in this execution environment because thebuildtool could not be installed due to network access restrictions, so that command is ENVIRONMENT-BLOCKED and must be run in CI or a network-enabled environment to produce the final wheel artifact.Closes #180
Refs #137
Refs #141
Refs #157
Refs #159
Refs #178
Refs #179
Refs #182
Refs #183
Codex Task