LeadQualificationWorkflow
What it is
- A non-functional workflow template for lead qualification and scoring in the Sales Development Representative domain.
- Implements a
Workflowwith a placeholderexecute()method that returns a template response and logs warnings.
Public API
-
@dataclass LeadQualificationWorkflowConfiguration(WorkflowConfiguration)- Configuration container for the workflow.
- Currently has no additional fields beyond
WorkflowConfiguration.
-
class LeadQualificationWorkflow(Workflow)__init__(config: Optional[LeadQualificationWorkflowConfiguration] = None)- Initializes the workflow with the provided configuration (or a default one).
- Emits a warning indicating the workflow is a template only.
async execute(inputs: Dict[str, Any]) -> Dict[str, Any]- Placeholder execution method.
- Logs a warning and returns:
status:"template_only"message: not functional noticeplanned_steps: list of planned step descriptionsinputs_received: list of input keys provided
get_workflow_description() -> str- Returns a multi-line textual description of the workflow.
Configuration/Dependencies
- Depends on:
naas_abi_core.loggerfor warningsnaas_abi_core.workflow.workflow.WorkflowandWorkflowConfiguration
- No custom configuration fields are defined in
LeadQualificationWorkflowConfiguration.
Usage
import asyncio
from naas_abi_marketplace.domains.sales-development-representative.workflows.LeadQualificationWorkflow import (
LeadQualificationWorkflow,
)
async def main():
wf = LeadQualificationWorkflow()
result = await wf.execute({
"lead_data": {"name": "Acme Corp", "email": "[email protected]"},
"qualification_criteria": "BANT",
})
print(result)
asyncio.run(main())
Caveats
- Not functional yet:
execute()does not perform qualification/scoring; it only returns a template payload and planned steps. - Input keys documented in
execute()docstring are not validated or required; the workflow simply returns the keys received.