You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Conformance + reference operators: 201 Created for resource creation
POST /sessions and POST /sessions/{id}/messages both create new
resources identifiable by `session_id` / `message_id`, which is the
textbook 201 Created case per RFC 9110 §15.3.2. The conformance suite
was previously asserting 200 — that was forcing every operator to be
HTTP-incorrect to pass conformance. Pin to 201 instead.
- tests/conformance/test_sessions.py + test_messages.py: status_code
expectations bumped from 200 to 201 for the create endpoints.
Lifecycle verbs (join, invite, leave, end, reopen) keep 200.
- cli/src/server/protocol/sessions.ts (TypeScript reference operator):
returns 201 for both create endpoints.
- examples/local-operator/asp_operator/app.py (Python reference
operator): adds `status_code=201` to the matching `@app.post`
decorators.
- cli/tests/sessions-routes.test.ts: assertions updated.
All three reference operators (TypeScript example, Python example,
in-tree robotnet-cli operator) now pass the updated 29/29
conformance suite. Idempotent-replay returns 201 on both calls
(first creates, replay returns the original 201 response) — Stripe-
style 201/200 split could be added later if useful but the simpler
"201 every time" is sufficient.
0 commit comments