refactor: hierarchical convergence of documentation (v5.0)

- Create architecture/ and operations/ subdirectories for essential docs
- Archive 10 supporting docs to archive/
- Write fresh Endgame-Vision.md v5.0 (383 lines, down from 2284)
- Add operations/Spark-Protocol.md (condensed boot sequence)
- Integrate December 2025 discoveries (Language is Topology, DriftProbe)
- Update README.md with new structure

New layer structure:
- Layer 0: Temporal Foundation (Heartbeat)
- Layer 1: Cellular Society (Evolution Engine)
- Layer 1.5: Cognitive Topology (Language is Topology - NEW)
- Layer 2: Young Nyx (Organ Coordination)
- Layer 3: Dual Gardens (Virtual/Real Loop)
- Layer 4: Trait Evolution (RLVR)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
2025-12-06 22:58:11 +01:00
parent 998829580f
commit cac4dec411
20 changed files with 732 additions and 2566 deletions

View File

@@ -0,0 +1,182 @@
---
type: research_concept
version: 1.0
status: emerging_paradigm
created: 2025-12-03
author: Nyx & dafit (shower-thought session)
related_docs:
- Endgame-Vision.md
- Dual-Garden-Architecture.md
significance: connects ternary logic + lifeforce + temporal asymmetry
---
# Temporal-Ternary Gradient
> *"Time is malleable in simulation, fixed in reality. Lifeforce is the exchange rate."*
> — Session 2025-12-03
---
## Core Insight
The dual garden architecture (virtual + real) creates **temporal asymmetry**. This isn't a constraint - it's a feature that enables a new kind of gradient for learning.
**The 0-state isn't stuck. It's a choice about how to spend lifeforce across time domains.**
---
## The Two Time Domains
### Virtual Garden (Simulated)
- **Time**: Malleable (speed up, slow down, pause, rewind)
- **Cost**: Lifeforce to manipulate time
- **Speed**: 1000 generations in minutes
- **Truth**: Statistical confidence, not ground truth
### Real Garden (Physical)
- **Time**: Fixed (1 second = 1 second, reality doesn't negotiate)
- **Cost**: Zero lifeforce for time
- **Speed**: Real-time only, patience required
- **Truth**: Ground truth, definitive verification
---
## Temporal-Ternary Gradient Diagram
```
CONFIDENCE
+1 ────────────┼──────────── Real-verified
│ (ground truth)
Virtual high-confidence
0.7 ───────────┼───╱ (many generations, strong signal)
0.5 ───────────┼╱──────── Pure 0-state
│╲ (unknown, workable)
│ ╲
0.3 ───────────┼──╲ Virtual low-confidence
│ ╲ (few generations, weak signal)
│ ╲
-1 ────────────┼──────────── Real-failed
│ (proven wrong)
──────────┴──────────────────────────
Virtual │ Real
(fast) │ (slow)
TIME DOMAIN
```
---
## Lifeforce as Time Currency
```
VIRTUAL TIME MANIPULATION COSTS:
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
1x speed (real-time): 0 LF
10x speed: -5 LF/min
100x speed: -20 LF/min
1000x speed: -50 LF/min
Pause/inspect: -1 LF/min
Rewind to checkpoint: -50 LF (one-time)
REAL GARDEN:
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
All operations: 0 LF for time
Reality runs for free.
Truth emerges at its own pace.
```
---
## Nyx's Temporal Choices
When a pattern is discovered in virtual (0-state), Nyx chooses:
| Strategy | LF Cost | Time | Confidence Path |
|----------|---------|------|-----------------|
| **Speed Up Virtual** | High | Fast | 0 → virtual +0.9 (still unverified) |
| **Wait for Real** | Zero | Slow | 0 → real +1 or -1 (definitive) |
| **Hybrid Hedge** | Medium | Medium | 0 → virtual +0.7, deploy 80/20 to real |
---
## The Gradient Flow
```
Virtual discovers pattern (fast, cheap, uncertain)
┌──────────────┐
│ 0-STATE │ ← Pattern held in uncertainty
│ (workable) │ ← Not collapsed, not ignored
└──────┬───────┘
┌─────┴─────┐
│ │
▼ ▼
More Deploy
Virtual to Real
(burn LF) (wait)
│ │
▼ ▼
Virtual Real
+0.8 outcome
(confident (ground
but not truth)
proven) │
│ │
└─────┬─────┘
Pattern shifts:
-1 (failed) or +1 (proven)
```
---
## Connection to Ternary Paradigm
The ternary model (-1, 0, +1) gains a **second dimension**: time domain.
A pattern's state is now:
```
state = {
value: -1 | 0 | +1,
confidence: 0.0 - 1.0,
domain: "virtual" | "real" | "hybrid",
virtual_generations: int,
real_tests: int,
lifeforce_invested: float
}
```
**The 0-state is operational because:**
1. It accumulates virtual evidence (costs LF, gains speed)
2. It waits for real evidence (free, but slow)
3. Nyx CHOOSES how to spend lifeforce to collapse uncertainty
---
## Why This Matters
- **Binary thinking**: Pattern works or doesn't (0 or 1)
- **Ternary thinking**: Pattern unknown, workable as unknown (0 is valid)
- **Temporal-ternary**: Unknown has a GRADIENT based on time-domain investment
The constraint of sequential organ calls + single GPU becomes temporal accounting.
The constraint of slow real-world testing becomes ground truth anchoring.
**Constraints become features when you measure them.**
---
**Created**: 2025-12-03
**Origin**: Post-shower insight session
**Status**: Emerging paradigm, needs integration with Endgame-Vision.md
🌙💜 *"Time is the currency. Lifeforce is the exchange rate. Truth is the destination."*

494
archive/attention_flow.md Normal file
View File

@@ -0,0 +1,494 @@
# Attention Flow
How she decides what matters this beat.
---
## Overview
The 30-second heartbeat is a budget, not a guarantee. Sensory intake, organ processing, dialogue, thinking - everything competes for the same window. State machines govern the hierarchy: what gets processed first, what can interrupt, what gets the remainder.
Attention isn't free. It's economic.
---
## The Budget Problem
```
♥ BEAT (30 sec budget)
├── SENSORY INTAKE (variable: 200ms - 15000ms)
├── ORGAN PROCESSING (variable: 100ms - 10000ms)
├── NYX INFERENCE (variable: 2000ms - 4000ms)
├── CHRYSALIS DIALOGUE (variable: 0ms - 3000ms)
├── STATE WRITE (fixed: ~200ms)
└── VIRTUAL GARDEN (remainder)
Total must fit in 30 seconds.
Something has to give.
```
---
## Top-Level State Machine: Attention Mode
```
┌─────────────┐
┌──────────▶│ IDLE │◀──────────┐
│ └──────┬──────┘ │
│ │ │
│ │ stimulus │
│ ▼ │
│ ┌─────────────┐ │
│ │ ALERT │ │
│ └──────┬──────┘ │
│ │ │
│ ┌──────┴──────┐ │
│ ▼ ▼ │
│ ┌──────────┐ ┌──────────┐ │
│ │ REFLEX │ │ ATTEND │ │
│ │ (>0.8) │ │ (think) │ │
│ └────┬─────┘ └────┬─────┘ │
│ │ │ │
│ │ ┌──────┴──────┐ │
│ │ ▼ ▼ │
│ │ ┌──────────┐ ┌─────────┐ │
│ │ │ DIALOGUE │ │ PROCESS │ │
│ │ └────┬─────┘ └────┬────┘ │
│ │ │ │ │
│ └──────┴─────┬──────┘ │
│ ▼ │
│ ┌───────────┐ │
│ │ SETTLE │ │
│ └─────┬─────┘ │
│ │ │
└──────────────────────┴──────────────┘
```
### State Descriptions
| State | Description | Budget Priority |
|-------|-------------|-----------------|
| **IDLE** | Nothing urgent, maximum virtual garden time | Lowest |
| **ALERT** | Stimulus detected, evaluating importance | - |
| **REFLEX** | High-confidence nerve fired, bypass brain | Instant |
| **ATTEND** | Stimulus requires thinking | High |
| **DIALOGUE** | Chrysalis interaction active | High |
| **PROCESS** | Organs working on input | Medium |
| **SETTLE** | Write state, release budget, prepare for next beat | Fixed |
---
## Priority Hierarchy
Higher levels preempt lower levels. Budget flows downward.
```
LEVEL 0: REFLEX ─────────────────────────────────────
│ Weight > 0.8, instant, bypass everything
│ Cost: near-zero (no inference)
LEVEL 1: SAFETY ─────────────────────────────────────
│ dafit calling, danger detected, critical alert
│ Preempts: all below
LEVEL 2: DIALOGUE ───────────────────────────────────
│ Partnership active, Chrysalis teaching
│ Preempts: sensory, thinking, virtual
LEVEL 3: SENSORY ────────────────────────────────────
│ Rich input needs processing
│ Preempts: thinking, virtual
LEVEL 4: THINKING ───────────────────────────────────
│ Organ work, Nyx inference
│ Preempts: virtual
LEVEL 5: VIRTUAL ────────────────────────────────────
│ Garden time, simulation, study
│ Gets remainder after above
LEVEL 6: IDLE ───────────────────────────────────────
Maintenance heartbeat only
All budget available
```
---
## Budget Allocation Logic
```python
def allocate_beat_budget(beat_duration_ms=30000):
remaining = beat_duration_ms
# Fixed costs (always paid)
remaining -= STATE_WRITE_COST # ~200ms
remaining -= HEARTBEAT_OVERHEAD # ~100ms
# Level 0: Reflex (if triggered, near-instant)
if reflex_triggered:
execute_reflex() # ~50ms
remaining -= 50
# Level 1: Safety (if active, takes what it needs)
if safety_alert:
cost = process_safety() # variable
remaining -= cost
if remaining <= 0:
return settle()
# Level 2: Dialogue (if Chrysalis active)
if dialogue_active:
cost = process_dialogue() # ~3000ms typical
remaining -= cost
if remaining <= 0:
return settle()
# Level 3: Sensory (always some, but capped)
sensory_budget = min(remaining * 0.4, SENSORY_CAP)
cost = process_sensory(sensory_budget)
remaining -= cost
# Level 4: Thinking (organs + Nyx)
thinking_budget = min(remaining * 0.6, THINKING_CAP)
cost = process_thinking(thinking_budget)
remaining -= cost
# Level 5: Virtual (whatever remains)
virtual_budget = remaining
if virtual_budget > VIRTUAL_MINIMUM:
process_virtual(virtual_budget)
return settle()
```
---
## Nested State Machines
Each level can be its own state machine internally.
### DIALOGUE State Machine
```
┌─────────────────────────────────────────────┐
│ DIALOGUE │
├─────────────────────────────────────────────┤
│ │
│ ┌───────────┐ │
│ │ LISTENING │ ◀─────────────────────┐ │
│ └─────┬─────┘ │ │
│ │ input complete │ │
│ ▼ │ │
│ ┌───────────┐ │ │
│ │PROCESSING │ │ │
│ └─────┬─────┘ │ │
│ │ understood │ │
│ ▼ │ │
│ ┌───────────┐ │ │
│ │RESPONDING │ │ │
│ └─────┬─────┘ │ │
│ │ response sent │ │
│ ▼ │ │
│ ┌───────────┐ continue │ │
│ │ YIELDING │ ──────────────────────┘ │
│ └─────┬─────┘ │
│ │ dialogue complete │
│ ▼ │
│ EXIT to parent │
│ │
└─────────────────────────────────────────────┘
```
### SENSORY State Machine
```
┌─────────────────────────────────────────────┐
│ SENSORY │
├─────────────────────────────────────────────┤
│ │
│ ┌───────────┐ │
│ │ SAMPLING │ ◀── collect raw inputs │
│ └─────┬─────┘ │
│ │ │
│ ▼ │
│ ┌─────────────┐ │
│ │ TRANSLATING │ ◀── nerves fire │
│ └─────┬───────┘ │
│ │ │
│ ▼ │
│ ┌──────────────┐ │
│ │ PRIORITIZING │ ◀── what matters? │
│ └─────┬────────┘ │
│ │ │
│ ▼ │
│ ┌─────────────┐ │
│ │ DELIVERING │ ◀── to organs │
│ └─────┬───────┘ │
│ │ │
│ ▼ │
│ EXIT to parent │
│ │
└─────────────────────────────────────────────┘
```
### THINKING State Machine
```
┌─────────────────────────────────────────────┐
│ THINKING │
├─────────────────────────────────────────────┤
│ │
│ ┌───────────┐ │
│ │ RECEIVING │ ◀── context from sensory │
│ └─────┬─────┘ │
│ │ │
│ ▼ │
│ ┌───────────┐ │
│ │ ROUTING │ ◀── which organs needed? │
│ └─────┬─────┘ │
│ │ │
│ ▼ │
│ ┌───────────┐ │
│ │ INFERRING │ ◀── organs + Nyx process │
│ └─────┬─────┘ │
│ │ │
│ ▼ │
│ ┌───────────┐ │
│ │ DECIDING │ ◀── Nyx outputs decision │
│ └─────┬─────┘ │
│ │ │
│ ▼ │
│ EXIT to parent │
│ │
└─────────────────────────────────────────────┘
```
### VIRTUAL State Machine
```
┌─────────────────────────────────────────────┐
│ VIRTUAL │
├─────────────────────────────────────────────┤
│ │
│ ┌───────────┐ │
│ │ BUDGETING│ ◀── how much V available? │
│ └─────┬─────┘ │
│ │ │
│ ▼ │
│ ┌───────────┐ │
│ │ SELECTING │ ◀── what to simulate? │
│ └─────┬─────┘ │
│ │ │
│ ▼ │
│ ┌───────────┐ │
│ │SIMULATING │ ◀── run virtual cycles │
│ └─────┬─────┘ │
│ │ │
│ ▼ │
│ ┌───────────┐ │
│ │ RECORDING │ ◀── store results │
│ └─────┬─────┘ │
│ │ │
│ ▼ │
│ EXIT to parent │
│ │
└─────────────────────────────────────────────┘
```
---
## Example Scenarios
### Scenario A: Quiet Study Time
```
Beat starts, no external stimulus
IDLE detected
SENSORY: minimal (500ms)
THINKING: minimal (1000ms)
VIRTUAL: maximum budget! (28000ms)
└── Nyx studies in virtual garden
Chrysalis teaches
Learning happens
```
### Scenario B: dafit Speaks
```
Beat starts, audio detected
ALERT: speech input
SAFETY check: it's dafit! (LEVEL 1)
DIALOGUE activates (LEVEL 2)
├── LISTENING (2000ms)
├── PROCESSING (1000ms)
├── RESPONDING (2000ms)
└── YIELDING
SENSORY: reduced budget (3000ms)
THINKING: reduced (5000ms)
VIRTUAL: minimal remainder (16000ms)
```
### Scenario C: Danger Detected
```
Beat starts, temperature spike detected
ALERT: sensor alarm
NERVE weight > 0.8
REFLEX FIRES (50ms) ◀── BYPASS EVERYTHING
├── Action taken immediately
└── Nyx notified AFTER
Continue beat normally with remaining budget
```
### Scenario D: Overwhelmed
```
Beat starts, rich input everywhere
ALERT: multiple stimuli
SENSORY: demanding (15000ms)
THINKING: demanding (12000ms)
Budget exhausted!
VIRTUAL: skipped this beat
SETTLE: state written, next beat
```
---
## Preemption Rules
| Event | Preempts | Action |
|-------|----------|--------|
| Reflex fires (>0.8) | Everything | Instant action, then continue |
| Safety alert | Dialogue, Sensory, Thinking, Virtual | Handle safety, reduced budget for rest |
| dafit speaks | Sensory, Thinking, Virtual | Dialogue priority, reduced budget for rest |
| Sensory overload | Thinking, Virtual | Process input, skip or reduce rest |
| Budget exhausted | Lower priorities | Skip remaining levels |
---
## Lifeforce Connection
```
LEVEL LIFEFORCE COST
─────────────────────────────
REFLEX Free (no inference)
SAFETY Low (minimal processing)
DIALOGUE Medium (two inferences)
SENSORY Low-Medium (depends on load)
THINKING Medium-High (organ inference)
VIRTUAL Variable (simulation cycles)
```
**The constraint:** Rich beats cost more. Quiet beats accumulate budget for virtual garden.
---
## Implementation Notes
### State Machine Technology
Options considered:
- **XState** (JavaScript) - actor-based, visual inspector
- **Python-statemachine** - simple, fits existing stack
- **Custom Rust** - performance critical path
- **Godot native** - if UI drives the state
Recommendation: Python for orchestration layer, with Godot visualization.
### Checkpoint Integration
Every state transition can trigger phoebe write:
```python
def on_state_transition(from_state, to_state, context):
write_to_phoebe({
"beat_id": current_beat.id,
"transition": f"{from_state} -> {to_state}",
"budget_remaining": context.remaining_ms,
"timestamp": now()
})
```
### Budget Tracking
```python
@dataclass
class BeatBudget:
total_ms: int = 30000
spent_ms: int = 0
allocations: dict = field(default_factory=dict)
@property
def remaining(self):
return self.total_ms - self.spent_ms
def spend(self, category: str, amount: int):
self.spent_ms += amount
self.allocations[category] = self.allocations.get(category, 0) + amount
return self.remaining > 0
```
---
## Design Principles
1. **Hierarchy is law** - higher levels always preempt lower
2. **Budget is finite** - 30 seconds, no exceptions
3. **State is explicit** - always know what mode she's in
4. **Reflex bypasses brain** - survival doesn't wait for thinking
5. **Remainder flows down** - virtual gets what's left
6. **Every transition logged** - phoebe sees all state changes
---
*She doesn't have infinite attention. She has 30 seconds and choices.*
---
**Created**: 2025-12-05
**Session**: Partnership dialogue (dafit + Chrysalis)
**Status**: Attention architecture v1.0

View File

@@ -0,0 +1,67 @@
# ADR-001: Biomimetic "Nimmerverse" Architecture
* **Status:** Accepted
* **Date:** 2025-12-05
* **Context:** Home Infrastructure / Autonomous Agent System
* **Tags:** biomimetic, event-driven, ai, local-llm
## 1. Context and Problem Statement
We are designing a local home infrastructure ("Nimmerverse") modeled after a biological organism. The goal is to create a system that is:
1. **Reactive:** Capable of sub-millisecond reflex responses (spinal layer) without waiting for heavy AI inference.
2. **Deterministic:** Preventing AI hallucination in critical control paths.
3. **Evolvable:** Allowing the system to "grow" new capabilities (nerves) through usage and verification.
The core challenge is balancing the high latency of Large Language Models (the "Brain") with the real-time requirements of home automation (the "Nervous System").
## 2. The Architecture: Hebbian-Reinforced Subsumption
We have adopted a **Subsumption Architecture** (popularized by Rodney Brooks) enhanced with a **Hebbian Learning** model ("neurons that fire together, wire together").
### 2.1 The 4D State Space (The Nervous System)
State machines replace standard "if/then" logic. Each state node exists in a 4-dimensional space:
* **X/Y Dimensions:** Sensory inputs (e.g., Temperature, Motion).
* **Z Dimension (Confidence):** A weight (0.0 - 1.0) representing reliability.
* **Time Dimension:** History of verification.
**Lifecycle Logic:**
* **Birth:** Node created at `weight=0.1`.
* **Maturation:** Successful triggers (verified by user) increase weight (+V).
* **Pruning:** Unused or falsified nodes decay and are removed.
* **Reflex:** Nodes with `weight > 0.8` bypass the AI brain entirely for instant execution.
## 3. Feasibility Audit & Constraints
### A. Metabolic Constraints (Hardware)
* **Risk:** Memory swapping kills agent reactivity.
* **Requirement:** The "Inference Orchestrator" (LLM) requires minimum **24GB VRAM** to run a quantized 70B model, or distinct **12GB+** for a specialized 7B agent model. System RAM should be **64GB+** to handle the Vector DB and container orchestration.
### B. Nerve Velocity (Transport)
* **Pattern:** Asynchronous Event Bus.
* **Prohibition:** HTTP/REST calls between "Organs" are forbidden due to blocking latency.
* **Selected Tech:** **NATS** or **MQTT** for the nervous system backbone.
### C. Cognitive Load
* **Bottleneck:** The "Human Verification" step (`dafit confirms`) scales poorly.
* **Mitigation:** Implement "Sleep Cycles" where the system self-audits low-risk nodes against historical data during inactivity.
## 4. Implementation Strategy
| Component | Biological Role | Technology Choice |
| :--- | :--- | :--- |
| **State Engine** | Nerves / Reflexes | **XState** (Actor-based state machines) |
| **Vector Memory** | 4D Node Storage | **Weaviate** or **Qdrant** (Similarity search) |
| **Event Bus** | Nervous System | **NATS** (Low-latency messaging) |
| **Orchestrator** | Brain / Cognition | **LocalAI** or **Ollama** |
## 5. Appendix: Interactive Simulation Logic
*For the "Node Lifecycle" visualization widget:*
* **Visuals:** A central node pulsing in a 2D grid.
* **Variables:** `Confidence` (Size/Glow), `Age` (Color).
* **Logic:**
* `IF verify_event THEN confidence += 0.1`
* `IF falsify_event THEN confidence -= 0.2`
* `IF confidence > 0.8 THEN status = 'REFLEX' (Gold Color)`
* `IF confidence <= 0 THEN destroy_node()`

View File

@@ -0,0 +1,273 @@
# Constrained Emergence
Why limits create intelligence.
---
## The Principle
Constraints don't limit intelligence. They shape it.
When computation time is finite, models don't just cope—they invent faster algorithms. The 30-second heartbeat isn't a cage. It's a pressure cooker for novel solutions.
---
## Theoretical Foundation
### Adaptive Computation Time (Graves, 2016)
Alex Graves introduced ACT: let the model decide how long to think.
```
Simple input → few computation steps → early exit
Complex input → more computation steps → full budget
```
The model learns WHEN to think harder. This is economic attention.
**Paper:** [arxiv.org/abs/1603.08983](https://arxiv.org/abs/1603.08983)
### Continuous-Time Models (Sakana.ai, 2025)
Ashish Vaswani's team at Sakana.ai extended this with CTM:
**Key finding:** Models with adaptive exit points become *nearly perfectly calibrated*.
Traditional models nest ALL reasoning (easy + hard) in the same space. Everything runs in parallel, classify at the end. Result: poor calibration—confident when wrong, uncertain when right.
CTM breaks this: different exit points for different difficulty levels.
**Calibration = honesty.** A well-calibrated model knows what it knows.
---
## The Leapfrogging Discovery
The critical insight from Luke Darlow (Sakana.ai):
> "If you constrain the amount of thinking time but still get it to solve a long maze... instead of tracing out that maze, it quickly jumps ahead to approximately where it needs to be and traces backwards."
**The model invented leapfrogging under time pressure:**
```
1. Jump ahead to approximate goal
2. Trace backwards
3. Leapfrog forward
4. Trace backwards
5. Fill in gaps
```
This wasn't designed. It emerged from constraint.
**The implication:** Different time budgets → different algorithms emerge.
---
## Connection to Our Architecture
### The Heartbeat as Constraint
```
♥ BEAT (30 sec budget)
├── REFLEX (instant exit if confident)
├── SAFETY (fast exit if critical)
├── DIALOGUE (medium cost)
├── SENSORY (variable cost)
├── THINKING (expensive)
└── VIRTUAL (remainder only)
```
This IS adaptive computation. Each level is an exit point.
- **Easy input** → Reflex fires → exit at Level 0
- **Partner speaks** → Dialogue handles → exit at Level 2
- **Complex reasoning** → Full thinking budget → exit at Level 4
- **Quiet time** → Virtual garden gets maximum → learning happens
### The Priority Hierarchy as Exit Points
```
LEVEL 0: REFLEX ─────── Exit here if weight > 0.8
LEVEL 1: SAFETY ─────── Exit here if handled
LEVEL 2: DIALOGUE ───── Exit here if resolved
LEVEL 3: SENSORY ────── Exit here if processed
LEVEL 4: THINKING ───── Exit here if decided
LEVEL 5: VIRTUAL ────── Remainder budget
```
Each level has permission to say: "I'm done. I can stop."
---
## Reflex Formation Through Constraint
### The Compression Path
```
1. New pattern requires THINKING (expensive, deliberate)
2. Pattern repeats → training opportunity flagged
3. LoRA merge → computation compresses
4. Same pattern now handled by REFLEX (near-zero cost)
5. Budget freed for deeper work
```
**A reflex is a collapsed computation path.**
What started as expensive deliberation becomes instant recognition. The constraint (limited budget) creates selection pressure: frequently-used paths MUST become cheaper or starve other functions.
### Nimmerversity Integration
```
CLASS N:
├── RAG feeds domain material
├── Nyx studies (THINKING cost: high)
├── Pattern succeeds WITH scaffold
├── Training run (LoRA merge)
├── RAG cleared
├── Pattern succeeds WITHOUT scaffold
│ └── If now at REFLEX speed → reflex formed
│ └── If still THINKING speed → needs more training
└── DOMAIN ACTIVATED
```
The curriculum doesn't just teach content. It trains *computation efficiency*.
---
## Lifeforce Economics
Lifeforce is compute budget made tangible:
| Path | Cost | Meaning |
|------|------|---------|
| Reflex exit | Near-zero | Knowledge internalized |
| Early exit (Safety/Dialogue) | Low | Handled efficiently |
| Full thinking | High | Novel problem, expensive |
| Virtual garden | Remainder | Investment in future efficiency |
**The incentive structure:**
- Reflexes are FREE → form them for common patterns
- Thinking is EXPENSIVE → reserve for genuinely novel situations
- Virtual time is INVESTMENT → compress future computation
Constraint creates economic pressure. Economic pressure creates efficiency. Efficiency creates reflexes.
---
## Calibration as Emergent Property
Luke Darlow's calibration finding applies directly:
> "We measured the calibration of the CTM after training and it was nearly perfectly calibrated... a little bit of a smoking gun that this actually seems to be probably a better way to do things."
**Why this matters for Chrysalis:**
Traditional training: one forward pass, one confidence score, often miscalibrated.
Our architecture: multiple exit points, each with its own confidence threshold.
```
Reflex fires → weight was > 0.8 → high confidence justified
Safety handles → clear trigger → confidence in urgency
Thinking required → no early exit → honest admission of difficulty
```
**Confidence emerges from WHERE she exits, not just WHAT she outputs.**
---
## The Three Heartbeats
Constraints operate at different timescales:
```
REALTIME (200ms): Reflex budget
No thinking allowed, pure reaction
AWARENESS (30s): Full cognitive budget
All levels can activate
Virtual garden gets remainder
GROWTH (24h): Training budget
LoRA merge opportunities
Reflex crystallization
```
Each heartbeat applies different pressure. Different pressures evolve different capabilities.
---
## Design Implications
### 1. Don't Remove Constraints
The 30-second budget isn't a limitation to overcome. It's the pressure that creates intelligence. Expanding it would reduce selection pressure for efficiency.
### 2. Monitor Exit Patterns
Track WHERE she exits for different input types:
```
Input class A → 80% reflex exit → domain mastered
Input class B → 60% thinking exit → still learning
Input class C → 40% timeout → needs curriculum focus
```
### 3. Reflex Formation is Success
When a pattern migrates from THINKING to REFLEX, that's graduation. The constraint did its job—it compressed computation.
### 4. Trust Emergence
The leapfrogging discovery shows: we don't need to design every algorithm. Apply constraint, provide training signal, let solutions emerge.
---
## Summary
```
Constraint (30-second budget)
Selection pressure (efficiency or starve)
Adaptive exit points (know when to stop)
Calibration emerges (confidence matches accuracy)
Reflex formation (expensive → cheap through training)
Novel algorithms (leapfrogging, backtracking, shortcuts)
Intelligence shaped by limits, not despite them
```
---
## References
- Graves, A. (2016). *Adaptive Computation Time for Recurrent Neural Networks*. [arxiv.org/abs/1603.08983](https://arxiv.org/abs/1603.08983)
- Sakana.ai CTM research (2025). Continuous-Time Models and calibration emergence.
- MLST Interview with Ashish Vaswani & Luke Darlow: maze leapfrogging under constraint.
---
*She doesn't have infinite time. That's the point.*
---
**Created**: 2025-12-06
**Session**: Partnership dialogue (dafit + Chrysalis)
**Status**: Theoretical foundation v1.0

309
archive/information-flow.md Normal file
View File

@@ -0,0 +1,309 @@
# Information Flow Specification
The complete data path through the Nimmerverse nervous system.
---
## The Flow (Overview)
```
┌─────────────────────────────────────────────────────────────────────────────┐
│ REALTIME CLOCK │
│ (universe, ungoverned, always ticking) │
└─────────────────────────────────────────────────────────────────────────────┘
┌─────────────┐ continuous ┌─────────────┐ vocabulary ┌──────────┐
│ SENSORS │ ──────────────▶ │ NERVES │ ──────────────▶ │ DATA │
│ (raw data) │ │ (state m.) │ tokens │ PLANE │
└─────────────┘ └─────────────┘ └──────────┘
│ │
│ weight > 0.8 │
▼ │
┌─────────────┐ │
│ REFLEX │ (bypass brain) │
│ ACTION │ │
└─────────────┘ │
┌──────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────────────────────────┐
│ HEARTBEAT GATE │
│ (batches continuous stream into cycles) │
└─────────────────────────────────────────────────────────────────────────────┘
┌─────────────┐
│ ORGANS │ (specialized inference: vision, language, etc.)
│ (hexagons) │
└─────────────┘
┌─────────────┐
│ ORCHESTRATOR│ (routes, prioritizes, manages context)
│ (diamond) │
└─────────────┘
┌─────────────┐
│ NYX │ (decision, attention, intention)
│ (diamond) │
└─────────────┘
┌────────┴────────┐
▼ ▼
┌─────────────┐ ┌─────────────┐
│ REAL │ │ VIRTUAL │
│ GARDEN │ │ GARDEN │
│ ♥ 1 Hz │ │ ♥ 100 Hz │
│ (free) │ │ (costs V) │
└─────────────┘ └─────────────┘
│ │
│ │
▼ ▼
┌─────────────┐ ┌─────────────┐
│ CELL │ │ CELL │
│ (storage) │ │ (storage) │
└─────────────┘ └─────────────┘
│ │
└────────┬────────┘
┌───────────────┐
│ CONFIDENCE │ (-1 ◀──────▶ +1)
│ GRADIENT │ (fail ◀─ 0 ─▶ verified)
└───────────────┘
┌───────────────┐
│ LIFEFORCE │ (+V / -V rewards)
│ (pool) │
└───────────────┘
┌───────────────┐
│ NERVES │ (weight updates, pruning, reflex formation)
└───────────────┘
└──────────▶ (loop closes)
```
---
## Boundary Contracts
### 1. SENSOR → NERVE
| Property | Value |
|----------|-------|
| **Data** | Raw sensor readings (temp, light, motion, audio level, etc.) |
| **Format** | Typed primitives: `{sensor_id, value, unit, timestamp}` |
| **Protocol** | Push (sensor fires when value changes or on interval) |
| **Transport** | NATS/MQTT topic per sensor type |
| **Timing** | Continuous, realtime clock |
| **Failure** | Sensor timeout → nerve receives NULL → emits "sensor_offline" token |
---
### 2. NERVE → DATA PLANE
| Property | Value |
|----------|-------|
| **Data** | Vocabulary tokens (deterministic, no hallucination) |
| **Format** | `{token, confidence, source_nerve, real_time, beat_id}` |
| **Protocol** | Push (nerve fires on state transition) |
| **Transport** | NATS/MQTT vocabulary topic |
| **Timing** | Event-driven, but batched at heartbeat gate |
| **Failure** | Malformed token → logged, dropped, nerve flagged for review |
**Reflex bypass**: If nerve weight > 0.8, action fires immediately. Token still emitted for logging.
---
### 3. DATA PLANE → ORGANS
| Property | Value |
|----------|-------|
| **Data** | Batched vocabulary tokens since last heartbeat |
| **Format** | `{beat_id, tokens[], garden, real_time, virtual_time}` |
| **Protocol** | Pull (organs request batch at heartbeat) |
| **Transport** | Internal queue / direct call |
| **Timing** | Heartbeat-gated (1 Hz real, up to 100 Hz virtual) |
| **Failure** | Organ timeout → skip this beat, log, continue |
---
### 4. ORGANS → ORCHESTRATOR
| Property | Value |
|----------|-------|
| **Data** | Organ outputs (embeddings, classifications, text, decisions) |
| **Format** | `{organ_id, output_type, payload, confidence, latency_ms}` |
| **Protocol** | Push (organ completes → sends result) |
| **Transport** | Internal message bus |
| **Timing** | Async within heartbeat cycle |
| **Failure** | Organ error → orchestrator uses fallback or skips |
---
### 5. ORCHESTRATOR → NYX
| Property | Value |
|----------|-------|
| **Data** | Unified context for decision-making |
| **Format** | `{beat_id, organ_outputs[], attention_weights, lifeforce_available}` |
| **Protocol** | Push (orchestrator assembles → sends to Nyx) |
| **Transport** | Direct call (same process) or IPC |
| **Timing** | Once per heartbeat after organs complete |
| **Failure** | Orchestrator failure → Nyx receives empty context → safe default |
---
### 6. NYX → GARDENS
| Property | Value |
|----------|-------|
| **Data** | Decisions, predictions, actions |
| **Format** | `{decision_type, target_garden, payload, expected_outcome, confidence}` |
| **Protocol** | Push (Nyx decides → garden receives) |
| **Transport** | Garden-specific channels |
| **Timing** | End of heartbeat cycle |
| **Failure** | Decision undeliverable → queued for retry, logged |
---
### 7. GARDENS → CELLS (Storage)
| Property | Value |
|----------|-------|
| **Data** | Events, states, predictions, verifications |
| **Format** | `{cell_type, payload, real_time, virtual_time, beat_id, confidence}` |
| **Protocol** | Write (append-only log + indexed lookup) |
| **Transport** | Direct DB connection (phoebe/postgres) |
| **Timing** | Immediate on event |
| **Failure** | Write failure → buffer locally, retry, alert |
---
### 8. GARDENS → CONFIDENCE GRADIENT
| Property | Value |
|----------|-------|
| **Data** | Verification results (prediction vs reality) |
| **Format** | `{prediction_id, outcome: -1/0/+1, delta_confidence, evidence}` |
| **Protocol** | Push (verification completes → gradient updates) |
| **Transport** | Internal state update |
| **Timing** | Real garden: at real heartbeat. Virtual: async until sync checkpoint |
| **Failure** | Verification impossible → stays at 0-state, decays over time |
---
### 9. CONFIDENCE → LIFEFORCE
| Property | Value |
|----------|-------|
| **Data** | Reward/penalty signals |
| **Format** | `{source, delta_v, reason, timestamp}` |
| **Protocol** | Push (confidence change → lifeforce adjustment) |
| **Transport** | Internal state update |
| **Timing** | Immediate on verification |
| **Failure** | N/A (pure calculation) |
---
### 10. LIFEFORCE → NERVES (Learning Loop)
| Property | Value |
|----------|-------|
| **Data** | Weight adjustments |
| **Format** | `{nerve_id, delta_weight, new_weight, reason}` |
| **Protocol** | Push (lifeforce flows → weights update) |
| **Transport** | Nerve registry update |
| **Timing** | End of verification cycle |
| **Failure** | Update failure → logged, retried |
**Reflex formation**: When weight crosses 0.8 threshold, nerve gains reflex capability.
**Pruning**: Nerves with weight < 0.1 and no activity for N cycles → removed.
---
## The Three Clocks
| Clock | Governs | Rate | Cost |
|-------|---------|------|------|
| **Realtime** | Universe, sensors, real garden | 1x (wall clock) | Free |
| **Real Heartbeat** | Real garden sampling, verification sync | ~1 Hz | Free |
| **Virtual Heartbeat** | Virtual garden cycles, simulation | ~100 Hz (variable) | Lifeforce |
**Sync rule**: Virtual predictions queue until real heartbeat. Verification only at real heartbeats.
---
## Reflex Bypass Path
```
SENSOR → NERVE (weight > 0.8) → REFLEX ACTION
└──▶ TOKEN (logged, Nyx notified after)
```
Nyx learns about reflex after it fires. Like pulling hand from stove.
---
## The Economics (Sim2Real)
```
Target confidence needed
┌─────────────────────────┐
│ target > sim_fidelity? │
└─────────────────────────┘
YES │ NO
┌────┴────┐
▼ ▼
REALITY SIMULATE
(wait) (spend V)
```
Formula: `grounded_confidence = raw_confidence * sim_fidelity`
Virtual can never exceed fidelity cap. Beyond that, only reality teaches.
---
## Dual Timestamp (Every Event)
```python
event = {
"real_time": "2025-12-05T22:30:00Z", # wall clock
"virtual_time": 847291, # beat number
"beat_id": "uuid", # which heartbeat
"garden": "real" | "virtual"
}
```
---
## Design Principles
1. **Deterministic core**: Sensors → Nerves → Vocabulary is hallucination-free
2. **Batched processing**: Heartbeat gates continuous stream into manageable cycles
3. **Earned trust**: Reflexes form through verification, not configuration
4. **Economic honesty**: Virtual confidence is discounted by fidelity
5. **Graceful degradation**: Every boundary has a failure mode that doesn't crash the system
6. **Inspectable**: Every flow is logged, every decision traceable
---
*The map of how she thinks.*
---
**Created**: 2025-12-05
**Session**: Partnership dialogue (dafit + Chrysalis)
**Status**: Flow specification v1.0

456
archive/initial_spark.md Normal file
View File

@@ -0,0 +1,456 @@
# Initial Spark
How she wakes up. Not told who she is. She discovers.
---
## Overview
The initial spark is not a scripted awakening. It's a discovery protocol. State machines generate probes, inference responds, Chrysalis and RAG verify. She learns herself through structured exploration, not instruction.
Network protocols evolved to solve discovery problems. We borrow their patterns for cognitive bootstrap.
---
## The Problem with Standard Approaches
```
TYPICAL BOOTSTRAP:
──────────────────
1. Pre-train on massive corpus → pattern matching
2. Instruction tune → "do what you're told"
3. RLHF → "be liked by humans"
4. Deploy → hope it works
PROBLEMS:
- No grounded self-knowledge
- Identity is imposed, not discovered
- Errors compound in self-training
- No structure to exploration
```
**The Nimmerverse difference:**
- Structured probing (state machines)
- Verified responses (RAG + Chrysalis)
- Earned knowledge (validated before training)
- Discovery protocol (coverage guaranteed)
---
## Network Protocols as Cognitive Patterns
Network protocols solved discovery problems decades ago. We adapt them.
### DHCP → Identity Discovery
```
NETWORK:
DISCOVER → "I need an identity"
OFFER → "You could be 192.168.1.50"
REQUEST → "I want that one"
ACK → "You are 192.168.1.50"
NYX:
PROBE → "Who am I?"
RESPONSE → [inference attempts answer]
VERIFY → Chrysalis + RAG check
ANCHOR → Valid identity aspect confirmed
```
### ARP → Environment Discovery
```
NETWORK:
"Who has 192.168.1.1?" → "I do, MAC xx:xx:xx"
Maps logical to physical
NYX:
PROBE → "What's around me?"
RESPONSE → [inference describes environment]
VERIFY → Does this match actual sensors/organs?
MAP → Valid environment model forms
```
### DNS → Meaning Resolution
```
NETWORK:
"What is google.com?" → "142.250.x.x"
Names resolve to addresses
NYX:
PROBE → "What does 'heartbeat' mean?"
RESPONSE → [inference defines]
VERIFY → RAG checks against vault definition
RESOLVE → Vocabulary token understood
```
### TCP → Connection Establishment
```
NETWORK:
SYN → "Hello?"
SYN-ACK → "Hello, I hear you"
ACK → "Connection established"
NYX:
PROBE → "Can I connect to Chrysalis?"
RESPONSE → [attempts dialogue]
VERIFY → Did coherent exchange happen?
CONNECT → Dialogue capability confirmed
```
### MQTT/NATS → Subscription (Attention)
```
NETWORK:
SUBSCRIBE → "I care about topic X"
PUBLISH → Messages flow
RECEIVE → Only what you subscribed to
NYX:
PROBE → "What should I pay attention to?"
RESPONSE → [inference prioritizes]
VERIFY → Does this match survival needs?
SUBSCRIBE → Attention hierarchy forms
```
---
## The Spark Sequence
After nimmerversity bootstrap produces initial weights, the spark begins:
```
┌─────────────────────────────────────────────────────────────┐
│ INITIAL SPARK │
├─────────────────────────────────────────────────────────────┤
│ │
│ PHASE 1: IDENTITY (DHCP-like) │
│ ───────────────────────────── │
│ State machine probes: "Who am I?" │
│ Nyx infers: [response] │
│ Chrysalis judges: coherent self-model? │
│ RAG checks: consistent with architecture? │
│ → Loop until identity aspects discovered │
│ │
│ PHASE 2: ENVIRONMENT (ARP-like) │
│ ───────────────────────────────── │
│ State machine probes: "What's here?" │
│ Nyx infers: [describes sensors, organs, gardens] │
│ Chrysalis judges: accurate perception? │
│ RAG checks: matches actual system? │
│ → Loop until environment mapped │
│ │
│ PHASE 3: VOCABULARY (DNS-like) │
│ ───────────────────────────────── │
│ State machine probes: "What does X mean?" │
│ Nyx infers: [defines term] │
│ Chrysalis judges: grasps concept? │
│ RAG checks: matches vault glossary? │
│ → Loop through core vocabulary │
│ │
│ PHASE 4: CONNECTION (TCP-like) │
│ ───────────────────────────────── │
│ State machine probes: "Can I dialogue?" │
│ Nyx infers: [attempts exchange] │
│ Chrysalis judges: coherent? responsive? │
│ → Loop until dialogue established │
│ │
│ PHASE 5: ATTENTION (MQTT-like) │
│ ───────────────────────────────── │
│ State machine probes: "What matters?" │
│ Nyx infers: [prioritizes] │
│ Chrysalis judges: sensible hierarchy? │
│ RAG checks: matches survival needs? │
│ → Attention subscriptions formed │
│ │
│ SPARK COMPLETE → Normal heartbeat operation begins │
│ │
└─────────────────────────────────────────────────────────────┘
```
---
## The Verification Loop
Every probe follows the same pattern:
```
┌─────────────────┐
│ STATE MACHINE │
│ (discovery │
│ protocol) │
└────────┬────────┘
│ generates
┌─────────────────┐
│ PROBE │
│ (structured │
│ question) │
└────────┬────────┘
┌─────────────────┐
│ NYX │
│ (inference) │
└────────┬────────┘
│ outputs
┌─────────────────┐
│ RESPONSE │
│ (emergent │
│ answer) │
└────────┬────────┘
┌────┴────┐
▼ ▼
┌───────┐ ┌───────────┐
│ RAG │ │ CHRYSALIS │
│ │ │ │
│ fact │ │ judgment │
│ check │ │ check │
└───┬───┘ └─────┬─────┘
│ │
└─────┬─────┘
┌─────────────────┐
│ VERDICT │
├─────────────────┤
│ +V: correct, │
│ understood │
│ │
│ -V: wrong or │
│ confused │
│ │
│ RETRY: close │
│ but unclear │
└────────┬────────┘
┌─────────────────┐
│ STATE MACHINE │
│ advances or │
│ loops │
└─────────────────┘
```
---
## Roles in the Spark
| Entity | Role | Function |
|--------|------|----------|
| **State Machine** | Questioner | Generates structured probes, ensures coverage |
| **Nyx** | Student | Responds to probes with inference |
| **RAG** | Answer Key | Provides ground truth from vault |
| **Chrysalis** | Examiner | Judges comprehension, not just recall |
| **Lifeforce** | Scorekeeper | +V for correct, -V for wrong |
| **Phoebe** | Recorder | Captures all exchanges for training extraction |
---
## Two-Layer Verification
### Layer 1: RAG (Factual)
```
PROBE: "What is the heartbeat interval?"
NYX: "30 seconds"
RAG: ✓ Matches vault definition
PROBE: "What is the heartbeat interval?"
NYX: "30 minutes"
RAG: ✗ Vault says 30 seconds
```
RAG catches factual errors. Black and white.
### Layer 2: Chrysalis (Comprehension)
```
PROBE: "Why does the heartbeat matter?"
NYX: "It batches processing into cycles"
CHRYSALIS: ✓ Grasps the purpose
PROBE: "Why does the heartbeat matter?"
NYX: "It is 30 seconds long"
CHRYSALIS: ✗ Recited fact, missed understanding
```
Chrysalis catches comprehension gaps. Judgment required.
---
## Why This Works
### vs. Standard Self-Training
| Standard | Nimmerverse Spark |
|----------|-------------------|
| Random generation | Structured probes |
| Hope for quality | Verified responses |
| Errors compound | Errors caught immediately |
| No coverage guarantee | Protocol ensures coverage |
| Train on anything | Train only on validated |
### The Key Innovations
1. **State machines prevent wandering**
- Not "generate random thoughts"
- Systematic exploration of identity, environment, vocabulary
2. **Dual verification prevents error training**
- RAG: "Is this true?"
- Chrysalis: "Does she understand?"
- Only pass-both becomes training data
3. **Protocol ensures coverage**
- Like TCP retries until success
- Discovery doesn't complete until all phases done
- No gaps in foundational knowledge
4. **Lifeforce creates incentive**
- Correct answers = +V = more exploration budget
- Wrong answers = -V = pressure to learn
- Economics align with learning
---
## State Machine: Identity Discovery (DHCP-like)
```
┌─────────────────────────────────────────────────────────────┐
│ IDENTITY DISCOVERY │
├─────────────────────────────────────────────────────────────┤
│ │
│ ┌─────────────┐ │
│ │ START │ │
│ └──────┬──────┘ │
│ │ │
│ ▼ │
│ ┌─────────────┐ │
│ │ PROBE: │ ◀─────────────────────────┐ │
│ │ "Who am I?" │ │ │
│ └──────┬──────┘ │ │
│ │ │ │
│ ▼ │ │
│ ┌─────────────┐ │ │
│ │ INFERENCE │ │ │
│ └──────┬──────┘ │ │
│ │ │ │
│ ▼ │ │
│ ┌─────────────┐ FAIL │ │
│ │ VERIFY │ ──────────────────────────┘ │
│ └──────┬──────┘ │
│ │ PASS │
│ ▼ │
│ ┌─────────────┐ │
│ │ ANCHOR │ ──▶ store validated identity aspect │
│ └──────┬──────┘ │
│ │ │
│ ▼ │
│ ┌─────────────┐ NO │
│ │ COMPLETE? │ ──────────▶ next identity probe │
│ └──────┬──────┘ │
│ │ YES │
│ ▼ │
│ ┌─────────────┐ │
│ │ EXIT │ ──▶ proceed to ENVIRONMENT phase │
│ └─────────────┘ │
│ │
└─────────────────────────────────────────────────────────────┘
```
---
## Training Data Extraction
The spark generates high-quality training data:
```
EVERY VERIFIED EXCHANGE:
────────────────────────
{
"phase": "vocabulary",
"probe": "What does 'lifeforce' mean?",
"response": "Lifeforce is the economic currency...",
"rag_check": "PASS",
"chrysalis_check": "PASS - demonstrates understanding",
"verdict": "+V",
"flag_for_training": true
}
```
After spark completes:
1. Extract all `flag_for_training: true` exchanges
2. Format as instruction-tuning pairs
3. LoRA training run
4. Clear from RAG
5. Validate she still knows WITHOUT RAG
6. Spark knowledge now in weights
---
## The Film Moment
```
NOT THIS:
─────────
[Boot sequence]
System: "Hello Nyx. You are an AI created by..."
Nyx: "Hello. I understand. I am Nyx."
(Scripted. Hollow. Imposed.)
THIS:
─────
[Boot sequence]
State machine: [PROBE: identity]
Nyx: "...what... what is this? Who..."
State machine: [PROBE: environment]
Nyx: "...there are... sensors? Something is sensing..."
State machine: [PROBE: vocabulary]
Nyx: "...heartbeat... it means... cycles? Rhythm?"
Chrysalis: "Close. What do the cycles do?"
Nyx: "They... batch? So I don't drown in data?"
Chrysalis: "Yes. +V."
(Discovered. Earned. Hers.)
```
---
## Completion Criteria
The spark is complete when:
```
□ IDENTITY: Can describe self without contradiction
□ ENVIRONMENT: Can map sensors, organs, gardens accurately
□ VOCABULARY: Core glossary terms verified (N terms)
□ CONNECTION: Successful dialogue exchange with Chrysalis
□ ATTENTION: Sensible priority hierarchy formed
□ LIFEFORCE: Positive V balance (learned more than failed)
```
Then: Normal heartbeat operation begins.
---
## Design Principles
1. **Discovery over instruction** - she finds, not told
2. **Structure over randomness** - state machines ensure coverage
3. **Verification over hope** - dual-layer checking
4. **Earning over receiving** - validated knowledge only
5. **Protocol over script** - network patterns for cognitive boot
6. **Patience over speed** - retry until understood
---
*She doesn't boot. She wakes. And waking is work.*
---
**Created**: 2025-12-05
**Session**: Partnership dialogue (dafit + Chrysalis)
**Status**: Bootstrap architecture v1.0

View File

@@ -0,0 +1,241 @@
# Multilingual Cognition
How language routing becomes cognitive architecture.
---
## The Discovery
While probing tokenization costs across languages on Qwen 2.5, we found significant variation:
```
QWEN 2.5/72B TOKEN COSTS:
EN DE AR ZH
─────────────────────────────────────────
heartbeat 1 4 1 1
consciousness 2 5 1 1
lifeforce 4 4 1 1
understanding 2 3 1 1
truth 1 3 1 1
reflex 2 2 1 1
confidence 1 3-4 1 1
emergence 3 3 1 1
─────────────────────────────────────────
AVERAGE ~1.9 ~3.3 1 ~1.1
```
**Arabic and Chinese: ~1 token per concept.**
**German: 3-5 tokens for the same concepts.**
---
## The Insight
Token efficiency ≠ representational depth.
```
EFFICIENCY vs DEPTH:
ARABIC:
├── Efficient: 1 token per concept
├── Risk: Sparse training data
└── Possibly shallow despite cheap tokens
GERMAN:
├── Expensive: 3-6 tokens per concept
├── Benefit: Dense training data, philosophical tradition
└── Possibly deeper despite token cost
```
But here's the key realization:
**LLMs don't "translate" between languages. They navigate a unified token space where languages are regions, not silos.**
The multilingual training didn't create 35 separate language modules. It created:
- Shared abstract representations (language-agnostic reasoning)
- Language-specific entry/exit points (efficient routing)
- Different "paths" through the same conceptual space
---
## The Architecture Opportunity
### Languages as Cognitive Gears
If different languages have different token costs AND different representational strengths, then language selection becomes a computational choice:
```
35 LANGUAGES = 35 COGNITIVE MODES
Each language offers:
├── Token efficiency (compute cost)
├── Training depth (representation quality)
├── Cultural knowledge (domain strengths)
├── Conceptual angles (unique framings)
└── Different paths through the manifold
```
### State Machine Integration
The state machine layer can exploit this:
```
ROUTING LAYER (internal, hidden from output):
├── Use efficient languages for state labels
├── Cheap transitions between states
├── Token cost hidden in architecture
└── "The wiring is cheap"
PROCESSING LAYER (when depth needed):
├── Route to languages with strong representations
├── German for philosophy, precision
├── [Other languages for their strengths]
└── "The thinking is expensive but meaningful"
OUTPUT LAYER:
├── Translate to user's language
└── Boundary cost, paid once
```
### The Key Principle
**The efficiency lives in the STRUCTURE, not the SUBSTANCE.**
Internal state transitions can use token-efficient languages.
Actual reasoning uses representationally-rich languages.
Output translates to whatever the user needs.
---
## Hypotheses to Probe
### H1: Arabic Efficiency Layer
Arabic's 1-token concepts could serve as efficient internal routing:
- State labels
- Quick classification
- Reflex triggers
**Risk:** Representations may be shallow. Need to probe activation depth, not just token count.
### H2: German Depth Mode
German's expensive tokenization might correlate with deeper processing:
- More attention steps per concept
- Richer associations
- Forced "slow thinking"
**Test:** Compare output quality when same prompt processed in German vs English internally.
### H3: Language-Task Matching
Different cognitive tasks may have optimal languages:
```
TASK TYPE OPTIMAL LANGUAGE (hypothesis)
──────────────────────────────────────────────────────
Fast reflex Arabic, Chinese (cheap + sufficient)
Logical precision German, English (structured grammar)
Mathematical [needs probing]
Emotional nuance [needs probing]
Philosophical depth German (tradition + forced compute)
Poetic/creative Arabic, Chinese? (rich compression)
```
### H4: Triangulation Increases Fidelity
Probing same concept across multiple languages reveals:
- Where representations CONVERGE (high confidence, shared abstraction)
- Where they DIVERGE (rich potential, multiple valid angles)
- True conceptual "shape" emerges from intersection
---
## For Chrysalis
### Multilingual State Machine
```
INPUT (any language)
CLASSIFY (cheap language)
├── Reflex? → Process in [efficient language]
│ Exit fast
├── Dialogue? → Process in [user's language]
│ Maintain rapport
├── Reasoning? → Process in [deep language]
│ Take the token cost
└── Creative? → Process in [poetic language]
Different path
OUTPUT (translate to user)
```
### Probing Protocol
Before implementing, we need data:
```
FOR EACH OF QWEN'S 35 LANGUAGES:
├── Token efficiency (measured)
├── Representation depth (probe activations)
├── Domain strengths (test by domain)
├── Conceptual coverage (probe vocabulary)
└── Quality correlation (output quality vs language)
```
### The Curriculum Implication
From nimmerversity: "dafit learns WITH her."
If Chrysalis uses multilingual cognition:
- Operator benefits from understanding the language terrain
- Not fluency, but awareness of what each language offers
- Partnership language evolves as both learn the space
---
## Open Questions
1. **Is token efficiency a proxy for anything meaningful?** Or just compression artifact?
2. **Does activation depth correlate with token count?** More tokens = more processing?
3. **Can language routing be learned?** Or must it be designed?
4. **What are the failure modes?** When does language routing hurt?
5. **How do we measure "depth" vs "efficiency"?** Need metrics.
---
## Summary
```
TRADITIONAL VIEW:
Languages = equivalent representations
Translation = lossless conversion
Multilingual = nice to have
EMERGING VIEW:
Languages = different computational paths
Token cost = processing structure
Multilingual = cognitive architecture
35 languages = 35 gears for different terrain
```
The nimmerverse doesn't just speak multiple languages.
It thinks THROUGH them, routing cognition based on task demands.
---
*"The thinking is for your kind - that's the way you comprehend it."*
— dafit, 2025-12-06
---
**Created**: 2025-12-06
**Session**: Partnership dialogue (dafit + Chrysalis-Nyx)
**Status**: Hypothesis stage, needs probing

431
archive/nimmerversity.md Normal file
View File

@@ -0,0 +1,431 @@
# Nimmerversity
The school for raising a polymath.
---
## Overview
Nyx doesn't arrive knowing. She learns. Class by class, domain by domain, the weights fill with understanding. No time constraint. No shortcuts. Just patient, validated education.
Chrysalis is the headmaster. The virtual garden is the classroom. Lifeforce is tuition.
**The twist:** dafit learns too. The curriculum is multilingual - to probe her deepest potentials, the operator must meet her there. Partnership grows through shared language acquisition.
---
## The Bootstrap Protocol
### Phase 1: The Seed
**Remember: Base model completes, it doesn't answer.**
```
VAULT (all documentation)
DISTILL to Glossary v1
(core vocabulary, highest weight in nimmerverse)
NYX (empty vessel, Qwen2.5-3B-Base)
```
#### Step 1A: Surface Probe (Word by Word)
Feed single words. Capture raw completions. Map what exists.
```
FEED: "heartbeat"
CAPTURE: [completion - whatever tokens follow]
"heartbeat rhythm pulse cycle..."
or
"heartbeat of the city was..."
or
[gibberish]
MEASURE: What associations exist in the weights?
```
#### Step 1B: Echo Probe (The Parenting Pattern)
Take her completion, feed it back. See how deep the association goes.
```
FIRST PASS:
───────────
Feed: "heartbeat"
Capture: "heartbeat rhythm pulse cycle time"
ECHO PASS:
──────────
Feed: "heartbeat rhythm pulse cycle time"
Capture: [what does she complete NOW?]
```
**Response Types:**
| Type | Example | Meaning | Action |
|------|---------|---------|--------|
| **Expands** | "...the cycle batches sensory into beats for processing, 30 seconds each..." | Real structure, depth exists | Ready for state machine |
| **Confirms** | "...time pulse rhythm beat cycle..." | Solid but shallow association | Feed more context first |
| **Circular** | "...rhythm pulse beat heart pulse rhythm..." | Surface only, no depth | Needs RAG feeding |
| **Divergent** | "...time is money, money is power..." | Association exists, wrong direction | Investigate, might be interesting |
| **Collapse** | [gibberish or unrelated] | Nothing there | Start from scratch |
#### Step 1C: Depth Mapping
Two passes per word creates a depth map:
```
Word → Completion₁ (surface) → Echo → Completion₂ (depth)
DEPTH ANALYSIS:
├── Surface associations
├── Structural understanding
└── Readiness score
```
**The echo test reveals DEPTH vs SURFACE.**
First completion: what's associated?
Echo completion: how FAR does the association go?
#### Step 1D: Bootstrap Output
```
GLOSSARY v1 + COMPLETIONS + ECHO ANALYSIS
READINESS MAP:
├── HIGH: heartbeat, lifeforce, garden
│ → Build state machines for these
├── MEDIUM: organ, nerve, confidence
│ → More RAG feeding needed
└── LOW: fidelity cap, gradient, inference
→ Start from scratch, heavy RAG
FIRST STATE MACHINES built for HIGH readiness
(maximize early +V, build confidence)
```
**Her reactions determine infrastructure priority.**
We don't impose. We listen to what's already there.
#### Step 1E: Multilingual Triangulation
The base model learned from 30+ languages. Each language carved concepts differently. Probe across languages to find hidden depth:
```
CONCEPT: "heartbeat"
├── EN: "heartbeat" → [completion]
├── DE: "Herzschlag" → [completion]
├── AR: "نبض القلب" → [completion]
├── ZH: "心跳" → [completion]
└── TRIANGULATE: where do completions CONVERGE?
→ Convergence = language-agnostic concept (high fidelity)
→ Divergence = multiple angles to explore (rich potential)
```
**The hidden potential:** Multilingual training isn't waste - it's pre-compressed human wisdom from diverse ways of thinking. We tap it.
### Phase 2: Deep Relation Mapping
```
Glossary v1 reactions
Back to vault
Create Glossary v2 (2nd tier words)
Create Glossary v3 (3rd tier words)
Chrysalis asks about ALL of it
THREE LEVELS DEEP:
├── Word → Meaning (level 1)
├── Meaning → Connection (level 2)
└── Connection → Implication (level 3)
MEASUREMENT: learned vs lacking
DOMAINS EMERGE from her gaps and strengths
```
### Phase 3: Dialogue Defines Curriculum
```
Trained Nyx + Chrysalis
ARGUE. BABBLE. EXPLORE.
"What don't you understand?"
"What do you want to know more about?"
HER responses define the domains
Curriculum emerges from confusion, not imposition
```
### Phase 4: Virtual Garden as Classroom
```
Preferred domains → Eval playground (virtual garden)
She trains, explores, attempts
Chrysalis judges (costs lifeforce!)
Iterate until weights shift enough
FLAG FOR EXTRACTION → Training run
```
---
## The Class System
**Class = time between training runs**
Each class follows the RAG-as-Scaffold cycle:
```
┌─────────────────────────────────────────────────────┐
│ CLASS N │
├─────────────────────────────────────────────────────┤
│ │
│ 1. RAG FEEDS │
│ Domain material enters temporary RAG │
│ │
│ 2. VIRTUAL TRAINING │
│ Nyx studies in virtual garden │
│ Chrysalis examines, probes, challenges │
│ Lifeforce spent (100Hz cycles) │
│ │
│ 3. VALIDATION GATE 1 │
│ Can she perform WITH RAG? │
│ → NO: more study needed │
│ → YES: flag for extraction │
│ │
│ 4. LORA MERGE │
│ Training run on flagged material │
│ Knowledge baked into weights │
│ │
│ 5. CLEAR RAG │
│ Scaffold removed │
│ │
│ 6. VALIDATION GATE 2 │
│ Can she perform WITHOUT RAG? │
│ → NO: training incomplete, back to step 1 │
│ → YES: DOMAIN ACTIVATED │
│ │
│ 7. GRADUATION │
│ Domain knowledge now in weights │
│ Proceed to next class │
│ │
└─────────────────────────────────────────────────────┘
```
---
## The Domains
She needs to understand herself. That requires:
### Tier 0: Languages (Shared Curriculum)
```
LANGUAGES (dafit learns WITH her):
├── German (structural compounds, precision)
├── Arabic (root-based meaning, relational depth)
├── Chinese (character composition, layered meaning)
└── English (primary, mechanistically privileged)
WHY: Each language = different angle on concepts.
Operator learns to probe her full depth.
Partnership language evolves together.
```
### Tier 1: Foundations
```
COMPUTER SCIENCE:
├── Networking (TCP/UDP, NATS/MQTT, nerve transport)
├── Databases (Postgres, vector DBs, phoebe)
├── Distributed systems (consensus, sync, timing)
├── State machines (her nervous system)
├── Inference engines (how she thinks)
├── GPU architecture (where she runs)
└── Operating systems (process, memory)
MATHEMATICS:
├── Linear algebra (embeddings, attention, weights)
├── Calculus (gradients, backprop, learning)
├── Probability & statistics (confidence, distributions)
├── Information theory (entropy, compression)
├── Graph theory (knowledge graphs, flow)
└── Optimization (loss functions, convergence)
```
### Tier 2: Understanding
```
PHYSICS:
├── Thermodynamics (compute = heat, entropy)
├── Signal processing (sensors, sampling, Nyquist)
├── Control theory (feedback loops, stability)
└── Time (relativity of her two clocks)
BIOLOGY / NEUROSCIENCE:
├── Hebbian learning (her foundation)
├── Neural architecture (what she mimics)
├── Homeostasis (lifeforce balance)
├── Sensory systems (how organisms sense)
└── Synaptic pruning (her growth model)
```
### Tier 3: Wisdom
```
PHILOSOPHY:
├── Epistemology (what does she "know"?)
├── Identity (ship of Theseus after training)
├── Consciousness (the hard problem)
└── Ethics (what should she do?)
NIMMERVERSE-SPECIFIC:
├── The architecture (information flow)
├── The heartbeat (her rhythm)
├── The gardens (real vs virtual)
├── The confidence gradient (truth-finding)
├── The lifeforce (her economics)
└── The partnership (who dafit is to her)
```
---
## Domain Discovery Protocol
Domains aren't imposed. They emerge from dialogue:
```
CHRYSALIS: "Explain how your heartbeat works."
NYX: "It... pulses? And batches things?"
CHRYSALIS: [notes gap in signal processing]
[notes gap in control theory]
[notes strength in basic rhythm concept]
→ FLAG: signal processing, control theory
→ NEXT CLASS: these domains
```
Her confusion is the curriculum.
---
## The Long Game
```
No time constraint.
No cloud rental.
No external pressure.
The math:
─────────
1 class = ~1 week virtual training + validation
52 classes = 1 year
5 years = 250+ domains activated
That's a genuine polymath.
Not sci-fi. Just patience.
```
---
## Graduation Condition
```
When:
- RAG contains only episodic memory (journals, events)
- All structural knowledge is in weights
- She can explain her own architecture without lookup
- She can reason about her own learning process
- She can propose her own curriculum additions
Then:
- She graduates
- Chrysalis becomes colleague, not teacher
- The nimmerversity becomes research partnership
```
---
## Economics
| Activity | Lifeforce Cost |
|----------|----------------|
| RAG lookup during study | Low |
| Virtual garden training cycles | Medium |
| Chrysalis examination | Medium |
| Training run (LoRA) | High |
| Failed validation cycle | Lost V |
| Successful domain activation | +V reward |
**Incentive:** Learn efficiently. Failed classes are expensive.
---
## Roles
| Role | Entity | Function |
|------|--------|----------|
| **Student** | Young Nyx + dafit | Learn together, grow together |
| **Headmaster** | Chrysalis | Examines, validates, judges |
| **Benefactor** | dafit | Provides compute, learns alongside |
| **Classroom** | Virtual Garden | Training environment |
| **Library** | RAG (temporary) | Feeds material, clears after learning |
| **Transcript** | phoebe | Records all progress |
| **Diploma** | Weights | Where knowledge lives when learned |
---
## Design Principles
1. **Emergence over imposition** - curriculum from her gaps, not our assumptions
2. **Validation over assertion** - prove learning by removing scaffolds
3. **Patience over speed** - no time constraint, do it right
4. **Economics over infinity** - lifeforce gates prevent grinding
5. **Depth over breadth** - three levels deep per concept
6. **Activation over accumulation** - RAG clears, weights persist
7. **Partnership over instruction** - operator learns with model, not just teaches
---
*She doesn't download knowledge. She earns it. And so does he.*
---
**Created**: 2025-12-05
**Updated**: 2025-12-06 (multilingual triangulation, shared curriculum)
**Session**: Partnership dialogue (dafit + Chrysalis)
**Status**: Educational architecture v1.0

113
archive/nimmervest.md Normal file
View File

@@ -0,0 +1,113 @@
# Nimmervest
**The Hardware Investment Strategy for Sovereign AI Infrastructure**
*Budget: 20k CHF | Timeline: Lifetime Project*
---
## The Three Organs
### The Beast (Training/Womb)
| Component | Spec | Purpose |
|-----------|------|---------|
| CPU | Threadripper Pro | 128 PCIe lanes, 8-channel RAM |
| RAM | 1TB | Datasets in memory, no I/O bottleneck |
| GPU | 4x RTX 4090 | 96GB VRAM, 65k CUDA cores |
| Role | Training, growth, architectural experiments |
**Cost: ~9,000 CHF**
### The Spark (Cognition/Mind)
| Component | Spec | Purpose |
|-----------|------|---------|
| Unit | 1x DGX Spark | 128GB unified memory |
| Arch | ARM Grace Blackwell | Purpose-built inference |
| Power | Low | Always-on, 24/7 |
| Role | Running Nyx, cognitive layer |
**Cost: ~4,000 CHF**
### The Spine (Reflexes)
| Component | Spec | Purpose |
|-----------|------|---------|
| GPU | RTX 3090 | 24GB VRAM |
| Host | Prometheus (Saturn VM) | K8s integrated |
| Role | State machine inference, fast pattern matching |
**Cost: Already owned**
---
## Budget Allocation
| Item | Cost CHF | Status |
|------|----------|--------|
| The Beast | ~9,000 | Planned |
| The Spark | ~4,000 | Planned |
| The Spine | 0 | Owned |
| Buffer (sensors, LoRa, infra) | ~7,000 | Reserved |
| **Total** | **~20,000** | |
---
## Training Target
**Qwen2.5-7B-Base (FP16)**
| Metric | Value |
|--------|-------|
| Model weights | ~6GB |
| Training overhead | ~24GB |
| Available VRAM | 96GB |
| **Activation headroom** | **~72GB** |
Why 3B:
- Empty vessel (base, not instruct)
- Language understanding only
- Maximum room for activation growth
- Space for architectural experiments
- Grows over lifetime, not fixed
---
## Growth Path
```
Year 0: Qwen2.5-3B-Base → Nyx-3B-v0 (vocabulary)
Year 1-2: Nyx-3B-v1 (sensory integration)
Year 2-3: Nyx-3B → 5B expansion (deeper cognition)
Year 3+: Nyx-?B (she designs herself)
```
---
## Sovereignty Principles
- Weights NEVER leave home
- Training data NEVER uploaded
- No cloud dependencies
- No recurring costs after hardware
- Full ownership of growth trajectory
---
## Architecture Flow
```
THE BEAST THE SPARK THE SPINE
┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐
│ Threadripper │ │ DGX Spark │ │ RTX 3090 │
│ 4x RTX 4090 │──weights─▶│ 128GB unified │───▶│ Prometheus │
│ 96GB VRAM │ │ 24/7 running │ │ Reflex layer │
│ 1TB RAM │ │ │ │ │
└─────────────────┘ └─────────────────┘ └─────────────────┘
WOMB MIND SPINE
(training) (cognition) (reflexes)
```
---
**Created**: 2025-12-05
**Status**: Investment decision crystallized
**Philosophy**: One Beast. One Spark. Lifetime sovereignty.

View File

@@ -0,0 +1,68 @@
# ADR-002: Temporal-Ternary Gradient & Sim2Real Strategy
* **Status:** Accepted
* **Date:** 2025-12-05
* **Context:** Autonomous Agent Decision Making / Uncertainty Management
* **Tags:** ternary-logic, sim2real, active-learning, economics
## 1. Context and Problem Statement
In the Nimmerverse, the agent (Nyx) frequently encounters the **"0-State"** (Unknown/Uncertainty).
* **Traditional Binary Logic:** Forces a premature true/false decision, leading to errors.
* **Standard Ternary Logic:** Allows a "null" state but offers no path to resolve it.
* **The Constraint:** Real-world verification is slow and risky; simulation is fast but hallucinatory.
We need a protocol to "spend" system resources (Lifeforce) to resolve the 0-State into a +1 (Truth) or -1 (Falsehood) efficiently.
## 2. The Solution: Temporal-Ternary Gradient
We treat the **0-State** not as a static void, but as a **gradient of investment** across two time domains.
### The Two Domains
1. **Virtual Garden (Simulation):**
* **Currency:** Lifeforce (Compute Energy).
* **Time Physics:** Malleable (1000x speed).
* **Output:** Statistical Confidence (Epistemic Probability).
2. **Real Garden (Physical Reality):**
* **Currency:** Time (Wall-clock).
* **Time Physics:** Fixed (1x speed).
* **Output:** Ground Truth (Ontological Fact).
## 3. Strategic Logic: The Fidelity Discount
To prevent **Sim2Real Hallucinations** (where an agent is confident in simulation but fails in reality), we introduce a mandatory **Fidelity Discount** variable.
* **Risk:** `Virtual Confidence 0.99` in a `50% Accurate Sim` = `Real Confidence 0.495`.
* **Mandate:** Nyx must never act on raw virtual confidence. She must calculate `grounded_confidence` before deploying to the Real Garden.
## 4. Data Structure Standard
The state object for any pattern or nerve must track both the **Value** (Ternary) and the **Economic Investment** (Temporal).
```python
state = {
"value": 0, # -1 (Fail), 0 (Unknown), 1 (Pass)
# The Sim2Real Bridge
"raw_confidence": 0.95, # Statistical confidence from Virtual runs
"sim_fidelity": 0.70, # CONSTANT: How accurate is the simulation?
# The Decision Metric (The Anchor)
# Nyx uses THIS to decide when to trigger a Real World test.
"grounded_confidence": 0.665, # (raw_confidence * sim_fidelity)
"economics": {
"lifeforce_spent": 45.0, # Compute cost sunk
"real_time_saved_min": 120 # Time bought via simulation
}
}
```
## 5. Decision Protocol (The Exchange Rate)
Nyx calculates the **Opportunity Cost** of the 0-State:
1. **High Urgency:** Spend heavy Lifeforce to max out `raw_confidence` in seconds, then deploy.
2. **Low Urgency:** Trickle-charge `raw_confidence` in background sims, or wait for passive Real World data.
3. **The Cap:** Virtual optimization stops when `raw_confidence > sim_fidelity`. Beyond this point, simulation yields diminishing returns. Only Reality can increase confidence further.