Java base code taken from https://github.com/emilybache/GildedRose-Refactoring-Kata. This repo has base code for other languages but no tests.
Clone the code and start at the first commit git checkout d6badd35141897654e57b1b2bf2790151448aa09
Add tests, hacking away improving the design.
Tests for Conjured requirement are disabled initially. When you are ready remove @Disabled annotation in test.
This refactoring was done along with Sandi Metz video. Only difference being, we use Java here and we choose not to touch Items class (one of the requirement constraint). This refactoring is left to good enough state, magic string could have certainly be converted to constants or enum. There could be more such small refactorings remaining.
If you are impressed with Sandi Metz and want to do another interesting OOP kata with her, checkout https://sandimetz.com/99bottles