API based App Distribution questions & dashboards

So we’re in the process of configuring a custom CRM system for a specific group of external users and the end goal is to distribute it. Some questions about post creation and version control have come up as well as locking down dashboards.

From the boss:

here’s a question we need to answer. If we configure dashboards as part of our CRM. When we deploy the app via the Monday distribution method, can the users reconfigure them to their liking?  If so, what the issues related to us pushing an update to them, later. I’m wondering since Dashboards are really just a “view” and not the underlying data there may not be much of an issue.

I can see a scenario where users will want something different and update their dashboard configuration. Question is when we push an update to the CRM, do we reset any changes they made?

I can see another scenario where they try to change their dashboards, but get confused and need our help.

Are there some published guidelines about app distribution?  What is/can be locked down and and what isn’t as well as related implications of versioning?

Yes, there’s a group of boards with lots of views, dashboards and widgets along with ultimately several other custom built automations, tools and whatnot.

If I’m getting the jist of the boss’ concerns it revolves around restricting editing on the dashboards that we build. If I lock the columns does that lock the dashboard widgets or does that also have to be done with the API?

How does all this work with future versions? The monday.com app will be integrated with an external app that has also been custom built so quite a bit of it needs to not change or the external app might break.

Which brings me to a question. We’ll have a live version for internal use, a live version for external use and another that is a draft for new changes and features, do those need to live in different workspaces and then how do I resolve new features both major and minor before pushing it all to live?

Any advice? This is honestly my first “real” development project and all the courses and resources I’ve read don’t go into step by step stuff (not even the API Developer course!). Any custom code will live on Heroku if that helps point me in the right direction for reading assignments!