031 tap binding substitution

✓ Passing This code compiles and runs correctly.

Code

input.kz

Supporting Files

fs.kz

Actual

Opening file
TAP: Observed file open!
Closing file (auto-discharged)

Expected output

Opening file
TAP: Observed file open!
Closing file (auto-discharged)

Flows

flow ~tap click a branch to expand · @labels scroll to their anchor
tap (app/fs: open -> *)
flow ~open click a branch to expand · @labels scroll to their anchor
open (path: "test.txt")

Test Configuration

MUST_RUN