* fix: change hardcoded Opus defaults to Sonnet (fix #433) - Changed DEFAULT_PHASE_MODELS['planning'] from 'opus' to 'sonnet' in phase_config.py - Changed DEFAULT_MODEL from 'opus' to 'sonnet' in cli/utils.py - Changed --model default from 'opus' to 'sonnet' in ideation_runner.py - Changed --model default from 'opus' to 'sonnet' in roadmap_runner.py - Changed model field default from 'opus' to 'sonnet' in roadmap/models.py - Changed model field default from 'opus' to 'sonnet' in ideation/types.py - Changed model parameter default from 'opus' to 'sonnet' in ideation/config.py Fixes unexpected Opus usage during initialization failures when Balanced/Sonnet profile is selected. Users can still explicitly select Opus via CLI args, Agent Profiles, or task_metadata.json. Fixes #433 * docs: clarify DEFAULT_PHASE_MODELS comment (code review feedback) Updated comment to specify fallback matches 'Balanced' profile, not all UI defaults. This addresses Gemini Code review feedback about misleading comment. * fix(roadmap): update orchestrator default to sonnet (code review feedback) CodeRabbit identified a missed hardcoded 'opus' default in RoadmapOrchestrator. Updated it to 'sonnet' to match the rest of the PR. * fix(ideation): update internal classes default to sonnet (code review feedback) André's review identified missed hardcoded 'opus' defaults in: - IdeationGenerator (apps/backend/ideation/generator.py) - IdeationOrchestrator (apps/backend/ideation/runner.py) Updated both to 'sonnet' to fully resolve issue #433. --------- Co-authored-by: Andy <119136210+AndyMik90@users.noreply.github.com>
This commit is contained in:
@@ -29,7 +29,7 @@ from ui import (
|
||||
)
|
||||
|
||||
# Configuration - uses shorthand that resolves via API Profile if configured
|
||||
DEFAULT_MODEL = "opus"
|
||||
DEFAULT_MODEL = "sonnet" # Changed from "opus" (fix #433)
|
||||
|
||||
|
||||
def setup_environment() -> Path:
|
||||
|
||||
@@ -25,7 +25,7 @@ class IdeationConfigManager:
|
||||
include_roadmap_context: bool = True,
|
||||
include_kanban_context: bool = True,
|
||||
max_ideas_per_type: int = 5,
|
||||
model: str = "opus",
|
||||
model: str = "sonnet", # Changed from "opus" (fix #433)
|
||||
thinking_level: str = "medium",
|
||||
refresh: bool = False,
|
||||
append: bool = False,
|
||||
|
||||
@@ -56,7 +56,7 @@ class IdeationGenerator:
|
||||
self,
|
||||
project_dir: Path,
|
||||
output_dir: Path,
|
||||
model: str = "opus",
|
||||
model: str = "sonnet", # Changed from "opus" (fix #433)
|
||||
thinking_level: str = "medium",
|
||||
max_ideas_per_type: int = 5,
|
||||
):
|
||||
|
||||
@@ -41,7 +41,7 @@ class IdeationOrchestrator:
|
||||
include_roadmap_context: bool = True,
|
||||
include_kanban_context: bool = True,
|
||||
max_ideas_per_type: int = 5,
|
||||
model: str = "opus",
|
||||
model: str = "sonnet", # Changed from "opus" (fix #433)
|
||||
thinking_level: str = "medium",
|
||||
refresh: bool = False,
|
||||
append: bool = False,
|
||||
|
||||
@@ -31,6 +31,6 @@ class IdeationConfig:
|
||||
include_roadmap_context: bool = True
|
||||
include_kanban_context: bool = True
|
||||
max_ideas_per_type: int = 5
|
||||
model: str = "opus"
|
||||
model: str = "sonnet" # Changed from "opus" (fix #433)
|
||||
refresh: bool = False
|
||||
append: bool = False # If True, preserve existing ideas when merging
|
||||
|
||||
@@ -47,10 +47,10 @@ SPEC_PHASE_THINKING_LEVELS: dict[str, str] = {
|
||||
"complexity_assessment": "medium",
|
||||
}
|
||||
|
||||
# Default phase configuration (matches UI defaults)
|
||||
# Default phase configuration (fallback, matches 'Balanced' profile)
|
||||
DEFAULT_PHASE_MODELS: dict[str, str] = {
|
||||
"spec": "sonnet",
|
||||
"planning": "opus",
|
||||
"planning": "sonnet", # Changed from "opus" (fix #433)
|
||||
"coding": "sonnet",
|
||||
"qa": "sonnet",
|
||||
}
|
||||
|
||||
@@ -94,7 +94,7 @@ def main():
|
||||
parser.add_argument(
|
||||
"--model",
|
||||
type=str,
|
||||
default="opus",
|
||||
default="sonnet", # Changed from "opus" (fix #433)
|
||||
help="Model to use (haiku, sonnet, opus, or full model ID)",
|
||||
)
|
||||
parser.add_argument(
|
||||
|
||||
@@ -23,6 +23,6 @@ class RoadmapConfig:
|
||||
|
||||
project_dir: Path
|
||||
output_dir: Path
|
||||
model: str = "opus"
|
||||
model: str = "sonnet" # Changed from "opus" (fix #433)
|
||||
refresh: bool = False # Force regeneration even if roadmap exists
|
||||
enable_competitor_analysis: bool = False # Enable competitor analysis phase
|
||||
|
||||
@@ -27,7 +27,7 @@ class RoadmapOrchestrator:
|
||||
self,
|
||||
project_dir: Path,
|
||||
output_dir: Path | None = None,
|
||||
model: str = "opus",
|
||||
model: str = "sonnet", # Changed from "opus" (fix #433)
|
||||
thinking_level: str = "medium",
|
||||
refresh: bool = False,
|
||||
enable_competitor_analysis: bool = False,
|
||||
|
||||
@@ -55,7 +55,7 @@ def main():
|
||||
parser.add_argument(
|
||||
"--model",
|
||||
type=str,
|
||||
default="opus",
|
||||
default="sonnet", # Changed from "opus" (fix #433)
|
||||
help="Model to use (haiku, sonnet, opus, or full model ID)",
|
||||
)
|
||||
parser.add_argument(
|
||||
|
||||
Reference in New Issue
Block a user