# 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)