forked from cleveragents/cleveragents-core
a808c395f9
Add 53 new .feature files and corresponding step definition files targeting uncovered lines identified in build/coverage.xml. Fix AmbiguousStep conflicts in 7 pre-existing step files by disambiguating step text. New tests cover: ACP clients/facade, actor CLI/config, application container, ACMS service/strategies, async worker, automation profile CLI, autonomy guardrail, bridge, change model, config CLI/service, context service, cross-plan correction, database models, decision service, decomposition clustering/service, discovery handler, langchain chat provider, langgraph nodes, materializers, multi-project service, plan apply/CLI/lifecycle/model/ preflight/resume/service, PostgreSQL analyzer, project CLI/context CLI, provider registry, reactive application/route, repositories, resolver handler, resource registry service, resume model, retry patterns, sandbox protocol, server CLI, skill CLI/service, skills registry, subplan execution/service, system CLI, UKO loader, UoW, and YAML template engine. Closes #645
49 lines
2.8 KiB
Gherkin
49 lines
2.8 KiB
Gherkin
Feature: Plan Service Coverage Boost
|
|
Target uncovered lines in plan_service.py to increase branch and line coverage.
|
|
|
|
Scenario: Build actor context populates initial_context from config_blob dict
|
|
Given I have a lightweight plan service for coverage boost testing
|
|
And I have an actor with initial_context dict in config_blob
|
|
When I build the actor context for the actor with initial_context
|
|
Then the actor invocation context should contain the initial_context entries
|
|
|
|
Scenario: Build actor context populates graph_descriptor from actor dict
|
|
Given I have a lightweight plan service for coverage boost testing
|
|
And I have an actor with a dict graph_descriptor
|
|
When I build the actor context for the actor with graph_descriptor
|
|
Then the actor invocation context should contain the graph_descriptor
|
|
|
|
Scenario: Resolve AI provider raises PlanError when actor has no provider
|
|
Given I have a lightweight plan service for coverage boost testing
|
|
And the actor lookup returns an actor with empty provider
|
|
When I try to resolve the AI provider for the providerless actor
|
|
Then the providerless actor PlanError should contain "Actor is missing provider configuration"
|
|
|
|
Scenario: Strip code fences removes markdown python fences
|
|
Given I have a lightweight plan service for coverage boost testing
|
|
When I strip code fences from python-fenced content
|
|
Then the stripped content should contain only the inner code
|
|
|
|
Scenario: Strip code fences removes generic markdown fences
|
|
Given I have a lightweight plan service for coverage boost testing
|
|
When I strip code fences from generic-fenced content
|
|
Then the stripped content should contain only the inner text
|
|
|
|
Scenario: LangSmith config returns empty dict when builder returns None
|
|
Given I have a lightweight plan service for coverage boost testing
|
|
And LangSmith is enabled but build_langsmith_config returns None
|
|
When I build the LangSmith config for a project
|
|
Then the plan service LangSmith config result should be an empty dict
|
|
|
|
Scenario: Build actor context uses context_variables fallback for initial_context
|
|
Given I have a lightweight plan service for coverage boost testing
|
|
And I have an actor with context_variables fallback in config_blob
|
|
When I build the actor context for the actor with context_variables
|
|
Then the actor invocation context should contain the context_variables entries
|
|
|
|
Scenario: Build actor context falls back to config_blob graph_descriptor key
|
|
Given I have a lightweight plan service for coverage boost testing
|
|
And I have an actor with graph_descriptor in config_blob but not on the actor
|
|
When I build the actor context for the config_blob graph_descriptor actor
|
|
Then the actor invocation context should contain the config_blob graph_descriptor
|