pin: bump Worldtree spec 5810a26→879cefe (OpenAPI 2.2.0→2.3.0)
#347 authored-history-write shipped — one new REST path-group POST /sessions/{id}/history + AuthoredTurnResponse schema. OpenAPI-only: the prose conversation-api-spec.md + server conversation_api.contract.md are byte-unchanged since 5810a26 (empty git-log delta), SSE schema unchanged (#347 is event-silent). Consumer side NOT yet built — POST /sessions/{id}/history is a fresh in-scope gap that re-opens the v1 coverage-audit (Heimdall-gated hide-existence; 404 = feature-absent).
This commit is contained in:
@@ -1,6 +1,50 @@
|
||||
{
|
||||
"components": {
|
||||
"schemas": {
|
||||
"AuthoredTurnResponse": {
|
||||
"description": "#347 — the authored-write ack. Provenance is audit-only and NEVER on this\npayload (INV-347-7). ``content_chars`` is the CHARACTER count (may differ from\nthe UTF-8 byte length the request is bounded against — INV-347-12).",
|
||||
"properties": {
|
||||
"author": {
|
||||
"title": "Author",
|
||||
"type": "string"
|
||||
},
|
||||
"content_chars": {
|
||||
"title": "Content Chars",
|
||||
"type": "integer"
|
||||
},
|
||||
"injected_at": {
|
||||
"title": "Injected At",
|
||||
"type": "string"
|
||||
},
|
||||
"phase": {
|
||||
"title": "Phase",
|
||||
"type": "string"
|
||||
},
|
||||
"seq": {
|
||||
"title": "Seq",
|
||||
"type": "integer"
|
||||
},
|
||||
"session_id": {
|
||||
"title": "Session Id",
|
||||
"type": "string"
|
||||
},
|
||||
"turn_id": {
|
||||
"title": "Turn Id",
|
||||
"type": "integer"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"turn_id",
|
||||
"session_id",
|
||||
"author",
|
||||
"phase",
|
||||
"seq",
|
||||
"injected_at",
|
||||
"content_chars"
|
||||
],
|
||||
"title": "AuthoredTurnResponse",
|
||||
"type": "object"
|
||||
},
|
||||
"BifrostBindingRequest": {
|
||||
"additionalProperties": false,
|
||||
"description": "Bifrost binding parameters for session-create (issue #160).",
|
||||
@@ -390,6 +434,7 @@
|
||||
"session_not_found",
|
||||
"session_not_bifrost_bound",
|
||||
"session_retired",
|
||||
"generation_active",
|
||||
"agent_not_available",
|
||||
"turn_not_found",
|
||||
"turn_finished",
|
||||
@@ -905,7 +950,7 @@
|
||||
"info": {
|
||||
"description": "Multi-turn conversation interface for Worldtree agents.",
|
||||
"title": "Worldtree Conversation API",
|
||||
"version": "2.2.0"
|
||||
"version": "2.3.0"
|
||||
},
|
||||
"openapi": "3.1.0",
|
||||
"paths": {
|
||||
@@ -6382,6 +6427,141 @@
|
||||
"summary": "Update Session"
|
||||
}
|
||||
},
|
||||
"/sessions/{session_id}/history": {
|
||||
"post": {
|
||||
"description": "#347 — write one model-visible turn into a session's ledger AS the bound\nagent, WITHOUT a generation and WITHOUT lived-turn side effects.\n\nHide-existence ordering (INV-347-13): the ``session.history.write`` grant is\nchecked FIRST — before session resolution, before ANY body parse/validation,\nbefore the active-generation guard. An ungranted caller receives ONLY the\nhide-404 (byte-identical to session-not-found, INV-347-1) — never a\n422/409/403 that would distinguish feature-absent from session-absent.",
|
||||
"operationId": "authored_history_write_sessions__session_id__history_post",
|
||||
"parameters": [
|
||||
{
|
||||
"in": "path",
|
||||
"name": "session_id",
|
||||
"required": true,
|
||||
"schema": {
|
||||
"title": "Session Id",
|
||||
"type": "string"
|
||||
}
|
||||
}
|
||||
],
|
||||
"responses": {
|
||||
"201": {
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "#/components/schemas/AuthoredTurnResponse"
|
||||
}
|
||||
}
|
||||
},
|
||||
"description": "Successful Response"
|
||||
},
|
||||
"400": {
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "#/components/schemas/ErrorResponse"
|
||||
}
|
||||
}
|
||||
},
|
||||
"description": "Error — unified envelope (detail.error_code is the stable identifier)."
|
||||
},
|
||||
"401": {
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "#/components/schemas/ErrorResponse"
|
||||
}
|
||||
}
|
||||
},
|
||||
"description": "Error — unified envelope (detail.error_code is the stable identifier)."
|
||||
},
|
||||
"403": {
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "#/components/schemas/ErrorResponse"
|
||||
}
|
||||
}
|
||||
},
|
||||
"description": "Error — unified envelope (detail.error_code is the stable identifier)."
|
||||
},
|
||||
"404": {
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "#/components/schemas/ErrorResponse"
|
||||
}
|
||||
}
|
||||
},
|
||||
"description": "Error — unified envelope (detail.error_code is the stable identifier)."
|
||||
},
|
||||
"405": {
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "#/components/schemas/ErrorResponse"
|
||||
}
|
||||
}
|
||||
},
|
||||
"description": "Error — unified envelope (detail.error_code is the stable identifier)."
|
||||
},
|
||||
"409": {
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "#/components/schemas/ErrorResponse"
|
||||
}
|
||||
}
|
||||
},
|
||||
"description": "Error — unified envelope (detail.error_code is the stable identifier)."
|
||||
},
|
||||
"412": {
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "#/components/schemas/ErrorResponse"
|
||||
}
|
||||
}
|
||||
},
|
||||
"description": "Error — unified envelope (detail.error_code is the stable identifier)."
|
||||
},
|
||||
"422": {
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "#/components/schemas/ErrorResponse"
|
||||
}
|
||||
}
|
||||
},
|
||||
"description": "Error — unified envelope (detail.error_code is the stable identifier)."
|
||||
},
|
||||
"500": {
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "#/components/schemas/ErrorResponse"
|
||||
}
|
||||
}
|
||||
},
|
||||
"description": "Error — unified envelope (detail.error_code is the stable identifier)."
|
||||
},
|
||||
"503": {
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "#/components/schemas/ErrorResponse"
|
||||
}
|
||||
}
|
||||
},
|
||||
"description": "Error — unified envelope (detail.error_code is the stable identifier)."
|
||||
}
|
||||
},
|
||||
"security": [
|
||||
{
|
||||
"HTTPBearer": []
|
||||
}
|
||||
],
|
||||
"summary": "Authored History Write"
|
||||
}
|
||||
},
|
||||
"/sessions/{session_id}/messages": {
|
||||
"get": {
|
||||
"description": "Return paginated message history for a session.",
|
||||
|
||||
Reference in New Issue
Block a user