bce6b6fa37
This commit completes the comprehensive glyph resonance awareness upgrade
with queryable resonance metrics, new instruction, and formal specification.
## Changes
### Phase 3: New GET_GLYPH_RESONANCE Instruction
- Added op_GET_GLYPH_RESONANCE to xic_ops.py for querying glyph resonance data
- Supports metrics: report, global, dominant, weight, lineage, contributor, frequency, grammar
- Results printed with [XIC-RESONANCE] prefix and stored in ctx._state
- Handles both full pipeline result (preferred) and fallback to resonance_metrics dict
- Updated OP_TABLE to include 10th operation
### Phase 4: Formal Specification & Demo
#### XIC_SEMANTICS_v1_5.md Updates
- Added comprehensive "Glyph Resonance Structure" section documenting:
- FusedSymbol dataclass with summary, glyph_ids, resonance_map
- GlyphResonanceMap with resonances dict and utility methods
- GlyphResonanceMetrics (weight, lineage_score, contributor_score, frequency_score, grammar_score)
- Example JSON structure from LAIN cognition
- Added "GET_GLYPH_RESONANCE" instruction semantics with:
- Signature and preconditions/postconditions
- Metric table describing all query types
- Detailed side effects and remarks
- Data access patterns
#### New Demo Program
- Created programs/demo_glyph_resonance.gx.json
- Two-chain demonstration:
- Chain 1: compression_theory glyph with report, global, dominant, weight queries
- Chain 2: neural_dynamics glyph with individual metric queries (lineage, contributor, frequency, grammar)
- Full instrumentation with CHAIN markers and LOG statements
#### Comprehensive Report
- Created XIC_GLYPH_RESONANCE_REPORT.md documenting:
- Executive summary of resonance awareness upgrade
- Detailed explanation of all components
- Architecture and data flow diagrams
- All 10 validation test results
- Usage examples and design decisions
- Backward compatibility guarantees
- Future extensibility notes
## Implementation Details
### Enhanced Data Structures (glyphos/symbolic_pipeline.py)
- GlyphResonanceMetrics: 5-dimensional resonance scoring
- GlyphResonanceMap: with get_glyph_resonance(), get_top_glyphs(), get_average_resonance()
- FusedSymbol.from_lain_result(): parses LAIN output structure
### Glyph Resonance Utilities
- extract_glyph_resonances(): extract per-glyph metrics from pipeline result
- get_dominant_glyphs(n): rank glyphs by weight
- format_glyph_resonance_report(): human-readable resonance output
### Enhanced CALL_GLYPH
- Now stores comprehensive resonance data in ctx._state["glyph_{glyph_id}"]
- Captures output_text, fused_symbol, resonance_metrics, global_resonance_score, steps
- Also stores full SymbolicPipelineResult for direct access
### New op_GET_GLYPH_RESONANCE
- Query stored resonance metrics with flexible metric selection
- Integrates with symbolic_pipeline utilities for full introspection
- Prints results and stores in ctx._state for programmatic access
## Exports (glyphos/__init__.py)
- GlyphResonanceMetrics
- GlyphResonanceMap
- extract_glyph_resonances
- get_dominant_glyphs
- format_glyph_resonance_report
## Testing
All 10 validation tests pass:
✅ GlyphResonanceMetrics instantiation
✅ GlyphResonanceMap methods (get_glyph_resonance, get_top_glyphs, get_average_resonance)
✅ FusedSymbol.from_lain_result() parsing
✅ extract_glyph_resonances() functionality
✅ get_dominant_glyphs() ranking
✅ format_glyph_resonance_report() generation
✅ OP_TABLE has GET_GLYPH_RESONANCE
✅ op_GET_GLYPH_RESONANCE callable
✅ demo_glyph_resonance.gx.json valid
✅ All exports available from glyphos
## Backward Compatibility
- Zero breaking changes
- All XIC v1 and v1.5 programs work unchanged
- New resonance features are additive
- Existing instruction signatures preserved
- Compressed mode execution unaffected
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
60 lines
1.2 KiB
Python
60 lines
1.2 KiB
Python
"""GlyphOS - Cognitive Kernel and Event System
|
|
|
|
A system service layer on top of LAIN cognition engine and Supercharged Glyph Registry.
|
|
Provides:
|
|
- Cognitive Kernel: Clean API for running cognition on GX files
|
|
- Event System: Lightweight in-process event bus for symbolic events
|
|
"""
|
|
|
|
from .cognitive_kernel import (
|
|
CognitiveKernel,
|
|
get_kernel,
|
|
run_gx,
|
|
run_symbolic_prompt,
|
|
kernel_status,
|
|
)
|
|
|
|
from .symbolic_pipeline import (
|
|
SymbolicStep,
|
|
SymbolicPipelineResult,
|
|
FusedSymbol,
|
|
GlyphResonanceMetrics,
|
|
GlyphResonanceMap,
|
|
run_symbolic_pipeline,
|
|
extract_glyph_resonances,
|
|
get_dominant_glyphs,
|
|
format_glyph_resonance_report,
|
|
)
|
|
|
|
from .events import (
|
|
EventBus,
|
|
Event,
|
|
EventType,
|
|
get_event_bus,
|
|
emit,
|
|
on,
|
|
)
|
|
|
|
__all__ = [
|
|
"CognitiveKernel",
|
|
"get_kernel",
|
|
"run_gx",
|
|
"run_symbolic_prompt",
|
|
"kernel_status",
|
|
"SymbolicStep",
|
|
"SymbolicPipelineResult",
|
|
"FusedSymbol",
|
|
"GlyphResonanceMetrics",
|
|
"GlyphResonanceMap",
|
|
"run_symbolic_pipeline",
|
|
"extract_glyph_resonances",
|
|
"get_dominant_glyphs",
|
|
"format_glyph_resonance_report",
|
|
"EventBus",
|
|
"Event",
|
|
"EventType",
|
|
"get_event_bus",
|
|
"emit",
|
|
"on",
|
|
]
|