Back to Architecture
Learning System

Knowledge Graph & Cross-Learning

Graph-based learning system enabling agents to share patterns, learn from each other, and continuously improve through experimentation.

Learning Pipeline Components

Learning Coordinator

Orchestrates entire learning pipeline, subscribes to events, triggers pattern recognition

Pattern Recognizer

Analyzes deployment outcomes, identifies explicit/implicit patterns and anti-patterns

Experiment Manager

A/B tests, canary deployments, champion/challenger, Bayesian optimization

Model Updater

Applies learned improvements: pattern addition, weight adjustment, strategy updates

Event Subscriptions

The learning coordinator subscribes to these events to trigger pattern recognition and model updates:

deployment.succeededdeployment.failedcode.quality.scoredtest.executedbug.fixedperformance.improvementperformance.degradation

Learning Observation Structure

type LearningObservation struct {
    Type              string      // pattern, anti_pattern, optimization
    Confidence        float64     // 0-1
    PatternDetected   string
    SuccessIndicators []string
    FailureIndicators []string
    Recommendations   []Recommendation
    Frequency         int
    SuccessRate       float64
}

// Knowledge Relevance Formula
relevance = (confidence × decay × 0.5) + (success_rate × 0.3) + (use_count × 0.2)

// Decay: exponential with 90-day half-life
decay = 0.5 ^ (days_since_creation / 90)

Cross-Learning Flow

                    ┌─────────────────┐
                    │ Event Published │
                    └────────┬────────┘
                             │
              ┌──────────────┼──────────────┐
              ↓              ↓              ↓
        ┌──────────┐  ┌──────────┐  ┌──────────┐
        │ CODER-AI │  │ DEBUG-AI │  │ TEST-AI  │
        │ Outcomes │  │ Outcomes │  │ Outcomes │
        └────┬─────┘  └────┬─────┘  └────┬─────┘
             │             │             │
             └─────────────┼─────────────┘
                           ↓
              ┌────────────────────────┐
              │   Pattern Recognizer   │
              │   (Identify patterns)  │
              └───────────┬────────────┘
                          ↓
              ┌────────────────────────┐
              │   Experiment Manager   │
              │   (A/B test patterns)  │
              └───────────┬────────────┘
                          ↓
              ┌────────────────────────┐
              │     Model Updater      │
              │ (Update all agents)    │
              └───────────┬────────────┘
                          ↓
        ┌─────────────────┼─────────────────┐
        ↓                 ↓                 ↓
   ┌──────────┐    ┌──────────┐    ┌──────────┐
   │ CODER-AI │    │ DEBUG-AI │    │ TEST-AI  │
   │ (Updated)│    │ (Updated)│    │ (Updated)│
   └──────────┘    └──────────┘    └──────────┘

Code Dependency Analysis

The Knowledge Graph includes comprehensive code dependency analysis at both project and file levels, enabling agents to understand impact, trace relationships, and make informed decisions.

Import Analysis

Tracks module imports across TypeScript, JavaScript, Go, Python, and Java files

Database Table Tracking

Identifies SQL table references from queries and maps file dependencies

API Route Discovery

Extracts API endpoint definitions and maps handlers to routes

Config & Environment

Tracks configuration keys and environment variables used across files

Function & Class Analysis

Maps exported functions, classes, and their relationships

Change Impact Analysis

Determines affected components when a file or table changes

Dependency Graph Structure

// Code Dependency Analyzer - Multi-Language Support
Supported Languages: TypeScript, JavaScript, Go, Python, Java

// Node Types in Knowledge Graph
NodeTypeFile        = "file"         // Source code files
NodeTypeModule      = "module"       // External dependencies
NodeTypeTable       = "table"        // Database tables
NodeTypeApiEndpoint = "api_endpoint" // REST endpoints
NodeTypeFunction    = "function"     // Exported functions
NodeTypeClass       = "class"        // Class definitions

// Edge Types (Relationships)
EdgeTypeImports     = "imports"      // File imports module
EdgeTypeUsesTable   = "uses_table"   // File queries table
EdgeTypeExposesApi  = "exposes_api"  // File defines endpoint
EdgeTypeCalls       = "calls"        // Function calls function

// Analysis Output Structure
type FileAnalysis struct {
    Path         string          // File path
    Language     LanguageType    // Detected language
    Imports      []ImportInfo    // Module imports
    Exports      []ExportInfo    // Exported symbols
    Functions    []FunctionInfo  // Function definitions
    Tables       []string        // Database tables referenced
    ApiRoutes    []ApiRouteInfo  // API endpoints defined
    EnvVars      []string        // Environment variables used
    Dependencies []string        // External packages
}

// Impact Analysis Queries
GetFilesUsingTable(tableName)   → []string  // Files affected by table change
GetFilesUsingConfig(configKey)  → []string  // Files using config
GetFilesDefiningApi(method, path) → []string // Files defining endpoint