# Rumpk Core (L1)

**Language:** Nim  
**Purpose:** Architecture-agnostic kernel logic

## Module Index

| File | Purpose |
|------|---------|
| `kernel.nim` | Main Orchestrator (`kmain`) |
| `ion.nim` | ION Control Plane & Channel API |
| `fiber.nim` | Cooperative fiber abstraction |
| `watchdog.nim` | Autonomous Immune System (Healer) |
| `ring.nim` | Lock-free Sovereign ring buffers |
| `panicoverride.nim` | Freestanding panic handler |

## Architecture Independence

This folder contains **no architecture-specific code**. All platform-specific
details are handled by the HAL layer (`../hal/`).

Compile-time architecture selection uses Nim's `when defined()`:
```nim
when defined(amd64):
  const CONTEXT_SIZE = 56
elif defined(arm64):
  const CONTEXT_SIZE = 96
elif defined(riscv64):
  const CONTEXT_SIZE = 112
```

## Dependencies

- Imports `console_write`, `rumpk_halt` from HAL (Zig L0)
- Imports `cpu_switch_to` from arch-specific assembly
- Uses `mm:arc` memory management (no GC)

## Build

Built via `../build.sh [aarch64|x86_64|riscv64]`
