# EPF Cohort 6 - Week 2 Update As I delve further into building the validator client for Ream, I wanted to scope out the remaining issues required to build a minimum viable validator client that could be run on a devnet or testnet. Me and another fellow ([Mark](https://github.com/Patchoulis)), who is collaborating with me on the project, discussed the features we would like to support in our validator and got started on building the proposal for our project. ## Week 2 This week I focused on implementing the timing of block proposal and attestations as per the [validator flow](https://ethereum.github.io/beacon-APIs/validator-flow.md). > 2. Wait for new BeaconBlock for the assigned slot (either stream updates or poll) - Max wait: `SECONDS_PER_SLOT / 3` seconds into the assigned slot The validator flow requires us to wait for a new valid BeaconBlock or for 1/3rd of the slot to make an attestation. I worked on implementing this and will be making a PR shortly. I also worked on further adding the voluntary exit CLI command into the Validator CLI. This command, `ream validator exit`, allows a validator to start the process of the voluntary exit. As it takes a minimum of 5 epochs after initiating a voluntary exit for a validator to exit, it first initiates an exit using the Beacon API client and then polls for validator status till it has exited to confirm it's exit. I also worked on the proposal with Mark, where we scoped out everything required to build a mainnet-ready validator and additional features we would like to implement. ## Resources - [Validator Flow](https://ethereum.github.io/beacon-APIs/validator-flow.md) - [Voluntary Exits](https://www.coincashew.com/coins/overview-eth/guide-or-how-to-setup-a-validator-on-eth2-mainnet/part-iii-tips/voluntary-exiting-a-validator)