feat(questions): make brand questions the primary monitoring & template axis
- add /questions/combination-fill endpoint with AI-driven, IP-region-aware matrix fill - extract ip2region resolver from ops/app into shared/ipregion for cross-service use - thread question_id filter through dashboard composite, citation summary, and collect-now - switch template wizard from keyword inputs to brand-question selection (primary + supplemental) - pass brand_question and supplemental_questions through assist/title/outline prompts - add AiWaitingModal + 45s client timeout and request_timeout error mapping for long AI flows Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -472,6 +472,8 @@ export interface TemplateAnalyzeTaskRequest {
|
||||
brand_id?: number | null
|
||||
brand_name?: string
|
||||
website?: string | null
|
||||
brand_question?: string
|
||||
supplemental_questions?: string[]
|
||||
input_params?: Record<string, JsonValue>
|
||||
existing_keywords?: string[]
|
||||
existing_competitors?: TemplateAssistCompetitor[]
|
||||
@@ -489,6 +491,8 @@ export interface TemplateTitleTaskRequest {
|
||||
brand_name?: string
|
||||
website?: string | null
|
||||
brand_summary?: string | null
|
||||
brand_question?: string
|
||||
supplemental_questions?: string[]
|
||||
input_params?: Record<string, JsonValue>
|
||||
keywords?: string[]
|
||||
competitors?: TemplateAssistCompetitor[]
|
||||
@@ -506,6 +510,8 @@ export interface TemplateOutlineTaskRequest {
|
||||
website?: string | null
|
||||
brand_summary?: string | null
|
||||
title: string
|
||||
brand_question?: string
|
||||
supplemental_questions?: string[]
|
||||
input_params?: Record<string, JsonValue>
|
||||
keywords?: string[]
|
||||
competitors?: TemplateAssistCompetitor[]
|
||||
@@ -1278,6 +1284,24 @@ export interface QuestionCombinationRequest {
|
||||
max_items?: number
|
||||
}
|
||||
|
||||
export interface QuestionCombinationFillRequest {
|
||||
region?: string[]
|
||||
prefix?: string[]
|
||||
core?: string[]
|
||||
industry?: string[]
|
||||
suffix?: string[]
|
||||
}
|
||||
|
||||
export interface QuestionCombinationFillResult {
|
||||
region: string[]
|
||||
prefix: string[]
|
||||
core: string[]
|
||||
industry: string[]
|
||||
suffix: string[]
|
||||
ai_points_charged?: number
|
||||
cache_hit?: boolean
|
||||
}
|
||||
|
||||
export interface QuestionDistillRequest {
|
||||
seed_topic: string
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user