DB-first runtime + network checkpointing + config-provider merge#62
Merged
Conversation
…t compiler fixtures
…el strings Replace 8 model/provider fields with 2 tiers (fast/strong) using "provider/model" format strings. Add parse_model_string(), v1 config auto-migration, legacy env var backward compat, and CustomProviderConfig for third-party endpoints. Remove unused DefaultsConfig (db_path, population_size). Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…claude→anthropic Add OpenAICompatProvider for third-party endpoints (OpenRouter, DeepSeek, Together, Groq) using Chat Completions API with json_schema response format. Build lazy-import provider registry in __init__.py. Rename ClaudeProvider→AnthropicProvider (keep alias). Update base.py to 2-tier abstract properties (default_fast_model, default_strong_model). Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…timator Update llm.py for fast/strong routing via provider/model strings. Add pricing and rate limit entries for new providers (OpenRouter, DeepSeek, Together, Groq). Update DualRateLimiter for mixed-provider support. Rename engine.py and estimator.py params from model/pivotal_model/ routine_model to strong/fast. Add backward compat properties on SimulationRunConfig. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…lags Replace --model/--pivotal-model/--routine-model with --strong/--fast. Rewrite config show/set for new keys (models.fast, models.strong, simulation.fast, simulation.strong, providers.*). Update tests for new abstract method names and parameter changes. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Create extropy/core/cost/ package (pricing.py, tracker.py, ledger.py) with three-tier pricing resolution (OpenRouter API → cache → fallback), session-scoped CostTracker singleton, and SQLite cost ledger - All models use Pydantic BaseModel (ModelPricing, CallRecord, ModelUsage, CostEntry, TokenUsage) - Wire _record_usage() hook into LLMProvider base class - Extract + record token usage from all OpenAI and Anthropic provider methods (simple_call, reasoning_call, agentic_research, simple_call_async) - Add --cost CLI flag and defaults.show_cost config option for cost footer - Add atexit hook to print cost summary and persist to ledger - Includes ruff format/lint fixes across codebase Co-authored-by: Cursor <cursoragent@cursor.com>
Drop PipelineConfig, SimZoneConfig, v1→v2 migration, legacy env var handling, get_api_key(), and get_azure_config(). Pure Pydantic models with no backward-compat cruft. ~200 lines removed. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Merge cost-tracking branch which adds: - extropy/core/cost/ package (pricing, tracker, ledger) - Provider usage recording (OpenAI + Anthropic) - --cost CLI flag + defaults.show_cost config option - DefaultsConfig with show_cost, population_size, db_path All conflicts resolved: kept config-provider-redesign's Pydantic refactor + legacy removal, layered cost-tracking additions on top. Co-authored-by: Cursor <cursoragent@cursor.com>
Drop population_size and db_path (unused). Move show_cost to ExtropyConfig directly. Config display only shows show_cost when enabled. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…ith db-first network+sim changes
Code reviewNo issues found. Checked for bugs and CLAUDE.md compliance. Scope of review: Full diff (~12,000+ lines), covering provider refactoring, DB-first architecture, network checkpointing, simulation writer pipeline, run_id scoping, adaptive concurrency, resource governor, cost tracking, and all test updates. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
study.dbthe canonical runtime artifact across sampling/network/simulation surfaces.config-provider-redesignchanges and resolves conflicts while preserving DB-first behavior.--study-db --population-id) and related CLI tests.Validation
ruff format .ruff check .pytest -q(656 passed)Notes