Making a defect reporting app, it seems like citizen problem reporter is the way forward.
Since having a field worker account for everyone would be expensive can you make a two tier system.
Eg Tier1 anyone/ general public can log a limited type of issues, limited visibility to what they can see eg dont see all the logged issues. Anything they report should be verified or reviewed before going into the system.
Tier2 users who do have a fieldworker account can login. They see many more options of defects to log, can see all previous logged issues and map entries and their status. Their entries go straight in and dont require verification etc.
Maybe they can also action the entries too if they have fixed something?