pacha 0.2.5

Model, Data and Recipe Registry with full lineage tracking
Documentation
# Quick Start

This example demonstrates the basic operations of the Pacha registry.

## Running the Example

```bash
cargo run --example quick_start
```

## What It Does

1. **Creates a temporary registry** - Uses `tempfile` for isolated testing
2. **Registers a model** - Creates a fraud detector with metrics and documentation
3. **Registers a dataset** - Adds transaction data with a datasheet
4. **Queries artifacts** - Retrieves and displays model information
5. **Transitions stages** - Promotes the model from development to staging
6. **Shows statistics** - Displays registry usage metrics

## Code Walkthrough

### Creating the Registry

```rust
let temp_dir = TempDir::new().expect("Failed to create temp dir");
let config = RegistryConfig::new(temp_dir.path());
let registry = Registry::open(config)?;
```

### Registering a Model

```rust
let card = ModelCard::builder()
    .description("Fraud detection model")
    .metrics([("auc", 0.95), ("f1", 0.88)])
    .primary_uses(["Fraud detection in payment transactions"])
    .build();

let model_id = registry.register_model(
    "fraud-detector",
    &ModelVersion::new(1, 0, 0),
    model_data,
    card,
)?;
```

### Registering a Dataset

```rust
let datasheet = Datasheet::builder()
    .purpose("Transaction data for fraud detection")
    .creators(["Data Engineering Team"])
    .instance_count(1_000_000)
    .license("Internal Use Only")
    .build();

let dataset_id = registry.register_dataset(
    "transactions",
    &DatasetVersion::new(1, 0, 0),
    dataset_data,
    datasheet,
)?;
```

### Stage Transition

```rust
registry.transition_model_stage(
    "fraud-detector",
    &ModelVersion::new(1, 0, 0),
    ModelStage::Staging,
)?;
```

## Expected Output

```
=== Pacha Quick Start ===

1. Registering a model...
   Registered model ID: 1cd6809b-6b55-48f5-b619-a5ac4930339b

2. Registering a dataset...
   Registered dataset ID: b6cd66ab-5b48-4e7d-ab75-4dd229edc6c8

3. Querying the model...
   Model: fraud-detector:1.0.0
   Stage: development

4. Promoting model to staging...
   New stage: staging

5. Registry statistics:
   Models: 1
   Datasets: 1
   Objects: 2
   Total size: 89 bytes

✅ Quick start complete!
```