Enhanced code review and frontend validation with intelligent triggers: Code Review Agent Enhancement: - Added Sequential Thinking MCP integration for complex issues - Triggers on 2+ rejections or 3+ critical issues - New escalation format with root cause analysis - Comprehensive solution strategies with trade-off evaluation - Educational feedback to break rejection cycles - Files: .claude/agents/code-review.md (+308 lines) - Docs: CODE_REVIEW_ST_ENHANCEMENT.md, CODE_REVIEW_ST_TESTING.md Frontend Design Skill Enhancement: - Automatic invocation for ANY UI change - Comprehensive validation checklist (200+ checkpoints) - 8 validation categories (visual, interactive, responsive, a11y, etc.) - 3 validation levels (quick, standard, comprehensive) - Integration with code review workflow - Files: .claude/skills/frontend-design/SKILL.md (+120 lines) - Docs: UI_VALIDATION_CHECKLIST.md (462 lines), AUTOMATIC_VALIDATION_ENHANCEMENT.md (587 lines) Settings Optimization: - Repaired .claude/settings.local.json (fixed m365 pattern) - Reduced permissions from 49 to 33 (33% reduction) - Removed duplicates, sorted alphabetically - Created SETTINGS_PERMISSIONS.md documentation Checkpoint Command Enhancement: - Dual checkpoint system (git + database) - Saves session context to API for cross-machine recall - Includes git metadata in database context - Files: .claude/commands/checkpoint.md (+139 lines) Decision Rationale: - Sequential Thinking MCP breaks rejection cycles by identifying root causes - Automatic frontend validation catches UI issues before code review - Dual checkpoints enable complete project memory across machines - Settings optimization improves maintainability Total: 1,200+ lines of documentation and enhancements Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
1 line
38 KiB
Plaintext
1 line
38 KiB
Plaintext
{"openapi":"3.1.0","info":{"title":"Auto-Claude-Plus API","description":"Backend API for the Auto-Claude-Plus autonomous coding framework","version":"0.1.0"},"paths":{"/api/projects":{"get":{"tags":["Projects"],"summary":"List Projects","description":"List all projects.","operationId":"list_projects_api_projects_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/ProjectResponse"},"type":"array","title":"Response List Projects Api Projects Get"}}}}}},"post":{"tags":["Projects"],"summary":"Create Project","description":"Create a new project.","operationId":"create_project_api_projects_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectCreate"}}},"required":true},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/projects/{project_id}":{"get":{"tags":["Projects"],"summary":"Get Project","description":"Get a specific project by ID.","operationId":"get_project_api_projects__project_id__get","parameters":[{"name":"project_id","in":"path","required":true,"schema":{"type":"integer","title":"Project Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"tags":["Projects"],"summary":"Update Project","description":"Update a project.","operationId":"update_project_api_projects__project_id__put","parameters":[{"name":"project_id","in":"path","required":true,"schema":{"type":"integer","title":"Project Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectUpdate"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["Projects"],"summary":"Delete Project","description":"Delete a project and all related data (cascade delete).","operationId":"delete_project_api_projects__project_id__delete","parameters":[{"name":"project_id","in":"path","required":true,"schema":{"type":"integer","title":"Project Id"}}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/projects/{project_id}/adopt":{"post":{"tags":["Projects"],"summary":"Adopt Codebase","description":"Adopt an existing codebase into a project.","operationId":"adopt_codebase_api_projects__project_id__adopt_post","parameters":[{"name":"project_id","in":"path","required":true,"schema":{"type":"integer","title":"Project Id"}},{"name":"path","in":"query","required":true,"schema":{"type":"string","title":"Path"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/projects/{project_id}/spec":{"get":{"tags":["Specs"],"summary":"Get Current Spec","description":"Get the current active spec for a project.","operationId":"get_current_spec_api_projects__project_id__spec_get","parameters":[{"name":"project_id","in":"path","required":true,"schema":{"type":"integer","title":"Project Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SpecResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["Specs"],"summary":"Create Spec","description":"Create or update the spec for a project.","operationId":"create_spec_api_projects__project_id__spec_post","parameters":[{"name":"project_id","in":"path","required":true,"schema":{"type":"integer","title":"Project Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SpecCreate"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SpecResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/projects/{project_id}/respec":{"post":{"tags":["Specs"],"summary":"Trigger Respec","description":"Trigger a Re-Spec for a project.\nCreates a new spec version while preserving the link to the parent spec.","operationId":"trigger_respec_api_projects__project_id__respec_post","parameters":[{"name":"project_id","in":"path","required":true,"schema":{"type":"integer","title":"Project Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SpecCreate"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SpecResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/projects/{project_id}/spec/history":{"get":{"tags":["Specs"],"summary":"Get Spec History","description":"Get all spec versions for a project.","operationId":"get_spec_history_api_projects__project_id__spec_history_get","parameters":[{"name":"project_id","in":"path","required":true,"schema":{"type":"integer","title":"Project Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SpecResponse"},"title":"Response Get Spec History Api Projects Project Id Spec History Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/projects/{project_id}/tasks":{"get":{"tags":["Tasks"],"summary":"List Tasks","description":"List tasks for a project with optional filters.","operationId":"list_tasks_api_projects__project_id__tasks_get","parameters":[{"name":"project_id","in":"path","required":true,"schema":{"type":"integer","title":"Project Id"}},{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Filter by status","title":"Status"},"description":"Filter by status"},{"name":"phase_id","in":"query","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"Filter by phase","title":"Phase Id"},"description":"Filter by phase"},{"name":"agent_type","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Filter by agent type","title":"Agent Type"},"description":"Filter by agent type"},{"name":"flagged","in":"query","required":false,"schema":{"anyOf":[{"type":"boolean"},{"type":"null"}],"description":"Filter by flagged status","title":"Flagged"},"description":"Filter by flagged status"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TaskResponse"},"title":"Response List Tasks Api Projects Project Id Tasks Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["Tasks"],"summary":"Create Task","description":"Create a new task for a project.","operationId":"create_task_api_projects__project_id__tasks_post","parameters":[{"name":"project_id","in":"path","required":true,"schema":{"type":"integer","title":"Project Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskCreate"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/tasks/{task_id}":{"get":{"tags":["Tasks"],"summary":"Get Task","description":"Get a specific task by ID.","operationId":"get_task_api_tasks__task_id__get","parameters":[{"name":"task_id","in":"path","required":true,"schema":{"type":"integer","title":"Task Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"tags":["Tasks"],"summary":"Update Task","description":"Update a task.","operationId":"update_task_api_tasks__task_id__put","parameters":[{"name":"task_id","in":"path","required":true,"schema":{"type":"integer","title":"Task Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskUpdate"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["Tasks"],"summary":"Delete Task","description":"Delete a task.","operationId":"delete_task_api_tasks__task_id__delete","parameters":[{"name":"task_id","in":"path","required":true,"schema":{"type":"integer","title":"Task Id"}}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/tasks/{task_id}/status":{"put":{"tags":["Tasks"],"summary":"Update Task Status","description":"Update task status.","operationId":"update_task_status_api_tasks__task_id__status_put","parameters":[{"name":"task_id","in":"path","required":true,"schema":{"type":"integer","title":"Task Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskStatusUpdate"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/tasks/{task_id}/retry":{"post":{"tags":["Tasks"],"summary":"Retry Task","description":"Retry a failed/blocked task.","operationId":"retry_task_api_tasks__task_id__retry_post","parameters":[{"name":"task_id","in":"path","required":true,"schema":{"type":"integer","title":"Task Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/tasks/{task_id}/flag":{"post":{"tags":["Tasks"],"summary":"Flag Task","description":"Flag a task for human review.","operationId":"flag_task_api_tasks__task_id__flag_post","parameters":[{"name":"task_id","in":"path","required":true,"schema":{"type":"integer","title":"Task Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/agents/start":{"post":{"tags":["Agents"],"summary":"Start Agent","description":"Start a new agent session.","operationId":"start_agent_api_agents_start_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentStartRequest"}}},"required":true},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/agents/{session_id}/stop":{"post":{"tags":["Agents"],"summary":"Stop Agent","description":"Stop an agent session.","operationId":"stop_agent_api_agents__session_id__stop_post","parameters":[{"name":"session_id","in":"path","required":true,"schema":{"type":"integer","title":"Session Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/agents/active":{"get":{"tags":["Agents"],"summary":"List Active Agents","description":"List all active agent sessions.","operationId":"list_active_agents_api_agents_active_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/AgentResponse"},"type":"array","title":"Response List Active Agents Api Agents Active Get"}}}}}}},"/api/agents/{session_id}":{"get":{"tags":["Agents"],"summary":"Get Agent Session","description":"Get details of a specific agent session.","operationId":"get_agent_session_api_agents__session_id__get","parameters":[{"name":"session_id","in":"path","required":true,"schema":{"type":"integer","title":"Session Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/memory/project/{project_id}":{"get":{"tags":["Memory"],"summary":"Get Project Memory","description":"Get all memory items for a project.","operationId":"get_project_memory_api_memory_project__project_id__get","parameters":[{"name":"project_id","in":"path","required":true,"schema":{"type":"integer","title":"Project Id"}},{"name":"type","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Type"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ProjectMemoryResponse"},"title":"Response Get Project Memory Api Memory Project Project Id Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["Memory"],"summary":"Add Project Memory","description":"Add a memory item for a project.","operationId":"add_project_memory_api_memory_project__project_id__post","parameters":[{"name":"project_id","in":"path","required":true,"schema":{"type":"integer","title":"Project Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectMemoryCreate"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectMemoryResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/memory/project/{project_id}/{item_id}":{"put":{"tags":["Memory"],"summary":"Update Project Memory","description":"Update a project memory item.","operationId":"update_project_memory_api_memory_project__project_id___item_id__put","parameters":[{"name":"project_id","in":"path","required":true,"schema":{"type":"integer","title":"Project Id"}},{"name":"item_id","in":"path","required":true,"schema":{"type":"integer","title":"Item Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectMemoryCreate"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectMemoryResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["Memory"],"summary":"Delete Project Memory","description":"Delete a project memory item.","operationId":"delete_project_memory_api_memory_project__project_id___item_id__delete","parameters":[{"name":"project_id","in":"path","required":true,"schema":{"type":"integer","title":"Project Id"}},{"name":"item_id","in":"path","required":true,"schema":{"type":"integer","title":"Item Id"}}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/memory/global":{"get":{"tags":["Memory"],"summary":"Get Global Memory","description":"Get all global memory items.","operationId":"get_global_memory_api_memory_global_get","parameters":[{"name":"type","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Type"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/GlobalMemoryResponse"},"title":"Response Get Global Memory Api Memory Global Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["Memory"],"summary":"Add Global Memory","description":"Add a global memory item.","operationId":"add_global_memory_api_memory_global_post","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GlobalMemoryCreate"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GlobalMemoryResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/memory/global/{item_id}":{"put":{"tags":["Memory"],"summary":"Update Global Memory","description":"Update a global memory item.","operationId":"update_global_memory_api_memory_global__item_id__put","parameters":[{"name":"item_id","in":"path","required":true,"schema":{"type":"integer","title":"Item Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GlobalMemoryCreate"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GlobalMemoryResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["Memory"],"summary":"Delete Global Memory","description":"Delete a global memory item.","operationId":"delete_global_memory_api_memory_global__item_id__delete","parameters":[{"name":"item_id","in":"path","required":true,"schema":{"type":"integer","title":"Item Id"}}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/memory/infrastructure":{"get":{"tags":["Memory"],"summary":"Get Infrastructure","description":"Get infrastructure configurations.","operationId":"get_infrastructure_api_memory_infrastructure_get","parameters":[{"name":"type","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Type"}},{"name":"project_id","in":"query","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Project Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/InfrastructureResponse"},"title":"Response Get Infrastructure Api Memory Infrastructure Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["Memory"],"summary":"Add Infrastructure","description":"Add an infrastructure configuration.","operationId":"add_infrastructure_api_memory_infrastructure_post","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/InfrastructureCreate"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/InfrastructureResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/memory/infrastructure/{config_id}":{"put":{"tags":["Memory"],"summary":"Update Infrastructure","description":"Update an infrastructure configuration.","operationId":"update_infrastructure_api_memory_infrastructure__config_id__put","parameters":[{"name":"config_id","in":"path","required":true,"schema":{"type":"integer","title":"Config Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/InfrastructureUpdate"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/InfrastructureResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["Memory"],"summary":"Delete Infrastructure","description":"Delete an infrastructure configuration.","operationId":"delete_infrastructure_api_memory_infrastructure__config_id__delete","parameters":[{"name":"config_id","in":"path","required":true,"schema":{"type":"integer","title":"Config Id"}}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/notifications":{"get":{"tags":["Notifications"],"summary":"Get Notifications","description":"Get notifications, optionally filtered by project or read status.","operationId":"get_notifications_api_notifications_get","parameters":[{"name":"project_id","in":"query","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Project Id"}},{"name":"unread_only","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Unread Only"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":50,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/NotificationResponse"},"title":"Response Get Notifications Api Notifications Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/notifications/{notification_id}/read":{"put":{"tags":["Notifications"],"summary":"Mark As Read","description":"Mark a notification as read.","operationId":"mark_as_read_api_notifications__notification_id__read_put","parameters":[{"name":"notification_id","in":"path","required":true,"schema":{"type":"integer","title":"Notification Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotificationResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/notifications/{notification_id}":{"delete":{"tags":["Notifications"],"summary":"Delete Notification","description":"Delete a notification.","operationId":"delete_notification_api_notifications__notification_id__delete","parameters":[{"name":"notification_id","in":"path","required":true,"schema":{"type":"integer","title":"Notification Id"}}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/notifications/mark-all-read":{"post":{"tags":["Notifications"],"summary":"Mark All Read","description":"Mark all notifications as read.","operationId":"mark_all_read_api_notifications_mark_all_read_post","parameters":[{"name":"project_id","in":"query","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Project Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/settings":{"get":{"tags":["Settings"],"summary":"Get Settings","description":"Get all application settings.","operationId":"get_settings_api_settings_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}},"put":{"tags":["Settings"],"summary":"Update Settings","description":"Update application settings.","operationId":"update_settings_api_settings_put","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SettingsUpdate"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/settings/{key}":{"get":{"tags":["Settings"],"summary":"Get Setting","description":"Get a specific setting by key.","operationId":"get_setting_api_settings__key__get","parameters":[{"name":"key","in":"path","required":true,"schema":{"type":"string","title":"Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"tags":["Settings"],"summary":"Set Setting","description":"Set a specific setting.","operationId":"set_setting_api_settings__key__put","parameters":[{"name":"key","in":"path","required":true,"schema":{"type":"string","title":"Key"}},{"name":"value","in":"query","required":true,"schema":{"title":"Value"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/":{"get":{"summary":"Root","description":"Root endpoint - health check.","operationId":"root__get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/health":{"get":{"summary":"Health Check","description":"Health check endpoint.","operationId":"health_check_health_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}}},"components":{"schemas":{"AgentResponse":{"properties":{"id":{"type":"integer","title":"Id"},"project_id":{"type":"integer","title":"Project Id"},"task_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Task Id"},"agent_type":{"type":"string","title":"Agent Type"},"status":{"type":"string","title":"Status"},"started_at":{"type":"string","format":"date-time","title":"Started At"},"ended_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Ended At"},"iterations":{"type":"integer","title":"Iterations"},"completion_promise":{"type":"boolean","title":"Completion Promise"}},"type":"object","required":["id","project_id","task_id","agent_type","status","started_at","ended_at","iterations","completion_promise"],"title":"AgentResponse","description":"Schema for agent session response."},"AgentStartRequest":{"properties":{"project_id":{"type":"integer","title":"Project Id"},"task_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Task Id"},"agent_type":{"type":"string","title":"Agent Type"}},"type":"object","required":["project_id","agent_type"],"title":"AgentStartRequest","description":"Schema for starting an agent session."},"GlobalMemoryCreate":{"properties":{"type":{"type":"string","title":"Type"},"content":{"type":"string","title":"Content"},"metadata":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Metadata"}},"type":"object","required":["type","content"],"title":"GlobalMemoryCreate","description":"Schema for creating global memory item."},"GlobalMemoryResponse":{"properties":{"id":{"type":"integer","title":"Id"},"type":{"type":"string","title":"Type"},"content":{"type":"string","title":"Content"},"extra_data":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Extra Data"},"usage_count":{"type":"integer","title":"Usage Count"},"created_at":{"type":"string","format":"date-time","title":"Created At"}},"type":"object","required":["id","type","content","usage_count","created_at"],"title":"GlobalMemoryResponse","description":"Schema for global memory response."},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"InfrastructureCreate":{"properties":{"name":{"type":"string","title":"Name"},"type":{"type":"string","title":"Type"},"config":{"additionalProperties":true,"type":"object","title":"Config"},"projects":{"anyOf":[{"items":{"type":"integer"},"type":"array"},{"type":"null"}],"title":"Projects"}},"type":"object","required":["name","type","config"],"title":"InfrastructureCreate","description":"Schema for creating infrastructure config."},"InfrastructureResponse":{"properties":{"id":{"type":"integer","title":"Id"},"name":{"type":"string","title":"Name"},"type":{"type":"string","title":"Type"},"config":{"additionalProperties":true,"type":"object","title":"Config"},"projects":{"anyOf":[{"items":{"type":"integer"},"type":"array"},{"type":"null"}],"title":"Projects"},"created_at":{"type":"string","format":"date-time","title":"Created At"},"updated_at":{"type":"string","format":"date-time","title":"Updated At"}},"type":"object","required":["id","name","type","config","projects","created_at","updated_at"],"title":"InfrastructureResponse","description":"Schema for infrastructure memory response."},"InfrastructureUpdate":{"properties":{"name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Name"},"type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Type"},"config":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Config"},"projects":{"anyOf":[{"items":{"type":"integer"},"type":"array"},{"type":"null"}],"title":"Projects"}},"type":"object","title":"InfrastructureUpdate","description":"Schema for updating infrastructure config."},"NotificationResponse":{"properties":{"id":{"type":"integer","title":"Id"},"project_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Project Id"},"type":{"type":"string","title":"Type"},"message":{"type":"string","title":"Message"},"read":{"type":"boolean","title":"Read"},"created_at":{"type":"string","format":"date-time","title":"Created At"}},"type":"object","required":["id","project_id","type","message","read","created_at"],"title":"NotificationResponse","description":"Schema for notification response."},"ProjectCreate":{"properties":{"name":{"type":"string","title":"Name"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"path":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Path"},"complexity":{"type":"string","title":"Complexity","default":"medium"},"design_mode":{"type":"string","title":"Design Mode","default":"mvp"}},"type":"object","required":["name"],"title":"ProjectCreate","description":"Schema for creating a new project."},"ProjectMemoryCreate":{"properties":{"type":{"type":"string","title":"Type"},"content":{"type":"string","title":"Content"},"metadata":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Metadata"}},"type":"object","required":["type","content"],"title":"ProjectMemoryCreate","description":"Schema for creating project memory item."},"ProjectMemoryResponse":{"properties":{"id":{"type":"integer","title":"Id"},"project_id":{"type":"integer","title":"Project Id"},"type":{"type":"string","title":"Type"},"content":{"type":"string","title":"Content"},"extra_data":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Extra Data"},"created_at":{"type":"string","format":"date-time","title":"Created At"}},"type":"object","required":["id","project_id","type","content","created_at"],"title":"ProjectMemoryResponse","description":"Schema for project memory response."},"ProjectResponse":{"properties":{"id":{"type":"integer","title":"Id"},"name":{"type":"string","title":"Name"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"path":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Path"},"status":{"type":"string","title":"Status"},"complexity":{"type":"string","title":"Complexity"},"design_mode":{"type":"string","title":"Design Mode"},"current_phase":{"type":"integer","title":"Current Phase"},"total_phases":{"type":"integer","title":"Total Phases"},"spec_version":{"type":"integer","title":"Spec Version"},"created_at":{"type":"string","format":"date-time","title":"Created At"},"updated_at":{"type":"string","format":"date-time","title":"Updated At"}},"type":"object","required":["id","name","description","path","status","complexity","design_mode","current_phase","total_phases","spec_version","created_at","updated_at"],"title":"ProjectResponse","description":"Schema for project response."},"ProjectUpdate":{"properties":{"name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Name"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"path":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Path"},"status":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"},"complexity":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Complexity"},"design_mode":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Design Mode"},"current_phase":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Current Phase"}},"type":"object","title":"ProjectUpdate","description":"Schema for updating a project."},"SettingsUpdate":{"properties":{"settings":{"additionalProperties":true,"type":"object","title":"Settings"}},"type":"object","required":["settings"],"title":"SettingsUpdate","description":"Schema for updating settings."},"SpecCreate":{"properties":{"content":{"type":"string","title":"Content"}},"type":"object","required":["content"],"title":"SpecCreate","description":"Schema for creating a new spec."},"SpecResponse":{"properties":{"id":{"type":"integer","title":"Id"},"project_id":{"type":"integer","title":"Project Id"},"version":{"type":"integer","title":"Version"},"content":{"type":"string","title":"Content"},"is_active":{"type":"boolean","title":"Is Active"},"parent_spec_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Parent Spec Id"},"created_at":{"type":"string","format":"date-time","title":"Created At"}},"type":"object","required":["id","project_id","version","content","is_active","parent_spec_id","created_at"],"title":"SpecResponse","description":"Schema for spec response."},"TaskCreate":{"properties":{"name":{"type":"string","title":"Name"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"phase_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Phase Id"},"priority":{"type":"integer","title":"Priority","default":0},"estimated_time":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Estimated Time"},"agent_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Agent Type"},"depends_on":{"anyOf":[{"items":{"type":"integer"},"type":"array"},{"type":"null"}],"title":"Depends On"}},"type":"object","required":["name"],"title":"TaskCreate","description":"Schema for creating a new task."},"TaskResponse":{"properties":{"id":{"type":"integer","title":"Id"},"project_id":{"type":"integer","title":"Project Id"},"spec_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Spec Id"},"phase_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Phase Id"},"name":{"type":"string","title":"Name"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"status":{"type":"string","title":"Status"},"priority":{"type":"integer","title":"Priority"},"estimated_time":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Estimated Time"},"actual_time":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Actual Time"},"agent_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Agent Type"},"iteration_count":{"type":"integer","title":"Iteration Count"},"flagged_for_review":{"type":"boolean","title":"Flagged For Review"},"depends_on":{"anyOf":[{"items":{"type":"integer"},"type":"array"},{"type":"null"}],"title":"Depends On"},"created_at":{"type":"string","format":"date-time","title":"Created At"},"updated_at":{"type":"string","format":"date-time","title":"Updated At"}},"type":"object","required":["id","project_id","spec_id","phase_id","name","description","status","priority","estimated_time","actual_time","agent_type","iteration_count","flagged_for_review","depends_on","created_at","updated_at"],"title":"TaskResponse","description":"Schema for task response."},"TaskStatusUpdate":{"properties":{"status":{"type":"string","title":"Status"}},"type":"object","required":["status"],"title":"TaskStatusUpdate","description":"Schema for updating task status."},"TaskUpdate":{"properties":{"name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Name"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"status":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"},"priority":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Priority"},"estimated_time":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Estimated Time"},"actual_time":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Actual Time"},"agent_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Agent Type"},"iteration_count":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Iteration Count"},"flagged_for_review":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Flagged For Review"},"depends_on":{"anyOf":[{"items":{"type":"integer"},"type":"array"},{"type":"null"}],"title":"Depends On"}},"type":"object","title":"TaskUpdate","description":"Schema for updating a task."},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}}} |