Blind copy and paste without understanding oftentimes do not yield the expected results... As the above linked discussion explains, that route makes a "/discussion/123" available as "/d/123". Why did you expect it also makes a discussion available as "/thread/123"?

You should have put some brainwork in that. But hey, this is a help forum so here is the brainwork already done for you: that is the expression that you need ^thread/([\d]*)

The route is a regular expression where "\d" is for decimal numbers (which is the discussion id in this case)

Depending on where you want to change it, the solution might be ...

The route simply is a redirection from the (technically) false "thread" or "d" or whatever to the (in Vanilla terms) correct "discussion". Changing this real address is way more complicated and might not even be possible.

My approach would be to create a ThreadController that extends the DiscussionController and try to hook somewhere in the dispatcher to call the ThreatController which then needs to intercept the request and re-route calls to the DiscussionController, but I would expect numerous problems with that.