refactor: rename source_state -> source