38fa155e66
CI / benchmark-publish (pull_request) Has been skipped
CI / push-validation (pull_request) Successful in 37s
CI / helm (pull_request) Successful in 42s
CI / build (pull_request) Successful in 1m8s
CI / quality (pull_request) Successful in 1m32s
CI / lint (pull_request) Failing after 1m37s
CI / typecheck (pull_request) Successful in 1m52s
CI / security (pull_request) Successful in 2m5s
CI / coverage (pull_request) Has been skipped
CI / integration_tests (pull_request) Successful in 4m23s
CI / e2e_tests (pull_request) Successful in 4m45s
CI / unit_tests (pull_request) Successful in 8m16s
CI / docker (pull_request) Has been skipped
CI / status-check (pull_request) Failing after 3s
Built-in actors generated from the provider registry have a config_blob with provider and model fields but no type field. When this raw blob is serialised to YAML and fed to ReactiveConfigParser, the parser produces an empty ReactiveConfig with no agents and no routes, causing run_single_shot() to return empty string (bug #10861). Fix: resolve_config_files now synthesises a minimal v3 type: llm YAML when the actor has no yaml_text and the config_blob has provider and model but no type field. This allows the reactive config parser to create a working agent and graph route, enabling the LLM to be invoked and its response returned to the caller. ISSUES CLOSED: #10861
31 lines
1.7 KiB
Gherkin
31 lines
1.7 KiB
Gherkin
@tdd_issue @tdd_issue_10861
|
|
Feature: TDD Bug #10861 - agents actor run returns nothing for built-in LLM actors
|
|
|
|
Bug #10861 reports that running agents actor run with a built-in LLM actor
|
|
returns nothing instead of a response from the LLM.
|
|
|
|
Root cause: built-in actors have a config_blob with provider and model
|
|
fields but no type field. When serialised to YAML and fed to
|
|
ReactiveConfigParser, the parser produces an empty ReactiveConfig with no
|
|
agents and no routes, causing run_single_shot() to return empty string.
|
|
|
|
Fix: resolve_config_files now synthesises a minimal v3 type: llm YAML
|
|
when the actor has no yaml_text and the config_blob has provider and model
|
|
but no type field.
|
|
|
|
Scenario: resolve_config_files synthesises v3 llm YAML for built-in actor
|
|
Given a built-in actor with provider and model but no type field for tdd-10861
|
|
When resolve_config_files is called with the built-in actor name for tdd-10861
|
|
Then the resulting YAML file contains type llm for tdd-10861
|
|
And the resulting YAML file contains the provider and model for tdd-10861
|
|
|
|
Scenario: synthesised YAML is parseable by ReactiveConfigParser for tdd-10861
|
|
Given a built-in actor with provider and model but no type field for tdd-10861
|
|
When resolve_config_files is called with the built-in actor name for tdd-10861
|
|
Then the resulting YAML file is parseable as a v3 llm actor config for tdd-10861
|
|
|
|
Scenario: actor with existing yaml_text is not affected by the fix for tdd-10861
|
|
Given an actor with existing yaml_text for tdd-10861
|
|
When resolve_config_files is called with the actor name for tdd-10861
|
|
Then the original yaml_text is used without modification for tdd-10861
|