# Prometeu Runtime — Architecture (Reset Invariants) This document captures the high-level invariants for the reset cycle. It is a stub and will evolve as we formalize the new ISA/VM specs. The goal is to define non-negotiable properties that guide refactors without forcing legacy compatibility. Core invariants --------------- - Stack-based VM with heap-allocated objects. - Garbage Collection happens at safepoints, primarily at `FRAME_SYNC`. - Closures are first-class (user functions). Syscalls are callable but not first-class values. - Coroutines are the only concurrency model. - No backward compatibility: old bytecode formats, shims, or legacy bridges are out of scope. Scope of this stage ------------------- - Establish tooling baselines (fmt, clippy, CI) and minimal smoke tests. - Avoid encoding legacy ISA semantics in tests; keep tests focused on build confidence. - Production code must remain free from test-only hooks; use dev-only utilities for determinism. Out of scope (for now) ---------------------- - Detailed ISA definition and instruction semantics beyond what is needed to compile and run smoke-level validations. - Performance tuning or GC algorithm selection.