Record future HTTP boundary contract
This commit is contained in:
@@ -15,6 +15,34 @@ Chosen defaults:
|
|||||||
app-level auth or in-app TLS in v1.
|
app-level auth or in-app TLS in v1.
|
||||||
- Trigger input: pipeline ID only.
|
- Trigger input: pipeline ID only.
|
||||||
|
|
||||||
|
## Future HTTP Boundary Contract
|
||||||
|
|
||||||
|
This roadmap records the target boundary for a later HTTP implementation. No
|
||||||
|
HTTP server, routes, `serve` command, app-level authentication, or in-app TLS is
|
||||||
|
implemented as part of this roadmap.
|
||||||
|
|
||||||
|
Future trigger behavior:
|
||||||
|
|
||||||
|
- The trigger endpoint accepts exactly one application input: pipeline ID.
|
||||||
|
- The trigger is asynchronous. A successful admission starts a run and returns a
|
||||||
|
run ID rather than waiting for publication to finish.
|
||||||
|
- Run status is exposed through a later status endpoint keyed by run ID. Status
|
||||||
|
records should expose the run ID, pipeline ID, current status, timestamps, and
|
||||||
|
completed report or error details when available.
|
||||||
|
- Duplicate in-flight runs for the same pipeline ID map to `409 Conflict`.
|
||||||
|
- Unknown pipeline IDs map to `404 Not Found`.
|
||||||
|
|
||||||
|
Future runtime and security boundaries:
|
||||||
|
|
||||||
|
- Request context guards admission. Once admitted, the actual run is tied to the
|
||||||
|
server or coordinator lifetime context, not to the client request lifetime.
|
||||||
|
- The server defaults to private binding, such as `127.0.0.1`.
|
||||||
|
- Operators should expose the server through a reverse proxy, private network,
|
||||||
|
or external mTLS when transport security or remote access is required.
|
||||||
|
- The first HTTP implementation does not include bearer-token authentication,
|
||||||
|
in-app TLS configuration, or public-network exposure unless a later roadmap
|
||||||
|
explicitly changes that decision.
|
||||||
|
|
||||||
## Implementation Rules
|
## Implementation Rules
|
||||||
|
|
||||||
- Implement stages in order; each stage should be one prompt or commit unless
|
- Implement stages in order; each stage should be one prompt or commit unless
|
||||||
|
|||||||
Reference in New Issue
Block a user