[dev]refactor life cycle