Skip to content

feat: add dynamic creator API endpoints for schema-driven scaffolding#676

Draft
cidrblock wants to merge 1 commit intoansible:mainfrom
cidrblock:dynamic_api
Draft

feat: add dynamic creator API endpoints for schema-driven scaffolding#676
cidrblock wants to merge 1 commit intoansible:mainfrom
cidrblock:dynamic_api

Conversation

@cidrblock
Copy link
Contributor

@cidrblock cidrblock commented Feb 13, 2026

Summary

  • Adds three new endpoints to the ADT server that leverage ansible-creator's V1 programmatic API for dynamic, schema-driven scaffolding:
    • GET /v2/creator/capabilities -- discover all available ansible-creator commands
    • GET /v2/creator/schema?command_path=init&command_path=collection -- retrieve parameter schema for a specific command
    • POST /v2/creator/scaffold -- scaffold any project type dynamically via {"command_path": [...], "params": {...}}
  • This eliminates the need to modify ADT every time ansible-creator adds a new scaffolding capability
  • Includes OpenAPI schema definitions, handler implementation, and 13 integration tests

Depends on

Test plan

  • All 13 new integration tests pass (test_server_creator_dynamic.py)
  • Pre-commit hooks pass (ruff, mypy, pylint, cspell, pydoclint)
  • CI passes
  • Existing tests unaffected

Add three new endpoints that leverage ansible-creator's V1 API to
provide dynamic, schema-driven scaffolding without hardcoding individual
project types:

- GET /v2/creator/capabilities: discover all available commands
- GET /v2/creator/schema: retrieve parameter schema for a command
- POST /v2/creator/scaffold: scaffold any project type dynamically

Co-authored-by: Cursor <cursoragent@cursor.com>
@ssbarnea ssbarnea marked this pull request as draft February 19, 2026 19:16
@ssbarnea ssbarnea marked this pull request as draft February 19, 2026 19:16
@ssbarnea
Copy link
Member

@cidrblock moved to draft due to not passing tests.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

Status: No status

Development

Successfully merging this pull request may close these issues.

2 participants

Comments