Based on PRD.md - v1 Implementation Roadmap
- Environment configuration (local/staging/production)
- Supabase CLI integration
- Database connection setup
- Unified setup and migration scripts
- Documentation (README, Environment-Setup)
- Create core tables migration
-
projects- Multi-tenant project isolation -
workflows- Workflow definitions with versioning -
workflow_versions- Immutable published versions -
runs- Workflow execution instances -
events- Event sourcing log -
secrets- Encrypted secrets vault -
audit_log- Admin actions and secret access
-
- Implement Row Level Security (RLS) policies
- Create indices for hot paths
- Set up event partitioning
- Choose queue implementation (pg-boss vs pgmq)
- Create queue tables/setup
- Implement job enqueue/dequeue
- Add retry logic with exponential backoff + jitter
- Implement DLQ (Dead Letter Queue)
- State machine implementation
- Event sourcing engine
- Job scheduling and polling
- Deterministic replay logic
- Circuit breaker implementation
- Timeout handling
- Idempotency key support
- HTTP client with retry logic
- Exponential backoff + jitter
- Timeout configuration
- Response recording for replay
- Error handling and logging
-
transformnode (JMESPath)- JMESPath parser integration
- Input/output validation
- Preview functionality
-
http_callnode- Request configuration
- Retry policies
- Response handling
-
branchnode (conditional logic) -
delaynode (scheduled execution) -
terminatenode (end workflow)
- SvelteKit app structure
- Svelte 5 configuration
- Supabase client setup
- Authentication flow
- Visual DAG editor component
- Node palette (drag & drop)
- Connection/edge drawing
- Node configuration forms (JSON Schema-driven)
- Workflow validation
- Save/load workflow definitions
- Workflow list view
- Create/edit workflow
- Version management (Draft → Publish)
- Workflow settings
- Run list view
- Run detail view with DAG visualization
- Live logs via Supabase Realtime
- Event timeline
- "Resume from step" functionality
- Test run feature
- Secrets vault UI
- Add/edit/delete secrets
- Secret masking in UI
- Project-scoped secrets
- Supabase Auth integration
- RLS policy enforcement
- Project membership management
- Role-based access control
- AES-GCM encryption implementation
- KEK (Key Encryption Key) management
- Key rotation mechanism
- Secret access audit logging
- PII detection rules
- Automatic redaction in logs
- Artifact sanitization
- Compliance helpers
- Webhook endpoint creation
- Unique webhook URLs per workflow
- Signature verification (HMAC)
- JWT token support
- Payload validation
- Rate limiting (token bucket)
- Webhook configuration
- Test webhook functionality
- Webhook logs
- Signature key management
- Structured logging implementation
- Log levels and filtering
- Realtime log streaming (Supabase)
- Log retention policies
- Materialized views for metrics
- Run success/failure rates
- Execution time statistics
- Queue depth monitoring
- Error rate tracking
- Failure alert system
- Webhook for alerts
- Alert configuration UI
- Worker logic tests
- Node execution tests
- Transform/JMESPath tests
- Retry logic tests
- End-to-end workflow tests
- Webhook trigger tests
- Event sourcing replay tests
- Multi-tenant isolation tests
- Load testing
- Concurrent execution tests
- Queue throughput tests
- Getting started guide
- Workflow builder tutorial
- Node reference documentation
- JMESPath examples
- Webhook setup guide
- Secrets management guide
- Architecture deep-dive
- API documentation
- Database schema documentation
- Contributing guide
- Deployment guide
- Health check endpoints
- Graceful shutdown
- Connection pooling optimization
- Resource limits configuration
- Backup strategy
- Application metrics
- Database performance monitoring
- Queue health monitoring
- Error tracking integration
- GitHub Actions workflows
- Automated testing
- Database migration automation
- Deployment automation
- Query optimization
- Index tuning
- Caching strategy
- Bundle size optimization
- Loading states
- Error messages
- Keyboard shortcuts
- Mobile responsiveness
- Dark mode
- Security audit
- Performance benchmarks
- Documentation review
- Demo workflows
- Marketing site
Environment Setup ✅ COMPLETE
- All environment configuration completed
- Supabase CLI integrated
- Documentation updated
Next Up: Phase 1 - Core Infrastructure
- Start with database schema design
- Implement core tables with RLS
- Set up queue system (pg-boss recommended)
- Follow KISS principle - keep it simple
- Use Supabase CLI for all migrations (
pnpx supabase migration new) - All tests go in
./testsdirectory - Port 8080 for all services
- Event sourcing is key for determinism and replay
- JMESPath for transforms (no arbitrary code execution in v1)