1) I think the extension should be able to manipulate the message in any way, not just append to it.

2) Do not append a line separator if one is already present.

3) At this level we might want the platform neutral line separator. We want that in the final commit message, so do not assume we know anything about how the dialog represents the message internally, My suspision is that extensions are likely to get this wrong if we require the use of the platform line separator.