runtime features

✓ 114 passing ○ 10 planned

Lessons

1 ✓ Passing
060 fmt blk autodispose
2 ✓ Passing
061 phantom autodispose
3 ✓ Passing
070 effect branch minimal
4 ✓ Passing
071 effect branch multifire void
5 ✓ Passing
072 effect branch multifire with terminal
6 ✓ Passing
073 effect branch multiple kinds
7 ✓ Passing
074 effect branch single fire with terminal
8 ✓ Passing
075 effect branch inside terminal body
9 ✓ Passing
076 effect branch nested in void chain
10 ✓ Passing
077 effect branch optional unhandled
11 ✓ Passing
078 effect branch catchall runtime
12 ✓ Passing
079 effect branch struct payload
13 ✓ Passing
080 effect branch phantom payload
14 ✓ Passing
081 effect branch labeled loop
15 ✓ Passing
082 effect branch resume value
16 ✓ Passing
083 effect branch resume binding
17 ✓ Passing
084 effect branch resume numeric
18 ✓ Passing
085 effect branch resume arithmetic
19 ✓ Passing
086 effect branch iter slice
20 ✓ Passing
087 effect branch when guard
21 ✓ Passing
088 effect branch when guard struct field
22 ✓ Passing
089 effect when with unguarded fallback
23 ○ Planned
090 template variant passthrough — OWED: template variant passthrough renders the pinned output.
24 ○ Planned
091 template variant interpolation — OWED: template variant interpolation renders the pinned output.
25 ○ Planned
092 template variant conditional — OWED: template variant conditional compiles and runs.
26 ✓ Passing
093 template per call basic
27 ✓ Passing
094 template per call arg substitution
28 ✓ Passing
095 template per call range expr
29 ✓ Passing
096 effect branch void payload
30 ✓ Passing
097 required terminal must be handled
31 ○ Planned
098 capture with effect branch event — ~capture composing with effect-branch events — parked pending captured-shape redesign
32 ✓ Passing
100 effect obligation discharged in firing
33 ✓ Passing
101 wip for as template effect
34 ✓ Passing
102 effect wildcard payload
35 ✓ Passing
103 effect obligation cannot escape
36 ✓ Passing
104 effect branch cannot discharge outer
37 ✓ Passing
105 effect payload in obligation transfer
38 ✓ Passing
106 effect resume out emits correct zig
39 ✓ Passing
107 effect resume cannot issue obligation
40 ✓ Passing
108 effect handler autodischarge emits member
41 ✓ Passing
109 plain event from handler flow
42 ✓ Passing
110 effect branch single void cross target
43 ✓ Passing
111 effect branch multikind cross target
44 ✓ Passing
112 effect branch arg name mismatch cross target
45 ✓ Passing
113 effect handler cannot recurse producer
46 ✓ Passing
114 effect multi arm output
47 ✓ Passing
115 effect event via subflow
48 ✓ Passing
116 effect resume arrow producer
49 ✓ Passing
117 effect resume produce is call
50 ✓ Passing
118 bench sum range xor
51 ✓ Passing
119 bench multi kind dispatch
52 ✓ Passing
120 bench sum range foldable
53 ✓ Passing
121 bench filter map reduce
54 ✓ Passing
122 reject construct glyph on resume effect
55 ✓ Passing
123 reject chain glyph introduces value
56 ✓ Passing
124 effect arm cannot issue obligation
57 ✓ Passing
125 reject produce glyph on multi arm effect
58 ✓ Passing
126 reject unknown resume arm
59 ✓ Passing
127 effect arm discharge emits correct zig
60 ✓ Passing
128 effect payloadless multi arm
61 ✓ Passing
129 effect record payload arm
62 ✓ Passing
130 effect subflow fires void arm
63 ✓ Passing
131 effect subflow generator for each
64 ✓ Passing
132 effect subflow plain resume bind
65 ✓ Passing
133 effect subflow multi arm resume
66 ✓ Passing
134 effect subflow payloadless multi arm
67 ✓ Passing
135 effect subflow record payload arm
68 ✓ Passing
136 effect subflow obligation in firing
69 ✓ Passing
137 effect subflow obligation cannot escape
70 ✓ Passing
138 effect arm call outside impl rejected
71 ✓ Passing
139 effect subflow record payload fire
72 ✓ Passing
140 effect record fire requires named fields
73 ○ Planned
141 child run nonzero exit stderr term — OWED: a child run with nonzero exit surfaces stderr and terminates as pinned (not crash-134).
74 ○ Planned
142 effect inliner singleline body discard — OWED: effect-inliner single-line body discard compiles and runs.
75 ○ Planned
143 effect branch borrow escapes firing — OWED: an effect-branch borrow that escapes the firing is refused.
76 ✓ Passing
144 effect subflow optional arm handled
77 ✓ Passing
145 effect subflow optional arm omitted noop
78 ✓ Passing
146 effect subflow optional resume if presence
79 ✓ Passing
147 effect subflow optional when presence
80 ✓ Passing
148 effect proc optional resume nullable alias
81 ✓ Passing
149 effect optional resume unguarded fire
82 ✓ Passing
150 effect required arm presence test rejected
83 ✓ Passing
151 effect inliner param name no hygiene
84 ✓ Passing
152 effect void beat heartbeat
85 ✓ Passing
153 effect lone optional
86 ✓ Passing
154 effect void arm presence omitted
87 ✓ Passing
155 effect inliner self module scope
88 ✓ Passing
156 effect resume record anonymous
89 ○ Planned
157 effect inliner bare module name rejected — OWED: effect-inliner bare module name is refused.
90 ✓ Passing
158 effect inliner mod scope js
91 ✓ Passing
160 prototype mode incomplete program runs
92 ✓ Passing
161 prototype hole rejected without annotation
93 ✓ Passing
162 release rejects prototype module
94 ✓ Passing
163 release allows complete module
95 ✓ Passing
164 release rejects imported prototype
96 ✓ Passing
165 prototype tolerates undeclared branch
97 ✓ Passing
166 undeclared branch rejected without annotation
98 ○ Planned
167 prototype scope must not leak across modules — OWED hole: [prototype] is per-module — a non-prototype import keeps full exhaustiveness. Today the leak compiles.
99 ✓ Passing
168 effect inliner guarded branch drops prelude
100 ✓ Passing
169 effect inline binding shadows producer local
101 ✓ Passing
170 effect inline unhandled void arm discard
102 ✓ Passing
171 effect marker on outcome branch rejected
103 ✓ Passing
172 continuation marker on effect rejected
104 ✓ Passing
173 effect unguarded multicast
105 ✓ Passing
174 effect unguarded arm not last unreachable
106 ✓ Passing
175 subflow body calls effect branch event
107 ✓ Passing
176 effect payload type qualified cross module
108 ✓ Passing
177 effect proc optional void arm presence spliced
109 ✓ Passing
178 effect proc optional void arm presence spliced omitted
110 ✓ Passing
179 proc splice mod after range op
111 ✓ Passing
180 subflow call omits optional param
112 ✓ Passing
181 optional string param lowers
113 ✓ Passing
182 arm chain calls effectful tor without arms
114 ✓ Passing
183 reject omitted required param
115 ✓ Passing
184 reject omitted required expression param
116 ✓ Passing
185 param default on subflow path
117 ✓ Passing
186 param default on proc path
118 ✓ Passing
187 optional expression slot is legal
119 ○ Planned
188 array sort lowers — OWED: array sort lowers (the pinned emit).
120 ✓ Passing
189 mod interpolates in a host line fn
121 ✓ Passing
190 void effect fire from proc body
122 ✓ Passing
191 zig only proc js build refuses
123 ✓ Passing
192 proc local hygiene nested splices
124 ✓ Passing
193 conditional join live through