Skip to main content

Module issues

Module issues 

Source
Expand description

HTTP surface for the Enhance issue axis (/v1/issues*). HTTP surface for the Enhance issue axis (current design).

  • POST /v1/issues submits an issue (= IssueStore.create).
  • GET /v1/issues/:id returns its status (= IssueStore.get + status).

The backend is an IssueStore trait object (= the caller selects an InMemoryIssueStore or a persistent backend and passes it in). This replaces the pre-v0.9 /issues (= no /v1/ prefix, InMemoryIssueSource backend).

Structs§

GetIssueResponse
Response for GET /v1/issues/:id.
IssueStoreErrorResponse
Wraps IssueStoreError into a 500 response (safety net for future extension).
PostIssueRequest
Body for POST /v1/issues.
PostIssueResponse
Response for POST /v1/issues.

Functions§

build_issues_router
Router that provides /v1/issues + /v1/issues/:id. Callers integrate it into an existing Router via Router::merge. The backend is the IssueStore passed in as an argument (= pass in the same instance as EnhancePipeline via Arc).