fix: comment updates and add a simple test for viewer.destroy