mirror of
https://github.com/openai/codex.git
synced 2026-11-08 08:37:30 +00:00
Add appearance metadata to thread sections (#37898)
## What changed - Add optional `icon` and `color` appearance fields to custom thread sections and expose them through the app-server protocol. - Persist appearance metadata in SQLite and include it when listing sections or returning threads. - Let `threadSection/update` preserve an omitted appearance, clear it with `null`, or replace it with a new value. - Reject appearance fields larger than 64 bytes. ## Testing - Cover protocol compatibility, persistence across restart, update and clear behavior, and field-length validation. GitOrigin-RevId: 8f55ce4f42f8bd17aa5416848a85845f681953df
This commit is contained in:
1 parent
92912d6d84
commit
1549756b78
54 files changed
+939
-47
No files matched your search
+52
@@ -20922,6 +20922,18 @@
|
||||
"ThreadSection": {
|
||||
"description": "An independently persisted, user-visible thread section.",
|
||||
"properties": {
|
||||
"appearance": {
|
||||
"anyOf": [
|
||||
{
|
||||
"$ref": "#/definitions/v2/ThreadSectionAppearance"
|
||||
},
|
||||
{
|
||||
"type": "null"
|
||||
}
|
||||
],
|
||||
"default": null,
|
||||
"description": "Optional appearance synchronized across clients."
|
||||
},
|
||||
"id": {
|
||||
"description": "Opaque UUIDv7 identity that remains stable when the section is renamed.",
|
||||
"type": "string"
|
||||
@@ -20937,10 +20949,39 @@
|
||||
],
|
||||
"type": "object"
|
||||
},
|
||||
"ThreadSectionAppearance": {
|
||||
"description": "Extensible visual presentation for a custom thread section.",
|
||||
"properties": {
|
||||
"color": {
|
||||
"type": [
|
||||
"string",
|
||||
"null"
|
||||
]
|
||||
},
|
||||
"icon": {
|
||||
"type": [
|
||||
"string",
|
||||
"null"
|
||||
]
|
||||
}
|
||||
},
|
||||
"type": "object"
|
||||
},
|
||||
"ThreadSectionCreateParams": {
|
||||
"$schema": "http://json-schema.org/draft-07/schema#",
|
||||
"description": "Parameters for creating an independently persisted thread section.",
|
||||
"properties": {
|
||||
"appearance": {
|
||||
"anyOf": [
|
||||
{
|
||||
"$ref": "#/definitions/v2/ThreadSectionAppearance"
|
||||
},
|
||||
{
|
||||
"type": "null"
|
||||
}
|
||||
],
|
||||
"default": null
|
||||
},
|
||||
"name": {
|
||||
"description": "The user-visible name of the section.",
|
||||
"type": "string"
|
||||
@@ -21074,6 +21115,17 @@
|
||||
"$schema": "http://json-schema.org/draft-07/schema#",
|
||||
"description": "Parameters for updating an independently persisted thread section.",
|
||||
"properties": {
|
||||
"appearance": {
|
||||
"anyOf": [
|
||||
{
|
||||
"$ref": "#/definitions/v2/ThreadSectionAppearance"
|
||||
},
|
||||
{
|
||||
"type": "null"
|
||||
}
|
||||
],
|
||||
"description": "Omit to preserve appearance, use `null` to clear it, or provide a replacement."
|
||||
},
|
||||
"name": {
|
||||
"description": "The updated user-visible name of the section.",
|
||||
"type": "string"
|
||||
|
||||
Reference in new issue
Block a user