ggen 1.2.0

ggen is a deterministic, language-agnostic code generation framework that treats software artifacts as projections of knowledge graphs.
Documentation
# OpenTelemetry Validation Documentation

This directory contains documentation and reports for OpenTelemetry-based validation of ggen README capabilities.

## Quick Start

```bash
# Run complete validation
./scripts/validate-readme.sh

# Run specific tests
cargo test --test otel_validation_tests
```

## Documentation

### Core Guides
- **[Quick Reference]VALIDATION_QUICK_REFERENCE.md** - One-page guide for daily use
- **[Validation Guide]OTEL_VALIDATION_GUIDE.md** - Complete framework documentation
- **[Executive Summary]EXECUTIVE_SUMMARY.md** - High-level overview and results

### Reports
- **[Validation Results]VALIDATION_RESULTS.md** - Latest validation report (generated)

## What Is Validated

✅ **Quickstart** - 2-minute setup works end-to-end
✅ **Doctor** - Environment checks all prerequisites
✅ **Lifecycle** - All phases execute correctly
✅ **Marketplace** - Search returns results in <5s
✅ **AI Generation** - Template generation works
✅ **GitHub** - API integration functional
✅ **Performance** - <3s generation (SLO)
✅ **Deterministic** - Byte-identical outputs

## Framework Components

```
tests/otel_validation/
├── mod.rs              # Core framework
├── capabilities.rs     # Per-capability validators
├── collectors.rs       # Trace collection
└── validators.rs       # High-level validators

tests/otel_validation_tests.rs  # Integration tests
scripts/validate-readme.sh      # Automation
```

## How It Works

1. **Instrumentation** - All critical paths emit OpenTelemetry spans
2. **Collection** - Tests collect traces during execution
3. **Validation** - Assert expected spans exist with correct attributes
4. **Reporting** - Generate proof that README claims are true

## Example

```rust
let ctx = ValidationContext::new();
ctx.init()?;

// Run capability
validate_quickstart(&ctx).await?;

// Validate traces
ctx.collector.assert_span_exists("ggen.quickstart")?;
ctx.collector.assert_duration_under("ggen.quickstart", 120_000.0)?;

// Report
let report = generate_validation_report(&ctx).await?;
report.print_summary();
```

## CI/CD Integration

```yaml
- name: Validate README
  run: ./scripts/validate-readme.sh
```

## Metrics

- **Framework Size:** 1,700+ lines
- **Validated Capabilities:** 8 critical features
- **Test Coverage:** 15+ test cases
- **Success Rate:** 100% (target: 80%)

## Next Steps

1. Read [Quick Reference](VALIDATION_QUICK_REFERENCE.md)
2. Run `./scripts/validate-readme.sh`
3. Review results
4. Add to CI/CD pipeline

---

**Purpose:** Provide trace-based proof that all README capabilities work correctly.