1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
// Copyright (c) 2026 vectorless developers
// SPDX-License-Identifier: Apache-2.0
//! Retrieval pipeline infrastructure.
//!
//! This module provides the core pipeline infrastructure for retrieval:
//! - [`RetrievalStage`] - Trait for pipeline stages
//! - [`PipelineContext`] - Context passed between stages
//! - [`StageOutcome`] - Controls pipeline flow (continue, backtrack, etc.)
//! - [`RetrievalOrchestrator`] - Manages stage execution
//!
//!
//! # Flow Control
//!
//! Unlike the index pipeline, retrieval stages can control flow:
//!
//! - `Continue` - Proceed to next stage
//! - `Complete` - Retrieval is done, return results
//! - `NeedMoreData` - Backtrack to search for more data
//! - `Backtrack` - Return to a specific stage
//! - `Skip` - Skip remaining stages
//!
//! # Example
//!
//! ```rust,ignore
//! use vectorless::retrieval::pipeline::{RetrievalOrchestrator, RetrievalStage};
//!
//! let orchestrator = RetrievalOrchestrator::new()
//! .stage(AnalyzeStage::new())
//! .stage(PlanStage::new())
//! .stage(SearchStage::new())
//! .stage(EvaluateStage::new());
//!
//! let response = orchestrator.execute(tree, query, options).await?;
//! ```
pub use BudgetStatus;
pub use ;
pub use RetrievalOrchestrator;
pub use StageOutcome;
pub use RetrievalStage;
// Re-export FailurePolicy from index for convenience
pub use crateFailurePolicy;