feat: add chief_analyst AgentStep, summary phase, and ChiefAnalystReport type
This commit is contained in:
parent
0f74540e04
commit
9a46424e61
|
|
@ -26,6 +26,7 @@ const STEP_ACCENT: Record<AgentStep, string> = {
|
|||
conservative_analyst: '#00C4E8',
|
||||
neutral_analyst: '#A78BFA',
|
||||
risk_judge: '#FFB400',
|
||||
chief_analyst: '#adc6ff',
|
||||
}
|
||||
|
||||
const STEP_ROLE_DESC: Partial<Record<AgentStep, string>> = {
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
import type { AgentStep, RunStatus } from '@/lib/types/run'
|
||||
import type { Decision, StepStatus } from '@/lib/types/agents'
|
||||
import type { Decision, StepStatus, ChiefAnalystReport } from '@/lib/types/agents'
|
||||
|
||||
export type TokenCount = { in: number; out: number }
|
||||
|
||||
|
|
@ -11,4 +11,5 @@ export type RunStreamState = {
|
|||
error: string | null
|
||||
tokensByStep: Record<AgentStep, TokenCount>
|
||||
tokensTotal: TokenCount
|
||||
chiefAnalystReport: ChiefAnalystReport | null
|
||||
}
|
||||
|
|
|
|||
|
|
@ -4,3 +4,10 @@ export type Decision = 'BUY' | 'SELL' | 'HOLD'
|
|||
export type DebateTurn = { speaker: string; text: string }
|
||||
export type PhaseReport = { step: AgentStep; content: string }
|
||||
export type StepStatus = 'pending' | 'running' | 'done'
|
||||
|
||||
export type ChiefAnalystReport = {
|
||||
verdict: 'BUY' | 'SELL' | 'HOLD'
|
||||
catalyst: string
|
||||
execution: string
|
||||
tail_risk: string
|
||||
}
|
||||
|
|
|
|||
|
|
@ -11,12 +11,14 @@ export type AgentStep =
|
|||
| 'conservative_analyst'
|
||||
| 'neutral_analyst'
|
||||
| 'risk_judge'
|
||||
| 'chief_analyst'
|
||||
|
||||
export const AGENT_STEPS: AgentStep[] = [
|
||||
'market_analyst', 'news_analyst', 'fundamentals_analyst', 'social_analyst',
|
||||
'bull_researcher', 'bear_researcher', 'research_manager',
|
||||
'trader',
|
||||
'aggressive_analyst', 'conservative_analyst', 'neutral_analyst', 'risk_judge',
|
||||
'chief_analyst',
|
||||
]
|
||||
|
||||
export const AGENT_STEP_LABELS: Record<AgentStep, string> = {
|
||||
|
|
@ -32,9 +34,10 @@ export const AGENT_STEP_LABELS: Record<AgentStep, string> = {
|
|||
conservative_analyst: 'Conservative',
|
||||
neutral_analyst: 'Neutral',
|
||||
risk_judge: 'Risk Judge',
|
||||
chief_analyst: 'Chief Analyst',
|
||||
}
|
||||
|
||||
export const STEP_PHASE: Record<AgentStep, 'analysts' | 'researchers' | 'trader' | 'risk'> = {
|
||||
export const STEP_PHASE: Record<AgentStep, 'analysts' | 'researchers' | 'trader' | 'risk' | 'summary'> = {
|
||||
market_analyst: 'analysts',
|
||||
news_analyst: 'analysts',
|
||||
fundamentals_analyst: 'analysts',
|
||||
|
|
@ -47,6 +50,7 @@ export const STEP_PHASE: Record<AgentStep, 'analysts' | 'researchers' | 'trader'
|
|||
conservative_analyst: 'risk',
|
||||
neutral_analyst: 'risk',
|
||||
risk_judge: 'risk',
|
||||
chief_analyst: 'summary',
|
||||
}
|
||||
|
||||
export type RunStatus = 'queued' | 'running' | 'complete' | 'error'
|
||||
|
|
|
|||
Loading…
Reference in New Issue