Semi-implement promotion
Start check enforcement + tests