feat: implement simple query service and enhance provider abstraction

- Introduced a new Simple Query Service to streamline basic AI queries, allowing for structured JSON outputs.
- Updated existing routes to utilize the new service, replacing direct SDK calls with a unified interface for querying.
- Enhanced provider handling in various routes, including generate-spec, generate-features-from-spec, and validate-issue, to support both Claude and Cursor models seamlessly.
- Added structured output support for improved response handling and error management across the application.
This commit is contained in:
webdevcody
2026-01-12 17:33:54 -05:00
parent f3f5d05349
commit eb8ebe3ce0
12 changed files with 563 additions and 951 deletions

View File

@@ -174,7 +174,7 @@ export interface ContentBlock {
*/
export interface ProviderMessage {
type: 'assistant' | 'user' | 'error' | 'result';
subtype?: 'success' | 'error';
subtype?: 'success' | 'error' | 'error_max_turns' | 'error_max_structured_output_retries';
session_id?: string;
message?: {
role: 'user' | 'assistant';
@@ -183,6 +183,8 @@ export interface ProviderMessage {
result?: string;
error?: string;
parent_tool_use_id?: string | null;
/** Structured output from SDK when using outputFormat */
structured_output?: Record<string, unknown>;
}
/**