summaryrefslogtreecommitdiff
path: root/frontend/src/store
diff options
context:
space:
mode:
Diffstat (limited to 'frontend/src/store')
-rw-r--r--frontend/src/store/flowStore.ts27
1 files changed, 27 insertions, 0 deletions
diff --git a/frontend/src/store/flowStore.ts b/frontend/src/store/flowStore.ts
index f31720e..c1c8b99 100644
--- a/frontend/src/store/flowStore.ts
+++ b/frontend/src/store/flowStore.ts
@@ -91,6 +91,23 @@ export interface CouncilData {
stage3: { model: string; response: string } | null;
}
+export interface DebateRound {
+ round: number;
+ responses: Array<{ model: string; response: string }>;
+ judgeDecision?: { continue: boolean; reasoning: string };
+ converged?: boolean;
+}
+
+export interface DebateData {
+ rounds: DebateRound[];
+ finalVerdict: { model: string; response: string } | null;
+ config: {
+ judgeMode: 'external_judge' | 'self_convergence' | 'display_only';
+ format: 'free_discussion' | 'structured_opposition' | 'iterative_improvement' | 'custom';
+ maxRounds: number;
+ };
+}
+
export interface NodeData {
label: string;
model: string;
@@ -110,6 +127,16 @@ export interface NodeData {
chairmanModel?: CouncilMemberConfig;
councilData?: CouncilData;
+ // Debate mode
+ debateMode?: boolean;
+ debateModels?: CouncilMemberConfig[];
+ judgeModel?: CouncilMemberConfig;
+ debateJudgeMode?: 'external_judge' | 'self_convergence' | 'display_only';
+ debateFormat?: 'free_discussion' | 'structured_opposition' | 'iterative_improvement' | 'custom';
+ debateCustomPrompt?: string;
+ debateMaxRounds?: number;
+ debateData?: DebateData;
+
// Traces logic
traces: Trace[]; // INCOMING Traces
outgoingTraces: Trace[]; // ALL Outgoing (inherited + self + forks + merged)