()
| 479 | |
| 480 | #[test] |
| 481 | fn test_parse_multi_step_plan() { |
| 482 | let json = r#"{ |
| 483 | "steps": [ |
| 484 | {"type": "kg_search", "query": "deploy blocked", "bind": "blockers"}, |
| 485 | {"type": "filter", "input": "blockers", "field": "kind", "equals": "intent", "bind": "blocking_intents"}, |
| 486 | {"type": "kg_neighbors", "node_id": "$blocking_intents", "depth": 1, "bind": "context"}, |
| 487 | {"type": "read_content", "sources": ["$blocking_intents"], "max_chars": 1000} |
| 488 | ] |
| 489 | }"#; |
| 490 | let plan = parse_plan(json).unwrap(); |
| 491 | assert_eq!(plan.steps.len(), 4); |
| 492 | } |
| 493 | |
| 494 | #[test] |
| 495 | fn test_parse_vector_search() { |
nothing calls this directly
no test coverage detected