When a question is migrated to another SO forum, why is the original retained with [migrated]
appended?
Why not migrate and remove?
Migrations are managed by the system, which we don't really have any control over.
According to this answer on Stack Exchange's Meta site, migrated questions are only kept as a "stub" for 30 days after migration and then automatically deleted:
The question is left as a stub, or pathway to the new site, for 30 days, after which it is automatically deleted. During this time, the stub question will be locked to preserve the post in its original state, preventing comments and votes. (Again, this deletion causes a reversal of all associated reputation on the origin site.) Note that the old link will continue to redirect to the new question even after that time.
When a post is migrated, the destination question will contain a notice saying that it was migrated and contain a link to the old (now stub) question's revision history. This will be publicly visible to <10k users even after the stub is deleted.
This notice is hidden 60 days after the question is migrated, though the entries still remain in the revision history.
There's quite a lot of emphasis on tracking revisions and the history of questions on Stack Exchange, so this was likely added to system's functions to aid in that.