The sync-docs-to-developer-hub.sh script accepts the developer-hub repo
path as its first argument. The CI workflow passes it as a relative path
(`developer-hub`) pointing to the checkout at the repo root. The markdown
rsync step ran before any `cd`, so the relative path resolved correctly,
but the mkdocs build step `cd`s into docs/api_docs first and then uses
the still-relative `$DOCS_REPO/api-reference/python/workflows` as its
output directory. mkdocs consequently wrote the built API reference to
`docs/api_docs/developer-hub/...` inside the source repo instead of into
the actual developer-hub checkout, so the subsequent
`git add api-reference/python/workflows/` found nothing to commit and
the API reference was never synced downstream.
Resolve $DOCS_REPO to an absolute path once up front so later `cd`s do
not change its meaning.
Co-authored-by: Claude <noreply@anthropic.com>
* inital commit
* feat: Add TypeScript SDK generation and publishing pipeline
- Add @hey-api/openapi-ts based SDK generation from Starlette OpenAPI schema
- Create unified release workflow with separate jobs for Python and TypeScript
- Add version validation to ensure Git tags match pyproject.toml
- Configure SDK to use @llamaindex/workflows-client package name
- Add CI workflow to validate SDK generation on every PR
- Use pnpm as package manager for Node.js operations
- Add pyyaml dependency for OpenAPI schema generation
The SDK is treated as a build artifact, generated from the Python server's
OpenAPI specification. Version synchronization is maintained by using
pyproject.toml as the single source of truth.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
* fix lint
* fix
* rebase main
* fix
* fix
* fix ci
* refactor: Simplify to only publish OpenAPI spec as release artifact
- Remove TypeScript SDK generation infrastructure
- Add OpenAPI spec generation to release workflow
- Add version validation to ensure tag matches pyproject.toml
- Add trigger to notify llama-ui for SDK generation
- Keep workflow changes minimal from original
The SDK generation will now be handled in the llama-ui repository,
which can fetch the OpenAPI spec from releases and generate the SDK.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
* feat: Add smart SDK update triggering with change type detection
- Add workflow_dispatch inputs for manual server change type and description
- Create script to auto-detect change type from semantic version tags
- Add comprehensive tests using pytest-style functions with mock data
- Only trigger SDK update when there are server/API changes
- Pass change type and description to llama-ui for proper versioning
- Use tomllib for proper TOML parsing in validate_version.py
For manual triggers: developers can specify if there are API changes
For tag pushes: automatically detects patch/minor/major from version bump
Tests use temporary directories and mock data for complete isolation.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
* fix lint
* fix: Replace tomllib with regex parsing for Python 3.9+ compatibility
- Remove tomllib dependency which is only available in Python 3.11+
- Use regex to parse version from pyproject.toml for broader Python version support
- Add test fixture cleanup to reduce event loop warnings in async tests
* fix comment
---------
Co-authored-by: Claude <noreply@anthropic.com>