Third parity slice of #35, plus a mobile fix.
- Close, reopen, labels, assignees, and milestone on the issue page, each dispatching the issue command the CLI runs
- The issue page gains the merge request page's aside to hold them; readers see no controls and a forged post is refused by the command
- Mobile: the tree listing lost its mode column in the redesign but kept the rule that hid that column on phones, so nothing was hidden and long commit subjects widened the entire page. The subject column now hides below 40rem, and listings scroll inside their own box so no future column can break the page again.
e2e drives label, assign, milestone, remove, close, and reopen through the browser and verifies each through the CLI.
Ref #35