katra3d 0.1.0

Katra3D: performance-first native Rust Windows gaming runtime for Linux. Behavioral compatibility without architectural inheritance.
Documentation
# Performance Budget (Katra3D §32)

Budgets are explicit and enforced by courts where possible.

| Item | Budget | Enforced by |
|---|---|---|
| Katra tracing overhead (production profiling) | < 1% of frame time | `profiler_overhead` court (hard bound < 5 µs/event in CI; target ≤ 500 ns/event optimized) |
| Hot Katra operation (emit) | no heap allocation per event | design (`CompactEvent` + `Vec::drain(..)`) + `raw_push_cost`/`convert_cost` tests |
| FFI boundary | coarse-grained, batched | ABI design (§22); no per-function chatter |
| Request graph metadata | bounded per node/edge (arena, no per-op allocation) | `katra-graph` arena design |
| KatraFlow prefetch | strict RAM + bandwidth budget | `FlowPolicy` gates (`max_speculative_bytes`, `max_outstanding`, `bandwidth_bps`) |
| Staging arenas | bounded capacity; lifetime-driven recycling | `StagingArena` + `OutOfBudget` errors |
| Trace file growth | record-bounded, schema-bounded | header + record framing |

## Measuring capture overhead

```sh
cargo run -p katra-prof-tool -- self-test
```

reports ns/event and events/sec with a null sink, including periodic drains.

## What "fast" means here

Katra3D optimizes by **removing whole operations** before micro-optimizing
what remains (§34):

* fewer transitions × fewer copies × fewer allocations × fewer locks ×
  fewer wakeups × fewer redundant translations × fewer command submissions
  × deeper batching × better cache reuse × better residency × better
  scheduling.

Rust is not the performance story; architecture is.