E-CHANNEL-INSIDE-PROGRAM — retired
Retired in v0.3 Wave 1. The
<channel>
placement direction was reversed; the canonical
error code is now
E-CHANNEL-OUTSIDE-PROGRAM
.
What changed (2026-05-12, v0.3 Wave 1)
Pre-v0.3: channels lived at file top level, sibling
of
<program>.
A channel nested inside
<program>
fired E-CHANNEL-INSIDE-PROGRAM.
v0.3 onward (per S87 Insight 30): channels are
application-scoped, so the canonical placement is
INSIDE
<program>
(sibling of
<page>).
A channel at file top level when
<program>
is present is the new violation —
E-CHANNEL-OUTSIDE-PROGRAM. Pure channel-only module
files (no
<program>)
may still declare a
<channel>
at file top.
If you're hitting this code in a current compiler, you're
either on a stale release or your source predates v0.3.
Run
scrml migrate
on the source — the migration tooling rewrites the
placement automatically.