Thanks for posting your question to this forum.
When a developer checks changes into the Development branch, a changeset is created and all of the changed files that are checked in at the same time are associated with this changeset. The developer should ALWAYS enter check-in comments to describe
the change, as you note above.
Later when the Development branch is merged (RI) back to the Main branch, another changeset will be created on the Main branch. When these changes are checked, the person in charge of doing the merge should also enter a check-in comment.
You do not lose the check-in comments done earlier against the development branch. But you would need (in TFS 2008) to view changes against that branch to see the changeset history and associated check-in comments.
As for what comments Fred enters on a merge changeset.. it probably is not important to enter more than "weekly merge". The changeset will have a date and time stamp. If you do a regular merge, vs. a special request merge the comments might
indicate that. You might for example merge Main to Dev nightly, while you would wait for a milestone in Dev to pass quality gates before merging Dev back to Main. Here you might enter the milestone description in the change comment.
VS ALM Ranger