refactor(edit) add doDiff