All notable changes to this repository will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
No changes yet.
- v2 sync pipeline now fetches OpenAPI spec directly from
https://developer.affinity.co/api-reference/openapi.jsonafter Affinity migrated their developer documentation from Redoc to Mintlify.
- CI tests only enforce v1/v2 sync idempotency (
--fail-on-diff) when the sync pipelines, generated docs, or workflow files change; upstream drift is handled by the scheduled sync workflow.
- v1 sync pipeline rewrites the non-routable
GET /field-values-changestypo to the liveGET /field-value-changesendpoint during generation.
- Stable Affinity API v2 OpenAPI spec artifact at
docs/v2/openapi.json(auto-generated bytools/v2_sync_pipeline/sync_v2_docs.py).
- v2 markdown internal links now point to GitHub-compatible anchors (rewrites Redoc-style fragments during generation).
- Updated broken API key help-center URL in the v2 markdown output.
- Affinity API v2 sync pipeline (
tools/v2_sync_pipeline/) that fetches the Redoc OpenAPI payload, dereferences schemas, renders tag-based chapters, schema appendices, and error references, and publishesdocs/v2/affinity_api_docs.md. - Pytest coverage for the v2 renderer + spec loader, including a spec-coverage guard to ensure every path is surfaced in the markdown.
- CI workflows (
check-docs-updates.yml,tests.yml) now run both v1 and v2 sync pipelines, link-check the generated markdown, and include the new package in coverage reporting. - README, AGENTS, and
llms.txtdocument the v2 workflow, raw links, and guardrails for AI assistants. - Python toolchain is pinned to 3.11.4 locally (via
.python-version+ pyenv instructions) and in CI runners for consistency. - v2 markdown renderer now titles each endpoint section with the human-readable summary, adds the
GET /v2/...line immediately beneath the heading, and keeps the Table of Contents focused on descriptions rather than raw URLs. - v2 descriptions preserve embedded markdown tables, convert single-cell callout tables into blockquote warnings, and keep filter matrices/notes in sync with the live Redoc formatting.
- Response schemas now include explicit model names, constraint-aware type strings, cleaner property tables, nested detail links, and a note explaining why live-site request/response samples are not mirrored in the markdown export.
- Legacy
.github/scripts/check_and_update_docs.pyworkflow helper in favor of the dedicated v1 and v2 sync pipeline scripts.
- Section-bounded parser that keeps example blocks scoped to their endpoints and records per-section metadata.
- Example validation + override pipeline (
tools/v1_sync_pipeline/example_overrides.yml) with warnings emitted totmp/v1_sync_metadata.jsonand the workflow summary. - Pytest guard ensuring
example_mismatchesstays empty.
- Normalized smart quotes and common typos, relabeled body/form parameter tables, and added the missing interaction/reminder notes.
- README/AGENTS document the override workflow and metadata expectations.
- llms.txt format support - Added
llms.txtindex file for LLM/IDE integration (Cursor, Windsurf, Claude) - Automated documentation updates - GitHub Actions workflow to automatically sync with official Affinity documentation
- Pre-commit hooks - Automated code quality checks (black, isort, ruff, markdownlint, yamllint)
- Dependabot configuration - Automated dependency updates for Python packages and GitHub Actions
- Workflow status badges - Visual CI/CD status indicators in README
- Comprehensive test suite - pytest-based test suite with unit and integration tests
- LICENSE file - MIT License for the repository
- CONTRIBUTING.md - Contribution guidelines for contributors
- Security policy -
.github/SECURITY.mdfor security vulnerability reporting - Repository structure documentation -
REPOSITORY_STRUCTURE.mdexplaining file organization - Development documentation - Testing guide, pre-commit guide, and development docs
- Raw markdown accessibility - Direct links and instructions for accessing raw markdown files
- Workflow dependencies - Optimized
check-docs-updates.ymlto run tests before documentation updates - Test script paths - Fixed hardcoded paths in test scripts to use relative paths
- README structure - Updated repository structure diagram and added llms.txt references
- Documentation header - Automated header updates with synchronization timestamps
- Hardcoded absolute paths in test scripts
- README placeholder text (
YOUR_USERNAME) - Documentation structure inconsistencies
- Initial extraction of Affinity API v1 documentation from official site
- Markdown formatting and cleanup
- Basic repository structure
.gitignoreconfiguration
Note: This changelog tracks repository infrastructure changes. Individual documentation updates from the official Affinity API documentation are tracked in Pull Requests and git commit history.