The person assigned to complete a user story should be the person defining how many story points to assign to that particular user story.
This considers that the person doing the work is generally the SME (Subject Matter Expert) in the field, hence they would be better placed than anyone else to assess the complexity of a user story which of course translates into how many story points are assigned to it.
Some Agile Teams discuss as a team how many story points they will assign to a user story, but ultimately, the final say will generally come from the person doing the work. This doesn’t need to be overly complex or a lengthy discussion, remember, keep it simple, the Agile Way!
If you make a mistake, that’s ok, you can reflect on that in your Retrospective and improve on subsequent Sprints. Perfection tends to be an enemy of progress, in Agile, we focus on making progress and continuously and iteratively improving.
And remember, a story point is a measure of complexity. But regardless of how many story points or user stories you add to a Sprint, Sprint duration should remain constant. You may of course, at your discretion adjust Sprint duration if required and if that’s something you conclude in a Retrospective, but that shouldn’t be occurring regularly, and should occur at the beginning of the project if it happens. Avoid the temptation of changing Sprint duration regularly to accommodate for your lack of effective execution. Sprint duration should remain constant throughout the life cycle of the project. With the exemption mentioned above.