Rules and limits
The page collects in one place the rules the cabinet checks and reports by errors. For each rule it is stated where it applies.
Time tracking (tracks)
| Rule | Value | Where it applies |
|---|---|---|
| Age of the track start | The start is no older than 7 days. For roles with the “Can create tracks retroactively” permission there is no limit | My tracks, the Add track forms |
| Future time | The end of a track cannot be in the future | The same forms |
| Time order | The end is later than the start | The same forms |
| Time fields | Any two of three are enough: start, end, duration. The values must be consistent | The track form |
| Minimum duration | 1 minute | The track form |
| Maximum duration of one track | 24 hours (1440 minutes) | The track form and API |
| Description | Required, up to 2000 characters | The track form |
| Duration formats | 1.5 (hours), 1d 2h 30m, 90 (minutes) | The estimate and duration fields |
| Day norm | Above a day in the calendar a “battery” relative to 8 hours is shown | My tracks |
| Time zone | A track's day is counted in the employee's time zone. If not set, Asia/Bangkok is used | Reports and “My tracks” |
| Day of a track | A track belongs to the day on which it ended | The “Track hours” and “Time allocation” reports |
Task estimates and dates
| Rule | Value |
|---|---|
| Estimate storage unit | Minutes. A maximum of 600,000 minutes |
| A parent task's estimate | By default equal to the sum of subtask estimates (the “auto” label). A manual value is marked with a yellow pencil |
| Start and end dates | Calendar days. The time of day is not stored for a task's start and end |
| Subtask and release | A subtask always belongs to the parent's release |
| Assignee | Only a project team member. Disabled users cannot be chosen |
| Tags | Up to 50 tags per task, tag length up to 100 characters, duplicates are ignored |
“My work” slices
| Slice | Condition |
|---|---|
| Today | Today falls between the task's start and end |
| Week | The task runs during the current week (Monday to Sunday), but not today |
| No dates | Neither start nor end is set |
| Later | Other tasks with dates, including past deadlines |
Projects and releases
| Rule | Value |
|---|---|
| Project prefix | Uppercase Latin letters, digits, and a hyphen, up to 10 characters. Unique |
| Project release types | At least one type is required |
| Task types in releases | At least one type is required. They are copied into a new release |
| Required release fields | Project, name, start date, end date |
| Release gate “Planned → In development” | Assignee, estimate, target date |
| Deleting a release or project | Deletes nested tasks, subtasks, and hours. Requires confirmation |
| Project folder | A non-empty folder (with projects or subfolders) cannot be deleted |
Users
| Rule | Value |
|---|---|
| Username | From 2 to 64 characters: Latin letters without diacritics, digits, dot, underscore, hyphen. The “@” sign and spaces are not allowed |
| Must exactly match the email in Keycloak | |
| Deleting yourself | You cannot delete your own account |
| Assigning a role to a key | Only your own role or a role with lower priority |
Reports
| Rule | Value |
|---|---|
| Maximum period of the “Track hours” report | 366 days |
| Export | CSV and XLSX contain exactly what is shown on the screen with filters applied |
Resource plan
| Rule | Value |
|---|---|
| Overload | The sum of an employee's planned hours across all projects for a day is more than 8. Cells are outlined in red |
| Mass fill | Hours are set only on working days. Weekends, holidays, and shortened days get 0 |
| Underload on “Plan–fact” | The fact is below the plan by more than 20% |
| Overspend on “Plan–fact” | The fact is above the plan by more than 10% |
| The “Resource spend” target | 85–100% of the plan |
| Member priority | High, Medium, Low. It affects only display |
Notifications and integrations
| Rule | Value |
|---|---|
| Element pairing code | Valid for 15 minutes. Only encrypted rooms are accepted |
| Webhook | A publicly available HTTPS address. Private and local addresses are rejected. Request signature: the X-Assist-Signature header, HMAC-SHA256 of the body with the secret |
| Webhook secret | Shown once |
| API key expiry | Never, 30, 90, or 365 days |
| API key token | Shown once. A lost token cannot be recovered; the key is regenerated |
| API request limit | 180 requests per minute per address, 40 per minute for sign-in requests |
| Idempotency | For changing requests the Idempotency-Key header is recommended |
Field constructor
| Rule | Value |
|---|---|
| Field key | snake_case: starts with a letter, lowercase Latin letters, digits, and underscore, up to 63 characters |
| Label dictionary key | Lowercase segments separated by dots, each starting with a letter |
| Value history (Trackable) | Available for numeric and yes/no fields of a task, and for editable dates of tasks, releases, and projects |
| Deleting a field | Irreversibly deletes the column and data. Requires entering the field key |
Permissions and visibility
| Rule | Value |
|---|---|
| Menu | Built from the role's page permissions |
| Tabs | Built from the role's tab permissions |
| The “Team” mode on “My work” | Only the Admin and Manager roles |
| Board list | Permissions on the “Boards” collection |
| The “Hide final stages” filter | On by default. If a root task is completed, its whole tree is hidden |