Starting Frame: 21.166666666666668
Ending Frame: 43.93333333333333
FPS : 30
Total Time: 0h 0m 22s 767ms
Timed using YouTube Frame Timer: https://slashinfty.github.io/yt-frame-timer/
Moved a bit differently than drint. Able to save 1 second of time. The first time I go to punch the boss I miss and I actually hit him with my 2nd punch, this is where small time save is possible. If you watch the part where I gather sunstone to shoot at the boss you'll notice I don't shoot immediately after activating the sunstone energy. This is because the boss is currently in the state where he can't be harmed and I would waste the attack. Although I timed this very well to when the boss becomes vulnerable, this timer can be better. Furthermore when the boss teleports across the stage he breaks sunstone lamps and sometimes by chance he'll break enough sunstone lamps for a super move to be ready without you having to get run into lamps yourself. I have a theory that if we're able to attack him that much sooner it might hit the boss. This would save a few more seconds this would actually mean the fight might be possible for sub 20 seconds. I'm not sure.
Fight isn't complete RNG. If you want to grind this fight out to see if you can get a better pattern then. After first cutscene immediately start running diagonal up/right. This will make the boss rush knack. If you time your punch right you can hit the boss without slow mo. Then grab the sunstone and the boss should rush knack again and you punch him. Then he telelports away. Depending on the teleport the boss can break enough lamps for a super move. Otherwise you must quickly go run into some lamps. You can shoot the boss with the projectile attack. After doing so just stand completely still. This will again make the boss rush you where you can get the last hit. This boss punishes you if you dash towards him. Also he likes to rush you if you stand still it's an easy way to manipulate the fight. Goodluck!