Hopefully this doesn't sound overly critical, but, these sound like cultural issues. I say that only because it was ingrained in me that if what you're doing is not directly making/leading to net positive money for the company, there is no excuse that can mitigate that fact and they will fire you or lay you off quickly (as I saw happen to a few good engineers at a couple companies).
(in case this is helpful for anyone else) W.r.t.,
- local issues stopping work: I've done everything in my power to make sure nothing can affect this; to the point of buying extra batteries for my laptop, buying a hotspot in case internet goes down, making sure that I have a go bag always ready in case the area I'm working in does not have the infrastructure I need (electricity/internet/health hazards), and duplicating my equipment at my parent's place in case I need to work from there.
- relaying information to the manager: I was taught that keeping my manager happy is nearly equal in importance to making the company money; as long as they're the type to want to be in frequent contact (I've had one that didn't seem to want that), I basically only give them good news (as quickly as I can) or substantial roadblocks that will take me an absurd amount of time to clear on my own.
- avoiding regular communication: I can't make the company money if I'm not functioning well as a team member.
- discipline: Yeah this one was hard because it's not immediately apparent how much a distraction can eat away at your day or how those distractions add up. I seem to learn new ways every week to keep distractions at bay; e.g. leaving my phone "hidden" in a relatively inaccessible place in another room, disabling facebook, blocking my access to news sites, and making sure any cleaning is done in my off hours.