Пределы и лимиты
Пределы, с которыми человек сталкивается сам: сколько приоритетов заводится, какой длины название, как далеко назад можно дописать день. Внутренних чисел — размеров пачек, таймаутов, задержек записи — здесь нет, они живут в коде.
Что видит пользователь
| Что | Предел | Откуда он взялся |
|---|---|---|
| Приоритетов | от 1 до 10, по умолчанию 7 | Десять — прежний размер палитры: цвет должен доставаться каждому. Палитра с тех пор выросла до шестнадцати, предел остался прежним. Один — минимум, при котором приложению есть что показывать |
| Приоритетов в архиве | последние 120 | Дальше архив перестаёт быть полезным списком |
| Название приоритета | 24 знака | Длиннее не помещается в строку списка |
| Навыков | 24 | Прежде — объём хранилища, а не вкус: при шестнадцати месяц не влезал в 4096 байт. Хранилища больше нет, и число держит теперь не схему, а экран: список, который не окинуть взглядом, перестаёт быть списком |
| Навыков в архиве | 48 | То же: предел экрана, а не хранилища |
| Название навыка | 24 знака | То же, что у приоритета |
| Стартовые часы навыка | от 0 до 100 000 | Верхняя граница — защита от опечатки, а не оценка человеческих возможностей |
| Цена одного клика | 15, 20, 25, 30, 45, 60 минут | Произвольное число превратило бы клик в ручной ввод времени |
| Лента пропущенных дней | 14 дней назад | Дальше уже не вспомнить, что было. Одна и та же лента у блоков и у отметок заряда |
| Глубина хранения | не ограничена | Предел в 13 месяцев жил ради прежнего хранилища и ушёл вместе с ним. См. «Данные и синхронизация» |
| Достижений | 75 | Фиксированный реестр |
| Наблюдений на экране | 3 | Больше трёх подряд читать перестают |
Пределы прежнего хранилища
Значение в Telegram CloudStorage не могло превышать 4096 байт, ключи читались порциями по 8, ожидание одного запроса — 4 секунды. Отсюда взялись нарезка истории по месяцам, двухсимвольные идентификаторы приоритетов и прежний потолок в двенадцать навыков. Записи туда больше нет; числа оставлены, потому что объясняют форму данных, которая переехала в журнал как есть. См. «Как переехали старые данные».
Пороги, ниже которых приложение молчит
Часть выводов нельзя делать на маленьких числах — они будут арифметически верными и бессмысленными. Приложение в таких случаях не показывает ничего, а не показывает уверенную глупость.
| Что молчит | Пока не набрано |
|---|---|
| Достижения группы «Баланс» | 20 блоков за окно |
| Наблюдение о концентрации | 20 блоков |
| Наблюдение «будни против выходных» | 5 будних и 2 выходных дня |
| Наблюдение о времени разряда | 5 дней с отметками |
| Наблюдение «неделя против прошлой» | 10 блоков в прошлой неделе |
| Разбор дня в статистике | ничего — пустой день так и подписан |
Палитра
Шестнадцать неоновых цветов, двумя рядами по восемь. Новый приоритет получает первый свободный, так что до предела цвета всегда хватает и повторов не бывает.
Первые десять — исходная палитра, ровно под максимум приоритетов. Шесть добавленных встают между ними по тону, а не рядом: лайм между жёлтым и зелёным, индиго между синим и фиолетовым. Порядок менять нельзя — цвет хранится номером, и перестановка перекрасила бы уже созданные списки.
Навыки берут цвета из той же палитры и по тому же правилу — первый свободный. Но навыков заводится больше, чем цветов: с семнадцатого свободных не остаётся, и цвет повторяется. Путаницы это не создаёт — в строке навыка рядом с полосой всегда стоит название.
Минимальная заливка
Приоритет с ненулевым временем всегда рисует полосу хотя бы в 4 % ширины. Иначе один блок на фоне лидера выглядел бы как ноль, и разница между «мало» и «ничего» пропала бы.
Рядом
Данные и синхронизация · Наблюдения · Лестница навыков · Настройки