/** * This file was auto-generated by openapi-typescript. * Do not make direct changes to the file. */ export interface paths { "/admin/engine-config": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; /** * Get Engine Config * @description Return the current admin-managed engine settings. */ get: operations["get_engine_config_admin_engine_config_get"]; put?: never; post?: never; delete?: never; options?: never; head?: never; /** * Patch Engine Config * @description Persist engine settings for administrators. */ patch: operations["patch_engine_config_admin_engine_config_patch"]; trace?: never; }; "/admin/health": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; /** * Admin Health * @description Return operational health from live backend checks. */ get: operations["admin_health_admin_health_get"]; put?: never; post?: never; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/admin/usage": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; /** * Admin Usage * @description Return AI token/cost usage from persisted turns or dev fallback state. */ get: operations["admin_usage_admin_usage_get"]; put?: never; post?: never; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/admin/users": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; /** * List Users * @description Return users observed by the server-side auth/session boundary. */ get: operations["list_users_admin_users_get"]; put?: never; /** * Create User * @description Create or reactivate a managed user without requiring that user to log in first. */ post: operations["create_user_admin_users_post"]; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/admin/users/{user_id}": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; get?: never; put?: never; post?: never; /** * Delete User * @description Deactivate a managed user and revoke any active browser sessions. */ delete: operations["delete_user_admin_users__user_id__delete"]; options?: never; head?: never; /** * Patch User * @description Update a server-known user's role/profile for the current API process. */ patch: operations["patch_user_admin_users__user_id__patch"]; trace?: never; }; "/auth/callback": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; /** * Callback * @description Exchange Google auth code, validate identity, and issue a BFF cookie. */ get: operations["callback_auth_callback_get"]; put?: never; post?: never; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/auth/config": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; /** * Auth Config * @description Return non-secret login configuration for the browser login screen. */ get: operations["auth_config_auth_config_get"]; put?: never; post?: never; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/auth/dev-login": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; get?: never; put?: never; /** * Dev Login * @description Dev-only server login for local E2E and manual testing. * * This is not a browser-side auth shortcut: the role is stored server-side and * the browser only gets the same opaque HttpOnly cookie used by OAuth. */ post: operations["dev_login_auth_dev_login_post"]; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/auth/login": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; /** * Login * @description Start Google OIDC authorization code + PKCE login. */ get: operations["login_auth_login_get"]; put?: never; post?: never; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/auth/logout": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; get?: never; put?: never; /** * Logout * @description Revoke the current server session and expire the browser cookie. */ post: operations["logout_auth_logout_post"]; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/auth/me": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; /** * Me * @description Return the current authenticated user. Unauthenticated requests are 401. */ get: operations["me_auth_me_get"]; put?: never; post?: never; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/auth/saml/acs": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; get?: never; put?: never; /** * Saml Acs * @description Accept a minimal unsigned SAMLResponse for local fixture SAML proof. * * Signed SAML verification is intentionally not implemented. When * SAML_X509_CERT_FINGERPRINT is configured, this endpoint refuses to trust the * response so production does not silently run unsigned SAML. */ post: operations["saml_acs_auth_saml_acs_post"]; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/eval/health": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; /** * Eval Health * @description 평가 라우터 헬스 — Features:evaluator 로 전환됨. */ get: operations["eval_health_eval_health_get"]; put?: never; post?: never; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/eval/sessions/{session_id}/evaluation": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; /** * Get Session Evaluation * @description 회기 평가 조회(읽기) — 저장된 마지막 deep 재평가 결과 + 기법 분포. * * 아직 평가 트리거가 없었다면 deep=None + 빈 분포. */ get: operations["get_session_evaluation_eval_sessions__session_id__evaluation_get"]; put?: never; post?: never; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/eval/sessions/{session_id}/reevaluate": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; get?: never; put?: never; /** * Reevaluate Session * @description 회기 전체 deep-loop 재평가(슈퍼바이저 rationale/critique + 개선점 + 대안발화). * * 저장된 마스킹 축어록을 evaluator.evaluate_session 으로 평가한다. * 엔진 장애는 503 으로 변환(평가는 비치명적이지만 트리거는 사용자 명시 요청이라 에러 노출). */ post: operations["reevaluate_session_eval_sessions__session_id__reevaluate_post"]; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/eval/sessions/{session_id}/turn": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; get?: never; put?: never; /** * Reevaluate Turn * @description 단일 상담자 발화 fast-loop 재평가(기법/내담자상태/적절성/의도이탈). * * 저장된 축어록에서 해당 turn_seq 상담자 발화 + 직후 내담자 응답을 재구성해 * 경량 TurnContext 로 evaluator.evaluate_turn 을 호출한다. */ post: operations["reevaluate_turn_eval_sessions__session_id__turn_post"]; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/health": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; /** * Health * @description liveness + DB + 엔진 게이트웨이 readiness. */ get: operations["health_health_get"]; put?: never; post?: never; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/kb/eval-grounding": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; get?: never; put?: never; /** * Eval Grounding * @description 평가 AI 채점 근거 회수(DSM/이론/taxonomy 정답라벨 + 논평). * * role 무시하고 evaluator 정책 고정(평가 전용 경로). crag_pass=False 면 호출부가 * '관찰 프레이밍'으로 다운그레이드(F-06). */ post: operations["eval_grounding_kb_eval_grounding_post"]; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/kb/health": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; /** * Kb Health * @description KB 라우터 + RAG 구성요소 readiness. * * DB 풀/임베딩 모델 가용 여부를 *크래시 없이* 점검(미가용=degraded). 부트/디버그용. */ get: operations["kb_health_kb_health_get"]; put?: never; post?: never; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/kb/index": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; get?: never; put?: never; /** * Index Document * @description 문서 인덱싱(관리자, RBAC ADMIN 강제). content_hash 증분 + 청크 임베딩 적재. * * ⚠️ 임베딩은 무거운 작업 → 본래 BackgroundTasks/배치 워커 위임 권장(202 Accepted). * DSM verbatim 저작권(license C/D)은 source 등록 시점 external_llm_ok 가드 책임. * 모델 미가용 시 embedding NULL 폴백(BM25 만, degraded=True) — 크래시 X. */ post: operations["index_document_kb_index_post"]; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/kb/persona-memory": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; get?: never; put?: never; /** * Persona Memory * @description 회기 시작 episodic recall(app.turn_embedding, case_id 스코프 강제). * * CCD/정답/평가는 이 경로에 구조적으로 부재(코드경로 부재 1차방어). 반환은 turn_id+점수만 * (본문은 호출부 memory.build_recall_context 가 turns 조인). 내담자 뷰 RLS 주입. */ post: operations["persona_memory_kb_persona_memory_post"]; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/kb/search": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; get?: never; put?: never; /** * Search * @description 정적 지식 KB 하이브리드 검색(dense pgvector cosine + sparse tsvector + 리랭킹). * * role 이 정책 4-튜플(사전필터·가중치·본문노출·라벨)을 고정한다 — 호출부가 못 넓힌다. * AI 뷰 RLS 컨텍스트(app.current_ai_view)를 커넥션에 주입해 visible_to 를 2중 강제. */ post: operations["search_kb_search_post"]; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/personas": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; /** * List Personas * @description Return latest approved personas from app.persona_card. */ get: operations["list_personas_personas_get"]; put?: never; post?: never; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/personas/drafts": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; get?: never; put?: never; /** * Create Persona Draft Route * @description Create a draft persona card version for faculty review. */ post: operations["create_persona_draft_route_personas_drafts_post"]; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/personas/drafts/{persona_id}": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; /** * Get Persona Draft Route * @description Return a draft/review persona card for editing. */ get: operations["get_persona_draft_route_personas_drafts__persona_id__get"]; /** * Update Persona Draft Route * @description Update a draft/review persona card and optionally submit it for review. */ put: operations["update_persona_draft_route_personas_drafts__persona_id__put"]; post?: never; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/personas/review": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; /** * List Persona Reviews * @description Return draft/review personas awaiting faculty approval. */ get: operations["list_persona_reviews_personas_review_get"]; put?: never; post?: never; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/personas/review/{persona_id}": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; get?: never; put?: never; /** * Decide Persona Review * @description Approve a persona for learners or return it to draft for changes. */ post: operations["decide_persona_review_personas_review__persona_id__post"]; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/sessions": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; /** * List Learner Sessions * @description Return the current learner's real practice sessions. */ get: operations["list_learner_sessions_sessions_get"]; put?: never; /** * Start Session * @description Start a learner-owned practice session. */ post: operations["start_session_sessions_post"]; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/sessions/{session_id}": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; /** * Get Session Detail * @description Return a learner-owned session with transcript for resume/history. */ get: operations["get_session_detail_sessions__session_id__get"]; put?: never; post?: never; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/sessions/{session_id}/end": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; get?: never; put?: never; /** * End Session * @description End a learner-owned session and prepare carry-over state. */ post: operations["end_session_sessions__session_id__end_post"]; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/sessions/{session_id}/review": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; /** * Get Session Review * @description Return a learner-safe review built only from the stored session transcript. */ get: operations["get_session_review_sessions__session_id__review_get"]; put?: never; post?: never; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/sessions/{session_id}/stream": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; get?: never; put?: never; /** * Stream Turn * @description Stream a generated client reply for one trainee utterance. */ post: operations["stream_turn_sessions__session_id__stream_post"]; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/sessions/{session_id}/turn": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; get?: never; put?: never; /** * Submit Turn * @description Submit one trainee utterance and return the generated client reply. */ post: operations["submit_turn_sessions__session_id__turn_post"]; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/teacher/dashboard": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; /** * Teacher Dashboard * @description Return teacher-visible dashboard data from real sessions only. */ get: operations["teacher_dashboard_teacher_dashboard_get"]; put?: never; post?: never; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/users/me": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; /** Get Me */ get: operations["get_me_users_me_get"]; put?: never; post?: never; delete?: never; options?: never; head?: never; /** Patch Me */ patch: operations["patch_me_users_me_patch"]; trace?: never; }; "/users/me/preferences": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; /** Get Preferences */ get: operations["get_preferences_users_me_preferences_get"]; put?: never; post?: never; delete?: never; options?: never; head?: never; /** Patch Preferences */ patch: operations["patch_preferences_users_me_preferences_patch"]; trace?: never; }; "/users/me/voice-presets": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; /** Get Voice Presets */ get: operations["get_voice_presets_users_me_voice_presets_get"]; put?: never; post?: never; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/voice/health": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; /** * Voice Health * @description Return voice service readiness. */ get: operations["voice_health_voice_health_get"]; put?: never; post?: never; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; } export type webhooks = Record; export interface components { schemas: { /** AdminEngineConfigPatch */ AdminEngineConfigPatch: { /** Engine Mode */ engine_mode?: string | null; /** Engine Url */ engine_url?: string | null; /** Model */ model?: string | null; }; /** AdminEngineConfigResponse */ AdminEngineConfigResponse: { /** * Durable * @default false */ durable: boolean; /** Engine Mode */ engine_mode: string; /** Engine Url */ engine_url: string; /** Model */ model: string; /** * Source * @default runtime_default * @enum {string} */ source: "database" | "runtime_cache" | "runtime_default"; /** Updated At */ updated_at?: number | null; /** Updated By */ updated_by?: string | null; }; /** AdminHealthResponse */ AdminHealthResponse: { /** Engine Mode */ engine_mode: string; /** Environment */ environment: string; /** Services */ services: components["schemas"]["AdminServiceHealth"][]; /** * Status * @enum {string} */ status: "ok" | "degraded" | "down"; }; /** AdminServiceHealth */ AdminServiceHealth: { /** Detail */ detail: string; /** Key */ key: string; /** Load */ load: number; /** Metric */ metric: string; /** Name */ name: string; /** * Status * @enum {string} */ status: "ok" | "degraded" | "down"; }; /** AdminUsageBreakdown */ AdminUsageBreakdown: { /** Cost Usd */ cost_usd: number; /** Model */ model: string; /** Provider */ provider: string; /** Tokens In */ tokens_in: number; /** Tokens Out */ tokens_out: number; /** Turns */ turns: number; }; /** AdminUsageBudget */ AdminUsageBudget: { /** Limit Usd */ limit_usd: number; /** Remaining Usd */ remaining_usd: number | null; /** * Status * @enum {string} */ status: "disabled" | "ok" | "warn" | "exceeded"; /** Used Ratio */ used_ratio: number; }; /** AdminUsageResponse */ AdminUsageResponse: { budget: components["schemas"]["AdminUsageBudget"]; /** By Provider */ by_provider: components["schemas"]["AdminUsageBreakdown"][]; /** Cost Usd */ cost_usd: number; /** Durable */ durable: boolean; /** Generated At */ generated_at: number; /** Metered Turns */ metered_turns: number; /** * Source * @enum {string} */ source: "database" | "server_session_registry"; /** Tokens In */ tokens_in: number; /** Tokens Out */ tokens_out: number; /** Total Turns */ total_turns: number; /** Window Days */ window_days: number; }; /** AdminUserCreate */ AdminUserCreate: { /** Affiliation */ affiliation?: string | null; /** Cohort Ids */ cohort_ids?: string[]; /** Display Name */ display_name: string; /** Email */ email: string; /** * Role * @default learner * @enum {string} */ role: "learner" | "teacher" | "admin"; }; /** AdminUserDeleteResponse */ AdminUserDeleteResponse: { /** Ok */ ok: boolean; /** User Id */ user_id: string; }; /** AdminUserPatch */ AdminUserPatch: { /** Affiliation */ affiliation?: string | null; /** Cohort Ids */ cohort_ids?: string[] | null; /** Display Name */ display_name?: string | null; /** Role */ role?: ("learner" | "teacher" | "admin") | null; }; /** AdminUserResponse */ AdminUserResponse: { /** Active Sessions */ active_sessions: number; /** Affiliation */ affiliation: string; /** Cohort Ids */ cohort_ids: string[]; /** Created At */ created_at: number; /** Display Name */ display_name: string; /** Email */ email: string; /** Last Seen At */ last_seen_at: number; /** * Role * @enum {string} */ role: "learner" | "teacher" | "admin"; /** * Source * @enum {string} */ source: "database" | "server_session_registry"; /** User Id */ user_id: string; }; /** AdminUsersResponse */ AdminUsersResponse: { /** Durable */ durable: boolean; /** * Source * @enum {string} */ source: "database" | "server_session_registry"; /** Users */ users: components["schemas"]["AdminUserResponse"][]; }; /** AuthConfigResponse */ AuthConfigResponse: { /** Allowed Email Domains */ allowed_email_domains: string[]; /** Dev Login Enabled */ dev_login_enabled: boolean; /** Google Oauth Configured */ google_oauth_configured: boolean; /** Providers */ providers: components["schemas"]["AuthProviderStatus"][]; /** Redirect Uri */ redirect_uri: string; /** Saml Configured */ saml_configured: boolean; }; /** AuthProviderStatus */ AuthProviderStatus: { /** Configured */ configured: boolean; /** Enabled */ enabled: boolean; /** Login Path */ login_path: string; /** * Provider * @enum {string} */ provider: "google" | "saml"; }; /** ChunkOut */ ChunkOut: { /** Behavior Cue */ behavior_cue?: string | null; /** Body */ body?: string | null; /** Chunk Id */ chunk_id: number; /** Context Prefix */ context_prefix?: string | null; /** Heading Path */ heading_path?: string | null; /** Kb Kind */ kb_kind: string; /** Label Id */ label_id?: number | null; /** Meta */ meta?: Record; /** Score */ score: number; /** Source Id */ source_id?: string | null; }; /** * ClientStateRead * @description 내담자 상태 '읽기' — 학습자 발화 직후 내담자 응답에서 관측된 상태(읽기 채점 근거). */ ClientStateRead: { /** Code */ code: string; /** Label Ko */ label_ko: string; /** Rationale */ rationale?: string | null; }; /** CrisisResourceResponse */ CrisisResourceResponse: { /** Message */ message: string; /** Number */ number: string; /** Title */ title: string; }; /** DevLoginRequest */ DevLoginRequest: { /** Display Name */ display_name?: string | null; /** Email */ email: string; /** * Role * @default learner * @enum {string} */ role: "learner" | "teacher" | "admin"; }; /** * EvaluationSummary * @description 회기 평가 조회 응답(분포 + deep 결과 합본). */ EvaluationSummary: { /** Deep */ deep?: Record | null; /** Distribution */ distribution?: Record; /** Session Id */ session_id: string; /** Stage */ stage: string; }; /** HTTPValidationError */ HTTPValidationError: { /** Detail */ detail?: components["schemas"]["ValidationError"][]; }; /** IndexChunkIn */ IndexChunkIn: { /** Chunk Text */ chunk_text: string; /** Context Prefix */ context_prefix?: string | null; /** Heading Path */ heading_path?: string | null; /** Kb Kind */ kb_kind?: string | null; /** Label Id */ label_id?: number | null; /** Meta */ meta?: Record | null; /** Sensitivity */ sensitivity?: number | null; /** Seq */ seq: number; /** Token Count */ token_count?: number | null; /** Visible To */ visible_to?: string[] | null; }; /** IndexRequestIn */ IndexRequestIn: { /** Chunks */ chunks: components["schemas"]["IndexChunkIn"][]; /** Content Hash */ content_hash?: string | null; /** Doc Uri */ doc_uri: string; /** Source Id */ source_id: string; /** * Version * @default 1 */ version: number; }; /** IndexResponse */ IndexResponse: { /** Chunks Indexed */ chunks_indexed: number; /** * Degraded * @default false */ degraded: boolean; /** Doc Id */ doc_id: number | null; /** Embedded */ embedded: boolean; /** Skipped Unchanged */ skipped_unchanged: boolean; }; /** * IntentDeviation * @description '의도와 다른 부분'(윤찬 1급 시민). taxonomy.SupervisorComment(critique) intent_deviation 정합. * * {dimension, expected, actual, severity} 구조화. dimension 은 평가 차원 * (예: 'reflection', 'self_disclosure', 'pacing', 'risk_assessment'). */ IntentDeviation: { /** * Actual * @description 실제 나타난 반응 */ actual: string; /** * Dimension * @description 관련 평가 차원(기법/페이싱/위험사정 등) */ dimension: string; /** * Expected * @description 권장된 반응/의도 */ expected: string; /** * Severity * @description minor | moderate | major * @default minor */ severity: string; }; /** KBSearchRequest */ KBSearchRequest: { /** * K * @default 5 */ k: number; /** Kb Kind */ kb_kind?: string[] | null; /** Query */ query: string; /** * Rerank * @default true */ rerank: boolean; /** * Role * @default evaluator * @enum {string} */ role: "client" | "counselor" | "evaluator"; /** Sensitivity Max */ sensitivity_max?: number | null; /** Session Id */ session_id?: string | null; /** Source Id */ source_id?: string[] | null; /** Turn Id */ turn_id?: string | null; }; /** KBSearchResponse */ KBSearchResponse: { /** Chunks */ chunks: components["schemas"]["ChunkOut"][]; /** Crag Pass */ crag_pass: boolean; /** * Degraded * @default false */ degraded: boolean; /** Latency Ms */ latency_ms: number; /** Policy */ policy: string; /** Top1 Score */ top1_score: number; }; /** LearnerSessionSummary */ LearnerSessionSummary: { /** Client Turn Count */ client_turn_count: number; /** Ended At */ ended_at?: string | null; /** Learner Turn Count */ learner_turn_count: number; /** Persona Code */ persona_code: string; /** Persona Name */ persona_name: string; /** * Review Ready * @default false */ review_ready: boolean; /** Session Id */ session_id: string; /** Session No */ session_no: number; /** Stage */ stage: string; /** Started At */ started_at: string; /** * Status * @enum {string} */ status: "active" | "ended"; /** Turn Count */ turn_count: number; }; /** LearnerSessionsResponse */ LearnerSessionsResponse: { /** Sessions */ sessions?: components["schemas"]["LearnerSessionSummary"][]; /** * Source * @default runtime */ source: string; }; /** MeResponse */ MeResponse: { /** Cohort Ids */ cohort_ids: string[]; /** Display Name */ display_name: string; /** Email */ email: string; /** Role */ role: string; /** User Id */ user_id: string; }; /** MemoryRecallRequest */ MemoryRecallRequest: { /** Case Id */ case_id: string; /** * K * @default 5 */ k: number; /** Query */ query: string; /** Session Id */ session_id?: string | null; /** Turn Id */ turn_id?: string | null; }; /** NotificationPreferences */ NotificationPreferences: { /** * Learner Progress * @default false */ learner_progress: boolean; /** * Product News * @default false */ product_news: boolean; /** * Safety Signal * @default true */ safety_signal: boolean; /** * Session Done * @default true */ session_done: boolean; }; /** PersonaDraftDetail */ PersonaDraftDetail: { /** Affect Baseline */ affect_baseline: { [key: string]: number; }; /** Approved At */ approved_at?: string | null; /** Big5 */ big5: { [key: string]: number; }; /** Ccd */ ccd: { [key: string]: unknown; }; /** Code */ code: string; /** Created At */ created_at?: string | null; /** Demographics */ demographics: { [key: string]: unknown; }; /** Difficulty */ difficulty: string; /** Display Name */ display_name: string; /** Dsm5 Dimensional */ dsm5_dimensional: { [key: string]: unknown; }; /** History */ history: { [key: string]: unknown; }; /** Is Synthetic */ is_synthetic: boolean; /** Persona Id */ persona_id: string; /** Presenting */ presenting: { [key: string]: unknown; }; /** Resistance */ resistance: { [key: string]: number; }; /** Source Provenance */ source_provenance: string; /** Speech Style */ speech_style: { [key: string]: unknown; }; /** * Status * @enum {string} */ status: "draft" | "review" | "approved" | "archived"; /** Theory Target */ theory_target: string[]; /** Version */ version: number; }; /** PersonaDraftPayload */ PersonaDraftPayload: { /** Affect Baseline */ affect_baseline?: { [key: string]: number; }; /** Big5 */ big5?: { [key: string]: number; }; /** Ccd */ ccd?: { [key: string]: unknown; }; /** Code */ code: string; /** Demographics */ demographics?: { [key: string]: unknown; }; /** * Difficulty * @enum {string} */ difficulty: "easy" | "moderate" | "hard"; /** Display Name */ display_name: string; /** Dsm5 Dimensional */ dsm5_dimensional?: { [key: string]: unknown; }; /** History */ history?: { [key: string]: unknown; }; /** * Is Synthetic * @default true */ is_synthetic: boolean; /** Presenting */ presenting?: { [key: string]: unknown; }; /** Resistance */ resistance?: { [key: string]: number; }; /** * Source Provenance * @default */ source_provenance: string; /** Speech Style */ speech_style?: { [key: string]: unknown; }; /** * Submit For Review * @default false */ submit_for_review: boolean; /** Theory Target */ theory_target?: string[]; }; /** PersonaReviewDecisionRequest */ PersonaReviewDecisionRequest: { /** * Action * @enum {string} */ action: "approve" | "reject"; }; /** PersonaReviewSummary */ PersonaReviewSummary: { /** Approved At */ approved_at?: string | null; /** Code */ code: string; /** Created At */ created_at?: string | null; /** Difficulty */ difficulty: string; /** Display Name */ display_name: string; /** Is Synthetic */ is_synthetic: boolean; /** Persona Id */ persona_id: string; /** Source Provenance */ source_provenance: string; /** * Status * @enum {string} */ status: "draft" | "review" | "approved" | "archived"; /** Theory Target */ theory_target: string[]; /** Version */ version: number; }; /** PersonaSummary */ PersonaSummary: { /** Code */ code: string; /** * Degraded * @default false */ degraded: boolean; /** Demographics */ demographics: Record; /** Difficulty */ difficulty: string; /** Display Name */ display_name: string; /** Presenting Summary */ presenting_summary: string; /** * Source * @default database */ source: string; /** Theory Target */ theory_target: string[]; /** Voice Preset */ voice_preset?: string | null; }; /** ReevaluateRequest */ ReevaluateRequest: { /** * Scope * @description 'session_end' | 'stage_transition' * @default session_end */ scope: string; }; /** ReviewCaseWorksheet */ ReviewCaseWorksheet: { /** * Generatedby * @default rule-based transcript extractor */ generatedBy: string; /** Limitations */ limitations?: string[]; /** Sections */ sections?: components["schemas"]["ReviewWorksheetSection"][]; /** * Status * @default empty * @enum {string} */ status: "empty" | "draft_from_transcript"; }; /** ReviewClient */ ReviewClient: { /** Initial */ initial: string; /** Name */ name: string; /** Persona */ persona: string; }; /** ReviewNonverbalEvent */ ReviewNonverbalEvent: { /** Detail */ detail: string; /** * Kind * @enum {string} */ kind: "audio" | "silence" | "pace" | "barge_in"; /** Label */ label: string; }; /** ReviewNote */ ReviewNote: { /** Author */ author: string; /** Body */ body: string; /** Quote */ quote?: string | null; /** Title */ title: string; /** Tone */ tone: string; }; /** ReviewPhaseSegment */ ReviewPhaseSegment: { /** Key */ key: string; /** Label */ label: string; /** Weight */ weight: number; }; /** ReviewPoint */ ReviewPoint: { /** Body */ body: string; /** Jumpto */ jumpTo?: string | null; /** Title */ title: string; }; /** ReviewRubricRow */ ReviewRubricRow: { /** Cluster */ cluster: string; /** Freq */ freq: string; /** Name */ name: string; /** * Quality * @enum {string} */ quality: "good" | "watch"; /** Ratio */ ratio: number; }; /** ReviewTechnique */ ReviewTechnique: { /** Kind */ kind: string; /** Label */ label: string; }; /** ReviewTurn */ ReviewTurn: { /** Id */ id: string; /** Nonverbal */ nonverbal?: components["schemas"]["ReviewNonverbalEvent"][]; note?: components["schemas"]["ReviewNote"] | null; /** * Speaker * @enum {string} */ speaker: "learner" | "client"; /** Techniques */ techniques?: components["schemas"]["ReviewTechnique"][]; /** Text */ text: string; /** Ts */ ts: string; /** Who */ who: string; }; /** ReviewValencePoint */ ReviewValencePoint: { /** T */ t: number; /** V */ v: number; }; /** ReviewWorksheetEvidence */ ReviewWorksheetEvidence: { /** Quote */ quote: string; /** * Speaker * @enum {string} */ speaker: "learner" | "client"; /** Turnid */ turnId: string; }; /** ReviewWorksheetItem */ ReviewWorksheetItem: { /** * Confidence * @default none * @enum {string} */ confidence: "none" | "low" | "medium"; /** Emptyreason */ emptyReason?: string | null; /** Evidence */ evidence?: components["schemas"]["ReviewWorksheetEvidence"][]; /** Key */ key: string; /** Label */ label: string; /** Value */ value?: string | null; }; /** ReviewWorksheetSection */ ReviewWorksheetSection: { /** Items */ items?: components["schemas"]["ReviewWorksheetItem"][]; /** Key */ key: string; /** Title */ title: string; }; /** SessionDetailResponse */ SessionDetailResponse: { /** Case Id */ case_id: string; /** Effective Openness */ effective_openness: number; /** Ended At */ ended_at?: string | null; /** Persona Code */ persona_code: string; /** Persona Name */ persona_name: string; /** * Review Ready * @default false */ review_ready: boolean; /** Session Id */ session_id: string; /** Stage */ stage: string; /** Started At */ started_at: string; /** * Status * @enum {string} */ status: "active" | "ended"; /** Theory Mode */ theory_mode: string; /** Turns */ turns?: components["schemas"]["SessionDetailTurn"][]; }; /** SessionDetailTurn */ SessionDetailTurn: { /** Created At */ created_at: string; /** * Speaker * @enum {string} */ speaker: "learner" | "client"; /** Stage */ stage: string; /** Text */ text: string; /** Turn Seq */ turn_seq: number; }; /** SessionEndResponse */ SessionEndResponse: { /** Digest Pending */ digest_pending: boolean; /** End State */ end_state: { [key: string]: string | number | boolean | { [key: string]: number; } | null; }; /** Session Id */ session_id: string; /** Session No */ session_no: number; }; /** * SessionEvaluation * @description deep-loop 회기말/단계전환 정밀 평가 결과. * * 기법분포 + 잘한 순간 + 개선점(최대3) + 슈퍼바이저 rationale/critique + 의도이탈 집계. */ SessionEvaluation: { /** Alternative Utterances */ alternative_utterances?: string[]; distribution?: components["schemas"]["TechniqueDistribution"]; /** Error */ error?: string | null; /** Improvements */ improvements?: string[]; /** Intent Deviations */ intent_deviations?: components["schemas"]["IntentDeviation"][]; /** * Loop * @default deep */ loop: string; /** * Scope * @default session_end */ scope: string; /** Session Id */ session_id: string; /** Stage */ stage: string; /** Strengths */ strengths?: string[]; /** Supervisor Critique */ supervisor_critique?: string | null; /** Supervisor Rationale */ supervisor_rationale?: string | null; /** Theory Mode */ theory_mode?: string | null; /** * Turns Evaluated * @default 0 */ turns_evaluated: number; }; /** SessionReviewResponse */ SessionReviewResponse: { /** Audiourl */ audioUrl?: string | null; caseWorksheet?: components["schemas"]["ReviewCaseWorksheet"]; client: components["schemas"]["ReviewClient"]; /** Clientfeedback */ clientFeedback?: string | null; /** Clientvalence */ clientValence?: components["schemas"]["ReviewValencePoint"][]; /** Counselorbaseline */ counselorBaseline?: components["schemas"]["ReviewValencePoint"][]; /** Date */ date: string; /** * Degraded * @default true */ degraded: boolean; /** Durationlabel */ durationLabel: string; /** Durationseconds */ durationSeconds: number; /** Goodmoments */ goodMoments?: components["schemas"]["ReviewPoint"][]; /** Growthpoints */ growthPoints?: components["schemas"]["ReviewPoint"][]; /** Nextline */ nextLine?: string | null; /** Pdfexporturl */ pdfExportUrl?: string | null; /** Phaseaxis */ phaseAxis?: string[]; /** Phases */ phases?: components["schemas"]["ReviewPhaseSegment"][]; /** Reachedphase */ reachedPhase: string; /** * Reviewready * @default false */ reviewReady: boolean; /** Rubric */ rubric?: components["schemas"]["ReviewRubricRow"][]; /** Sessionsignal */ sessionSignal: string; /** Session Id */ session_id: string; /** Summary */ summary: string; /** Supervisorname */ supervisorName: string; /** Supervisorstate */ supervisorState: string; /** Turns */ turns?: components["schemas"]["ReviewTurn"][]; /** Valenceaxis */ valenceAxis?: string[]; }; /** SessionStartRequest */ SessionStartRequest: { /** * Persona Code * @example P1 */ persona_code: string; /** * Theory Mode * @default humanistic * @enum {string} */ theory_mode: "humanistic" | "cbt" | "integrative"; }; /** SessionStartResponse */ SessionStartResponse: { /** Case Id */ case_id: string; /** * Degraded * @default false */ degraded: boolean; /** Effective Openness */ effective_openness: number; /** Recall Summary */ recall_summary?: string | null; /** Session Id */ session_id: string; /** Session No */ session_no: number; /** Stage */ stage: string; }; /** TeacherDashboardResponse */ TeacherDashboardResponse: { /** Active Sessions */ active_sessions: number; /** * Cohort Label * @default 현재 학습 기록 */ cohort_label: string; /** Ended Sessions */ ended_sessions: number; /** Learner Growth */ learner_growth?: components["schemas"]["TeacherLearnerGrowth"][]; /** Message */ message: string; /** Pending Reviews */ pending_reviews?: components["schemas"]["TeacherSessionSummary"][]; /** Recent Sessions */ recent_sessions?: components["schemas"]["TeacherSessionSummary"][]; /** Safety Alerts */ safety_alerts?: components["schemas"]["TeacherSafetyAlert"][]; /** * Source * @default in_memory */ source: string; /** Total Learners */ total_learners: number; }; /** TeacherGrowthPoint */ TeacherGrowthPoint: { /** Ended At */ ended_at?: string | null; /** Persona Code */ persona_code: string; /** Rapport */ rapport?: number | null; /** Score */ score?: number | null; /** Session Id */ session_id: string; /** Session No */ session_no: number; /** Stage */ stage: string; /** Started At */ started_at: string; /** * Technique Count * @default 0 */ technique_count: number; /** * Watch Count * @default 0 */ watch_count: number; }; /** TeacherLearnerGrowth */ TeacherLearnerGrowth: { /** Avg Rapport */ avg_rapport?: number | null; /** Avg Score */ avg_score?: number | null; /** Ended Sessions */ ended_sessions: number; /** First Score */ first_score?: number | null; /** Latest At */ latest_at: string; /** Latest Score */ latest_score?: number | null; /** Learner Id */ learner_id: string; /** Learner Label */ learner_label: string; /** Points */ points?: components["schemas"]["TeacherGrowthPoint"][]; /** Score Delta */ score_delta?: number | null; /** Sessions */ sessions: number; /** Top Techniques */ top_techniques?: string[]; /** * Trend * @default insufficient */ trend: string; }; /** TeacherSafetyAlert */ TeacherSafetyAlert: { /** Created At */ created_at: string; /** Escalated */ escalated: boolean; /** Id */ id: string; /** Ko Risk Level */ ko_risk_level: number; /** Learner Id */ learner_id: string; /** Learner Label */ learner_label: string; /** Persona Code */ persona_code: string; /** * Resource Number * @default 109 */ resource_number: string; /** * Resource Title * @default 자살예방상담전화 109 */ resource_title: string; /** Session Id */ session_id: string; /** Session No */ session_no: number; /** Trigger Type */ trigger_type: string; }; /** TeacherSessionSummary */ TeacherSessionSummary: { /** Client Turn Count */ client_turn_count: number; /** Ended At */ ended_at?: string | null; /** Learner Id */ learner_id: string; /** Learner Label */ learner_label: string; /** Learner Turn Count */ learner_turn_count: number; /** Persona Code */ persona_code: string; /** Persona Name */ persona_name: string; /** Session Id */ session_id: string; /** Session No */ session_no: number; /** Stage */ stage: string; /** Started At */ started_at: string; /** Status */ status: string; /** Turn Count */ turn_count: number; }; /** * TechniqueDistribution * @description deep-loop 기법 분포 — 군집별 카운트 + 과다/과소 진단. */ TechniqueDistribution: { /** By Category */ by_category?: { [key: string]: number; }; /** By Technique */ by_technique?: { [key: string]: number; }; /** Overused */ overused?: string[]; /** * Total * @default 0 */ total: number; /** Underused */ underused?: string[]; }; /** * TechniqueTag * @description fast-loop 기법 태그 1건 — taxonomy.Technique 코드 + 한글 + 군집 + 근거. */ TechniqueTag: { /** Category */ category: string; /** Code */ code: string; /** Label Ko */ label_ko: string; /** Rationale */ rationale?: string | null; }; /** * TurnEvaluation * @description fast-loop 턴 평가 결과(턴 직후 경량 4차원). * * 4차원: * ① technique[] : 학습자(상담자) 발화에 부착된 기법 라벨(복수) * ② client_state_read[] : 내담자 응답에서 읽은 상태(복수) * ③ appropriateness : 적절성 신호 pos|warn|neutral (경량) * ④ intent_deviation : '의도와 다른 부분' 있으면 구조화(없으면 None) */ TurnEvaluation: { /** * Appropriateness * @default neutral */ appropriateness: string; /** Appropriateness Note */ appropriateness_note?: string | null; /** Client State Read */ client_state_read?: components["schemas"]["ClientStateRead"][]; /** Error */ error?: string | null; intent_deviation?: components["schemas"]["IntentDeviation"] | null; /** * Loop * @default fast */ loop: string; /** Rapport Signal */ rapport_signal?: number | null; /** Stage */ stage: string; /** Techniques */ techniques?: components["schemas"]["TechniqueTag"][]; /** Theory Mode */ theory_mode?: string | null; /** Turn Seq */ turn_seq: number; }; /** TurnReevaluateRequest */ TurnReevaluateRequest: { /** * Turn Seq * @description 재평가할 상담자 발화의 turn_seq */ turn_seq: number; }; /** TurnRequest */ TurnRequest: { /** Text */ text: string; }; /** TurnResponse */ TurnResponse: { /** Client Reply */ client_reply?: string | null; /** * Conversation Stopped * @default false */ conversation_stopped: boolean; /** * Crisis Kind * @default none */ crisis_kind: string; crisis_resource?: components["schemas"]["CrisisResourceResponse"] | null; /** Effective Openness */ effective_openness: number; /** * Safety Flagged * @default false */ safety_flagged: boolean; /** Stage */ stage: string; /** Turn Seq */ turn_seq: number; }; /** UserPreferencesPatch */ UserPreferencesPatch: { notifications?: components["schemas"]["NotificationPreferences"] | null; /** Theme */ theme?: string | null; /** Voice Preset Id */ voice_preset_id?: string | null; /** Voice Rate */ voice_rate?: number | null; }; /** UserPreferencesResponse */ UserPreferencesResponse: { notifications?: components["schemas"]["NotificationPreferences"]; /** * Theme * @default system */ theme: string; /** * Voice Preset Id * @default soft-young-fem */ voice_preset_id: string; /** * Voice Rate * @default 1 */ voice_rate: number; }; /** UserProfilePatch */ UserProfilePatch: { /** Affiliation */ affiliation?: string | null; /** Display Name */ display_name?: string | null; }; /** UserProfileResponse */ UserProfileResponse: { /** Affiliation */ affiliation: string; /** Cohort Ids */ cohort_ids: string[]; /** Display Name */ display_name: string; /** Email */ email: string; /** Role */ role: string; /** User Id */ user_id: string; }; /** ValidationError */ ValidationError: { /** Location */ loc: (string | number)[]; /** Message */ msg: string; /** Error Type */ type: string; }; /** VoicePresetResponse */ VoicePresetResponse: { /** Desc */ desc: string; /** Id */ id: string; /** Name */ name: string; /** Persona Hint */ persona_hint: string; /** Voice Id */ voice_id: string; }; }; responses: never; parameters: never; requestBodies: never; headers: never; pathItems: never; } export type $defs = Record; export interface operations { get_engine_config_admin_engine_config_get: { parameters: { query?: never; header?: never; path?: never; cookie?: { "__Host-vignette_sid"?: string | null; vignette_sid?: string | null; }; }; requestBody?: never; responses: { /** @description Successful Response */ 200: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["AdminEngineConfigResponse"]; }; }; /** @description Validation Error */ 422: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["HTTPValidationError"]; }; }; }; }; patch_engine_config_admin_engine_config_patch: { parameters: { query?: never; header?: never; path?: never; cookie?: { "__Host-vignette_sid"?: string | null; vignette_sid?: string | null; }; }; requestBody: { content: { "application/json": components["schemas"]["AdminEngineConfigPatch"]; }; }; responses: { /** @description Successful Response */ 200: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["AdminEngineConfigResponse"]; }; }; /** @description Validation Error */ 422: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["HTTPValidationError"]; }; }; }; }; admin_health_admin_health_get: { parameters: { query?: never; header?: never; path?: never; cookie?: { "__Host-vignette_sid"?: string | null; vignette_sid?: string | null; }; }; requestBody?: never; responses: { /** @description Successful Response */ 200: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["AdminHealthResponse"]; }; }; /** @description Validation Error */ 422: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["HTTPValidationError"]; }; }; }; }; admin_usage_admin_usage_get: { parameters: { query?: { window_days?: number; }; header?: never; path?: never; cookie?: { "__Host-vignette_sid"?: string | null; vignette_sid?: string | null; }; }; requestBody?: never; responses: { /** @description Successful Response */ 200: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["AdminUsageResponse"]; }; }; /** @description Validation Error */ 422: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["HTTPValidationError"]; }; }; }; }; list_users_admin_users_get: { parameters: { query?: never; header?: never; path?: never; cookie?: { "__Host-vignette_sid"?: string | null; vignette_sid?: string | null; }; }; requestBody?: never; responses: { /** @description Successful Response */ 200: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["AdminUsersResponse"]; }; }; /** @description Validation Error */ 422: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["HTTPValidationError"]; }; }; }; }; create_user_admin_users_post: { parameters: { query?: never; header?: never; path?: never; cookie?: { "__Host-vignette_sid"?: string | null; vignette_sid?: string | null; }; }; requestBody: { content: { "application/json": components["schemas"]["AdminUserCreate"]; }; }; responses: { /** @description Successful Response */ 201: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["AdminUserResponse"]; }; }; /** @description Validation Error */ 422: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["HTTPValidationError"]; }; }; }; }; delete_user_admin_users__user_id__delete: { parameters: { query?: never; header?: never; path: { user_id: string; }; cookie?: { "__Host-vignette_sid"?: string | null; vignette_sid?: string | null; }; }; requestBody?: never; responses: { /** @description Successful Response */ 200: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["AdminUserDeleteResponse"]; }; }; /** @description Validation Error */ 422: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["HTTPValidationError"]; }; }; }; }; patch_user_admin_users__user_id__patch: { parameters: { query?: never; header?: never; path: { user_id: string; }; cookie?: { "__Host-vignette_sid"?: string | null; vignette_sid?: string | null; }; }; requestBody: { content: { "application/json": components["schemas"]["AdminUserPatch"]; }; }; responses: { /** @description Successful Response */ 200: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["AdminUserResponse"]; }; }; /** @description Validation Error */ 422: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["HTTPValidationError"]; }; }; }; }; callback_auth_callback_get: { parameters: { query?: { code?: string | null; state?: string | null; error?: string | null; error_description?: string | null; }; header?: never; path?: never; cookie?: { "__Host-vignette_oauth_state"?: string | null; vignette_oauth_state?: string | null; }; }; requestBody?: never; responses: { /** @description Successful Response */ 200: { headers: { [name: string]: unknown; }; content: { "application/json": unknown; }; }; /** @description Validation Error */ 422: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["HTTPValidationError"]; }; }; }; }; auth_config_auth_config_get: { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; requestBody?: never; responses: { /** @description Successful Response */ 200: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["AuthConfigResponse"]; }; }; }; }; dev_login_auth_dev_login_post: { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; requestBody: { content: { "application/json": components["schemas"]["DevLoginRequest"]; }; }; responses: { /** @description Successful Response */ 200: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["MeResponse"]; }; }; /** @description Validation Error */ 422: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["HTTPValidationError"]; }; }; }; }; login_auth_login_get: { parameters: { query?: { provider?: string; next?: string | null; }; header?: never; path?: never; cookie?: never; }; requestBody?: never; responses: { /** @description Successful Response */ 200: { headers: { [name: string]: unknown; }; content: { "application/json": unknown; }; }; /** @description Validation Error */ 422: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["HTTPValidationError"]; }; }; }; }; logout_auth_logout_post: { parameters: { query?: never; header?: never; path?: never; cookie?: { "__Host-vignette_sid"?: string | null; vignette_sid?: string | null; }; }; requestBody?: never; responses: { /** @description Successful Response */ 200: { headers: { [name: string]: unknown; }; content: { "application/json": { [key: string]: boolean; }; }; }; /** @description Validation Error */ 422: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["HTTPValidationError"]; }; }; }; }; me_auth_me_get: { parameters: { query?: never; header?: never; path?: never; cookie?: { "__Host-vignette_sid"?: string | null; vignette_sid?: string | null; }; }; requestBody?: never; responses: { /** @description Successful Response */ 200: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["MeResponse"]; }; }; /** @description Validation Error */ 422: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["HTTPValidationError"]; }; }; }; }; saml_acs_auth_saml_acs_post: { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; requestBody?: never; responses: { /** @description Successful Response */ 200: { headers: { [name: string]: unknown; }; content: { "application/json": unknown; }; }; }; }; eval_health_eval_health_get: { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; requestBody?: never; responses: { /** @description Successful Response */ 200: { headers: { [name: string]: unknown; }; content: { "application/json": { [key: string]: string; }; }; }; }; }; get_session_evaluation_eval_sessions__session_id__evaluation_get: { parameters: { query?: never; header?: never; path: { session_id: string; }; cookie?: { "__Host-vignette_sid"?: string | null; vignette_sid?: string | null; }; }; requestBody?: never; responses: { /** @description Successful Response */ 200: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["EvaluationSummary"]; }; }; /** @description Validation Error */ 422: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["HTTPValidationError"]; }; }; }; }; reevaluate_session_eval_sessions__session_id__reevaluate_post: { parameters: { query?: never; header?: never; path: { session_id: string; }; cookie?: { "__Host-vignette_sid"?: string | null; vignette_sid?: string | null; }; }; requestBody: { content: { "application/json": components["schemas"]["ReevaluateRequest"]; }; }; responses: { /** @description Successful Response */ 200: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["SessionEvaluation"]; }; }; /** @description Validation Error */ 422: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["HTTPValidationError"]; }; }; }; }; reevaluate_turn_eval_sessions__session_id__turn_post: { parameters: { query?: never; header?: never; path: { session_id: string; }; cookie?: { "__Host-vignette_sid"?: string | null; vignette_sid?: string | null; }; }; requestBody: { content: { "application/json": components["schemas"]["TurnReevaluateRequest"]; }; }; responses: { /** @description Successful Response */ 200: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["TurnEvaluation"]; }; }; /** @description Validation Error */ 422: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["HTTPValidationError"]; }; }; }; }; health_health_get: { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; requestBody?: never; responses: { /** @description Successful Response */ 200: { headers: { [name: string]: unknown; }; content: { "application/json": Record; }; }; }; }; eval_grounding_kb_eval_grounding_post: { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; requestBody: { content: { "application/json": components["schemas"]["KBSearchRequest"]; }; }; responses: { /** @description Successful Response */ 200: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["KBSearchResponse"]; }; }; /** @description Validation Error */ 422: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["HTTPValidationError"]; }; }; }; }; kb_health_kb_health_get: { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; requestBody?: never; responses: { /** @description Successful Response */ 200: { headers: { [name: string]: unknown; }; content: { "application/json": Record; }; }; }; }; index_document_kb_index_post: { parameters: { query?: never; header?: never; path?: never; cookie?: { "__Host-vignette_sid"?: string | null; vignette_sid?: string | null; }; }; requestBody: { content: { "application/json": components["schemas"]["IndexRequestIn"]; }; }; responses: { /** @description Successful Response */ 202: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["IndexResponse"]; }; }; /** @description Validation Error */ 422: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["HTTPValidationError"]; }; }; }; }; persona_memory_kb_persona_memory_post: { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; requestBody: { content: { "application/json": components["schemas"]["MemoryRecallRequest"]; }; }; responses: { /** @description Successful Response */ 200: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["KBSearchResponse"]; }; }; /** @description Validation Error */ 422: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["HTTPValidationError"]; }; }; }; }; search_kb_search_post: { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; requestBody: { content: { "application/json": components["schemas"]["KBSearchRequest"]; }; }; responses: { /** @description Successful Response */ 200: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["KBSearchResponse"]; }; }; /** @description Validation Error */ 422: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["HTTPValidationError"]; }; }; }; }; list_personas_personas_get: { parameters: { query?: never; header?: never; path?: never; cookie?: { "__Host-vignette_sid"?: string | null; vignette_sid?: string | null; }; }; requestBody?: never; responses: { /** @description Successful Response */ 200: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["PersonaSummary"][]; }; }; /** @description Validation Error */ 422: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["HTTPValidationError"]; }; }; }; }; create_persona_draft_route_personas_drafts_post: { parameters: { query?: never; header?: never; path?: never; cookie?: { "__Host-vignette_sid"?: string | null; vignette_sid?: string | null; }; }; requestBody: { content: { "application/json": components["schemas"]["PersonaDraftPayload"]; }; }; responses: { /** @description Successful Response */ 201: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["PersonaReviewSummary"]; }; }; /** @description Validation Error */ 422: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["HTTPValidationError"]; }; }; }; }; get_persona_draft_route_personas_drafts__persona_id__get: { parameters: { query?: never; header?: never; path: { persona_id: string; }; cookie?: { "__Host-vignette_sid"?: string | null; vignette_sid?: string | null; }; }; requestBody?: never; responses: { /** @description Successful Response */ 200: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["PersonaDraftDetail"]; }; }; /** @description Validation Error */ 422: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["HTTPValidationError"]; }; }; }; }; update_persona_draft_route_personas_drafts__persona_id__put: { parameters: { query?: never; header?: never; path: { persona_id: string; }; cookie?: { "__Host-vignette_sid"?: string | null; vignette_sid?: string | null; }; }; requestBody: { content: { "application/json": components["schemas"]["PersonaDraftPayload"]; }; }; responses: { /** @description Successful Response */ 200: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["PersonaReviewSummary"]; }; }; /** @description Validation Error */ 422: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["HTTPValidationError"]; }; }; }; }; list_persona_reviews_personas_review_get: { parameters: { query?: never; header?: never; path?: never; cookie?: { "__Host-vignette_sid"?: string | null; vignette_sid?: string | null; }; }; requestBody?: never; responses: { /** @description Successful Response */ 200: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["PersonaReviewSummary"][]; }; }; /** @description Validation Error */ 422: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["HTTPValidationError"]; }; }; }; }; decide_persona_review_personas_review__persona_id__post: { parameters: { query?: never; header?: never; path: { persona_id: string; }; cookie?: { "__Host-vignette_sid"?: string | null; vignette_sid?: string | null; }; }; requestBody: { content: { "application/json": components["schemas"]["PersonaReviewDecisionRequest"]; }; }; responses: { /** @description Successful Response */ 200: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["PersonaReviewSummary"]; }; }; /** @description Validation Error */ 422: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["HTTPValidationError"]; }; }; }; }; list_learner_sessions_sessions_get: { parameters: { query?: never; header?: never; path?: never; cookie?: { "__Host-vignette_sid"?: string | null; vignette_sid?: string | null; }; }; requestBody?: never; responses: { /** @description Successful Response */ 200: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["LearnerSessionsResponse"]; }; }; /** @description Validation Error */ 422: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["HTTPValidationError"]; }; }; }; }; start_session_sessions_post: { parameters: { query?: never; header?: never; path?: never; cookie?: { "__Host-vignette_sid"?: string | null; vignette_sid?: string | null; }; }; requestBody: { content: { "application/json": components["schemas"]["SessionStartRequest"]; }; }; responses: { /** @description Successful Response */ 201: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["SessionStartResponse"]; }; }; /** @description Validation Error */ 422: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["HTTPValidationError"]; }; }; }; }; get_session_detail_sessions__session_id__get: { parameters: { query?: never; header?: never; path: { session_id: string; }; cookie?: { "__Host-vignette_sid"?: string | null; vignette_sid?: string | null; }; }; requestBody?: never; responses: { /** @description Successful Response */ 200: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["SessionDetailResponse"]; }; }; /** @description Validation Error */ 422: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["HTTPValidationError"]; }; }; }; }; end_session_sessions__session_id__end_post: { parameters: { query?: never; header?: never; path: { session_id: string; }; cookie?: { "__Host-vignette_sid"?: string | null; vignette_sid?: string | null; }; }; requestBody?: never; responses: { /** @description Successful Response */ 200: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["SessionEndResponse"]; }; }; /** @description Validation Error */ 422: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["HTTPValidationError"]; }; }; }; }; get_session_review_sessions__session_id__review_get: { parameters: { query?: never; header?: never; path: { session_id: string; }; cookie?: { "__Host-vignette_sid"?: string | null; vignette_sid?: string | null; }; }; requestBody?: never; responses: { /** @description Successful Response */ 200: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["SessionReviewResponse"]; }; }; /** @description Validation Error */ 422: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["HTTPValidationError"]; }; }; }; }; stream_turn_sessions__session_id__stream_post: { parameters: { query?: never; header?: never; path: { session_id: string; }; cookie?: { "__Host-vignette_sid"?: string | null; vignette_sid?: string | null; }; }; requestBody: { content: { "application/json": components["schemas"]["TurnRequest"]; }; }; responses: { /** @description Successful Response */ 200: { headers: { [name: string]: unknown; }; content: { "application/json": unknown; }; }; /** @description Validation Error */ 422: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["HTTPValidationError"]; }; }; }; }; submit_turn_sessions__session_id__turn_post: { parameters: { query?: never; header?: never; path: { session_id: string; }; cookie?: { "__Host-vignette_sid"?: string | null; vignette_sid?: string | null; }; }; requestBody: { content: { "application/json": components["schemas"]["TurnRequest"]; }; }; responses: { /** @description Successful Response */ 200: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["TurnResponse"]; }; }; /** @description Validation Error */ 422: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["HTTPValidationError"]; }; }; }; }; teacher_dashboard_teacher_dashboard_get: { parameters: { query?: never; header?: never; path?: never; cookie?: { "__Host-vignette_sid"?: string | null; vignette_sid?: string | null; }; }; requestBody?: never; responses: { /** @description Successful Response */ 200: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["TeacherDashboardResponse"]; }; }; /** @description Validation Error */ 422: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["HTTPValidationError"]; }; }; }; }; get_me_users_me_get: { parameters: { query?: never; header?: never; path?: never; cookie?: { "__Host-vignette_sid"?: string | null; vignette_sid?: string | null; }; }; requestBody?: never; responses: { /** @description Successful Response */ 200: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["UserProfileResponse"]; }; }; /** @description Validation Error */ 422: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["HTTPValidationError"]; }; }; }; }; patch_me_users_me_patch: { parameters: { query?: never; header?: never; path?: never; cookie?: { "__Host-vignette_sid"?: string | null; vignette_sid?: string | null; }; }; requestBody: { content: { "application/json": components["schemas"]["UserProfilePatch"]; }; }; responses: { /** @description Successful Response */ 200: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["UserProfileResponse"]; }; }; /** @description Validation Error */ 422: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["HTTPValidationError"]; }; }; }; }; get_preferences_users_me_preferences_get: { parameters: { query?: never; header?: never; path?: never; cookie?: { "__Host-vignette_sid"?: string | null; vignette_sid?: string | null; }; }; requestBody?: never; responses: { /** @description Successful Response */ 200: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["UserPreferencesResponse"]; }; }; /** @description Validation Error */ 422: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["HTTPValidationError"]; }; }; }; }; patch_preferences_users_me_preferences_patch: { parameters: { query?: never; header?: never; path?: never; cookie?: { "__Host-vignette_sid"?: string | null; vignette_sid?: string | null; }; }; requestBody: { content: { "application/json": components["schemas"]["UserPreferencesPatch"]; }; }; responses: { /** @description Successful Response */ 200: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["UserPreferencesResponse"]; }; }; /** @description Validation Error */ 422: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["HTTPValidationError"]; }; }; }; }; get_voice_presets_users_me_voice_presets_get: { parameters: { query?: never; header?: never; path?: never; cookie?: { "__Host-vignette_sid"?: string | null; vignette_sid?: string | null; }; }; requestBody?: never; responses: { /** @description Successful Response */ 200: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["VoicePresetResponse"][]; }; }; /** @description Validation Error */ 422: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["HTTPValidationError"]; }; }; }; }; voice_health_voice_health_get: { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; requestBody?: never; responses: { /** @description Successful Response */ 200: { headers: { [name: string]: unknown; }; content: { "application/json": unknown; }; }; }; }; }