545 Commits

Author SHA1 Message Date
Andrey Epifancev
f84cbcb52c Архив OpenSpec: web-bugfixes (#124)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-26 01:55:19 +04:00
aep
9b98420d76 Merge pull request 'Пакет веб-багов: карточка, лента, вики-разметка, состояние модулей (#124)' (#125) from feat/124-web-bugs into main 2026-10-26 00:55:01 +03:00
Andrey Epifancev
fa1ceb4868 fix(web): «!» в тексте ленты не пропадают — без списка вложений !имя! только для имени файла (#124, N-1, R-20)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-26 01:48:36 +04:00
Andrey Epifancev
6327c7cf57 Спека: рулинг R-19 (#124)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-26 01:44:44 +04:00
Andrey Epifancev
41f290c0e3 test(web): правки по триажу финального ревью (T5.1, T5.2, T7.1, T8.1, M-4, M-5)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-26 01:32:16 +04:00
Andrey Epifancev
fbc14f6366 fix(web): вложения в ленте именем (I-1), один шаг при двойном «Назад» (M-1), разбор таблиц и {code} (T1.1, T1.2)
wikiPlain включает WikiOptions.anyAttachment: !имя! и [^имя] дают вложение без списка; карточка флаг не передаёт.
onBack защищён closingKey; в таблице [ парна, только если ближайшая скобка — ]; {code} из пробелов в одной строке не даёт pre.
Тесты: events, plain, parse, IssueModal (двойной «Назад», «Назад» при ошибке загрузки — T3.2).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-26 01:32:16 +04:00
Andrey Epifancev
a3e018b12d Спека: решение 2 дополнено сбросом в abortClose (#124)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-26 01:29:15 +04:00
Andrey Epifancev
d805c67f9f Спека: рулинги R-16…R-18 (#124)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-26 01:28:59 +04:00
Andrey Epifancev
1fc1a326a9 Доска, проекты, поиск: два переключения не теряются, спринт эпика, «Повторить», фокус после «Очистить» (#124, #35 T4.1, #64 T9.1, M-6, #68 T3.3)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-26 01:19:20 +04:00
Andrey Epifancev
43c1f830df Вложения: без прежней ошибки после повтора, 401 — экран входа, порядок хаба (#124, #86 T6.2, T6.3, M-4)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-26 01:09:13 +04:00
Andrey Epifancev
9966722820 Список задач: запрос после настроек, без мелькания «задач нет» (#124, #60 M-3)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-26 01:06:48 +04:00
Andrey Epifancev
231ca2f199 Состояние модулей: ответ опроса прежнего проекта не возвращает событие (#124, #116)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-26 01:03:32 +04:00
Andrey Epifancev
b5b5b33954 Спека: рулинг R-15 (#124)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-26 01:00:52 +04:00
Andrey Epifancev
154cc88913 Окно карточки: поиск не закрывает окно, повторное закрытие игнорируется, фокус подтверждения ухода (#124, #42 M-1, M-2, M-4)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-26 00:59:03 +04:00
Andrey Epifancev
7b297fef23 Карточка: связь вне зеркала ведёт в Jira, «Назад» у окна 404, метки видов работ отдельно, пустое описание (#124, #42 M-5, #103, #56 M-4)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-26 00:54:25 +04:00
Andrey Epifancev
943763c774 Лента: текст комментария без вики-разметки Jira (#124, #103 С6)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-25 22:58:07 +04:00
Andrey Epifancev
5c3fd4cc4d Вики-разметка: \#, макросы с параметрами, [~логин|текст], пробелы после {code}, непарная [ в таблице (#124, #56 M-5, M-6)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-25 22:56:29 +04:00
Andrey Epifancev
ba1db6568c План: пакет веб-багов web-bugfixes (#124), задачи 1–8
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-25 22:52:35 +04:00
Andrey Epifancev
4441e77a58 Спека: пакет веб-багов web-bugfixes (#124)
Окно карточки, строка состояния, лента без разметки, метки видов работ,
вики-разметка, список задач ждёт настройки, доска, проекты, вложения.
Решения агента R-1…R-14 — в design.md.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-25 22:49:27 +04:00
aep
1405ccdaea Merge pull request 'Архив OpenSpec: sp-estimation-board (#113)' (#121) from chore/113-archive-sp-estimation-board into main 2026-10-25 21:29:58 +03:00
Andrey Epifancev
8c606ff8a0 Архив OpenSpec: sp-estimation-board (#113)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-25 22:29:43 +04:00
aep
69bc4492e8 Merge pull request 'Оценка через доску: board_id в ensure_fields со story_points (#113)' (#120) from feat/113-sp-estimation-board into main 2026-10-25 21:29:05 +03:00
Andrey Epifancev
dc9792cf34 Спека: зазор и сверка поля оценки доски в агенте v16 (#113, I-1, I-2)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-25 22:28:23 +04:00
aep
1095d41bd5 Merge pull request 'Веб: «Сбросить фильтры» на месте, без «Скрыть выполненные» на «Спринте» (#118)' (#119) from feat/118-board-filters into main 2026-10-25 21:17:58 +03:00
Andrey Epifancev
29b3f95404 fix(web): «Сбросить фильтры» всегда на месте, без «Скрыть выполненные» на «Спринте» (#118)
Кнопка сброса больше не появляется и не исчезает — неактивна, пока фильтров нет,
панель не сдвигается. На «Спринте» выполненное скрывают колонкой «Выполнено»:
флажка нет, сохранённое hideDone не применяется (как на «Kanban»).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-25 22:17:32 +04:00
Andrey Epifancev
01c41d5767 MCP: board_id в ensure_fields со story_points ставит хаб (#113)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-25 22:07:56 +04:00
Andrey Epifancev
fd26fb36e5 Доска проекта в ensure_fields со story_points (#113)
Хаб дописывает board_id доски проекта задачи в ensure_fields со story_points — как в
ensure_sprint; свои тексты 422 для канбана и задачи вне проектов; повтор берёт доску заново.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-25 22:07:56 +04:00
Andrey Epifancev
49ee8c11b8 План: оценка через доску (#113)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-25 22:07:56 +04:00
Andrey Epifancev
c00b0bd4b2 Спека sp-estimation-board: оценка через доску (#113)
ensure_fields со story_points получает board_id доски проекта задачи; агент v16 пишет
оценку через /rest/agile/1.0/issue/{key}/estimation — поле не на экране редактирования.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-25 22:07:56 +04:00
aep
61704893e9 Merge pull request 'Архив OpenSpec: agile-web-polish (#112)' (#115) from chore/112-archive-agile-web-polish into main 2026-10-25 20:55:02 +03:00
Andrey Epifancev
82549737cc chore: архив OpenSpec agile-web-polish (#112)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-25 21:54:43 +04:00
aep
e84f7b1b58 Merge pull request 'Веб: доработки «Бэклога» и «Спринта» по образцу Jira (#112)' (#114) from feat/112-agile-web-polish into main 2026-10-25 20:54:16 +03:00
Andrey Epifancev
c7186b9f30 openspec: рулинги R-19…R-21 и правка спеки (#112)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-25 21:39:38 +04:00
Andrey Epifancev
91f3f5a21e docs: абзац про agile/ в ARCHITECTURE.md уточнён (#112, T9.1, T9.2)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-25 21:38:46 +04:00
Andrey Epifancev
65e0945476 fix(web): значки типов разных цветов, панель фильтров в одну строку, правки minor финального ревью (#112, I-1, I-2, T5.1, M-1..M-4, M-7, M-8, T7.2)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-25 21:38:46 +04:00
Andrey Epifancev
cf342448b8 docs: доработки экранов доски — рулинги и карта (#112)
ARCHITECTURE.md: новые файлы каталога agile/ (filters, agilePref, useAgileView,
AgileToolbar, EpicsPanel, SprintPicker, ColumnsMenu), ключ localStorage
sdlc-hub-agile и состав фильтров, свёртки, панели эпиков, выбора спринтов
и скрытия колонок на «Бэклог», «Спринт», «Kanban» (только просмотр).

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-25 21:14:15 +04:00
Andrey Epifancev
7a676d1fb1 fix(web): доска на узком окне — нижний край в окне; правки тестов Task 8 (#112, T8.1–T8.6)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-25 21:12:09 +04:00
Andrey Epifancev
f21dea39b6 test(web): e2e широкой доски и фильтров, сид WIDE_E2E, тесты AgileGate (#112, T9.4, T12.2–T12.4)
Также: шеврон свёртки секции «Бэклог» — свёрнуто вниз, развёрнуто вверх (T4.5).

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-25 21:04:57 +04:00
Andrey Epifancev
52645c74da openspec: рулинги R-17, R-18 (#112)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-25 20:51:15 +04:00
Andrey Epifancev
2cd69bd4e8 fix(web): колонки доски — одна высота, прокрутка в окне, скрытие колонок (#112, T10.3)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-25 20:50:49 +04:00
Andrey Epifancev
f0bdb2bc63 test(web): сид WIDE_E2E — широкая scrum-доска (#112)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-25 20:50:49 +04:00
Andrey Epifancev
d4d578e10e fix(web): «Спринт» — эпики остаются карточками, подпись пустого выбора, числа колонок в тесте (#112)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-25 20:44:06 +04:00
Andrey Epifancev
dea051e7f9 feat(web): «Спринт» — выбор активных и будущих спринтов, фильтры (#112)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-25 20:41:21 +04:00
Andrey Epifancev
f4c3bd50a5 feat(web): панель «Эпики» на «Бэклоге» (#112)
Панель эпиков слева (240px, на узком окне скрыта, вместо неё выбор «Эпик»),
кнопка «Эпики» в панели фильтров, фильтр эпика в том числе для прошлых спринтов.
Заодно T4.1 (регэксп секции), T4.6 (хелпер visible), T4.7 (проверка кнопок).

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-25 20:35:35 +04:00
Andrey Epifancev
b0f8e61a6c openspec: рулинг R-16 (#112)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-25 20:32:39 +04:00
Andrey Epifancev
eae6ec317f feat(web): «Бэклог» — фильтры, свёртка секций, эпики не строками (#112)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-25 20:30:51 +04:00
Andrey Epifancev
e79b073180 fix(web): тесты смены метки и сброса, hideDone без флажка (#112)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-25 20:27:58 +04:00
Andrey Epifancev
3ba8f06637 feat(web): панель фильтров экранов доски (#112)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-25 20:26:01 +04:00
Andrey Epifancev
7fbc6bd574 fix(web): выбор спринтов при недопустимых id и восстановление испорченного хранилища (#112)
parseSprintIds: при отсутствии допустимых id — все активные (T2.1); токены
только десятичные (T2.3). saveView перезаписывает испорченный JSON (T2.2).

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-25 20:23:42 +04:00
Andrey Epifancev
a29df27da9 feat(web): модель фильтров экранов доски и их запоминание (#112)
Чистая модель без UI: фильтры (q, исполнитель, эпик, скрыть выполненные),
списки опций, сводка эпиков, объединение задач спринтов, выбор спринтов
и разбор параметра sprint. Вид страниц хранится в localStorage под ключом
sdlc-hub-agile по метке проекта и странице; испорченное хранилище и ошибки
доступа дают значения по умолчанию.

Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
2026-10-25 20:21:39 +04:00