{"openapi":"3.1.0","info":{"title":"Companion API","version":"1.0.0"},"paths":{"/api/health":{"get":{"tags":["health"],"summary":"Health","operationId":"health_api_health_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":{"type":"string"},"type":"object","title":"Response Health Api Health Get"}}}}}}},"/api/ready":{"get":{"tags":["health"],"summary":"Readiness","description":"Verify dependencies required to serve agent requests.","operationId":"readiness_api_ready_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":{"type":"string"},"type":"object","title":"Response Readiness Api Ready Get"}}}}}}},"/api/ideas/{idea_id}/maturity":{"get":{"tags":["ideas"],"summary":"Get Idea Maturity","description":"Return the idea's maturity stage, next stage, and transition history.","operationId":"get_idea_maturity_api_ideas__idea_id__maturity_get","parameters":[{"name":"idea_id","in":"path","required":true,"schema":{"type":"string","title":"Idea Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Idea Maturity Api Ideas  Idea Id  Maturity Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["ideas"],"summary":"Record Maturity Transition","description":"Record a one-step forward transition, attested by a human.","operationId":"record_maturity_transition_api_ideas__idea_id__maturity_post","parameters":[{"name":"idea_id","in":"path","required":true,"schema":{"type":"string","title":"Idea Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MaturityTransitionRequest"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Record Maturity Transition Api Ideas  Idea Id  Maturity Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/auth/bootstrap":{"post":{"tags":["auth"],"summary":"Bootstrap Authenticated User","operationId":"bootstrap_authenticated_user_api_auth_bootstrap_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AuthBootstrapResponse"}}}}}}},"/api/ideas":{"get":{"tags":["ideas"],"summary":"List Ideas","operationId":"list_ideas_api_ideas_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response List Ideas Api Ideas Get"}}}}}},"post":{"tags":["ideas"],"summary":"Create Idea","operationId":"create_idea_api_ideas_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateIdeaRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Create Idea Api Ideas Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/ideas/{idea_id}":{"get":{"tags":["ideas"],"summary":"Get Idea","operationId":"get_idea_api_ideas__idea_id__get","parameters":[{"name":"idea_id","in":"path","required":true,"schema":{"type":"string","title":"Idea Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Idea Api Ideas  Idea Id  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["ideas"],"summary":"Delete Idea","operationId":"delete_idea_api_ideas__idea_id__delete","parameters":[{"name":"idea_id","in":"path","required":true,"schema":{"type":"string","title":"Idea Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Delete Idea Api Ideas  Idea Id  Delete"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/ideas/{idea_id}/files":{"get":{"tags":["ideas"],"summary":"Get Idea Files","operationId":"get_idea_files_api_ideas__idea_id__files_get","parameters":[{"name":"idea_id","in":"path","required":true,"schema":{"type":"string","title":"Idea Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Idea Files Api Ideas  Idea Id  Files Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/ideas/{idea_id}/validation":{"get":{"tags":["ideas"],"summary":"Get Idea Validation","description":"Read novelty validation metadata for an idea directly.","operationId":"get_idea_validation_api_ideas__idea_id__validation_get","parameters":[{"name":"idea_id","in":"path","required":true,"schema":{"type":"string","title":"Idea Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Idea Validation Api Ideas  Idea Id  Validation Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/ideas/{idea_id}/update":{"post":{"tags":["ideas"],"summary":"Update Idea","operationId":"update_idea_api_ideas__idea_id__update_post","parameters":[{"name":"idea_id","in":"path","required":true,"schema":{"type":"string","title":"Idea Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateIdeaRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Update Idea Api Ideas  Idea Id  Update Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/ideas/{idea_id}/archive":{"post":{"tags":["ideas"],"summary":"Archive Idea","operationId":"archive_idea_api_ideas__idea_id__archive_post","parameters":[{"name":"idea_id","in":"path","required":true,"schema":{"type":"string","title":"Idea Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Archive Idea Api Ideas  Idea Id  Archive Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/ideas/{idea_id}/comment":{"post":{"tags":["ideas"],"summary":"Add Comment","operationId":"add_comment_api_ideas__idea_id__comment_post","parameters":[{"name":"idea_id","in":"path","required":true,"schema":{"type":"string","title":"Idea Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AddCommentRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Add Comment Api Ideas  Idea Id  Comment Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/knowledge-base":{"get":{"tags":["knowledge"],"summary":"List Documents","description":"List all documents in the knowledge base.","operationId":"list_documents_api_knowledge_base_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/KnowledgeBaseResponse"}}}}}}},"/api/knowledge-base/":{"get":{"tags":["knowledge"],"summary":"List Documents","description":"List all documents in the knowledge base.","operationId":"list_documents_api_knowledge_base__get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/KnowledgeBaseResponse"}}}}}}},"/api/knowledge-base/upload":{"post":{"tags":["knowledge"],"summary":"Upload Document","description":"Upload a new document to the knowledge base.","operationId":"upload_document_api_knowledge_base_upload_post","parameters":[{"name":"source","in":"query","required":false,"schema":{"type":"string","maxLength":64,"default":"raw","title":"Source"}}],"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/Body_upload_document_api_knowledge_base_upload_post"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/knowledge-base/search":{"get":{"tags":["knowledge"],"summary":"Search Documents","description":"Simple lexical search across knowledge base documents.","operationId":"search_documents_api_knowledge_base_search_get","parameters":[{"name":"q","in":"query","required":true,"schema":{"type":"string","minLength":1,"maxLength":500,"title":"Q"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/KnowledgeBaseResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/knowledge-base/file/{path}":{"get":{"tags":["knowledge"],"summary":"Get Document File","description":"Retrieve raw document content or sidecar metadata.","operationId":"get_document_file_api_knowledge_base_file__path__get","parameters":[{"name":"path","in":"path","required":true,"schema":{"type":"string","title":"Path"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/knowledge-base/{path}":{"delete":{"tags":["knowledge"],"summary":"Delete Document","description":"Delete a knowledge base document.","operationId":"delete_document_api_knowledge_base__path__delete","parameters":[{"name":"path","in":"path","required":true,"schema":{"type":"string","title":"Path"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/knowledge-base/{path}/archive":{"patch":{"tags":["knowledge"],"summary":"Archive Document","description":"Archive a knowledge base document.","operationId":"archive_document_api_knowledge_base__path__archive_patch","parameters":[{"name":"path","in":"path","required":true,"schema":{"type":"string","title":"Path"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/chat/stream":{"post":{"tags":["chat"],"summary":"Stream Chat","description":"Stream agent reasoning and response for a user message.","operationId":"stream_chat_api_chat_stream_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StreamChatRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/interrupts/pending":{"get":{"tags":["interrupts"],"summary":"List Pending","operationId":"list_pending_api_interrupts_pending_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":{"items":{"additionalProperties":true,"type":"object"},"type":"array"},"type":"object","title":"Response List Pending Api Interrupts Pending Get"}}}}}}},"/api/interrupts/":{"post":{"tags":["interrupts"],"summary":"Create Interrupt","operationId":"create_interrupt_api_interrupts__post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateInterruptRequest"}}},"required":true},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/InterruptResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/interrupts/{interrupt_id}/approve":{"patch":{"tags":["interrupts"],"summary":"Approve Interrupt","operationId":"approve_interrupt_api_interrupts__interrupt_id__approve_patch","parameters":[{"name":"interrupt_id","in":"path","required":true,"schema":{"type":"string","title":"Interrupt Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/InterruptDecisionRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/InterruptResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/interrupts/{interrupt_id}/reject":{"patch":{"tags":["interrupts"],"summary":"Reject Interrupt","operationId":"reject_interrupt_api_interrupts__interrupt_id__reject_patch","parameters":[{"name":"interrupt_id","in":"path","required":true,"schema":{"type":"string","title":"Interrupt Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/InterruptDecisionRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/InterruptResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/interrupts/{interrupt_id}/resume":{"post":{"tags":["interrupts"],"summary":"Resume Interrupt","description":"Resume the agent after a HITL decision.\n\nBuilds the decisions list from the interrupt's stored decision/reason and re-invokes\nthe agent runtime with ``Command(resume=...)`` using the same thread_id. Returns the\nfinal response. Never fabricates a result — if there is no resumable state, 409.","operationId":"resume_interrupt_api_interrupts__interrupt_id__resume_post","parameters":[{"name":"interrupt_id","in":"path","required":true,"schema":{"type":"string","title":"Interrupt Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ResumeInterruptRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Resume Interrupt Api Interrupts  Interrupt Id  Resume Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/mcp/servers/":{"get":{"tags":["mcp"],"summary":"List Servers","operationId":"list_servers_api_mcp_servers__get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListMCPServersResponse"}}}}}},"post":{"tags":["mcp"],"summary":"Add Server","operationId":"add_server_api_mcp_servers__post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AddMCPServerRequest"}}},"required":true},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MCPServerResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/mcp/servers/{name}":{"delete":{"tags":["mcp"],"summary":"Remove Server","operationId":"remove_server_api_mcp_servers__name__delete","parameters":[{"name":"name","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":64,"title":"Name"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MCPServerResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["mcp"],"summary":"Get Server","operationId":"get_server_api_mcp_servers__name__get","parameters":[{"name":"name","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":64,"title":"Name"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MCPServerResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/mcp/servers/{name}/health":{"post":{"tags":["mcp"],"summary":"Ping Server","description":"Ping an MCP server to check its connection status.","operationId":"ping_server_api_mcp_servers__name__health_post","parameters":[{"name":"name","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":64,"title":"Name"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Ping Server Api Mcp Servers  Name  Health Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/organizations":{"get":{"tags":["organizations"],"summary":"List Organizations","description":"List all organizations, most recently updated first, with counts.","operationId":"list_organizations_api_organizations_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response List Organizations Api Organizations Get"}}}}}},"post":{"tags":["organizations"],"summary":"Create Organization","description":"Create an organization initialized with the pinned default structure.","operationId":"create_organization_api_organizations_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateOrganizationRequest"}}},"required":true},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Create Organization Api Organizations Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/organizations/{org_id}":{"get":{"tags":["organizations"],"summary":"Get Organization","description":"Fetch a single organization tree by id. Returns 404 if unknown.","operationId":"get_organization_api_organizations__org_id__get","parameters":[{"name":"org_id","in":"path","required":true,"schema":{"type":"string","maxLength":64,"title":"Org Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Organization Api Organizations  Org Id  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/organizations/{org_id}/health":{"get":{"tags":["organizations"],"summary":"Get Organization Health","description":"Fetch the organization health snapshot (Story 9.1). Returns 404 if unknown.","operationId":"get_organization_health_api_organizations__org_id__health_get","parameters":[{"name":"org_id","in":"path","required":true,"schema":{"type":"string","maxLength":64,"title":"Org Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Organization Health Api Organizations  Org Id  Health Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/organizations/{org_id}/evaluate":{"post":{"tags":["organizations"],"summary":"Evaluate Organization","description":"Run the deterministic Chief of Staff evaluation (Story 9.2).","operationId":"evaluate_organization_api_organizations__org_id__evaluate_post","parameters":[{"name":"org_id","in":"path","required":true,"schema":{"type":"string","maxLength":64,"title":"Org Id"}}],"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Evaluate Organization Api Organizations  Org Id  Evaluate Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/organizations/{org_id}/alerts":{"get":{"tags":["organizations"],"summary":"List Organization Alerts","description":"List the organization's escalation alerts (Story 9.2). 404 if unknown.","operationId":"list_organization_alerts_api_organizations__org_id__alerts_get","parameters":[{"name":"org_id","in":"path","required":true,"schema":{"type":"string","maxLength":64,"title":"Org Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Organization Alerts Api Organizations  Org Id  Alerts Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/providers":{"get":{"tags":["providers"],"summary":"List Providers","operationId":"list_providers_api_providers_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProviderListResponse"}}}}}},"post":{"tags":["providers"],"summary":"Create Provider","operationId":"create_provider_api_providers_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProviderConfigRequest"}}},"required":true},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProviderConfigResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/providers/catalog":{"get":{"tags":["providers"],"summary":"List Catalog","operationId":"list_catalog_api_providers_catalog_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProviderCatalogResponse"}}}}}}},"/api/providers/default":{"get":{"tags":["providers"],"summary":"Get Default","operationId":"get_default_api_providers_default_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ProviderDefaultResponse"},{"type":"null"}],"title":"Response Get Default Api Providers Default Get"}}}}}},"put":{"tags":["providers"],"summary":"Set Default","operationId":"set_default_api_providers_default_put","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProviderDefaultRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProviderDefaultResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/providers/{provider_id}":{"get":{"tags":["providers"],"summary":"Get Provider","operationId":"get_provider_api_providers__provider_id__get","parameters":[{"name":"provider_id","in":"path","required":true,"schema":{"type":"string","title":"Provider Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProviderConfigResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"tags":["providers"],"summary":"Update Provider","operationId":"update_provider_api_providers__provider_id__put","parameters":[{"name":"provider_id","in":"path","required":true,"schema":{"type":"string","title":"Provider Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProviderConfigRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProviderConfigResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["providers"],"summary":"Delete Provider","operationId":"delete_provider_api_providers__provider_id__delete","parameters":[{"name":"provider_id","in":"path","required":true,"schema":{"type":"string","title":"Provider Id"}}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/providers/{provider_id}/models":{"get":{"tags":["providers"],"summary":"Get Provider Models","operationId":"get_provider_models_api_providers__provider_id__models_get","parameters":[{"name":"provider_id","in":"path","required":true,"schema":{"type":"string","title":"Provider Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProviderCatalogGroup"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/providers/{provider_id}/enabled":{"patch":{"tags":["providers"],"summary":"Set Provider Enabled","operationId":"set_provider_enabled_api_providers__provider_id__enabled_patch","parameters":[{"name":"provider_id","in":"path","required":true,"schema":{"type":"string","title":"Provider Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProviderEnabledRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProviderConfigResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/providers/{provider_id}/test":{"post":{"tags":["providers"],"summary":"Test Provider","operationId":"test_provider_api_providers__provider_id__test_post","parameters":[{"name":"provider_id","in":"path","required":true,"schema":{"type":"string","title":"Provider Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProviderTestResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/work-items/{work_item_id}/product-definition/generate":{"post":{"tags":["product-definition"],"summary":"Generate Product Definition","description":"Run Product Team generation after the Story 11.2 prerequisite gate.","operationId":"generate_product_definition_api_work_items__work_item_id__product_definition_generate_post","parameters":[{"name":"work_item_id","in":"path","required":true,"schema":{"type":"string","maxLength":64,"title":"Work Item Id"}}],"requestBody":{"content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ProductDefinitionRequest"},{"type":"null"}],"title":"Request"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Generate Product Definition Api Work Items  Work Item Id  Product Definition Generate Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/work-items/{work_item_id}/product-definition":{"post":{"tags":["product-definition"],"summary":"Generate Product Definition","description":"Run Product Team generation after the Story 11.2 prerequisite gate.","operationId":"generate_product_definition_api_work_items__work_item_id__product_definition_post","parameters":[{"name":"work_item_id","in":"path","required":true,"schema":{"type":"string","maxLength":64,"title":"Work Item Id"}}],"requestBody":{"content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ProductDefinitionRequest"},{"type":"null"}],"title":"Request"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Generate Product Definition Api Work Items  Work Item Id  Product Definition Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["product-definition"],"summary":"Read Product Definition","description":"Read generation state, revision metadata, and approval state.","operationId":"read_product_definition_api_work_items__work_item_id__product_definition_get","parameters":[{"name":"work_item_id","in":"path","required":true,"schema":{"type":"string","maxLength":64,"title":"Work Item Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Read Product Definition Api Work Items  Work Item Id  Product Definition Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/work-items/{work_item_id}/product-definition/handoff":{"post":{"tags":["product-definition"],"summary":"Decide Product Definition","description":"Record an explicit Chief of Staff review and approved handoff.","operationId":"decide_product_definition_api_work_items__work_item_id__product_definition_handoff_post","parameters":[{"name":"work_item_id","in":"path","required":true,"schema":{"type":"string","maxLength":64,"title":"Work Item Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProductDefinitionDecisionRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Decide Product Definition Api Work Items  Work Item Id  Product Definition Handoff Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/work-items/{work_item_id}/product-definition/approve":{"post":{"tags":["product-definition"],"summary":"Decide Product Definition","description":"Record an explicit Chief of Staff review and approved handoff.","operationId":"decide_product_definition_api_work_items__work_item_id__product_definition_approve_post","parameters":[{"name":"work_item_id","in":"path","required":true,"schema":{"type":"string","maxLength":64,"title":"Work Item Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProductDefinitionDecisionRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Decide Product Definition Api Work Items  Work Item Id  Product Definition Approve Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/work-items/{work_item_id}/product-definition/decision":{"post":{"tags":["product-definition"],"summary":"Decide Product Definition","description":"Record an explicit Chief of Staff review and approved handoff.","operationId":"decide_product_definition_api_work_items__work_item_id__product_definition_decision_post","parameters":[{"name":"work_item_id","in":"path","required":true,"schema":{"type":"string","maxLength":64,"title":"Work Item Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProductDefinitionDecisionRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Decide Product Definition Api Work Items  Work Item Id  Product Definition Decision Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/work-items/decisions":{"get":{"tags":["decisions"],"summary":"List Decisions","operationId":"list_decisions_api_work_items_decisions_get","parameters":[{"name":"work_item_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Work Item Id"}},{"name":"agent_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Agent Id"}},{"name":"from","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"From"}},{"name":"to","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"To"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Decisions Api Work Items Decisions Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["decisions"],"summary":"Create Decision","operationId":"create_decision_api_work_items_decisions_post","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RecordDecisionRequest"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Create Decision Api Work Items Decisions Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/ideas/{idea_id}/revisions":{"get":{"tags":["artifacts"],"summary":"Get Idea Revisions","description":"Return all persisted artifact revisions for an idea.","operationId":"get_idea_revisions_api_ideas__idea_id__revisions_get","parameters":[{"name":"idea_id","in":"path","required":true,"schema":{"type":"string","title":"Idea Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Idea Revisions Api Ideas  Idea Id  Revisions Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/ideas/{idea_id}/artifacts/{artifact_name}/diff":{"get":{"tags":["artifacts"],"summary":"Get Artifact Diff","description":"Return a comparison of the two latest revisions of an artifact.","operationId":"get_artifact_diff_api_ideas__idea_id__artifacts__artifact_name__diff_get","parameters":[{"name":"idea_id","in":"path","required":true,"schema":{"type":"string","title":"Idea Id"}},{"name":"artifact_name","in":"path","required":true,"schema":{"type":"string","title":"Artifact Name"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Artifact Diff Api Ideas  Idea Id  Artifacts  Artifact Name  Diff Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/ideas/{idea_id}/review":{"post":{"tags":["artifacts"],"summary":"Record Idea Review","description":"Persist a reviewer decision in the idea workspace.","operationId":"record_idea_review_api_ideas__idea_id__review_post","parameters":[{"name":"idea_id","in":"path","required":true,"schema":{"type":"string","title":"Idea Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RecordReviewRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Record Idea Review Api Ideas  Idea Id  Review Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/work-items/{work_item_id}/template":{"post":{"tags":["work-item-templates"],"summary":"Save Work Item Template","description":"Save a work item as a template.","operationId":"save_work_item_template_api_work_items__work_item_id__template_post","parameters":[{"name":"work_item_id","in":"path","required":true,"schema":{"type":"string","maxLength":64,"title":"Work Item Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SaveTemplateRequest"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Save Work Item Template Api Work Items  Work Item Id  Template Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/work-items/templates":{"get":{"tags":["work-item-templates"],"summary":"List Work Item Templates","description":"List workflow templates for an organization.","operationId":"list_work_item_templates_api_work_items_templates_get","parameters":[{"name":"org_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":64},{"type":"null"}],"title":"Org Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Work Item Templates Api Work Items Templates Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/work-items/templates/{template_id}/replay":{"post":{"tags":["work-item-templates"],"summary":"Replay Work Item Template","description":"Replay a template to create a new work item.","operationId":"replay_work_item_template_api_work_items_templates__template_id__replay_post","parameters":[{"name":"template_id","in":"path","required":true,"schema":{"type":"string","maxLength":64,"title":"Template Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReplayTemplateRequest"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Replay Work Item Template Api Work Items Templates  Template Id  Replay Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/work-items":{"post":{"tags":["work-items"],"summary":"Submit Work Item","description":"Submit a work item; the Chief of Staff receives and routes it.","operationId":"submit_work_item_api_work_items_post","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SubmitWorkItemRequest"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Submit Work Item Api Work Items Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["work-items"],"summary":"List Work Items","description":"List work items, optionally filtered by org_id.","operationId":"list_work_items_api_work_items_get","parameters":[{"name":"org_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":64},{"type":"null"}],"title":"Org Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Work Items Api Work Items Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/work-items/{work_item_id}/transitions":{"post":{"tags":["work-items"],"summary":"Transition Work Item","description":"Advance a work item's status through its lifecycle.","operationId":"transition_work_item_api_work_items__work_item_id__transitions_post","parameters":[{"name":"work_item_id","in":"path","required":true,"schema":{"type":"string","maxLength":64,"title":"Work Item Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TransitionWorkItemRequest"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Transition Work Item Api Work Items  Work Item Id  Transitions Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/work-items/{work_item_id}/transition":{"post":{"tags":["work-items"],"summary":"Transition Work Item","description":"Advance a work item's status through its lifecycle.","operationId":"transition_work_item_api_work_items__work_item_id__transition_post","parameters":[{"name":"work_item_id","in":"path","required":true,"schema":{"type":"string","maxLength":64,"title":"Work Item Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TransitionWorkItemRequest"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Transition Work Item Api Work Items  Work Item Id  Transition Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/work-items/{work_item_id}/research":{"get":{"tags":["work-items"],"summary":"Get Work Item Research","description":"Return explicit Idea Team lifecycle state and filesystem artifacts.","operationId":"get_work_item_research_api_work_items__work_item_id__research_get","parameters":[{"name":"work_item_id","in":"path","required":true,"schema":{"type":"string","maxLength":64,"title":"Work Item Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Work Item Research Api Work Items  Work Item Id  Research Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/work-items/{work_item_id}/novelty-assessment":{"post":{"tags":["work-items"],"summary":"Trigger Work Item Validation","description":"Run the bounded Idea Team validation for a mapped idea.","operationId":"trigger_work_item_validation_api_work_items__work_item_id__novelty_assessment_post","parameters":[{"name":"work_item_id","in":"path","required":true,"schema":{"type":"string","maxLength":64,"title":"Work Item Id"}}],"requestBody":{"content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/NoveltyValidationRequest"},{"type":"null"}],"title":"Request"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Trigger Work Item Validation Api Work Items  Work Item Id  Novelty Assessment Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["work-items"],"summary":"Get Work Item Validation","description":"Read validation status and summary from the canonical idea workspace.","operationId":"get_work_item_validation_api_work_items__work_item_id__novelty_assessment_get","parameters":[{"name":"work_item_id","in":"path","required":true,"schema":{"type":"string","maxLength":64,"title":"Work Item Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Work Item Validation Api Work Items  Work Item Id  Novelty Assessment Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/work-items/{work_item_id}/novelty-validation":{"post":{"tags":["work-items"],"summary":"Trigger Work Item Validation","description":"Run the bounded Idea Team validation for a mapped idea.","operationId":"trigger_work_item_validation_api_work_items__work_item_id__novelty_validation_post","parameters":[{"name":"work_item_id","in":"path","required":true,"schema":{"type":"string","maxLength":64,"title":"Work Item Id"}}],"requestBody":{"content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/NoveltyValidationRequest"},{"type":"null"}],"title":"Request"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Trigger Work Item Validation Api Work Items  Work Item Id  Novelty Validation Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["work-items"],"summary":"Get Work Item Validation","description":"Read validation status and summary from the canonical idea workspace.","operationId":"get_work_item_validation_api_work_items__work_item_id__novelty_validation_get","parameters":[{"name":"work_item_id","in":"path","required":true,"schema":{"type":"string","maxLength":64,"title":"Work Item Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Work Item Validation Api Work Items  Work Item Id  Novelty Validation Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/work-items/{work_item_id}/validation":{"post":{"tags":["work-items"],"summary":"Trigger Work Item Validation","description":"Run the bounded Idea Team validation for a mapped idea.","operationId":"trigger_work_item_validation_api_work_items__work_item_id__validation_post","parameters":[{"name":"work_item_id","in":"path","required":true,"schema":{"type":"string","maxLength":64,"title":"Work Item Id"}}],"requestBody":{"content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/NoveltyValidationRequest"},{"type":"null"}],"title":"Request"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Trigger Work Item Validation Api Work Items  Work Item Id  Validation Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["work-items"],"summary":"Get Work Item Validation","description":"Read validation status and summary from the canonical idea workspace.","operationId":"get_work_item_validation_api_work_items__work_item_id__validation_get","parameters":[{"name":"work_item_id","in":"path","required":true,"schema":{"type":"string","maxLength":64,"title":"Work Item Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Work Item Validation Api Work Items  Work Item Id  Validation Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/work-items/{work_item_id}":{"get":{"tags":["work-items"],"summary":"Get Work Item","description":"Fetch a single work item with its routing decision and research state.","operationId":"get_work_item_api_work_items__work_item_id__get","parameters":[{"name":"work_item_id","in":"path","required":true,"schema":{"type":"string","maxLength":64,"title":"Work Item Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Work Item Api Work Items  Work Item Id  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/work-items/{work_item_id}/lifecycle":{"get":{"tags":["work-items"],"summary":"Get Work Item History","description":"Return the audit trail of lifecycle events for a work item.","operationId":"get_work_item_history_api_work_items__work_item_id__lifecycle_get","parameters":[{"name":"work_item_id","in":"path","required":true,"schema":{"type":"string","maxLength":64,"title":"Work Item Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Work Item History Api Work Items  Work Item Id  Lifecycle Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/work-items/{work_item_id}/history":{"get":{"tags":["work-items"],"summary":"Get Work Item History","description":"Return the audit trail of lifecycle events for a work item.","operationId":"get_work_item_history_api_work_items__work_item_id__history_get","parameters":[{"name":"work_item_id","in":"path","required":true,"schema":{"type":"string","maxLength":64,"title":"Work Item Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Work Item History Api Work Items  Work Item Id  History Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/work-items/{work_item_id}/reviews":{"get":{"tags":["reviews"],"summary":"List Reviews","operationId":"list_reviews_api_work_items__work_item_id__reviews_get","parameters":[{"name":"work_item_id","in":"path","required":true,"schema":{"type":"string","title":"Work Item Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Reviews Api Work Items  Work Item Id  Reviews Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["reviews"],"summary":"Create Review","operationId":"create_review_api_work_items__work_item_id__reviews_post","parameters":[{"name":"work_item_id","in":"path","required":true,"schema":{"type":"string","title":"Work Item Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccuracyReviewRequest"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Create Review Api Work Items  Work Item Id  Reviews Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/config":{"get":{"tags":["config"],"summary":"Get Config","description":"Return the current validated in-memory team configuration.\n\nExposes the full ``teams.yaml`` structure currently used by the runtime.","operationId":"get_config_api_config_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TeamConfigResponse"}}}}}}},"/api/config/reload":{"post":{"tags":["config"],"summary":"Reload Config","description":"Reload and re-validate teams.yaml, updating in-memory config.\n\nReturns 200 with the reloaded teams list on success, 400 with the\nvalidation failure detail otherwise. The original config is preserved\nif validation fails.","operationId":"reload_config_api_config_reload_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConfigReloadResponse"}}}}}}},"/api/config/reload-mcp":{"post":{"tags":["config"],"summary":"Reload Mcp Config","description":"Validate mcp.json and return the current server list.\n\nReads ``config/mcp.json`` fresh from disk and validates its structure.\nNew agent instances will pick up any server changes automatically.\n\nReturns 200 with the server list on success, 400 with validation error.","operationId":"reload_mcp_config_api_config_reload_mcp_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MCPReloadResponse"}}}}}}},"/api/sse":{"get":{"tags":["sse"],"summary":"Sse","operationId":"sse_api_sse_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/threads":{"get":{"tags":["threads"],"summary":"Api List Threads","description":"List threads sorted by updated_at DESC.","operationId":"api_list_threads_api_threads_get","parameters":[{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":50},{"type":"null"}],"title":"Status"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":500,"minimum":1,"default":50,"title":"Limit"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","minimum":0,"default":0,"title":"Offset"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Api List Threads Api Threads Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["threads"],"summary":"Api Create Thread","description":"Create a new thread.","operationId":"api_create_thread_api_threads_post","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateThreadRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Api Create Thread Api Threads Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/threads/{thread_id}":{"get":{"tags":["threads"],"summary":"Api Get Thread","description":"Get thread metadata.","operationId":"api_get_thread_api_threads__thread_id__get","parameters":[{"name":"thread_id","in":"path","required":true,"schema":{"type":"string","maxLength":64,"title":"Thread Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Api Get Thread Api Threads  Thread Id  Get"}}}},"404":{"description":"Thread not found"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"patch":{"tags":["threads"],"summary":"Api Update Thread","description":"Update thread metadata (supports both PUT and PATCH).","operationId":"api_update_thread_api_threads__thread_id__patch","parameters":[{"name":"thread_id","in":"path","required":true,"schema":{"type":"string","maxLength":64,"title":"Thread Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateThreadRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Api Update Thread Api Threads  Thread Id  Patch"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"tags":["threads"],"summary":"Api Update Thread","description":"Update thread metadata (supports both PUT and PATCH).","operationId":"api_update_thread_api_threads__thread_id__put","parameters":[{"name":"thread_id","in":"path","required":true,"schema":{"type":"string","maxLength":64,"title":"Thread Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateThreadRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Api Update Thread Api Threads  Thread Id  Put"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["threads"],"summary":"Api Delete Thread","description":"Delete a thread.","operationId":"api_delete_thread_api_threads__thread_id__delete","parameters":[{"name":"thread_id","in":"path","required":true,"schema":{"type":"string","maxLength":64,"title":"Thread Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":{"type":"boolean"},"title":"Response Api Delete Thread Api Threads  Thread Id  Delete"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/threads/{thread_id}/messages":{"get":{"tags":["threads"],"summary":"Api Get Thread Messages","description":"Retrieve messages from a thread's latest checkpoint state.","operationId":"api_get_thread_messages_api_threads__thread_id__messages_get","parameters":[{"name":"thread_id","in":"path","required":true,"schema":{"type":"string","maxLength":64,"title":"Thread Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Api Get Thread Messages Api Threads  Thread Id  Messages Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/threads/{thread_id}/stream":{"post":{"tags":["threads"],"summary":"Api Stream Message","description":"Send a message to a thread and stream the agent response.","operationId":"api_stream_message_api_threads__thread_id__stream_post","parameters":[{"name":"thread_id","in":"path","required":true,"schema":{"type":"string","maxLength":64,"title":"Thread Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendMessageRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/testing/reset":{"post":{"tags":["testing"],"summary":"Reset Test State","description":"Reset application state to clean baseline for E2E test isolation.","operationId":"reset_test_state_api_testing_reset_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":{"type":"string"},"type":"object","title":"Response Reset Test State Api Testing Reset Post"}}}}}}}},"components":{"schemas":{"AccuracyReviewRequest":{"properties":{"reviewer":{"type":"string","maxLength":64,"minLength":1,"title":"Reviewer","default":"user"},"accuracy_score":{"type":"integer","maximum":100.0,"minimum":0.0,"title":"Accuracy Score"},"summary":{"type":"string","minLength":1,"title":"Summary"}},"type":"object","required":["accuracy_score","summary"],"title":"AccuracyReviewRequest","description":"Request body for POST /api/work-items/{work_item_id}/reviews."},"AddCommentRequest":{"properties":{"text":{"type":"string","maxLength":2000,"minLength":1,"title":"Text"},"author":{"anyOf":[{"type":"string","maxLength":100},{"type":"null"}],"title":"Author","default":"User"}},"type":"object","required":["text"],"title":"AddCommentRequest"},"AddMCPServerRequest":{"properties":{"name":{"type":"string","maxLength":64,"minLength":1,"title":"Name"},"url":{"type":"string","maxLength":2083,"minLength":1,"format":"uri","title":"Url"},"timeout":{"type":"integer","maximum":300.0,"minimum":1.0,"title":"Timeout","default":10},"options":{"additionalProperties":true,"type":"object","title":"Options"}},"type":"object","required":["name","url"],"title":"AddMCPServerRequest","description":"Request to add a new HTTP MCP server."},"AgentDefinition":{"properties":{"name":{"type":"string","title":"Name"},"role":{"type":"string","title":"Role"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"}},"type":"object","required":["name","role"],"title":"AgentDefinition","description":"Agent definition within a team."},"AuthBootstrapResponse":{"properties":{"user":{"$ref":"#/components/schemas/UserProfile"},"is_new_user":{"type":"boolean","title":"Is New User"}},"type":"object","required":["user","is_new_user"],"title":"AuthBootstrapResponse"},"Body_upload_document_api_knowledge_base_upload_post":{"properties":{"file":{"type":"string","contentMediaType":"application/octet-stream","title":"File"}},"type":"object","required":["file"],"title":"Body_upload_document_api_knowledge_base_upload_post"},"ConfigReloadResponse":{"properties":{"teams":{"items":{"type":"string"},"type":"array","title":"Teams"},"count":{"type":"integer","title":"Count","default":0},"message":{"type":"string","title":"Message","default":"Teams config reloaded successfully"}},"type":"object","title":"ConfigReloadResponse","description":"Response for a successful teams.yaml reload."},"CreateIdeaRequest":{"properties":{"title":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}],"title":"Title"},"signal_text":{"anyOf":[{"type":"string","maxLength":5000},{"type":"null"}],"title":"Signal Text","default":"Autonomous discovery"}},"type":"object","title":"CreateIdeaRequest"},"CreateInterruptRequest":{"properties":{"thread_id":{"type":"string","maxLength":64,"minLength":1,"title":"Thread Id"},"tool_name":{"type":"string","maxLength":128,"minLength":1,"title":"Tool Name"},"message":{"type":"string","maxLength":2000,"minLength":1,"title":"Message"},"tool_input":{"additionalProperties":true,"type":"object","title":"Tool Input"},"decided_by":{"type":"string","title":"Decided By","default":"agent"},"confidence":{"type":"string","title":"Confidence","default":"low"},"reasoning":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Reasoning"},"alternatives":{"items":{"type":"string"},"type":"array","title":"Alternatives","default":[]}},"type":"object","required":["thread_id","tool_name","message"],"title":"CreateInterruptRequest"},"CreateOrganizationRequest":{"properties":{"name":{"type":"string","title":"Name"},"description":{"type":"string","maxLength":2000,"title":"Description","default":""}},"type":"object","required":["name"],"title":"CreateOrganizationRequest","description":"Request body for POST /api/organizations."},"CreateThreadRequest":{"properties":{"title":{"type":"string","maxLength":200,"title":"Title","default":"New Chat"},"idea_id":{"anyOf":[{"type":"string","maxLength":64},{"type":"null"}],"title":"Idea Id"},"tags":{"items":{"type":"string"},"type":"array","maxItems":50,"title":"Tags"},"agent_names":{"items":{"type":"string"},"type":"array","maxItems":50,"title":"Agent Names"}},"type":"object","title":"CreateThreadRequest"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"Interrupt":{"properties":{"id":{"type":"string","title":"Id"},"thread_id":{"type":"string","title":"Thread Id"},"tool_name":{"type":"string","title":"Tool Name"},"tool_input":{"additionalProperties":true,"type":"object","title":"Tool Input"},"message":{"type":"string","title":"Message"},"status":{"type":"string","title":"Status"},"decision":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Decision"},"reason":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Reason"},"reasoning":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Reasoning"},"decided_by":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Decided By"},"decided_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Decided At"},"confidence":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Confidence"},"alternatives":{"items":{"type":"string"},"type":"array","title":"Alternatives","default":[]},"created_at":{"type":"string","title":"Created At"},"updated_at":{"type":"string","title":"Updated At"}},"type":"object","required":["id","thread_id","tool_name","tool_input","message","status","created_at","updated_at"],"title":"Interrupt"},"InterruptDecisionRequest":{"properties":{"decision":{"type":"string","maxLength":50,"minLength":1,"title":"Decision"},"reason":{"type":"string","maxLength":2000,"title":"Reason","default":""},"reasoning":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Reasoning"}},"type":"object","required":["decision"],"title":"InterruptDecisionRequest"},"InterruptResponse":{"properties":{"interrupt":{"$ref":"#/components/schemas/Interrupt"}},"type":"object","required":["interrupt"],"title":"InterruptResponse"},"KnowledgeBaseResponse":{"properties":{"documents":{"items":{"$ref":"#/components/schemas/KnowledgeDocument"},"type":"array","title":"Documents"},"count":{"type":"integer","title":"Count","default":0},"sources":{"additionalProperties":{"type":"integer"},"type":"object","title":"Sources"}},"type":"object","title":"KnowledgeBaseResponse","description":"Response for listing knowledge base documents."},"KnowledgeDocument":{"properties":{"source":{"type":"string","title":"Source"},"path":{"type":"string","title":"Path"},"filename":{"type":"string","title":"Filename"},"content":{"title":"Content"}},"type":"object","required":["source","path","filename","content"],"title":"KnowledgeDocument","description":"A document in the knowledge base."},"ListMCPServersResponse":{"properties":{"servers":{"items":{"$ref":"#/components/schemas/MCPServerResponse"},"type":"array","title":"Servers"},"count":{"type":"integer","title":"Count","default":0}},"type":"object","title":"ListMCPServersResponse","description":"Response for listing MCP servers."},"MCPReloadResponse":{"properties":{"servers":{"items":{"type":"string"},"type":"array","title":"Servers"},"count":{"type":"integer","title":"Count","default":0},"message":{"type":"string","title":"Message","default":"MCP config validated successfully"}},"type":"object","title":"MCPReloadResponse","description":"Response for a successful mcp.json validation."},"MCPServerResponse":{"properties":{"name":{"type":"string","title":"Name"},"transport":{"type":"string","title":"Transport","default":"http"},"url":{"type":"string","title":"Url"},"timeout":{"type":"integer","title":"Timeout","default":10},"options":{"additionalProperties":true,"type":"object","title":"Options"}},"type":"object","required":["name","url"],"title":"MCPServerResponse","description":"Response for a single MCP server."},"MaturityTransitionRequest":{"properties":{"stage":{"type":"string","maxLength":50,"title":"Stage"},"criteria":{"items":{"type":"string"},"type":"array","maxItems":50,"minItems":1,"title":"Criteria"},"evidence_refs":{"items":{"type":"string"},"type":"array","maxItems":50,"minItems":1,"title":"Evidence Refs"},"recorded_by":{"type":"string","maxLength":100,"title":"Recorded By","default":"user"}},"type":"object","required":["stage","criteria","evidence_refs"],"title":"MaturityTransitionRequest","description":"Request body for recording a maturity stage transition."},"NoveltyValidationRequest":{"properties":{"agent_id":{"type":"string","maxLength":100,"minLength":1,"title":"Agent Id","default":"idea-team-validator"},"time_budget_sec":{"anyOf":[{"type":"integer","maximum":3600.0,"minimum":1.0},{"type":"null"}],"title":"Time Budget Sec"}},"type":"object","title":"NoveltyValidationRequest","description":"Optional trigger controls for an Idea Team novelty validation run."},"ProductDefinitionDecisionRequest":{"properties":{"actor_id":{"type":"string","maxLength":64,"minLength":1,"title":"Actor Id","description":"Legacy compatibility field; server-owned identity is recorded."},"decision":{"type":"string","enum":["approve","reject"],"title":"Decision"},"artifact_version":{"type":"integer","minimum":1.0,"title":"Artifact Version"},"reasoning":{"type":"string","maxLength":2000,"minLength":1,"title":"Reasoning"},"alternatives":{"items":{"type":"string"},"type":"array","title":"Alternatives"}},"type":"object","required":["actor_id","decision","artifact_version","reasoning"],"title":"ProductDefinitionDecisionRequest","description":"Explicit Chief of Staff decision against one exact artifact revision.\n\n``actor_id`` is retained as a required legacy wire field for existing\nclients. The service validates it against the server-owned approval role\nand never uses the client value for audit attribution."},"ProductDefinitionRequest":{"properties":{"agent_id":{"type":"string","maxLength":100,"minLength":1,"title":"Agent Id","default":"product-team"},"time_budget_sec":{"anyOf":[{"type":"integer","maximum":3600.0,"minimum":1.0},{"type":"null"}],"title":"Time Budget Sec"}},"type":"object","title":"ProductDefinitionRequest","description":"Optional controls for a bounded Product Team generation."},"ProviderCatalogGroup":{"properties":{"provider_id":{"type":"string","title":"Provider Id"},"provider":{"type":"string","title":"Provider"},"name":{"type":"string","title":"Name"},"endpoint":{"type":"string","title":"Endpoint"},"is_enabled":{"type":"boolean","title":"Is Enabled"},"available":{"type":"boolean","title":"Available"},"message":{"type":"string","title":"Message"},"models":{"items":{"$ref":"#/components/schemas/ProviderModel"},"type":"array","title":"Models"}},"type":"object","required":["provider_id","provider","name","endpoint","is_enabled","available","message"],"title":"ProviderCatalogGroup"},"ProviderCatalogResponse":{"properties":{"groups":{"items":{"$ref":"#/components/schemas/ProviderCatalogGroup"},"type":"array","title":"Groups"}},"type":"object","title":"ProviderCatalogResponse"},"ProviderConfigRequest":{"properties":{"provider":{"type":"string","maxLength":32,"minLength":1,"title":"Provider"},"name":{"type":"string","maxLength":120,"minLength":1,"title":"Name"},"endpoint":{"anyOf":[{"type":"string","maxLength":500},{"type":"null"}],"title":"Endpoint"},"credentials":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Credentials"},"is_enabled":{"type":"boolean","title":"Is Enabled","default":false}},"additionalProperties":false,"type":"object","required":["provider","name"],"title":"ProviderConfigRequest"},"ProviderConfigResponse":{"properties":{"provider_id":{"type":"string","title":"Provider Id"},"provider":{"type":"string","title":"Provider"},"name":{"type":"string","title":"Name"},"endpoint":{"type":"string","title":"Endpoint"},"is_enabled":{"type":"boolean","title":"Is Enabled"},"has_credentials":{"type":"boolean","title":"Has Credentials","default":false},"created_at":{"type":"string","title":"Created At"},"updated_at":{"type":"string","title":"Updated At"}},"type":"object","required":["provider_id","provider","name","endpoint","is_enabled","created_at","updated_at"],"title":"ProviderConfigResponse"},"ProviderDefaultRequest":{"properties":{"provider_id":{"type":"string","maxLength":64,"minLength":1,"title":"Provider Id"},"model_id":{"type":"string","maxLength":200,"minLength":1,"title":"Model Id"}},"additionalProperties":false,"type":"object","required":["provider_id","model_id"],"title":"ProviderDefaultRequest"},"ProviderDefaultResponse":{"properties":{"provider_id":{"type":"string","title":"Provider Id"},"model_id":{"type":"string","title":"Model Id"},"provider":{"type":"string","title":"Provider"},"name":{"type":"string","title":"Name"},"updated_at":{"type":"string","title":"Updated At"}},"type":"object","required":["provider_id","model_id","provider","name","updated_at"],"title":"ProviderDefaultResponse"},"ProviderEnabledRequest":{"properties":{"is_enabled":{"type":"boolean","title":"Is Enabled"}},"additionalProperties":false,"type":"object","required":["is_enabled"],"title":"ProviderEnabledRequest"},"ProviderListResponse":{"properties":{"providers":{"items":{"$ref":"#/components/schemas/ProviderConfigResponse"},"type":"array","title":"Providers"},"count":{"type":"integer","title":"Count","default":0}},"type":"object","title":"ProviderListResponse"},"ProviderModel":{"properties":{"model_id":{"type":"string","title":"Model Id"},"display_name":{"type":"string","title":"Display Name"}},"type":"object","required":["model_id","display_name"],"title":"ProviderModel"},"ProviderTestResponse":{"properties":{"provider_id":{"type":"string","title":"Provider Id"},"provider":{"type":"string","title":"Provider"},"success":{"type":"boolean","title":"Success"},"message":{"type":"string","title":"Message"}},"type":"object","required":["provider_id","provider","success","message"],"title":"ProviderTestResponse"},"RecordDecisionRequest":{"properties":{"work_item_id":{"type":"string","title":"Work Item Id"},"agent_id":{"type":"string","title":"Agent Id"},"decision_type":{"type":"string","enum":["routing","transition","handoff","review"],"title":"Decision Type"},"reasoning":{"type":"string","minLength":1,"title":"Reasoning"},"evidence":{"items":{"type":"string"},"type":"array","title":"Evidence"},"confidence":{"type":"string","enum":["high","low"],"title":"Confidence"},"alternatives":{"items":{"type":"string"},"type":"array","title":"Alternatives"}},"type":"object","required":["work_item_id","agent_id","decision_type","reasoning","confidence"],"title":"RecordDecisionRequest"},"RecordReviewRequest":{"properties":{"reviewer_role":{"type":"string","maxLength":100,"minLength":1,"title":"Reviewer Role"},"decision":{"type":"string","maxLength":50,"minLength":1,"title":"Decision"},"comments":{"type":"string","maxLength":2000,"title":"Comments","default":""}},"type":"object","required":["reviewer_role","decision"],"title":"RecordReviewRequest","description":"Request body for recording an idea review."},"ReplayTemplateRequest":{"properties":{"title":{"type":"string","maxLength":200,"minLength":1,"title":"Title"},"description":{"type":"string","maxLength":5000,"title":"Description","default":""}},"type":"object","required":["title"],"title":"ReplayTemplateRequest","description":"Request body for replaying a template."},"ResumeInterruptRequest":{"properties":{},"type":"object","title":"ResumeInterruptRequest","description":"Empty body — resume is driven by the interrupt's stored decision."},"SaveTemplateRequest":{"properties":{"name":{"type":"string","maxLength":200,"minLength":1,"title":"Name"}},"type":"object","required":["name"],"title":"SaveTemplateRequest","description":"Request body for saving a work item as a template."},"SendMessageRequest":{"properties":{"text":{"type":"string","maxLength":10000,"minLength":1,"title":"Text"},"sender":{"type":"string","maxLength":100,"title":"Sender","default":"user"},"idea_id":{"anyOf":[{"type":"string","maxLength":64},{"type":"null"}],"title":"Idea Id"},"provider_id":{"anyOf":[{"type":"string","maxLength":64},{"type":"null"}],"title":"Provider Id"},"model_id":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}],"title":"Model Id"}},"type":"object","required":["text"],"title":"SendMessageRequest"},"StreamChatRequest":{"properties":{"text":{"type":"string","maxLength":10000,"minLength":1,"title":"Text"},"provider_id":{"anyOf":[{"type":"string","maxLength":64},{"type":"null"}],"title":"Provider Id"},"model_id":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}],"title":"Model Id"},"thread_id":{"anyOf":[{"type":"string","maxLength":64},{"type":"null"}],"title":"Thread Id"}},"type":"object","required":["text"],"title":"StreamChatRequest"},"SubmitWorkItemRequest":{"properties":{"title":{"type":"string","title":"Title"},"description":{"type":"string","maxLength":5000,"title":"Description","default":""},"org_id":{"anyOf":[{"type":"string","maxLength":64},{"type":"null"}],"title":"Org Id"},"department":{"anyOf":[{"type":"string","maxLength":64},{"type":"null"}],"title":"Department"},"source":{"anyOf":[{"type":"string","maxLength":64},{"type":"null"}],"title":"Source"},"template_id":{"anyOf":[{"type":"string","maxLength":64},{"type":"null"}],"title":"Template Id"}},"type":"object","required":["title"],"title":"SubmitWorkItemRequest","description":"Request body for POST /api/work-items."},"TeamConfigResponse":{"properties":{"schema_version":{"type":"string","title":"Schema Version"},"teams":{"additionalProperties":{"$ref":"#/components/schemas/TeamDefinition"},"type":"object","title":"Teams"}},"type":"object","required":["schema_version","teams"],"title":"TeamConfigResponse","description":"Full team configuration response."},"TeamDefinition":{"properties":{"name":{"type":"string","title":"Name"},"description":{"type":"string","title":"Description"},"agents":{"items":{"$ref":"#/components/schemas/AgentDefinition"},"type":"array","title":"Agents"},"routing_keys":{"items":{"type":"string"},"type":"array","title":"Routing Keys"}},"type":"object","required":["name","description","agents","routing_keys"],"title":"TeamDefinition","description":"Team definition from teams.yaml."},"TransitionWorkItemRequest":{"properties":{"status":{"type":"string","maxLength":50,"minLength":1,"title":"Status"},"reasoning":{"type":"string","maxLength":2000,"title":"Reasoning","default":""},"decided_by":{"type":"string","maxLength":64,"title":"Decided By","default":"chief_of_staff"}},"type":"object","required":["status"],"title":"TransitionWorkItemRequest","description":"Request body for advancing a work item through its lifecycle."},"UpdateIdeaRequest":{"properties":{"field":{"type":"string","maxLength":50,"title":"Field"},"value":{"type":"string","maxLength":5000,"title":"Value"}},"type":"object","required":["field","value"],"title":"UpdateIdeaRequest"},"UpdateThreadRequest":{"properties":{"title":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}],"title":"Title"},"status":{"anyOf":[{"type":"string","maxLength":50},{"type":"null"}],"title":"Status"},"idea_id":{"anyOf":[{"type":"string","maxLength":64},{"type":"null"}],"title":"Idea Id"},"tags":{"anyOf":[{"items":{"type":"string"},"type":"array","maxItems":50},{"type":"null"}],"title":"Tags"},"agent_names":{"anyOf":[{"items":{"type":"string"},"type":"array","maxItems":50},{"type":"null"}],"title":"Agent Names"}},"type":"object","title":"UpdateThreadRequest"},"UserProfile":{"properties":{"uid":{"type":"string","title":"Uid"},"email":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Email"},"display_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Display Name"},"photo_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Photo Url"},"provider":{"type":"string","title":"Provider"},"created_at":{"type":"string","title":"Created At"},"updated_at":{"type":"string","title":"Updated At"},"last_sign_in_at":{"type":"string","title":"Last Sign In At"}},"type":"object","required":["uid","provider","created_at","updated_at","last_sign_in_at"],"title":"UserProfile"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}}}