haive.agents.conversation.debate.state¶

State schema for structured debate conversations with automatic tracking.

Classes¶

DebateState

Extended state schema for debate conversations with automatic tracking.

Module Contents¶

class haive.agents.conversation.debate.state.DebateState(/, **data)¶

Bases: haive.agents.conversation.base.state.ConversationState

Extended state schema for debate conversations with automatic tracking.

Extends ConversationState with debate-specific fields and automatic computation of debate progress and statistics.

Create a new model by parsing and validating input data from keyword arguments.

Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

self is explicitly positional-only to allow self as a field name.

Parameters:

data (Any)

get_participant_summary(participant)¶

Get summary for a specific participant.

Parameters:

participant (str)

Return type:

dict[str, Any]

property all_arguments_complete: bool¶

Check if all participants have made required arguments.

Return type:

bool

property all_rebuttals_complete: bool¶

Check if rebuttal phase is complete.

Return type:

bool

property debate_progress: dict[str, float]¶

Calculate progress for each participant.

Return type:

dict[str, float]

property debate_statistics: dict[str, Any]¶

Get comprehensive debate statistics.

Return type:

dict[str, Any]

property in_rebuttal_phase: bool¶

Check if currently in rebuttal phase.

Return type:

bool

property next_phase: str | None¶

Determine what the next phase should be.

Return type:

str | None

property phase_should_transition: bool¶

Check if current phase should transition.

Return type:

bool

property should_end_debate: bool¶

Check if debate should end based on all conditions.

Return type:

bool