adr_id: ADR-030 title: VibesPro™ Foundation Integration Strategy status: Proposed version: 1.1.0 date_created: 2025-12-27 last_updated: 2026-01-04 supersedes:
Status: Proposed
Version: 1.1
Date: 2025-12-27
Updated: 2026-01-04
Supersedes: ADR-030 (VibesPro™ Integration Strategy)
Related ADRs: ADR-012 (Delivery Pipeline), ADR-011 (IFL), ADR-003 (Foundational Architecture)
Related PRDs: PRD-004, PRD-020
Related SDSs: SDS-015, SDS-021, SDS-045, SDS-050
Identity Specs: SDS-050, REF-CE-002
SEA™ has already adopted VibesPro™ as a governed generator (ADR-030). However, the original integration was positioned as a simple adapter pattern. VibesPro™ has evolved significantly and now offers:
Building SEA™ “on top of” VibesPro™ means incorporating these core systems as first-class subsystems, not merely integration points.
We adopt VibesPro™ as the foundational runtime substrate for SEA-Forge™, with the following architectural commitments:
VibesPro™’s temporal_db (Rust + redb) becomes the implementation of SEA™’s Temporal Database Service (SDS-015).
| SEA™ Spec Component | VibesPro™ Implementation |
|---|---|
| VectorStore | temporal_db/repository.rs leveraging redb |
| PatternOracle | crates/temporal-ai/ with multi-factor ranking |
| MetricIndexer | ops/ with OpenTelemetry ingest |
VibesPro™’s type generation pipeline becomes the canonical implementation:
1
2
Supabase Schema → just gen-types-ts → TypeScript types
→ just gen-types-py → Python Pydantic models
Invariants:
just gen-types to ensure bidirectional syncjust check-typesVibesPro™ defines 5 journeys (A–E) that map directly to SEA™ personas:
| SEA™ Persona | VibesPro™ Journey | Key Commands |
|---|---|---|
| Template Consumer | Journey A | copier copy, just setup, just test |
| Template Maintainer | Journey B | just test-generation, just copier-ci |
| AI-Assisted Developer | Journey C | .github/prompts/*, just ai-validate |
| Operations Engineer | Journey D | just observe-*, just temporal-ai-* |
| Data Engineer | Journey E | just db-migrate, just gen-types |
VibesPro™’s meta-generator (generators/generator/generator.ts) becomes the engine for SEA™’s “No-Agent-Writes-Code” invariant:
1
SEA™ DSL → Manifest Compiler → Generator Schema Compiler → Nx Generators → Generated Code
Generator Types Available:
domain: Entities, value objects, domain eventsservice: Backend services with hexagonal structurecomponent: UI componentsadapter: Infrastructure adaptersutility: Shared utility librariescustom: Blank generator templateVibesPro™’s ce.manifest.jsonc becomes the Source of Truth for SEA™ agent routing:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
{
"artifacts": [
{
"id": "ce.skill.temporal-ai",
"path": ".github/skills/temporal-ai/skill.md",
},
{
"id": "ce.skill.architecture-decisioning",
"path": ".github/skills/architecture-decisioning/SKILL.md",
},
{
"id": "ce.agent.orchestrator",
"path": ".github/agents/orchestrator.agent.md",
},
],
}
VibesPro™’s copier.yml becomes the template for SEA-generated projects with mandatory SEA™ extensions:
1
2
3
4
# Extended for SEA™
include_sea_governance: true # Adds CALM validation
include_sea_semantic: true # Adds SEA™ DSL validation
include_ifl_identity: true # Adds Identity Token minting
| Attribute | Measurement |
|---|---|
| Generator Latency | < 5s per generator execution |
| Type Sync Accuracy | 100% bidirectional consistency |
| Temporal AI Query | < 100ms for pattern recommendations |
| CI Validation | < 5 minutes for full validation suite |
See: SDS-045 (VibesPro™ Foundation Integration Service)
ADR-030 positioned VibesPro™ as an “adapter.” This ADR (ADR-030) fully supersedes ADR-030, elevating VibesPro™ to a foundational substrate. Key changes:
| ADR-030 (Adapter Model) | ADR-030 (Foundation Model) |
|---|---|
| VibesPro™ generates, SEA™ validates | VibesPro™ IS the generator runtime |
| Separate Temporal DB spec | Temporal AI IS the implementation |
| Type sync as optional feature | Type sync as mandatory invariant |
| Context-Kit as external | ce.manifest.jsonc as SEA™ core |