01must proveProposed | Activity types are readable with reader permissions, while their creation, changes, reordering and deletion require administrator permissions. no proof recorded yet | permission | api | test |
02must proveProposed | An activity type has an immutable configuration identifier derived from its name when omitted, using lowercase letters, digits and single underscores with a leading letter and excluding the reserved reorder address. origin: Andrew 2026-10-10 (configuration ids), recorded at services-crm:modules/tasks/db/task-configurations.ts no proof recorded yet | validation | service, database | test |
03must proveProposed | An activity type requires a workspace-unique name of at most 100 characters and permits a description of at most 1,000 characters. no proof recorded yet | validation | service, database | test |
04must proveProposed | Subject, direction, duration, outcome, end time and attendees each have a hidden, optional or required field mode. no proof recorded yet | validation | database | test |
05must proveProposed | Activity types choose Completed or Scheduled as the initial status, fixed icon and colour choices, an optional default duration of one to 1,440 minutes, and an optional follow-up interval of one to 365 days. no proof recorded yet | validation | service, database | test |
06must proveProposed | An activity type owns an ordered list of up to 50 uniquely named outcomes; supplying a list replaces it, while omitting the list preserves it. no proof recorded yet | policy | service, database | test |
07must proveProposed | An outcome referenced by an activity and an activity type in use cannot be deleted; the refusal directs staff to deactivate instead. no proof recorded yet | invariant | service, database | test |
08must proveProposed | Deactivation removes a type or outcome from new selections while retaining it on existing activities. no proof recorded yet | lifecycle | service | test |
09must proveProposed | Reordering requires a complete list without duplicate or foreign-workspace entries and either moves all types or moves none. no proof recorded yet | validation | service | test |
10must proveProposed | A new activity type without an explicit position is appended to the list. no proof recorded yet | calculation | service | test |
11must proveConfirmed | An activity type edit uses the version read and is refused when stale or locked against updates. no proof recorded yet | validation | api, service | test |
12must proveProposed | The configuration screen accepts default durations from five to 480 minutes and follow-up intervals from one to 90 days, narrower than service limits. no proof recorded yet | validation | console | observed |