McRogueFace/tools
John McCardle 54624b353d Untrack generated docs; add API manifest infra and pre-commit hook
Rendered/generated documentation no longer lives in git -- it's regenerated
by a pre-commit hook (tools/hooks/pre-commit, installed via `make
install-hooks`) and shipped inside release artifacts (tools/package.sh) instead.
A compact api/manifest.json (signatures + docstring hashes + carried-forward
lifecycle metadata: since/modified per object and member) is the one exception
and stays committed, refreshed by the same hook, so API changes remain
trackable by commit/tag via `git show <ref>:api/manifest.json` and
`tools/api_delta.py REF1 REF2` without needing a full rebuild at old refs.

- tools/generate_api_manifest.py: engine-side introspection, run headless;
  emits api/manifest.json (committed) and docs/generated/api_full.json
  (gitignored, full docstrings -- the docs-site generator's data source).
- tools/api_delta.py: stdlib-only diff CLI (md/json/gitea-checklist formats),
  with --site-dir to cross-reference affected docs-site pages via their mcrf
  frontmatter.
- tools/hooks/pre-commit: incremental build + frozen-docstring gate + doc
  regen + manifest refresh, gated on staged src/ changes.
- .gitignore covers the rendered docs/stubs plus personal working-notes docs
  (plans, audits, research write-ups) that were never McRogueFace-user-facing.
- docs/api-stability.md and docs/threading-model.md removed: their content is
  now the wiki's "API Stability Contract" and "Threading Model" system pages
  (ratified 2026-07-02, migration verified 2026-07-11); the repo continues to
  enforce them via tests/unit/api_surface_snapshot_test.py.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-11 20:57:31 -04:00
..
hooks Untrack generated docs; add API manifest infra and pre-commit hook 2026-07-11 20:57:31 -04:00
api_delta.py Untrack generated docs; add API manifest infra and pre-commit hook 2026-07-11 20:57:31 -04:00
audit_pymethoddef.py Add tools/audit_pymethoddef.py - MCRF_METHOD/MCRF_PROPERTY compliance auditor 2026-04-18 12:30:25 -04:00
build_debug_libs.sh Fix build_debug_libs.sh flag quoting so --asan/--tsan can rebuild 2026-06-21 16:44:33 -04:00
capture_audio_synth_header.py Fix capture_audio_synth_header.py for headless --exec mode 2026-04-18 23:25:17 -04:00
check_frozen_docstrings.sh Add docstring-macro validation scripts for #314 F15 2026-06-21 00:11:15 -04:00
generate_all_docs.sh Wire strict frozen-docstring gate into the doc pipeline (#314 F15) 2026-06-21 06:45:11 -04:00
generate_api_manifest.py Untrack generated docs; add API manifest infra and pre-commit hook 2026-07-11 20:57:31 -04:00
generate_color_table.py Squashed commit of the following: [alpha_presentable] 2025-07-15 21:30:49 -04:00
generate_dynamic_docs.py Regenerate API docs; add threading note to reference intro 2026-07-02 20:23:28 -04:00
generate_man_page.sh docs: Complete Phase 7 documentation system with parser fixes and man pages 2025-10-30 21:20:50 -04:00
generate_stubs.py Squashed commit of the following: [alpha_presentable] 2025-07-15 21:30:49 -04:00
generate_stubs_v2.py Phase 5.3: documentation regeneration + introspection-based stub generator 2026-04-18 07:33:51 -04:00
package.sh Untrack generated docs; add API manifest infra and pre-commit hook 2026-07-11 20:57:31 -04:00
package_stdlib.py distribution packaging 2026-01-09 12:00:59 -05:00
stdlib_modules.yaml distribution packaging 2026-01-09 12:00:59 -05:00
test_link_transform.py feat: add link transformation to documentation generator 2025-10-30 11:39:54 -04:00
test_vector_docs.py feat: convert PyVector properties to use macros 2025-10-30 11:33:49 -04:00
ui_methods_documentation.py Squashed commit of the following: [alpha_presentable] 2025-07-15 21:30:49 -04:00
untrack_generated_docs.sh Untrack generated docs; add API manifest infra and pre-commit hook 2026-07-11 20:57:31 -04:00
validate_file_docstrings.sh Add docstring-macro validation scripts for #314 F15 2026-06-21 00:11:15 -04:00