CD Projekt Red are no stranger to heavy topics in their games but they do draw lines from time to time. This resulted in Cyberpunk 2077 preventing players from attacking and killing children or any story-essential non-playable characters.
Cyberpunk 2077 deals with many violent themes and even the first gameplay footage we ever got showed the protagonist running into people literally ripped apart on a table just minutes into the video. This sparked the imagination of some people, one of whom asked CD Projekt Red directly about violent interactions with Night City.
CD Projekt Red's official response was that there are two main groups of people players will not be able to attack or kill - children and plot-essential NPCs.
The reasons for being unable to kill children are obvious - it would bring a hail of negative responses from the public. Then again, there are some instances where a lot of people tried and wanted to do so in other games, most notably Skyrim. It even spawned a mod that allowed players to deal with nuisances such as Braith and Dagny.
Killing story-essential NPCs could potentially prevent the plot from unfolding so there are restrictions here as well. It remains a mystery how many of these NPCs will be around and if the essential tag would be removed from them as the story progresses.
For example, the 48-minute gameplay demo makes it pretty clear Dex is critical to the storyline but he later turns on V, which probably means he outlived his "essentialness".
CD Projekt Red
CD Projekt Red mentioned that players will be able to be aggressive towards "most people [they] meet" other than those two groups. While not explicitly stated, the answer did hint there would be other NPCs we will not be able to attack or kill.