runtime features

✓ 98 passing ✗ 7 failing ○ 1 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 ✓ Passing
090 template variant passthrough
24 ✓ Passing
091 template variant interpolation
25 ✓ Passing
092 template variant conditional
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 ✗ Failing
141 child run nonzero exit stderr term — output
74 ✗ Failing
142 effect inliner singleline body discard — backend-exec
75 ✗ Failing
143 effect branch borrow escapes firing — expected-error-missing
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 ✗ Failing
151 effect inliner param name no hygiene — backend-exec
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 ✗ Failing
157 effect inliner bare module name rejected — expected-error-missing
90 ✓ Passing
160 prototype mode incomplete program runs
91 ✓ Passing
161 prototype hole rejected without annotation
92 ✓ Passing
162 release rejects prototype module
93 ✓ Passing
163 release allows complete module
94 ✓ Passing
164 release rejects imported prototype
95 ✓ Passing
165 prototype tolerates undeclared branch
96 ✓ Passing
166 undeclared branch rejected without annotation
97 ✗ Failing
167 prototype scope must not leak across modules — must-error-passed
98 ✓ Passing
168 effect inliner guarded branch drops prelude
99 ✗ Failing
169 effect inline binding shadows producer local — output
100 ✓ Passing
170 effect inline unhandled void arm discard
101 ✓ Passing
171 effect marker on outcome branch rejected
102 ✓ Passing
172 continuation marker on effect rejected
103 ✓ Passing
173 effect unguarded multicast
104 ✓ Passing
174 effect unguarded arm not last unreachable
105 ✓ Passing
175 subflow body calls effect branch event
106 ✓ Passing
176 effect payload type qualified cross module