Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.pome.sh/llms.txt

Use this file to discover all available pages before exploring further.

Twin Development

Pome twins are stateful, local replicas of SaaS APIs. The v0 GitHub twin is hand-written on purpose. Fidelity beats breadth.

v0 Fidelity Rule

Every supported endpoint must do five things:
  1. Validate method, path params, query params, headers, and JSON body.
  2. Enforce real service invariants.
  3. Return real-shaped success and error responses.
  4. Mutate local state only through the database layer.
  5. Emit a recorder event.
Unsupported endpoints must fail loudly with fidelity: "unsupported". Never fake green.

Current GitHub Surface

GET    /repos/:owner/:repo
GET    /repos/:owner/:repo/issues
GET    /repos/:owner/:repo/issues/:number
PATCH  /repos/:owner/:repo/issues/:number
POST   /repos/:owner/:repo/issues/:number/comments
GET    /repos/:owner/:repo/labels
POST   /repos/:owner/:repo/labels
GET    /repos/:owner/:repo/issues/:number/labels
POST   /repos/:owner/:repo/issues/:number/labels
DELETE /repos/:owner/:repo/issues/:number/labels/:name
GET    /repos/:owner/:repo/collaborators
POST   /repos/:owner/:repo/issues/:number/assignees

State Model

repositories
  ├── labels
  ├── collaborators
  └── issues
        ├── issue_labels
        └── comments
The database uses foreign keys so missing labels and non-collaborator assignees fail like GitHub, not like a mock.