Skip to main content
What Sponson needs next, cut into pieces one contributor can pick up. Each item says where to start and how to know it is done. Items marked good first issue need no prior knowledge of the engine; items marked ADR change a format or contract and start with a design record in docs/adr/ (see MAINTAINERS.md). Want one? Comment on its linked issue so nobody duplicates work; for an item without one, open it from the item. Something missing? Open a feature or adapter request. Status as of 0.3.0: format, engine, the built-in adapters (listed here), built-in secret sources (listed in docs/plan-format.md), local and git-branch receipt stores, CLI, MCP server, GitHub Action.

1. Prove the sim against the real APIs

The fake cloud encodes numbered assumptions about each provider at the top of its routes file. Every adapter call and every assumption has been checked against the providers’ published API specifications (docs/api-verification.md); each assumption is marked verified or unverified there and in its routes file. What remains needs a live account: V1, N1, N2, C2 and PS1, PS4, PS5, PS7, PS8 are pinned by scenarios/contract.test.ts, and the live run (pnpm test:live) has never been done against real accounts. Every item here is: write an assumption <id>: test in the contract suite, run it against a throwaway account, and if it fails fix the sim first, then the adapter.

2. More adapters

Every adapter is one file, one sim routes file and one scenario; pnpm new:adapter <name> generates all three and registers them. The checklist is in CONTRIBUTING.md. docs/coverage.md measures which providers’ per-environment state is covered today and ranks what to build next; docs/providers.md lists what is supported (generated, so this file keeps no list of its own). Many rows need no adapter at all: the generic http adapter (ADR 0017, plan format) manages plain CRUD objects and list entries of any JSON REST API from the plan. The items below are those whose lifecycle needs more (asynchronous provisioning, a deploy barrier, instruction-based updates, an output that exists only once), or that are common enough to deserve a tested, documented first-class op. Next for the http adapter itself: preconditions (ETag) for list writes, polling until ready, an OAuth2 client-credentials token, and pagination by page number or Link header.

3. Lifecycle and operations

4. Contributor experience

Not planned

  • A general-purpose infrastructure tool. Sponson manages what ships beside a release (per-preview and per-environment state), not long-lived infrastructure — that is Terraform’s and Pulumi’s job.
  • Storing secret values anywhere. Secrets stay references; see SECURITY.md.