Overview
Observe the run. Keep LangGraph in control.
The lab uses only local fixture data and makes the same deterministic insurance-claim decision every time. LangGraph owns execution and the decision; BHANUJ receives an independent, one-way record of what executed.
You will learn
How a LangGraph node maps to a WORKFLOW_STEP event pair.
You will build
A four-stage workflow with one correlated runtime execution.
Architecture
A deliberately boring workflow.
Execution plane
LangGraph
Runs the workflow and produces the decision.
Evidence plane
BHANUJ Agents Runtime
Records ordered execution evidence.
Every node emits STARTED and COMPLETED evidence with event_type=WORKFLOW_STEP and source_kind=langgraph.node.
Prerequisites
What you need.
- Python 3.12 or later and pip.
- Git to clone or fork the public labs repository.
- The BHANUJ OSS repository only when you want to send runtime evidence.
Run locally
Run the standalone workflow first.
This path does not require credentials, a database, or the governance API.
git clone https://github.com/Bhanuj-AI/labs.git
cd labs/agent-frameworks/langgraph/govern-langgraph-workflow
python3 -m venv .venv
source .venv/bin/activate
python -m pip install --upgrade pip
python -m pip install -r requirements.txtpython app.pyClaim: CLM-001
Policy active: true
Damage verified: true
Decision: APPROVEDEnable evidence
Connect the same workflow to BHANUJ.
Start the OSS API in development mode, then set the three guide-side connection variables and run the unchanged application.
cd /path/to/ai-governance-oss
AI_GOVERNANCE_AUTH_MODE=development \
uv run uvicorn ai_governance.api.app:app --reloadexport AI_GOVERNANCE_BASE_URL=http://localhost:8000
export AI_GOVERNANCE_ORGANIZATION_ID=org_default
export AI_GOVERNANCE_PROJECT_ID=project_default
python app.pyClaim: CLM-001
Policy active: true
Damage verified: true
Decision: APPROVED
BHANUJ execution ID: ae380ac2-9004-4c78-b4e1-a33d730a40da
BHANUJ evidence status: SUCCEEDEDDEGRADED evidence status and never fabricates a successful completion.Inspect the execution
Use one execution ID to find the whole run.
The CLI prints the BHANUJ execution ID. Open Agents Runtime and find that exact ID to view the timeline below.
- 1load_claim · Step StartedWORKFLOW_STEP
- 2load_claim · Step CompletedWORKFLOW_STEP
- 3check_policy · Step StartedWORKFLOW_STEP
- 4check_policy · Step CompletedWORKFLOW_STEP
- 5evaluate_evidence · Step StartedWORKFLOW_STEP
- 6evaluate_evidence · Step CompletedWORKFLOW_STEP
- 7make_decision · Step StartedWORKFLOW_STEP
- 8make_decision · Step CompletedWORKFLOW_STEP
There are four logical workflow steps, eight lifecycle events, and zero TOOL_CALL events. Tool calls remain reserved for actual external tool invocations.
Ready to run it?
Fork the lab, run it locally, then enable runtime evidence when the BHANUJ API is available.
