Here's a quick rundown of what I've done with edit forms on this install, which describes a couple of use cases.
I have three edit forms for Maniphest:
- "New Bug Report"
- "New Feature Request"
- "New Advanced Task"
The "Advanced Task" form is the default form with all the fields available. This is only visible to members of Community. Normal users can not access this form, and can only use one of the other forms to submit tasks.
The other two forms are very similar:
- They have a header pointing at the relevant documentation.
- They hide most of the fields on the form.
- They hide "Projects", and provide a default "Feature Request" or "Bug Report" value. The user can't edit these, and new tasks always have the corresponding project.
- They hide "Edit Policy", and provide a default of "Members of Community + Task Author". The user can't edit this policy.
Once users get through task creation, ApplicationEditor isn't fully integrated so users can edit all the fields after submitting a task.
A particular use case is creating a "Report Security Issue" form. One version of this might look like:
- Default "Visible To" to "Security Team + Subscribers" and lock it.
- Default "Editable By" to "Security Team + Task Author" or similar.
- Default "Projects" to "Security" and lock it.
- Hide most of the other fields if you want.
- Optionally, provide instructions or links to documentation, etc.