286 lines
10 KiB
Markdown
286 lines
10 KiB
Markdown
|
|
# SuperDave GlyphRunner - Complete Architecture
|
|||
|
|
|
|||
|
|
## System Overview
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
Python Source Code
|
|||
|
|
↓
|
|||
|
|
GXCompiler
|
|||
|
|
↓
|
|||
|
|
GX Binary (.gx)
|
|||
|
|
XIC Format
|
|||
|
|
↓
|
|||
|
|
GX Loader
|
|||
|
|
↓
|
|||
|
|
┌─────────────────────────────────────────┐
|
|||
|
|
│ LAIN Cognition Engine │
|
|||
|
|
│ │
|
|||
|
|
│ Step 1: Load Glyph Context │
|
|||
|
|
│ ├─ Check manifest["glyph_id"] │
|
|||
|
|
│ ├─ Check manifest["glyphs"] │
|
|||
|
|
│ ├─ Search by manifest["tags"] │
|
|||
|
|
│ └─ Return normalized glyph context │
|
|||
|
|
│ │
|
|||
|
|
│ Steps 2-9: Process 8 Lanes │
|
|||
|
|
│ ├─ Lane 0: Structural Logic │
|
|||
|
|
│ ├─ Lane 1: Semantic Flow │
|
|||
|
|
│ ├─ Lane 2: Compression Residue │
|
|||
|
|
│ ├─ Lane 3: Symbolic Metadata │
|
|||
|
|
│ ├─ Lane 4: Execution Hints │
|
|||
|
|
│ ├─ Lane 5: Predictive Scaffolding │
|
|||
|
|
│ ├─ Lane 6: Contributor Imprint │
|
|||
|
|
│ └─ Lane 7: Epoch Resonance │
|
|||
|
|
│ │
|
|||
|
|
│ + Glyph Injection │
|
|||
|
|
│ ├─ Inject metadata into each lane │
|
|||
|
|
│ └─ Compute resonance metrics │
|
|||
|
|
│ │
|
|||
|
|
│ Fusion │
|
|||
|
|
│ ├─ Fuse 8 lane results │
|
|||
|
|
│ └─ Augment with glyph context │
|
|||
|
|
│ │
|
|||
|
|
│ Output │
|
|||
|
|
│ ├─ Fused symbol (summary + key points) │
|
|||
|
|
│ ├─ Glyph resonance (4 metrics) │
|
|||
|
|
│ ├─ Cognition trace (all steps) │
|
|||
|
|
│ └─ Execution diagnostics │
|
|||
|
|
└─────────────────────────────────────────┘
|
|||
|
|
↓
|
|||
|
|
CLI Output / JSON
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
## Component Modules
|
|||
|
|
|
|||
|
|
### `gx_lain/lain_cognition.py` - Core Engine
|
|||
|
|
- **ExecutionResult**: Dataclass for cognition output
|
|||
|
|
- `fused_symbol`: Combined 8-lane summary
|
|||
|
|
- `output_text`: Rendered analysis
|
|||
|
|
- `cognition_trace`: Step-by-step processing
|
|||
|
|
- `diagnostics`: Performance metrics + glyph resonance
|
|||
|
|
|
|||
|
|
- **Lane Processors**: 8 functions analyzing different aspects
|
|||
|
|
- Each takes: `(lane: int, segments: List[dict], context: Dict, manifest: Dict)`
|
|||
|
|
- Returns: `{"summary": str, "key_points": list, "constraints": list, "open_questions": list}`
|
|||
|
|
- Error recovery: returns safe default on exception
|
|||
|
|
|
|||
|
|
- **Fusion Engine**: `fuse_lanes(lane_results: List[dict]) -> dict`
|
|||
|
|
- Combines all 8 lane outputs
|
|||
|
|
- Merges summaries and key points
|
|||
|
|
- Normalizes constraints and questions
|
|||
|
|
|
|||
|
|
- **Output Renderer**: `render_output_text(fused: dict) -> str`
|
|||
|
|
- Human-readable format
|
|||
|
|
- Includes all key metadata
|
|||
|
|
|
|||
|
|
### `glyphs/super_registry.py` - Glyph Database
|
|||
|
|
- **Data**: 600 supercharged glyphs from LedoGlyph600.json
|
|||
|
|
- **Fields per glyph** (13 core):
|
|||
|
|
- `id`: Unique identifier (G001-G600)
|
|||
|
|
- `name`: Human-readable name
|
|||
|
|
- `category`: Classification (8 total)
|
|||
|
|
- `band`: Frequency band (0-41)
|
|||
|
|
- `score`: Strength metric (0-300+)
|
|||
|
|
- `praw`: Frequency signature (P, R, A, W components)
|
|||
|
|
- `originalMetrics`: Symbolic anatomy (power, complexity, resonance, stability, connectivity, affinity)
|
|||
|
|
- `activation`: Envelope (dormant/present/resonant/overdrive modes)
|
|||
|
|
- `lineage`: Inheritance signature (contributor tracking)
|
|||
|
|
- `routing`, `storage`, `governance`: Extended metadata
|
|||
|
|
- `period`: Temporal dimension (optional)
|
|||
|
|
|
|||
|
|
- **Query API**:
|
|||
|
|
- `get_super(id: str)`: Single glyph by ID
|
|||
|
|
- `list_super_ids()`: All IDs (sorted)
|
|||
|
|
- `search_super(query, fields, limit)`: Text search
|
|||
|
|
- `super_stats()`: Registry metadata
|
|||
|
|
- `get_super_field(id, path, default)`: Nested field access (dot-notation)
|
|||
|
|
- `list_super_by_category(cat)`: Filter by category
|
|||
|
|
- `get_super_by_band(band)`: Filter by frequency
|
|||
|
|
- `get_glyphs_by_score_range(min, max)`: Filter by strength
|
|||
|
|
|
|||
|
|
### `gx_lain/lain_glyph_bridge.py` - Integration Layer
|
|||
|
|
- **load_glyph_context(manifest, context)**
|
|||
|
|
- Loads glyph metadata relevant to execution
|
|||
|
|
- Fallback chain: explicit ID → glyphs list → tags search → default "none"
|
|||
|
|
- Returns normalized 13-field context
|
|||
|
|
|
|||
|
|
- **inject_glyph_metadata_into_lane(lane_result, glyph_context)**
|
|||
|
|
- Adds 10 glyph fields to lane result without overwriting
|
|||
|
|
- Fields: glyph_id, name, category, score, frequency_signature, activation_mode, activation_score, lineage_signature, inheritance_weight, symbolic_anatomy
|
|||
|
|
|
|||
|
|
- **compute_glyph_resonance(glyph_context)**
|
|||
|
|
- Calculates 4-component resonance metric
|
|||
|
|
- Activation resonance: activation.score / 100 (0.4 weight)
|
|||
|
|
- Frequency resonance: praw vector magnitude (0.3 weight)
|
|||
|
|
- Symbolic resonance: originalMetrics.resonance / 100 (0.3 weight)
|
|||
|
|
- Overall: weighted sum (0.0-1.0 range)
|
|||
|
|
|
|||
|
|
- **augment_fused_symbol_with_glyphs(fused_symbol, glyph_context)**
|
|||
|
|
- Adds glyph metadata to final result
|
|||
|
|
- Extends key_points with glyph-specific insights
|
|||
|
|
- Marks glyph_found status
|
|||
|
|
|
|||
|
|
### `gx_lain/runtime.py` - Orchestration
|
|||
|
|
- **load_gx(gx_path)**: Parse GX binary
|
|||
|
|
- Returns: (manifest, segments, compressed_payload)
|
|||
|
|
|
|||
|
|
- **execute_gx_path(gx_path, context)**
|
|||
|
|
- Full pipeline orchestration
|
|||
|
|
- Step 1: Load glyph context
|
|||
|
|
- Steps 2-9: Process 8 lanes with glyph injection
|
|||
|
|
- Fusion & augmentation
|
|||
|
|
- Diagnostics computation
|
|||
|
|
- Returns ExecutionResult
|
|||
|
|
|
|||
|
|
### `gx_cli/` - Command-Line Interface
|
|||
|
|
- **parser.py**: Argument parsing
|
|||
|
|
- `compile`: Python → .gx
|
|||
|
|
- `inspect`: View .gx metadata
|
|||
|
|
- `run`: Execute .gx (legacy)
|
|||
|
|
- `summary`: Quick summary
|
|||
|
|
- **`lain`**: Execute through LAIN cognition ← NEW
|
|||
|
|
|
|||
|
|
- **dispatcher.py**: Route commands to handlers
|
|||
|
|
|
|||
|
|
- **commands.py**: Command implementations
|
|||
|
|
- `cmd_lain(path, mode)`: Execute .gx through LAIN
|
|||
|
|
- Calls `lain_execute_gx_path`
|
|||
|
|
- Displays formatted output with fused_symbol, key points, diagnostics, glyph resonance
|
|||
|
|
|
|||
|
|
## Data Flow Example
|
|||
|
|
|
|||
|
|
### Input: Python Source
|
|||
|
|
```python
|
|||
|
|
def greet(name):
|
|||
|
|
return f"Hello, {name}!"
|
|||
|
|
|
|||
|
|
result = greet("World")
|
|||
|
|
print(result)
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### Compilation
|
|||
|
|
```
|
|||
|
|
compile source.py → source.gx (438 bytes)
|
|||
|
|
Format: [XIC header] [manifest JSON] [segments] [compressed payload]
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### Execution Through LAIN
|
|||
|
|
```
|
|||
|
|
1. Load GX binary
|
|||
|
|
- Extract manifest, segments, compressed code
|
|||
|
|
|
|||
|
|
2. Load glyph context
|
|||
|
|
- Check for glyph_id in manifest
|
|||
|
|
- If found, fetch from registry
|
|||
|
|
- Normalize to 13-field context
|
|||
|
|
|
|||
|
|
3. Process 8 lanes (each lane analyzes segments differently)
|
|||
|
|
- Lane 0: Structure → "Functional design with clear control flow"
|
|||
|
|
- Lane 1: Semantics → "String operations and output"
|
|||
|
|
- Lane 2: Compression → "Residual entropy from compression"
|
|||
|
|
- Lane 3: Symbols → "Function call and return patterns"
|
|||
|
|
- Lane 4: Hints → "Simple execution, no complex recursion"
|
|||
|
|
- Lane 5: Predictions → "Expected output: greeting message"
|
|||
|
|
- Lane 6: Contributor → "GlyphRunner compiler"
|
|||
|
|
- Lane 7: Epoch → "Version 1.0.0, May 2026"
|
|||
|
|
|
|||
|
|
4. Inject glyph metadata into each lane
|
|||
|
|
- Add glyph_id, glyph_name, glyph_score
|
|||
|
|
- Add frequency signature and activation mode
|
|||
|
|
- Compute activation_resonance, frequency_resonance
|
|||
|
|
|
|||
|
|
5. Fuse lanes
|
|||
|
|
- Combine all summaries
|
|||
|
|
- Merge key points
|
|||
|
|
- Consolidate constraints
|
|||
|
|
|
|||
|
|
6. Augment with glyph
|
|||
|
|
- Add glyph fields to fused symbol
|
|||
|
|
- Extend key_points with glyph insights
|
|||
|
|
- Compute overall_resonance
|
|||
|
|
|
|||
|
|
7. Render output
|
|||
|
|
- Display fused symbol summary
|
|||
|
|
- List key points
|
|||
|
|
- Show diagnostics with glyph resonance
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### Output
|
|||
|
|
```
|
|||
|
|
[ANALYZE]
|
|||
|
|
Functional design with string operations and output generation | Expected execution of greeting function | Compression residue minimal | Function call patterns detected | Simple runtime profile | Greeting message expected | Compiled by GlyphRunner | Version 1.0.0 (May 2026)
|
|||
|
|
|
|||
|
|
Key Points:
|
|||
|
|
• greet function definition
|
|||
|
|
• String concatenation
|
|||
|
|
• Function invocation
|
|||
|
|
|
|||
|
|
[Fused Symbol]
|
|||
|
|
Combined cognition result...
|
|||
|
|
|
|||
|
|
[Glyph Integration] (if glyph_id provided)
|
|||
|
|
Glyph: G042 (AURIX)
|
|||
|
|
Score: 274
|
|||
|
|
Resonance: 0.7680 (activation: 0.6900, frequency: 1.0000, symbolic: 0.6400)
|
|||
|
|
|
|||
|
|
[Diagnostics]
|
|||
|
|
Elapsed: 0.0001s
|
|||
|
|
Interface: v1.0
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
## Testing Strategy
|
|||
|
|
|
|||
|
|
### Unit Tests
|
|||
|
|
- **test_supercharged_registry.py**: Registry API verification (12 tests)
|
|||
|
|
- **test_lain_glyph_bridge.py**: Bridge functions (10 tests)
|
|||
|
|
|
|||
|
|
### Integration Tests
|
|||
|
|
- **test_compile.py**: Source compilation
|
|||
|
|
- **test_determinism.py**: Output consistency
|
|||
|
|
- **test_errors.py**: Error handling
|
|||
|
|
- **test_inspect.py**: GX metadata inspection
|
|||
|
|
- **test_run.py**: Execution pipeline
|
|||
|
|
- **test_summary.py**: Output summaries
|
|||
|
|
|
|||
|
|
### Coverage
|
|||
|
|
- 32 total tests across all suites
|
|||
|
|
- 100% pass rate
|
|||
|
|
- All components verified
|
|||
|
|
- Full pipeline tested end-to-end
|
|||
|
|
|
|||
|
|
## Design Decisions
|
|||
|
|
|
|||
|
|
1. **8-Lane Architecture**: Each lane represents a different cognitive dimension. By analyzing the same code from 8 angles, we gain comprehensive understanding.
|
|||
|
|
|
|||
|
|
2. **Glyph Injection**: Glyphs augment cognition without replacing it. Glyph context is optional—code executes correctly with or without glyph association.
|
|||
|
|
|
|||
|
|
3. **Resonance Metric**: Combines three independent measurements (activation, frequency, symbolic) with weighted formula for robust quality assessment.
|
|||
|
|
|
|||
|
|
4. **Relative Imports**: Package structure uses relative imports (`from .module import`) to allow import from any context.
|
|||
|
|
|
|||
|
|
5. **Deterministic Output**: GSZ3 compression ensures consistent binaries across runs; no timestamps in payload.
|
|||
|
|
|
|||
|
|
6. **Graceful Degradation**: Lane processors catch exceptions and return safe defaults, ensuring full execution even with partial lane failures.
|
|||
|
|
|
|||
|
|
## Performance Characteristics
|
|||
|
|
|
|||
|
|
- **Load Time**: ~50ms (lazy-load 600 glyphs)
|
|||
|
|
- **Cognition Time**: ~100ms (8 lanes × segment analysis)
|
|||
|
|
- **Total End-to-End**: ~150ms for typical file
|
|||
|
|
- **Memory**: ~50MB (glyph registry in memory)
|
|||
|
|
|
|||
|
|
## Future Enhancements
|
|||
|
|
|
|||
|
|
1. **Batch Processing**: Execute multiple .gx files in sequence
|
|||
|
|
2. **Visualization**: Render resonance metrics as charts
|
|||
|
|
3. **Filtering**: `lain --glyph-category communication --min-score 200`
|
|||
|
|
4. **Export**: JSON/YAML output for integration with other tools
|
|||
|
|
5. **Caching**: Cache frequently-used glyph contexts
|
|||
|
|
6. **Parallel Lanes**: Process lanes concurrently for larger files
|
|||
|
|
7. **Custom Lane Processors**: Allow user-defined analysis functions
|
|||
|
|
8. **Glyph Recommendation**: Suggest best glyph match for code
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
**Architecture Status**: Complete and verified
|
|||
|
|
**All components integrated and tested**
|