mirror of
https://github.com/openai/codex.git
synced 2026-09-14 11:57:03 +00:00
## What changed - Add `thread/attachment/add`, `thread/attachment/list`, and `thread/attachment/remove` to manage durable resource references without loading the owning thread or changing conversation history. - Identify attachments by thread, `attachmentType`, and `identityKey`. Repeated adds return the existing attachment; repeated removals succeed without emitting another update. Listing supports cursor pagination. - Broadcast `thread/attachment/updated` after creation or deletion, after responding to the requester. Serialize attachment mutations with thread lifecycle operations and reject stores that do not support attachments. - Update protocol schemas, TypeScript and Python bindings, documentation, and TUI notification handling so attachment updates do not add untracked threads to the agent picker. ## Testing Add coverage for unloaded threads, pagination, idempotent addition and removal, reattachment, invalid inputs, unsupported stores, response-before-notification ordering across clients, and TUI notification routing. GitOrigin-RevId: 0d29cf903afd4e931a70a9cf96300475213b34aa
55 lines
1.2 KiB
JSON
Generated
55 lines
1.2 KiB
JSON
Generated
{
|
|
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
"definitions": {
|
|
"ThreadAttachment": {
|
|
"description": "An independently persisted attachment associated with a thread.",
|
|
"properties": {
|
|
"attachmentType": {
|
|
"type": "string"
|
|
},
|
|
"createdAt": {
|
|
"format": "int64",
|
|
"type": "integer"
|
|
},
|
|
"id": {
|
|
"type": "string"
|
|
},
|
|
"identityKey": {
|
|
"type": "string"
|
|
},
|
|
"payload": true
|
|
},
|
|
"required": [
|
|
"attachmentType",
|
|
"createdAt",
|
|
"id",
|
|
"identityKey",
|
|
"payload"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"ThreadAttachmentAddOutcome": {
|
|
"description": "Result of attempting to associate an attachment with a thread.",
|
|
"enum": [
|
|
"created",
|
|
"existing"
|
|
],
|
|
"type": "string"
|
|
}
|
|
},
|
|
"description": "The created or existing attachment.",
|
|
"properties": {
|
|
"attachment": {
|
|
"$ref": "#/definitions/ThreadAttachment"
|
|
},
|
|
"outcome": {
|
|
"$ref": "#/definitions/ThreadAttachmentAddOutcome"
|
|
}
|
|
},
|
|
"required": [
|
|
"attachment",
|
|
"outcome"
|
|
],
|
|
"title": "ThreadAttachmentAddResponse",
|
|
"type": "object"
|
|
} |