Development
Use tox for local validation:
tox -e lint
tox -e typecheck
tox -e audit
tox -e py311
tox -e py312
tox -e py313
tox -e py314
tox -e coverage
tox -e plugin
tox -e examples
tox -e docs
tox -e buildOptional framework and vendor tests should be marked and should skip cleanly when the relevant extra is not installed.
SonarQube Cloud automatically analyzes the upstream default branch and pull requests through its GitHub integration. It deliberately has no repository-specific scanner workflow or token; findings remain separate from the required CI / gate while still reporting on the pull request.
Use pytest-agentic-fabric fixtures for reusable runtime test setup:
def test_runtime(agentic_fabric_mocker, agentic_fabric_agent_config):
agentic_fabric_mocker.mock_langgraph()
assert agentic_fabric_agent_config["name"] == "test_fabric_agent"Override agentic_fabric_agent_config when a test needs a custom discoverable workspace. The agentic_workspace fixture writes that config into a temporary packages/sample/.fabric tree with matching manifest, agents, and tasks YAML files.
Published helper fixtures include fabric_mocker/agentic_fabric_mocker (which expose mock_crewai(), mock_langgraph(), mock_strands(), and mock_all_frameworks() methods), mock_agentic_frameworks, simple_agent_config, simple_task_config, simple_fabric_agent_config, multi_agent_fabric_agent_config, fabric_agent_with_knowledge, and temp_fabric_dir. Use those fixtures instead of private test modules so downstream packages exercise the same pytest plugin surface that is published with the workspace.
E2E tests use the pytest-agentic-fabric plugin's --agentic-e2e flag and @pytest.mark.agentic_e2e / @pytest.mark.agentic_runtime("crewai") markers. Tests marked with these are skipped unless --agentic-e2e is passed. The tests/e2e/ directory contains integration tests that run against a local Ollama instance in CI.
Before deleting old monorepo code, first prove this repository owns the moved surface with docs, tests, package metadata, and release workflows.
