"""
Blueprint factory for framework detection and build plan generation.

Implements Railpack-first routing with 3-tier dry-run validation:
- Tier 1: Local validation (~100ms) - Syntax, imports, config
- Tier 2: Railpack plan (~1-2s) - Build plan generation  
- Tier 3: E2B Sandbox (~30-60s) - Full build validation via Xenfra API

Tier 3 runs on Xenfra's servers - users don't need E2B installed.

Environment Variables:
- XENFRA_AI=off: Disable all AI features
- XENFRA_SANDBOX=force: Always run Tier 3 validation
- XENFRA_SANDBOX=skip: Skip Tier 3 validation  
- XENFRA_SANDBOX=auto: Smart detection (default)
"""

from .base import Blueprint, BuildPlan
from .factory import BlueprintFactory, get_factory, detect_project
from .railpack import RailpackBlueprint
from .dry_run import (
    DryRunEngine,
    DryRunResult,
    run_dry_run,
    quick_validate,
)
from .validation import ValidationResult, validate_project
from .e2b import E2BSandbox, SandboxResult, get_sandbox

__all__ = [
    # Base classes
    "Blueprint",
    "BuildPlan",
    
    # Factory
    "BlueprintFactory",
    "get_factory",
    "detect_project",
    "RailpackBlueprint",
    
    # 3-Tier Dry Run
    "DryRunEngine",
    "DryRunResult",
    "run_dry_run",
    "quick_validate",
    
    # Tier 1
    "ValidationResult",
    "validate_project",
    
    # Tier 3
    "E2BSandbox",
    "SandboxResult",
    "get_sandbox",
]
