I would like to publish an add-on to AMO. I understand that, if no ID is provided, then a new random ID will automatically be assigned by AMO. Do I then need to update the manifest file with the ID provided for subsequent updates to AMO as well as to debug the add-on ?
Yes, you will need to add the ID to your add-on’s manifest.json for subsequent updates. There are only a small number of situations where an ID strictly required for local debugging, but it doesn’t really hurt to have it.
The only real caveat is that if both the released version of an add-on and the temporary version have the same add-on ID, you can’t use both of them simultaneously in the same Firefox profile. If you want to use both, it may be best to set up a separate profile for development purposes.
I guess it’s always best to have an ID in the form of an email address (even a fake one if we want to avoid spam). I got warnings when submitting an add-on without an extension ID, because I aws using certain APIs that required an ID.
As I recall the email-like form doesn’t require a TLD. For example, I might do something like awesome-extension@dotproto
to signal that it’s associated with me without making it an explicit email address.