# VAPORA Examples Guide

Comprehensive guide to understanding and using VAPORA's example collection.

## Overview

VAPORA includes 26+ runnable examples demonstrating all major features:

- **6 Basic examples** - Hello world for each component
- **9 Intermediate examples** - Multi-system integration patterns
- **2 Advanced examples** - End-to-end full-stack workflows
- **3 Real-world examples** - Production scenarios with ROI analysis
- **4 Interactive notebooks** - Marimo-based exploration (requires Python)

Total time to explore all examples: **2-3 hours**

## Quick Start

### Run Your First Example

```bash
# Navigate to workspace root
cd /path/to/vapora

# Run basic agent example
cargo run --example 01-simple-agent -p vapora-agents
```

Expected output:
```
=== Simple Agent Registration Example ===

Created agent registry with capacity 10
Defined agent: "Developer A" (role: developer)
Capabilities: ["coding", "testing"]

Agent registered successfully
Agent ID: <uuid>
```

### List All Available Examples

```bash
# Per-crate examples
cargo build --examples -p vapora-agents

# All examples in workspace
cargo build --examples --workspace
```

## Examples by Category

### Phase 1: Basic Examples (Foundation)

Start here to understand individual components.

#### Agent Registry
**File**: `crates/vapora-agents/examples/01-simple-agent.rs`

**What it demonstrates**:
- Creating an agent registry
- Registering agents with metadata
- Querying registered agents
- Agent status management

**Run**:
```bash
cargo run --example 01-simple-agent -p vapora-agents
```

**Key concepts**:
- `AgentRegistry` - thread-safe registry with capacity limits
- `AgentMetadata` - agent name, role, capabilities, LLM provider
- `AgentStatus` - Active, Busy, Offline

**Time**: 5-10 minutes

---

#### LLM Provider Selection
**File**: `crates/vapora-llm-router/examples/01-provider-selection.rs`

**What it demonstrates**:
- Available LLM providers (Claude, GPT-4, Gemini, Ollama)
- Provider pricing and use cases
- Routing rules by task type
- Cost comparison

**Run**:
```bash
cargo run --example 01-provider-selection -p vapora-llm-router
```

**Key concepts**:
- Provider routing rules
- Cost per 1M tokens
- Fallback strategy
- Task type matching

**Time**: 5-10 minutes

---

#### Swarm Coordination
**File**: `crates/vapora-swarm/examples/01-agent-registration.rs`

**What it demonstrates**:
- Swarm coordinator creation
- Agent registration with capabilities
- Swarm statistics
- Load balancing basics

**Run**:
```bash
cargo run --example 01-agent-registration -p vapora-swarm
```

**Key concepts**:
- `SwarmCoordinator` - manages agent pool
- Agent capabilities filtering
- Load distribution calculation
- `success_rate / (1 + current_load)` scoring

**Time**: 5-10 minutes

---

#### Knowledge Graph
**File**: `crates/vapora-knowledge-graph/examples/01-execution-tracking.rs`

**What it demonstrates**:
- Recording execution history
- Querying executions by agent/task type
- Cost analysis per provider
- Success rate calculations

**Run**:
```bash
cargo run --example 01-execution-tracking -p vapora-knowledge-graph
```

**Key concepts**:
- `ExecutionRecord` - timestamp, duration, success, cost
- Temporal queries (last 7/14/30 days)
- Provider cost breakdown
- Success rate trends

**Time**: 5-10 minutes

---

#### Backend Health Check
**File**: `crates/vapora-backend/examples/01-health-check.rs`

**What it demonstrates**:
- Backend service health status
- Dependency verification
- Monitoring endpoints
- Troubleshooting guide

**Run**:
```bash
cargo run --example 01-health-check -p vapora-backend
```

**Prerequisites**:
- Backend running: `cd crates/vapora-backend && cargo run`
- SurrealDB running: `docker run -d surrealdb/surrealdb:latest`

**Key concepts**:
- Health endpoint status
- Dependency checklist
- Prometheus metrics endpoint
- Startup verification

**Time**: 5-10 minutes

---

#### Error Handling
**File**: `crates/vapora-shared/examples/01-error-handling.rs`

**What it demonstrates**:
- Custom error types
- Error propagation with `?`
- Error context
- Display and Debug implementations

**Run**:
```bash
cargo run --example 01-error-handling -p vapora-shared
```

**Key concepts**:
- `Result<T>` pattern
- Error types (InvalidInput, NotFound, Unauthorized)
- Error chaining
- User-friendly messages

**Time**: 5-10 minutes

---

### Phase 2: Intermediate Examples (Integration)

Combine 2-3 systems to solve realistic problems.

#### Learning Profiles
**File**: `crates/vapora-agents/examples/02-learning-profile.rs`

**What it demonstrates**:
- Building expertise profiles from execution history
- Recency bias weighting (recent 7 days weighted 3× higher)
- Confidence scaling based on sample size
- Task type specialization

**Run**:
```bash
cargo run --example 02-learning-profile -p vapora-agents
```

**Key metrics**:
- Success rate: percentage of successful executions
- Confidence: increases with sample size (0-1.0)
- Recent trend: last 7 days weighted heavily
- Task type expertise: separate profiles per task type

**Real scenario**:
Agent Alice has 93.3% success rate on coding (28/30 executions over 30 days), with confidence 1.0 from ample data.

**Time**: 10-15 minutes

---

#### Agent Selection Scoring
**File**: `crates/vapora-agents/examples/03-agent-selection.rs`

**What it demonstrates**:
- Ranking agents for task assignment
- Scoring formula: `(1 - 0.3*load) + 0.5*expertise + 0.2*confidence`
- Load balancing prevents over-allocation
- Why confidence matters

**Run**:
```bash
cargo run --example 03-agent-selection -p vapora-agents
```

**Scoring breakdown**:
- Availability: `1 - (0.3 * current_load)` - lower load = higher score
- Expertise: `0.5 * success_rate` - proven capability
- Confidence: `0.2 * confidence` - trust the data

**Real scenario**:
Three agents competing for coding task:
- Alice: 0.92 expertise, 30% load → score 0.71
- Bob: 0.78 expertise, 10% load → score 0.77 (selected despite lower expertise)
- Carol: 0.88 expertise, 50% load → score 0.59

**Time**: 10-15 minutes

---

#### Budget Enforcement
**File**: `crates/vapora-llm-router/examples/02-budget-enforcement.rs`

**What it demonstrates**:
- Per-role budget limits (monthly/weekly)
- Three-tier enforcement: Normal → Caution → Exceeded
- Automatic fallback to cheaper providers
- Alert thresholds

**Run**:
```bash
cargo run --example 02-budget-enforcement -p vapora-llm-router
```

**Budget tiers**:
- **0-50%**: Normal - use preferred provider (Claude)
- **50-80%**: Caution - monitor spending closely
- **80-100%**: Near threshold - use cheaper alternative (GPT-4)
- **100%+**: Exceeded - use fallback only (Ollama)

**Real scenario**:
Developer role with $300/month budget:
- Spend $145 (48% used) - in Normal tier
- All tasks use Claude (highest quality)
- If reaches $240+ (80%), automatically switch to cheaper providers

**Time**: 10-15 minutes

---

#### Cost Tracking
**File**: `crates/vapora-llm-router/examples/03-cost-tracking.rs`

**What it demonstrates**:
- Token usage recording per provider
- Cost calculation by provider and task type
- Report generation
- Cost per 1M tokens analysis

**Run**:
```bash
cargo run --example 03-cost-tracking -p vapora-llm-router
```

**Report includes**:
- Total cost (cents or dollars)
- Cost by provider (Claude, GPT-4, Gemini, Ollama)
- Cost by task type (coding, testing, documentation)
- Average cost per task
- Cost efficiency (tokens per dollar)

**Real scenario**:
4 tasks processed:
- Claude (2 tasks): 3,500 tokens → $0.067
- GPT-4 (1 task): 4,500 tokens → $0.130
- Gemini (1 task): 4,500 tokens → $0.053
- Total: $0.250

**Time**: 10-15 minutes

---

#### Task Assignment
**File**: `crates/vapora-swarm/examples/02-task-assignment.rs`

**What it demonstrates**:
- Submitting tasks to swarm
- Load-balanced agent selection
- Capability filtering
- Swarm statistics

**Run**:
```bash
cargo run --example 02-task-assignment -p vapora-swarm
```

**Assignment algorithm**:
1. Filter agents by required capabilities
2. Score each agent: `success_rate / (1 + current_load)`
3. Assign to highest-scoring agent
4. Update swarm statistics

**Real scenario**:
Coding task submitted to swarm with 3 agents:
- agent-1: coding ✓, load 20%, success 92% → score 0.77
- agent-2: coding ✓, load 10%, success 85% → score 0.77 (selected, lower load)
- agent-3: code_review only ✗ (filtered out)

**Time**: 10-15 minutes

---

#### Learning Curves
**File**: `crates/vapora-knowledge-graph/examples/02-learning-curves.rs`

**What it demonstrates**:
- Computing learning curves from daily data
- Success rate trends over 30 days
- Recency bias impact
- Performance trend analysis

**Run**:
```bash
cargo run --example 02-learning-curves -p vapora-knowledge-graph
```

**Metrics tracked**:
- Daily success rate (0-100%)
- Average execution time (milliseconds)
- Recent 7-day success rate
- Recent 14-day success rate
- Weighted score with recency bias

**Trend indicators**:
- ✓ IMPROVING: Agent learning over time
- → STABLE: Consistent performance
- ✗ DECLINING: Possible issues or degradation

**Real scenario**:
Agent bob over 30 days:
- Days 1-15: 70% success rate, 300ms/execution
- Days 16-30: 70% success rate, 300ms/execution
- Weighted score: 72% (no improvement detected)
- Trend: STABLE (consistent but not improving)

**Time**: 10-15 minutes

---

#### Similarity Search
**File**: `crates/vapora-knowledge-graph/examples/03-similarity-search.rs`

**What it demonstrates**:
- Semantic similarity matching
- Jaccard similarity scoring
- Recommendation generation
- Pattern recognition

**Run**:
```bash
cargo run --example 03-similarity-search -p vapora-knowledge-graph
```

**Similarity calculation**:
- Input: New task description ("Implement API key authentication")
- Compare: Against past execution descriptions
- Score: Jaccard similarity (intersection / union of keywords)
- Rank: Sort by similarity score

**Real scenario**:
New task: "Implement API key authentication for third-party services"
Keywords: ["authentication", "API", "third-party"]

Matches against past tasks:
1. "Implement user authentication with JWT" (87% similarity)
2. "Implement token refresh mechanism" (81% similarity)
3. "Add API rate limiting" (79% similarity)

→ Recommend: "Use OAuth2 + API keys with rotation strategy"

**Time**: 10-15 minutes

---

### Phase 3: Advanced Examples (Full-Stack)

End-to-end integration of all systems.

#### Agent with LLM Routing
**File**: `examples/full-stack/01-agent-with-routing.rs`

**What it demonstrates**:
- Agent executes task with intelligent provider selection
- Budget checking before execution
- Cost tracking during execution
- Provider fallback strategy

**Run**:
```bash
rustc examples/full-stack/01-agent-with-routing.rs -o /tmp/example && /tmp/example
```

**Workflow**:
1. Initialize agent (developer-001)
2. Set task (implement authentication, 1,500 input + 800 output tokens)
3. Check budget ($250 remaining)
4. Select provider (Claude for quality)
5. Execute task
6. Track costs ($0.069 total)
7. Update learning profile

**Time**: 15-20 minutes

---

#### Swarm with Learning Profiles
**File**: `examples/full-stack/02-swarm-with-learning.rs`

**What it demonstrates**:
- Swarm coordinates agents with learning profiles
- Task assignment based on expertise
- Load balancing with learned preferences
- Profile updates after execution

**Run**:
```bash
rustc examples/full-stack/02-swarm-with-learning.rs -o /tmp/example && /tmp/example
```

**Workflow**:
1. Register agents with learning profiles
   - alice: 92% coding, 60% testing, 30% load
   - bob: 78% coding, 85% testing, 10% load
   - carol: 90% documentation, 75% testing, 20% load
2. Submit tasks (3 different types)
3. Swarm assigns based on expertise + load
4. Execute tasks
5. Update learning profiles with results
6. Verify assignments improved for next round

**Time**: 15-20 minutes

---

### Phase 5: Real-World Examples

Production scenarios with business value analysis.

#### Code Review Pipeline
**File**: `examples/real-world/01-code-review-workflow.rs`

**What it demonstrates**:
- Multi-agent code review workflow
- Cost optimization with tiered providers
- Quality vs cost trade-off
- Business metrics (ROI, time savings)

**Run**:
```bash
rustc examples/real-world/01-code-review-workflow.rs -o /tmp/example && /tmp/example
```

**Three-stage pipeline**:

**Stage 1** (Ollama - FREE):
- Static analysis, linting
- Dead code detection
- Security rule violations
- Cost: $0.00/PR, Time: 5s

**Stage 2** (GPT-4 - $10/1M):
- Logic verification
- Test coverage analysis
- Performance implications
- Cost: $0.08/PR, Time: 15s

**Stage 3** (Claude - $15/1M, 10% of PRs):
- Architecture validation
- Design pattern verification
- Triggered for risky changes
- Cost: $0.20/PR, Time: 30s

**Business impact**:
- Volume: 50 PRs/day
- Cost: $0.60/day ($12/month)
- vs Manual: 40+ hours/month ($500+)
- **Savings: $488/month**
- Quality: 99%+ accuracy

**Time**: 15-20 minutes

---

#### Documentation Generation
**File**: `examples/real-world/02-documentation-generation.rs`

**What it demonstrates**:
- Automated doc generation from code
- Multi-stage pipeline (analyze → write → check)
- Cost optimization
- Keeping docs in sync with code

**Run**:
```bash
rustc examples/real-world/02-documentation-generation.rs -o /tmp/example && /tmp/example
```

**Pipeline**:

**Phase 1** (Ollama - FREE):
- Parse source files
- Extract API endpoints, types
- Identify breaking changes
- Cost: $0.00, Time: 2min for 10k LOC

**Phase 2** (Claude - $15/1M):
- Generate descriptions
- Create examples
- Document parameters
- Cost: $0.40/endpoint, Time: 30s

**Phase 3** (GPT-4 - $10/1M):
- Verify accuracy vs code
- Check completeness
- Ensure clarity
- Cost: $0.15/doc, Time: 15s

**Business impact**:
- Docs in sync instantly (vs 2 week lag)
- Per-endpoint cost: $0.55
- Monthly cost: ~$11 (vs $1000+ manual)
- **Savings: $989/month**
- Quality: 99%+ accuracy

**Time**: 15-20 minutes

---

#### Issue Triage
**File**: `examples/real-world/03-issue-triage.rs`

**What it demonstrates**:
- Intelligent issue classification
- Two-stage escalation pipeline
- Cost optimization
- Consistent routing rules

**Run**:
```bash
rustc examples/real-world/03-issue-triage.rs -o /tmp/example && /tmp/example
```

**Two-stage pipeline**:

**Stage 1** (Ollama - FREE, 85% accuracy):
- Classify issue type (bug, feature, docs, support)
- Extract component, priority
- Route to team
- Cost: $0.00/issue, Time: 2s

**Stage 2** (Claude - $15/1M, 15% of issues):
- Detailed analysis for unclear issues
- Extract root cause
- Create investigation
- Cost: $0.05/issue, Time: 10s

**Business impact**:
- Volume: 200 issues/month
- Stage 1: 170 issues × $0.00 = $0.00
- Stage 2: 30 issues × $0.08 = $2.40
- Manual triage: 20 hours × $50 = $1,000
- **Savings: $997.60/month**
- Speed: Seconds vs hours

**Time**: 15-20 minutes

---

## Learning Paths

### Path 1: Quick Overview (30 minutes)
1. Run `01-simple-agent` (agent basics)
2. Run `01-provider-selection` (LLM routing)
3. Run `01-error-handling` (error patterns)

**Takeaway**: Understand basic components

---

### Path 2: System Integration (90 minutes)
1. Run all Phase 1 examples (30 min)
2. Run `02-learning-profile` + `03-agent-selection` (20 min)
3. Run `02-budget-enforcement` + `03-cost-tracking` (20 min)
4. Run `02-task-assignment` + `02-learning-curves` (20 min)

**Takeaway**: Understand component interactions

---

### Path 3: Production Ready (2-3 hours)
1. Complete Path 2 (90 min)
2. Run Phase 5 real-world examples (45 min)
3. Study `docs/tutorials/` (30-45 min)

**Takeaway**: Ready to implement VAPORA in production

---

## Common Tasks

### I want to understand agent learning

**Read**: `docs/tutorials/04-learning-profiles.md`

**Run examples** (in order):
1. `02-learning-profile` - See expertise calculation
2. `03-agent-selection` - See scoring in action
3. `02-learning-curves` - See trends over time

**Time**: 30-40 minutes

---

### I want to understand cost control

**Read**: `docs/tutorials/05-budget-management.md`

**Run examples** (in order):
1. `01-provider-selection` - See provider pricing
2. `02-budget-enforcement` - See budget tiers
3. `03-cost-tracking` - See detailed reports

**Time**: 25-35 minutes

---

### I want to understand multi-agent workflows

**Read**: `docs/tutorials/06-swarm-coordination.md`

**Run examples** (in order):
1. `01-agent-registration` - See swarm setup
2. `02-task-assignment` - See task routing
3. `02-swarm-with-learning` - See full workflow

**Time**: 30-40 minutes

---

### I want to see business value

**Run examples** (real-world):
1. `01-code-review-workflow` - $488/month savings
2. `02-documentation-generation` - $989/month savings
3. `03-issue-triage` - $997/month savings

**Takeaway**: VAPORA saves $2,474/month for typical usage

**Time**: 40-50 minutes

---

## Running Examples with Parameters

Some examples support command-line arguments:

```bash
# Budget enforcement with custom budget
cargo run --example 02-budget-enforcement -p vapora-llm-router -- \
  --monthly-budget 50000 --verbose

# Learning profile with custom sample size
cargo run --example 02-learning-profile -p vapora-agents -- \
  --sample-size 100
```

Check example documentation for available options:

```bash
# View example header
head -20 crates/vapora-agents/examples/02-learning-profile.rs
```

---

## Troubleshooting

### "example not found"

Ensure you're running from workspace root:

```bash
cd /path/to/vapora
cargo run --example 01-simple-agent -p vapora-agents
```

---

### "Cannot find module"

Ensure workspace is synced:

```bash
cargo update
cargo build --examples --workspace
```

---

### Example fails at runtime

Check prerequisites:

**Backend examples** require:
```bash
# Terminal 1: Start SurrealDB
docker run -d -p 8000:8000 surrealdb/surrealdb:latest

# Terminal 2: Start backend
cd crates/vapora-backend && cargo run

# Terminal 3: Run example
cargo run --example 01-health-check -p vapora-backend
```

---

### Want verbose output

Set logging:

```bash
RUST_LOG=debug cargo run --example 02-learning-profile -p vapora-agents
```

---

## Next Steps

After exploring examples:

1. **Read tutorials**: `docs/tutorials/README.md` - step-by-step guides
2. **Study code snippets**: `docs/examples/` - quick reference
3. **Explore source**: `crates/*/src/` - understand implementations
4. **Run tests**: `cargo test --workspace` - verify functionality
5. **Build projects**: Create your first VAPORA integration

---

## Quick Reference

### Build all examples

```bash
cargo build --examples --workspace
```

### Run specific example

```bash
cargo run --example <name> -p <crate>
```

### Clean build artifacts

```bash
cargo clean
cargo build --examples
```

### List examples in crate

```bash
ls -la crates/<crate>/examples/
```

### View example documentation

```bash
head -30 crates/<crate>/examples/<name>.rs
```

### Run with output

```bash
cargo run --example <name> -- 2>&1 | tee output.log
```

---

## Resources

- **Main docs**: See `docs/` directory
- **Tutorial path**: `docs/tutorials/README.md`
- **Code snippets**: `docs/examples/`
- **API documentation**: `cargo doc --open`
- **Project examples**: `examples/` directory

---

**Total examples**: 23 Rust + 4 Marimo notebooks

**Estimated learning time**: 2-3 hours for complete understanding

**Next**: Start with Path 1 (Quick Overview) →
