Why this fires¶
TE754 rejects .lane() created directly inside a rendered for. An explicit lane owns mutable client lifecycle state, but a list iteration has no stable lexical identity when rows are inserted, removed, or reordered.
{for item in items {
let save = Todo::save.lane()
// error[TE754]: lane identity can move to another row
}}Fix it¶
Move the lane into a component island owned by one stable row and key that component at the call site. The key preserves the row owner; the island then creates exactly one lane for that owner.