incremental, working towards proper handling discard/commit in modal