User Action
An action is a user interaction with Klarity. Browsing, commenting, reviewing or validating elements are all actions.
As for the MVP the following actions have been identified :
| Action | Capablity Suffix | Description |
|---|---|---|
| Assign Role | _assignrole | Capability to assign role to user. ℹ️ For the MVP, the administrator default user has this capability by default over any project |
| Navigate | _navigate | Capability to navigate through the different pages of the dashboard. ℹ️ For the MVP, no page is considered to be locked as long as the user belong to the project he can sees everything. |
| Comment | _comment | Capability to leave a comment (Stage x Abstraction x Metric). ℹ️ For the MVP, user can comment any page a project he belongs to. |
| Propose | _propose | Capability to propose the validation or the rejection of an item (PCIV, MetricGroup or Metric). |
| Review | _review | Capability to approve or disapprove a proposal. |
| Decide | _decide | Capability to decide to approve or disapprove a proposal and engage the associated consequence (request a new version on the same stage or for the next one). |
| Force Decision | _forcedecision | Capability to force the validation or the rejection of the item, independantly of the validation/rejection rules. |
| Request | _request | Capability to request the production of a new version in Scoping or in Development stage |
Actions are declared within extensions
Content
The list of actions available within the different stages and items can be configurated see view/actions
For each action we have the following configuration :
JSON
{
"name": "project_propose", // CREATE_ISSUE | USER_VALIDATION
"type": "ref component", // component can be back and/or front for MVP
"api": "string", // front calls api directly, TBD
"scope": "string", // metadata associated with the button, the object to which the action applies
"config": {
- allowed_roles : User rôle that can trigger the action.
- tooltip : description of action behaviour
- display : text of the button
} // graphql scalar, no projection
}The ref component can for exemple implement the check of PCIV status to enable the button.
TODO : define in the core front the API for action and metric component.