# Stonks & ET stablecoins timeline # Stonks ## Action points ### Rough and incomplete turnarounds 1. Summer 2022: Started working on swapper with Mihail; sent the project to ice after 4-5 iterations and couple months spent (tech complexity was too darn high) 2. Spring 2023: Restarted tech speccing with Kate 3. Aug 2023: Roman joins to lead 4. Sept 2023: decided to go with Milkman 5. Oct 2023: no more DAI in Treasury to pay for ops expenses + can't use USDT because no ETs to get those to mulitsigs 6. Oct 2023: had a pivot to "no Milkman, 80% new code" solution after reviews 7. Oct 2023: Roman switched fully to stablecoins ETs 8. Nov 2023: Roman is back, coding 9. Jan 2024: No more any stables in Treasury, switching on StETH ETs to pay for ops expenses 10. Jan 2024: Another pivot due to high-level finding during ProSecCo review / blocking 11. March 2024: Deployment voted in; some UI/testflights are still pending #### Detailed and incomplete by other reasons things: * 22 August: [solution options doc](https://hackmd.io/T00OnDELRTuNIA2bCKtI7Q?view) * 29 August: call with Vic, no decision * 8 September: call with Vic, decided to go with milkman * 8 September - 27 September: spec & code drilling * 28 September: call with Eugene P, code & spec review (decided to not go with milkman) * 2 October: [redesign after call with Eugene P](https://miro.com/app/board/uXjVNfF_Ig8=/#tpicker-content) * 13 October: code draft review with Bogdan and Vic * 16 October: [new spec](https://hackmd.io/6fmMnLqoQcq3LqFYcIdMwQ) * 3 Nov: [new timeline](https://www.notion.so/scraps-swapper-stables-ET-timing-cebf085e876c4f7c848902e8c4513008) * 6-8 Nov, 20-25 Nov: code drilling * 27 Nov - 8 Dec: audit * 8 Dec - 4 Jan: prosecco review (high finding) * March 2024: deployed the thing in prod ### What could be better - still jammed on release comms - work with timelines hadn't been top-notch ### What went well - we have a thing in prod - we have passed internal review process fully ### What went bad - initial planning had been missed / misguided - goals changed more-than-once - goal wasn't defined clearly enough from the get-go (tokens list, chainlink) - had bunch of false-starts (three different timelines & pivoting twice) - workload estimates were quite off at some points - cut some corners not winning much (rushed the design to get in prod sooner) - integration tests should mirror "all the spec" ### Lessons learnt * Reusing code with "minimal changes" quite often takes 80% of writing it from the start * Optimistic approvals wreack things 50% of the time * External deps integrations are hard to estimate / grasp security considerations of * Even small change in security assumption or goal setting should lead to timeline re-evaluation * Doing new things / going into new domains takes more time than we anticipate * Have a pre-final mainnet testflight where possible ## ET stablecoins * 14 September: [solution options doc](https://hackmd.io/@rkolpakov/SyjDrlJy6/edit) * 26 September: [spec draft](https://hackmd.io/HjvUvUDgTkugC4WX1VKYUg) * 9 October: code review with Bogdan * 16-24 October: prosecco review from Eugene M (1/2) * 18 October - 30 October: audit * 25 October: [finalized deploy plan](https://www.notion.so/ET-stablecoins-deploy-plan-fae8f1e7f92b4092be879b00affe095a?d=b29f7b084d1e4f76a751b9aec9a786d0#4904a21176894a9fa5e239520f4b0be7) * 26 October: optimistic deploy * 30 October - 6 December: prosecco review from Eugene P (2/2)