Overview
Genesis supports enterprise governance through environment separation and credential isolation. This guide explains the purpose and role of Dev, QA, and Prod environments when deploying Genesis, independent of the underlying platform.Core Principle: Environment Isolation
Genesis mirrors traditional team-based access control:- Development teams work in sandboxes with dev credentials
- QA runs in isolated test environments—typically automated test suites, with optional manual or UAT validation
- Production operations use limited-scope credentials with approval gates
The Three Environments
Development Environment
Purpose: Experimentation, iteration, and initial pipeline generation Characteristics:- Genesis agents generate and test new pipeline code
- Connected to development data sources (sample data, dev databases, dev warehouses)
- No production credentials or access
- Failures have no customer impact
- Developers iterate freely without approval gates
- Dev database connections
- Dev warehouse compute
- Test API keys
- Non-production data only
- “Generate a pipeline to process vendor CSV files”
- “Add a new transformation to this existing pipeline”
- “Test schema evolution handling”
- Iterating on data quality rules
QA/Testing Environment
Purpose: Validation before production deployment Characteristics:- Pre-production environment for testing pipeline code
- Automated test suites (regression, integration, data quality) run as part of CI/CD—typical for enterprises
- Performance testing with production-like volumes
- Isolated from production data and credentials
- Optional manual or UAT validation where required by process
- QA database connections
- QA warehouse compute
- Test environment APIs
- Anonymized or synthetic data matching production schema
- Deploy to QA and run automated pipelines against QA data
- Automated regression, integration, and data quality tests validate outputs
- Performance tests with production-like data volumes
- Optional user acceptance testing or manual sign-off where policy requires
Production Environment
Purpose: DevOps support, monitoring, and troubleshooting Characteristics:- Genesis agents perform production support operations
- Read access to production data for analysis
- Root cause analysis and debugging
- Audit logging enabled
- Production database connections (read-only for analysis)
- Production warehouse compute (for investigations)
- Production API keys (monitoring/observability)
- Real customer/business data (for troubleshooting context)
- Root cause analysis: “This pipeline failed at 3am, what happened?”
- Error triage: “Why are we seeing data quality issues in the customer table?”
- Performance investigation: “Why is this transformation taking 2 hours instead of 20 minutes?”
- Fix generation: Genesis analyzes the issue and generates PR with proposed fix
- Monitoring and alerting: Genesis analyzes production logs and metrics
Security Boundary: Credential Isolation
The hard boundary: Each Genesis instance only has access to credentials for its designated environment. This prevents:- Accidental production writes during development
- Test code running against production databases
- Development experiments impacting live operations
- Direct production modifications without approval
Standard Development Lifecycle
1. Development Phase
Environment: Genesis-Dev Genesis agents generate or modify pipeline code. Developers iterate on logic, test transformations, and validate against dev data sources. Output: Generated code (Python, SQL, dbt, PySpark) Human Gate: None - free experimentation2. Version Control
Genesis-generated code exports to your Git repository. Standard pull request workflow:- Peer review of generated code
- Automated linting and testing
- Discussion of approach and edge cases
3. QA/Testing Phase
Environment: Genesis-QA Code deploys to QA environment. Automated test suites (regression, integration, data quality) execute against QA data and validate outputs. In many enterprises, QA passage is driven by automated tests in CI/CD; manual or UAT sign-off is used only where policy requires it. Output: Test results; approval or sign-off per your process Gate: Automated test passage required; human sign-off if required by your governance4. Production Deployment
Via CI/CD: Approved code deploys to your production data platform (Snowflake, Databricks, etc.) Your orchestration tools (Airflow, dbt Cloud, Snowflake Tasks) execute the pipelines in production. Human Gate: Deployment approval, change management ticket (if required)5. Production Support
Environment: Genesis-Prod When issues occur, Genesis agents in production:- Analyze errors and logs
- Investigate data quality problems
- Perform root cause analysis
- Generate fixes as pull requests
Production Support Workflow
Example: Pipeline Failure at 3am
- Alert fires: Production pipeline fails
- Genesis-Prod investigates:
- Reads error logs from orchestrator
- Queries production data to understand state
- Analyzes recent schema changes
- Reviews upstream data sources
- Genesis determines cause: “Upstream vendor added a new column that breaks schema validation”
- Genesis generates fix:
- Updates schema validation logic
- Adds handling for new column
- Creates PR with fix and explanation
- Standard approval process:
- On-call engineer reviews PR
- Automated tests run in CI/CD
- Fix deployed to QA; automated test suites validate
- After QA passes (and any required sign-off), deployed to production
- Pipeline resumes: Your orchestrator retries with fixed code
Common Change Scenarios
New Data Source
- Dev: Genesis generates ingestion pipeline, test with sample files
- Git: Code review, validate error handling
- QA: Automated suites run against historical test data and validate transformations
- Prod Deploy: CI/CD deploys to production, orchestrator executes
- Prod Support: Genesis-Prod monitors for issues
Production Error Investigation
- Prod Support: Genesis-Prod analyzes error
- Dev: Genesis-Dev reproduces issue and develops fix
- Git: PR with fix, peer review
- QA: Automated regression (and other) tests confirm fix works
- Prod Deploy: Fix goes live through CI/CD
Performance Degradation
- Prod Support: Genesis-Prod identifies slow query
- Dev: Genesis-Dev optimizes transformation logic
- QA: Automated performance tests validate improvement
- Prod Deploy: Optimized code deployed
Human-in-the-Loop Control Gates
Genesis respects your existing governance:
Key insight: Genesis accelerates development AND troubleshooting, not deployment or execution. Your approval gates remain fully in place.
Best Practices
Environment Separation
Deploy separate Genesis instances per environment- Different credentials for each
- Network isolation where possible
- Clear naming conventions
- Dev credentials stay in dev
- Prod credentials only in prod (read-only for Genesis)
- Use secrets management systems
- All Genesis-generated code in Git
- Deployment from Git, not from Genesis UI
- Tag releases for traceability
Production Access
Genesis-Prod has read-only database access- Can query for troubleshooting
- Cannot modify data directly
- Cannot execute pipeline code
- Log what Genesis queries
- Track what issues were investigated
- Document fixes proposed
Credential Management
Least privilege principle- Genesis-Dev: dev credentials only
- Genesis-QA: QA credentials only
- Genesis-Prod: read-only prod credentials
- Genesis picks up new credentials automatically
- No code changes required
- Maintain audit trail
- Use your organization’s secrets management system
- Never hardcode credentials
- Centralized rotation and revocation
Deployment Discipline
Always test in QA first- No direct-to-prod deployments
- Validate with production-like data volumes
- Performance testing before release
- Even AI-generated code needs human validation
- Review for security, performance, correctness
- Document approval decisions
- Track pipeline success rates
- Alert on failures or anomalies
- Genesis-Prod can investigate alerts
What NOT to Do
Don’t give Genesis-Prod write access- Read-only for analysis and troubleshooting
- Fixes must go through standard process
- Even Genesis-generated fixes need automated (and any required manual) validation
- Use hotfix process if needed, but run automated tests first
- Even “read-only” access is dangerous
- Use anonymized data instead
- Genesis-generated fixes still need human approval
- Emergency changes get expedited review, not no review

