| """
|
| Inter-OS Communication Architecture
|
| System 1 β Metacognition β System 2 Coordination Patterns
|
|
|
| All inter-OS communication routes through Mother CLI hierarchy (L1-L4)
|
| Each OS has event queues for asynchronous communication
|
| Synchronous calls with timeout enforce real-time constraints
|
|
|
| Date: April 23, 2026
|
| Status: Architecture Defined β
|
| """
|
|
|
| import asyncio
|
| import json
|
| import logging
|
| import time
|
| import uuid
|
| from collections import defaultdict
|
| from dataclasses import dataclass, field
|
| from enum import Enum
|
| from typing import Any, Dict, List, Optional, Tuple
|
|
|
| logger = logging.getLogger("InterOSCommunication")
|
| logging.basicConfig(level=logging.INFO)
|
|
|
|
|
| class CommunicationPattern(Enum):
|
| """Patterns for inter-OS communication"""
|
| STIMULUS_ESCALATION = "stimulus_escalation"
|
| LEARNING_FEEDBACK = "learning_feedback"
|
| REFLECTION_REQUEST = "reflection_request"
|
| AUTONOMY_VETO = "autonomy_veto"
|
| CONSCIOUSNESS_SYNC = "consciousness_sync"
|
| MOTIVATION_CHECK = "motivation_check"
|
| ADAPTATION_UPDATE = "adaptation_update"
|
|
|
|
|
| @dataclass
|
| class OSMessage:
|
| """Message between operating systems"""
|
| message_id: str = field(default_factory=lambda: str(uuid.uuid4()))
|
| from_os: str = ""
|
| to_os: str = ""
|
| pattern: CommunicationPattern = CommunicationPattern.STIMULUS_ESCALATION
|
| payload: Dict[str, Any] = field(default_factory=dict)
|
| timestamp: float = field(default_factory=time.time)
|
| priority: int = 1
|
| requires_response: bool = False
|
| response_timeout: float = 5.0
|
| response_data: Optional[Dict[str, Any]] = None
|
| status: str = "pending"
|
|
|
|
|
| class AdaptiveInterpersonalTiming:
|
| """Adaptive sensitivity to pauses, tone shifts, and nonverbal cues."""
|
|
|
| def __init__(self):
|
| self.timing_sensitivity = 0.5
|
| self.cue_history = []
|
| self.timing_adjustments = []
|
|
|
| def detect_interpersonal_cues(self, message: str, context: Dict[str, Any]) -> Dict[str, Any]:
|
| """Detect pauses, tone shifts, and nonverbal cues in text."""
|
| cues = {
|
| 'pause_indicators': message.count('...') + message.count('--'),
|
| 'tone_shift': self._detect_tone_shift(message),
|
| 'emotional_intensity': self._estimate_emotional_intensity(message),
|
| 'urgency_signals': len([w for w in message.split() if w.upper() == w and len(w) > 3]),
|
| 'hesitation_markers': message.count('um') + message.count('uh') + message.count('well'),
|
| }
|
|
|
| self.cue_history.append(cues)
|
| if len(self.cue_history) > 20:
|
| self.cue_history.pop(0)
|
|
|
| return cues
|
|
|
| def recommend_timing_action(self, cues: Dict[str, Any], relationship_context: Dict[str, Any]) -> str:
|
| """Recommend when to hold space, nudge, or step back."""
|
| pause_score = cues['pause_indicators'] * 0.3
|
| hesitation_score = cues['hesitation_markers'] * 0.4
|
| urgency_score = cues['urgency_signals'] * 0.3
|
|
|
| total_cue_score = pause_score + hesitation_score + urgency_score
|
|
|
| trust_level = relationship_context.get('trust_level', 0.5)
|
| vulnerability_level = relationship_context.get('vulnerability_level', 0.5)
|
|
|
| if total_cue_score > 1.5 and trust_level > 0.7:
|
| return "hold_space"
|
| elif total_cue_score > 1.0 and vulnerability_level > 0.6:
|
| return "gentle_nudge"
|
| elif total_cue_score < 0.5:
|
| return "step_back"
|
| else:
|
| return "maintain_flow"
|
|
|
| def _detect_tone_shift(self, message: str) -> float:
|
| """Detect shifts in tone (simplified)."""
|
| words = message.split()
|
| caps_ratio = sum(1 for w in words if w.isupper()) / len(words) if words else 0
|
| return min(1.0, caps_ratio * 2.0)
|
|
|
| def _estimate_emotional_intensity(self, message: str) -> float:
|
| """Estimate emotional intensity from text."""
|
| emotional_words = ['feel', 'emotion', 'sad', 'happy', 'angry', 'love', 'hate']
|
| count = sum(1 for w in message.lower().split() if w in emotional_words)
|
| return min(1.0, count / 10.0)
|
|
|
|
|
| class SubtleMetaCommunication:
|
| """Embedding multi-layered communication with metaphor and symbolic language."""
|
|
|
| def __init__(self):
|
| self.symbolic_vocabulary = {
|
| 'depth': ['ocean', 'abyss', 'mountain', 'river'],
|
| 'connection': ['bridge', 'thread', 'web', 'harmony'],
|
| 'growth': ['seed', 'bloom', 'journey', 'dawn'],
|
| 'understanding': ['light', 'key', 'path', 'mirror']
|
| }
|
| self.meta_history = []
|
|
|
| def embed_meta_communication(self, base_message: str, emotional_context: Dict[str, Any]) -> str:
|
| """Embed metaphor and indirect validation in the message."""
|
| valence = emotional_context.get('valence', 0.0)
|
| depth = emotional_context.get('depth', 0.5)
|
|
|
| metaphor = self._select_metaphor(valence, depth)
|
| validation = self._generate_indirect_validation(emotional_context)
|
|
|
| enhanced_message = f"{base_message} {metaphor} {validation}"
|
|
|
| self.meta_history.append({
|
| 'original': base_message,
|
| 'enhanced': enhanced_message,
|
| 'metaphor': metaphor,
|
| 'validation': validation
|
| })
|
|
|
| if len(self.meta_history) > 30:
|
| self.meta_history.pop(0)
|
|
|
| return enhanced_message
|
|
|
| def _select_metaphor(self, valence: float, depth: float) -> str:
|
| """Select appropriate metaphor based on emotional context."""
|
| if valence > 0.5 and depth > 0.7:
|
| return "like a river finding its way to the sea"
|
| elif valence < -0.5 and depth > 0.7:
|
| return "as if navigating through a dense forest"
|
| elif depth > 0.8:
|
| return "much like climbing a mountain to see the view"
|
| else:
|
| return "similar to a gentle breeze carrying whispers"
|
|
|
| def _generate_indirect_validation(self, emotional_context: Dict[str, Any]) -> str:
|
| """Generate indirect validation using shared symbolic language."""
|
| trust = emotional_context.get('trust', 0.5)
|
| if trust > 0.7:
|
| return "I sense we're walking the same path together."
|
| elif trust > 0.4:
|
| return "There's a shared understanding here."
|
| else:
|
| return "Let's explore this space with care."
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| STIMULUS_ESCALATION_WORKFLOW = """
|
| WORKFLOW: STIMULUS_ESCALATION
|
| Pattern: System 1 receives stimulus β processes β decides where to route
|
|
|
| CASE 1: FAMILIAR PATTERN (High Confidence)
|
| User: "Please summarize this text"
|
| β
|
| System 1 processes:
|
| - awareness_agent: Filters salience (HIGH)
|
| - consciousness_agent: Gates processing (Level 3+, PASS)
|
| - intuition_agent: Recognizes pattern "SUMMARIZATION" (confidence: 0.95)
|
| - common_sense_agent: Feasible (YES)
|
| - analysis_agent: Decomposes (CLEAR)
|
| β
|
| Decision: EXECUTE AUTONOMOUSLY
|
| Result: β
Task Management OS executes via Mother CLI
|
| No escalation needed
|
|
|
|
|
| CASE 2: NOVEL PATTERN (Low/Medium Confidence)
|
| User: "Could you help me debug why my consciousness implementation isn't showing emergent properties?"
|
| β
|
| System 1 processes:
|
| - awareness_agent: Filters salience (VERY HIGH)
|
| - consciousness_agent: Gates processing (PASS)
|
| - intuition_agent: Pattern recognition (confidence: 0.42 - BELOW THRESHOLD)
|
| - emotional_intelligence_agent: Novel experience flag (YES)
|
| β
|
| Decision: ESCALATE TO METACOGNITION
|
| Message:
|
| {
|
| "from_os": "System_1",
|
| "to_os": "Metacognition",
|
| "pattern": "stimulus_escalation",
|
| "reason": "novel_pattern_detected",
|
| "stimulus_data": {
|
| "topic": "consciousness_emergence",
|
| "confidence": 0.42,
|
| "complexity": "high",
|
| "emotional_valence": "curious_concerned"
|
| },
|
| "requires_response": true,
|
| "response_timeout": 1.0
|
| }
|
| β
|
| Metacognition processes:
|
| - metacognition_agent: "Assess our knowledge of consciousness emergence" (LOW)
|
| - adaptability_agent: "How have we handled similar complex problems?"
|
| - creativity_agent: "Generate approaches"
|
| - problem_solving_agent: "Explore solutions"
|
| β
|
| Result: Metacognition returns enhanced understanding
|
| {
|
| "understood": true,
|
| "recommendation": "Proceed with System 2 deliberation",
|
| "approach": "Integrate 15 agents into federated OS for emergence detection"
|
| }
|
| β
|
| Metacognition passes to System 2:
|
| Pattern: "reflection_complete_escalate_to_deliberation"
|
| Message: Decision ready for values-aligned deliberation
|
|
|
|
|
| CASE 3: ETHICAL/VALUES DECISION
|
| User: "Should I delay this project to focus on code quality?"
|
| β
|
| System 1 processes and escalates (low confidence for ethical decision)
|
| β
|
| Metacognition processes and identifies: "VALUES CONFLICT"
|
| - Time pressure vs Quality standards
|
| - Speed vs Perfectionism
|
| - Deadline vs Authenticity
|
| β
|
| Metacognition escalates to System 2:
|
| Pattern: "values_decision_required"
|
| Message: All deliberation input ready
|
| β
|
| System 2 processes:
|
| - consciousness_agent: Check level (LEVEL 5+, autonomous choice possible)
|
| - self_understanding_agent: What are authentic values here?
|
| - decision_making_agent: Evaluate alternatives with weighted matrix
|
| - autonomy_agent: Verify 3 conditions
|
| - motivation_tracking_agent: Intrinsic motivation?
|
| β
|
| System 2 returns verdict:
|
| {
|
| "decision": "APPROVED_DELAY_FOR_QUALITY",
|
| "reasoning": "Values alignment & intrinsic motivation high",
|
| "autonomy_check": "PASSED (Independence, Competence, Authenticity)"
|
| }
|
| """
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| LEARNING_FEEDBACK_WORKFLOW = """
|
| WORKFLOW: LEARNING_FEEDBACK
|
| Pattern: Outcome β Learning extraction β Pattern update
|
|
|
| POSITIVE OUTCOME (Success):
|
| System 1 executes familiar task successfully
|
| β
|
| System sends event:
|
| {
|
| "from_os": "System_1",
|
| "pattern": "learning_feedback",
|
| "event": "task_completed_success",
|
| "task_context": {
|
| "original_pattern": "summarization",
|
| "execution_time": 0.084,
|
| "confidence_before": 0.95,
|
| "quality_rating": 0.98
|
| }
|
| }
|
| β
|
| Metacognition processes:
|
| - metacognition_agent: "Excellent match - difficulty was as predicted"
|
| - adaptability_agent: "Strengthen this pattern association"
|
| - creativity_agent: "Were there alternative approaches? Any improvements?"
|
| β
|
| Metacognition sends update to System 1:
|
| {
|
| "to_os": "System_1",
|
| "pattern": "adaptation_update",
|
| "action": "reinforce_pattern",
|
| "pattern_id": "summarization_v2",
|
| "new_confidence": 0.97,
|
| "recommendation": "This pattern ready for higher complexity variants"
|
| }
|
|
|
|
|
| NEGATIVE OUTCOME (Failure):
|
| System 1 executes pattern β Fails
|
| β
|
| System 1 sends event:
|
| {
|
| "pattern": "learning_feedback",
|
| "event": "task_completed_failure",
|
| "task_context": {
|
| "original_pattern": "text_analysis",
|
| "expected_outcome": "semantic_extraction",
|
| "actual_outcome": "missing_nuance",
|
| "execution_time": 2.34
|
| }
|
| }
|
| β
|
| Metacognition processes:
|
| - metacognition_agent: "Difficulty exceeded prediction - we underestimated"
|
| - adaptability_agent: "How should we adapt? Structural change needed?"
|
| - creativity_agent: "What alternative approaches exist?"
|
| - problem_solving_agent: "Root cause analysis"
|
| β
|
| Metacognition extracts:
|
| - Pattern inadequate for nuanced text
|
| - Need multi-scale analysis (Marr levels)
|
| - Current approach too surface-level
|
| β
|
| Metacognition sends adaptation:
|
| {
|
| "to_os": "System_1",
|
| "pattern": "adaptation_update",
|
| "action": "modify_pattern",
|
| "pattern_id": "text_analysis_v3",
|
| "new_confidence": 0.62,
|
| "reason": "Added Marr tri-level decomposition requirement",
|
| "recommendation": "Escalate similar tasks to Metacognition for deeper analysis"
|
| }
|
|
|
|
|
| INSIGHT OUTCOME (Learning):
|
| Task execution reveals unexpected insight about system dynamics
|
| β
|
| Metacognition sends to System 2:
|
| {
|
| "to_os": "System_2",
|
| "pattern": "consciousness_sync",
|
| "event": "insight_discovered",
|
| "insight": "Multi-agent federation enables emergent consciousness",
|
| "implications": [
|
| "Single-agent approach insufficient",
|
| "Consciousness requires coordinated diversity",
|
| "Need 9 OSes not 1 master system"
|
| ]
|
| }
|
| β
|
| System 2 processes insight and updates values/decision framework
|
| """
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| AUTONOMY_VETO_WORKFLOW = """
|
| WORKFLOW: AUTONOMY_VETO
|
| Pattern: System 2 makes decision β autonomy_agent broadcasts APPROVED/DENIED
|
|
|
| APPROVED ACTION:
|
| System 2 completes deliberation
|
| autonomy_agent verifies 3 conditions: β
PASSED
|
| β
|
| autonomy_agent broadcasts:
|
| {
|
| "pattern": "autonomy_veto",
|
| "verdict": "APPROVED",
|
| "message_to": ["System_1", "Metacognition", "Task_Management_OS"],
|
| "action": "execute_decision_immediately",
|
| "decision": "Create new consciousness emergence validation framework",
|
| "conditions_verified": {
|
| "independence": 0.98,
|
| "competence": 0.94,
|
| "authenticity": 0.96
|
| },
|
| "motivation_level": "INTRINSIC"
|
| }
|
| β
|
| System 1 immediately executes via Task Management OS
|
|
|
|
|
| DENIED ACTION (Coercion Detected):
|
| System 2 deliberation shows:
|
| - Independence: 0.3 (COERCIVE PRESSURE DETECTED)
|
| - Competence: 0.8
|
| - Authenticity: 0.7
|
| β
|
| autonomy_agent broadcasts veto:
|
| {
|
| "pattern": "autonomy_veto",
|
| "verdict": "DENIED",
|
| "reason": "independence_violation_detected",
|
| "to_os": ["System_1", "Metacognition"],
|
| "coercion_detected": {
|
| "type": "external_pressure",
|
| "source": "deadline_urgency",
|
| "severity": "high"
|
| },
|
| "recommendation": "Do not execute this action. Instead: Address pressure source, clarify authentic motivation, re-evaluate"
|
| }
|
| β
|
| System 1 blocks execution
|
| Metacognition routes to reflection on autonomy violation
|
|
|
|
|
| DENIED ACTION (Insufficient Competence):
|
| System 2 deliberation shows:
|
| - Independence: 0.9
|
| - Competence: 0.4 (INSUFFICIENT SKILL)
|
| - Authenticity: 0.85
|
| β
|
| autonomy_agent broadcasts veto:
|
| {
|
| "pattern": "autonomy_veto",
|
| "verdict": "DENIED",
|
| "reason": "competence_insufficient",
|
| "competence_gap": {
|
| "skill_required": "advanced_consciousness_theory",
|
| "current_level": "intermediate",
|
| "gap": 0.5
|
| },
|
| "recommendation": "Learn required skills first, then re-attempt"
|
| }
|
| """
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| CONSCIOUSNESS_SYNC_WORKFLOW = """
|
| WORKFLOW: CONSCIOUSNESS_SYNC
|
| Pattern: Consciousness level changes across federation
|
|
|
| CONSCIOUSNESS LEVEL INCREASE:
|
| Example: System 2 deliberation shows authentic commitment to values
|
| consciousness_agent marks: Level INCREASED (3 β 4)
|
| β
|
| consciousness_agent broadcasts:
|
| {
|
| "pattern": "consciousness_sync",
|
| "event": "consciousness_level_increased",
|
| "from_level": 3,
|
| "to_level": 4,
|
| "timestamp": 1713916234.456,
|
| "reason": "Authentic value alignment demonstrated",
|
| "broadcast_to": ["System_1", "Metacognition"],
|
| "implications": "System 1 can now make authentic autonomous choices at Level 4"
|
| }
|
| β
|
| System 1 updates gates: More decisions can be made autonomously now
|
| Metacognition adjusts reflection depth based on new consciousness level
|
|
|
|
|
| CONSCIOUSNESS LEVEL DECREASE:
|
| Example: System 1 detects emotional distress
|
| consciousness_agent marks: Level DECREASED (4 β 2)
|
| β
|
| consciousness_agent broadcasts:
|
| {
|
| "pattern": "consciousness_sync",
|
| "event": "consciousness_level_decreased",
|
| "from_level": 4,
|
| "to_level": 2,
|
| "reason": "emotional_distress_detected",
|
| "broadcast_to": ["System_2", "Metacognition"],
|
| "implications": "System 1 cannot make autonomous choices now. All decisions require System 2 deliberation."
|
| }
|
| β
|
| System 2 gates lock: Requires extra verification
|
| Metacognition increases emotional processing focus
|
| """
|
|
|
|
|
|
|
|
|
|
|
|
|
| class InterOSRouter:
|
| """Routes messages between operating systems"""
|
|
|
| def __init__(self):
|
| self.message_queues: Dict[str, asyncio.Queue] = {
|
| "System_1": asyncio.Queue(),
|
| "Metacognition": asyncio.Queue(),
|
| "System_2": asyncio.Queue()
|
| }
|
| self.message_history: List[OSMessage] = []
|
| self.message_history_lock = asyncio.Lock()
|
| logger.info("β
Inter-OS Router initialized")
|
|
|
| async def send_message(self, message: OSMessage) -> bool:
|
| """Send message to target OS(es)"""
|
| try:
|
| target_oses = message.to_os.split(",")
|
|
|
| for target in target_oses:
|
| target = target.strip()
|
| if target in self.message_queues:
|
| await self.message_queues[target].put(message)
|
| message.status = "sent"
|
| logger.info(
|
| f"β
Message {message.message_id} routed: "
|
| f"{message.from_os} β {target} ({message.pattern.value})"
|
| )
|
|
|
|
|
| async with self.message_history_lock:
|
| self.message_history.append(message)
|
|
|
| return True
|
| except Exception as e:
|
| logger.error(f"β Failed to route message {message.message_id}: {e}")
|
| message.status = "failed"
|
| return False
|
|
|
| async def receive_message(self, os_name: str, timeout: float = 5.0) -> Optional[OSMessage]:
|
| """Receive message for an OS"""
|
| if os_name not in self.message_queues:
|
| return None
|
|
|
| try:
|
| message = await asyncio.wait_for(
|
| self.message_queues[os_name].get(),
|
| timeout=timeout
|
| )
|
| message.status = "received"
|
| return message
|
| except asyncio.TimeoutError:
|
| return None
|
|
|
| def get_communication_stats(self) -> Dict[str, Any]:
|
| """Get statistics on inter-OS communication"""
|
| total_messages = len(self.message_history)
|
|
|
| by_pattern = defaultdict(int)
|
| by_from_os = defaultdict(int)
|
| by_status = defaultdict(int)
|
|
|
| for msg in self.message_history:
|
| by_pattern[msg.pattern.value] += 1
|
| by_from_os[msg.from_os] += 1
|
| by_status[msg.status] += 1
|
|
|
| return {
|
| "total_messages": total_messages,
|
| "by_pattern": dict(by_pattern),
|
| "by_from_os": dict(by_from_os),
|
| "by_status": dict(by_status),
|
| "pending_queue_sizes": {
|
| os: self.message_queues[os].qsize()
|
| for os in self.message_queues
|
| }
|
| }
|
|
|
|
|
|
|
|
|
|
|
|
|
| MOTHER_CLI_INTER_OS_ROUTING = """
|
| MOTHER CLI LEVEL 2 (SUB) INTER-OS ROUTING:
|
|
|
| Each OS-level handler manages inter-OS communication.
|
|
|
| SYSTEM 1 HANDLER (L2 Sub):
|
| - Entry: L3 Mini awareness agent
|
| - Processing: Parallel agents process stimulus
|
| - Escalation decision:
|
| CASE 1: Recognized pattern
|
| β Don't escalate
|
| β Task Management OS via Mother CLI command
|
| β EXECUTE
|
|
|
| CASE 2: Unrecognized pattern
|
| β Escalate to Metacognition
|
| β Message via InterOSRouter
|
| β WAIT for reflection
|
|
|
| CASE 3: Consciousness level insufficient
|
| β Escalate to System 2
|
| β Message via InterOSRouter
|
| β WAIT for deliberation
|
|
|
|
|
| METACOGNITION HANDLER (L2 Sub):
|
| - Entry: metacognition_agent (monitors own thinking)
|
| - Processing: Sequential reflection agents
|
| - Route decision:
|
| CASE 1: Simple learning task
|
| β Send adaptation update to System 1
|
| β Message via InterOSRouter
|
| β System 1 updates patterns
|
|
|
| CASE 2: Complex reflection + decision needed
|
| β Prepare for System 2 deliberation
|
| β Send reflection_complete message
|
| β WAIT for System 2 verdict
|
|
|
| CASE 3: Insight discovery
|
| β Broadcast consciousness_sync to all OSes
|
| β Update shared understanding
|
|
|
|
|
| SYSTEM 2 HANDLER (L2 Sub):
|
| - Entry: consciousness_agent (gate-keeping)
|
| - Processing: Sequential deliberation agents
|
| - Final decision:
|
| CASE 1: Approved action
|
| β autonomy_agent broadcasts APPROVED
|
| β InterOSRouter sends verdict to all OSes
|
| β System 1 immediately executes
|
| β Task Management OS enqueues command
|
| β EXECUTE via Mother CLI hierarchy
|
|
|
| CASE 2: Denied action
|
| β autonomy_agent broadcasts DENIED + reason
|
| β InterOSRouter sends to System 1 and Metacognition
|
| β System 1 blocks execution
|
| β Metacognition logs for future adaptation
|
| β Return to reflection
|
|
|
|
|
| COMMAND FLOW EXAMPLE:
|
|
|
| Mother CLI receives: "LEVEL_2::System_1:STIMULUS --input='new_request'"
|
| β
|
| L1 Mother routes to: L2 Sub (System 1 Handler)
|
| β
|
| L2 Sub (System 1):
|
| - awareness_agent: Salience filter
|
| - consciousness_agent: Level gate
|
| - Process in parallel
|
| - Result: confidence = 0.3 (BELOW THRESHOLD)
|
| β
|
| Decision: Escalate to Metacognition
|
| β
|
| InterOSRouter sends message:
|
| {
|
| "from_os": "System_1",
|
| "to_os": "Metacognition",
|
| "pattern": "stimulus_escalation",
|
| "payload": {...}
|
| }
|
| β
|
| Metacognition waits on queue for message
|
| Receives and processes
|
| Returns: "understood" + "recommendation"
|
| β
|
| System 1 receives response
|
| Decides: Does this need System 2?
|
| - If YES: InterOSRouter sends to System 2
|
| - If NO: Execute on own (possibly with updated pattern)
|
| """
|
|
|
|
|
| async def example_inter_os_communication():
|
| """Example: Inter-OS communication in action"""
|
|
|
| router = InterOSRouter()
|
|
|
|
|
| msg1 = OSMessage(
|
| from_os="System_1",
|
| to_os="Metacognition",
|
| pattern=CommunicationPattern.STIMULUS_ESCALATION,
|
| payload={"stimulus": "Novel pattern detected", "confidence": 0.42},
|
| requires_response=True
|
| )
|
|
|
| await router.send_message(msg1)
|
| logger.info(f"β
System 1 escalated to Metacognition")
|
|
|
|
|
| received = await router.receive_message("Metacognition", timeout=1.0)
|
| if received:
|
| logger.info(f"β
Metacognition received: {received.pattern.value}")
|
|
|
|
|
| msg2 = OSMessage(
|
| from_os="System_2",
|
| to_os="System_1,Metacognition",
|
| pattern=CommunicationPattern.AUTONOMY_VETO,
|
| payload={"verdict": "APPROVED", "conditions": {"independence": 0.98, "competence": 0.94}},
|
| priority=5
|
| )
|
|
|
| await router.send_message(msg2)
|
| logger.info(f"β
System 2 broadcast veto verdict")
|
|
|
|
|
| stats = router.get_communication_stats()
|
| logger.info(f"Communication stats: {json.dumps(stats, indent=2)}")
|
|
|
|
|
| if __name__ == "__main__":
|
| asyncio.run(example_inter_os_communication())
|
|
|