generate integrations reference from catalog#2563
Conversation
There was a problem hiding this comment.
Pull request overview
Note
Copilot was unable to run its full agentic suite in this review.
Adds catalog-backed generation and validation for the integrations reference documentation, along with a CLI script and tests to keep the generated markdown in sync.
Changes:
- Introduce
specify_cli.catalog_docshelpers to render/update the generated integrations table fromintegrations/catalog.json. - Add
scripts/generate_integrations_reference.pywith--check/--writemodes for CI and local updates. - Regenerate
docs/reference/integrations.mdwith generated-table markers and add tests to enforce consistency.
Reviewed changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated 5 comments.
| File | Description |
|---|---|
| tests/test_catalog_docs.py | Adds tests asserting the committed docs match the generator and that registry metadata is reflected. |
| src/specify_cli/catalog_docs.py | Implements catalog loading, table rendering, and marker-based replacement for the docs page. |
| scripts/generate_integrations_reference.py | Provides a CLI entrypoint to check or rewrite the generated integrations reference file. |
| docs/reference/integrations.md | Converts the integrations table into a generated block and updates surrounding instructions. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
There was a problem hiding this comment.
Love it, but can we integrate it into specify integration search --markdown? Specifically can we keep it simpler than this and just render out the table. On the project end we will take care of integrating it into the docs. I do not want to burden the CLI with that part of the process
|
Thanks for the direction! I've refactored based on your feedback: What changed:
Usage: Prints the full integrations reference table to stdout. The docs team can paste it wherever needed. |
1bdc359 to
59c134c
Compare
mnriem
left a comment
There was a problem hiding this comment.
Please address Copilot feedback. Please revert the change to integrations.md as we will setup a separate GitHub actions job for that. Thanks for the great work
|
Done! Both tasks completed:\n\n- Copilot feedback addressed — all review threads from the latest rounds have been fixed and replied to (removed dead |
mnriem
left a comment
There was a problem hiding this comment.
Please address Copilot feedback
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
|
Addressed the remaining actionable Copilot feedback in the latest commit:
The remaining older comments are stale/outdated relative to these changes. |
Tighten the integrations docs rendering helpers and tests to cover the remaining Copilot feedback from PR github#2563: shared repo-root lookup, safer markdown link text, whitespace repository handling, narrower error handling, and missing-file/test parsing guards. Tests: pytest tests/test_catalog_docs.py tests/test_community_catalog_docs.py -q; python3 -m compileall -q src/specify_cli/__init__.py src/specify_cli/catalog_docs.py src/specify_cli/community_catalog_docs.py tests/test_catalog_docs.py tests/test_community_catalog_docs.py Reference: PR github#2563; reply comment github#2563 (comment)
What changed
INTEGRATION_REGISTRYplus per-key URL and notes maps incatalog_docs.py.docs/reference/integrations.mdso the supported agent table is generated from the integration registry (not hand-maintained).Why
The integrations reference had been hand-maintained, which made it easy for the docs to drift from the runtime registry. This change makes the doc a checked artifact and reduces maintenance overhead.
User impact
specify integration search --markdown.Validation
specify integration search --markdownpytest tests/test_catalog_docs.py -q