3a5b1d3347
Seven tasks: three new CheckError variants + code() + ctx() arms (Task 1); synth signature extended with mut_scope_stack threaded through ~19 recursive call sites in lib.rs plus the two re-synth sites in mono.rs:712/1337 (Task 2); Term::Var resolution prepended with innermost-first mut-scope lookup (Task 3); Term::Mut arm (Task 4) and Term::Assign arm (Task 5) replacing the iter mut.1 Internal stubs with real logic; five negative fixtures + driver (Task 6); positive verification of examples/mut.ail typechecking clean (Task 7). Four Boss decisions encoded: fixtures under examples/ with driver at crates/ailang-check/tests/ (convention wins over spec wording); mut_scope_stack as a synth parameter not an Env field (matches the locals/effects/subst threading convention); MutAssignOutOfScope's available list flattens all frames innermost-first; mono.rs:712/1337 the two re-synth sites that need the threading.