Skip to content

feat(iterative-research): pre-flight validations and runtime model failure handling - #11

Open
skorphil wants to merge 2 commits into
trunkfrom
feat/iterative-research-validation
Open

feat(iterative-research): pre-flight validations and runtime model failure handling#11
skorphil wants to merge 2 commits into
trunkfrom
feat/iterative-research-validation

Conversation

@skorphil

Copy link
Copy Markdown
Member

Summary of Changes

This pull request introduces critical, user-facing inline validation checks and error rendering to prevent silent or confusing failures inside the iterative-research plugin.

  1. Pre-flight Validation & Halting:

    • Validates that at least one search engine (SEARXNG_URL or TAVILY_API_KEY) is configured in the valves.
    • Validates that a backend MODEL is specified in the valves.
    • If validations fail, streams a highly visible markdown warning banner at the top of the response, logs the failure, and halts execution before any loops or LLM operations take place.
  2. Runtime LLM Failure Handling:

    • Catch empty/failed responses from background LLM planning and synthesis tasks.
    • Rather than silently assuming "All Gaps Resolved" on empty/failed completions, halts processing immediately, closes any open <thinking> tags cleanly, and renders a clear runtime failure banner.
  3. Removed Auto-detection:

    • Removed model auto-detection block (Models.get_all_models()) entirely to strictly enforce explicit configuration and prevent unexpected lookups or model resolutions.
  4. Testing & QA:

    • Cleaned up obsolete tests and added robust test coverage for validation rules: test_pipe_validation_no_search_engine, test_pipe_validation_no_model, test_pipe_validation_only_tavily_configured, test_pipe_validation_only_searxng_configured, test_pipe_validation_valves_none_and_empty_values.
    • Added planning and synthesis failure checks: test_pipe_planning_llm_failure, test_pipe_synthesis_llm_failure.

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