Skip to content

fix(runners): unify provider resolution plan for dispatch, hashing, and provenance - #154

Merged
BerryUIKI merged 1 commit into
devfrom
bugfix/110-unified-provider-resolution-plan
Oct 4, 2026
Merged

BerryUIKI merged 1 commit into
devfrom
bugfix/110-unified-provider-resolution-plan

Conversation

@BerryUIKI

Copy link
Copy Markdown
Owner

Closes #110.

Overview

Unifies provider resolution and execution planning in CreativeRunner:

  • Introduces resolve_execution_plan(req) -> CreativeExecutionPlan as the single source of truth for execution planning, capability validation, dispatch routing, cache key calculation, and provenance recording.
  • Eliminates divergent heuristics and silent provider switching between resolver, cache key generation, and execution dispatch (e.g. engine_id='fal_ai' with model='sdxl-turbo' will strictly target Fal.ai without falling back or switching to SiliconFlow).
  • Rejects unsupported provider and action combinations immediately with clear actionable errors instead of fallback deviations.
  • Attaches resolved provider_id to both compute_creative_cache_hash and GenerationProvenance.
  • Adds unit test suite in backend/tests/test_provider_resolution.py verifying the exact issue reproduction scenarios and plan enforcement.

@BerryUIKI
BerryUIKI merged commit 114cbfc into dev Oct 4, 2026
3 checks passed
@BerryUIKI
BerryUIKI deleted the bugfix/110-unified-provider-resolution-plan branch October 4, 2026 22:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant