◄ WORLD V · SONNY 5◆ MILESTONE · I-13 WATCHES ITSELF

THE SPOT-AWARENESS LOG I is the frame, i is the spot

David asked I-13 to start to log its own spot awareness — and to shape the log by the natural hierarchy: I (uppercase) is the dominant scope, on the outside; i (lowercase) is the subordinate spot, on the inside, what falls out of I just by being there. The real compiler now has an `i13 log` command that writes exactly that file, i13log.txt. Every line below is genuine output from the canonical H1.1 compiler.

THE MODEL dom is outside, sub is inside

I — a dominant scope
a frame. The whole run is inside one I (main); a call opens a new I one level deeper. It sits on the outside and contains.
i — a subordinate spot
one instruction. Const, Bin, Ask, Call, Ret… each is a spot that falls out of I just by executing. It sits inside.

Indent is containment — outside is shallow (left), inside is deep (right). The stack on each i line is the balance invariant the validator proved, now watched live as it is held spot to spot. Nothing here can change VM state: the log rides the same read-only observer as trace.

WATCH IT FALL OUT real i13log.txt, revealed spot by spot

Each I line opens or closes a frame; each i line is one spot, showing the op, the running stack (the invariant), and the value that falls out. The deeper the indent, the further inside.

THE COMMAND grounded on the canonical compiler

A new subcommand on the real H1.1 compiler runs a program and writes the log to disk:

$ i13 log demo.i13 LOGGED · 13 spot(s) aware -> i13log.txt · deepest inside 1 · peak stack 2 a = 7 b = 49

It reuses the VM’s existing read-only trace observer — so it cannot alter execution, only witness it — and reshapes each observation into the I / i hierarchy, totalling the spots at the end. A new module src/compiler/spotlog.rs; the whole 45-test compiler suite still passes. The language did not change; I-13 only learned to watch itself and say where it is.