From baa5f4e8cdad044abbf31e364b925c0d35db4241 Mon Sep 17 00:00:00 2001 From: Andrey Epifancev Date: Wed, 11 Nov 2026 21:14:18 +0400 Subject: [PATCH] =?UTF-8?q?docs(openspec):=20=D1=80=D0=B5=D1=88=D0=B5?= =?UTF-8?q?=D0=BD=D0=B8=D1=8F=20#19=E2=80=93#21=20=D0=BF=D0=BE=20=D0=B8?= =?UTF-8?q?=D1=82=D0=BE=D0=B3=D0=B0=D0=BC=20=D1=84=D0=B8=D0=BD=D0=B0=D0=BB?= =?UTF-8?q?=D1=8C=D0=BD=D0=BE=D0=B3=D0=BE=20=D1=80=D0=B5=D0=B2=D1=8C=D1=8E?= =?UTF-8?q?=20(AURORA-1896)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Opus 5.5 --- openspec/changes/aurora-1896-cell-formulas/design.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/openspec/changes/aurora-1896-cell-formulas/design.md b/openspec/changes/aurora-1896-cell-formulas/design.md index bba3599..d17a69c 100644 --- a/openspec/changes/aurora-1896-cell-formulas/design.md +++ b/openspec/changes/aurora-1896-cell-formulas/design.md @@ -185,3 +185,5 @@ AHR_LIMIT (`limit_template.id`) построчно не удаляется — | 17 | 2026-11-11 | Клиент API формул — методы `FormsSheetApi.getFormulas` и `ProjectsApi.getReportFormulas`, а не отдельные функции `getSheetFormulas`/`getProjectReportFormulas` (R-7); правки minor T6.1/T6.2 переданы исполнителю Task 7 (R-8) | Соответствие шаблону модулей `web/src/api` | Нет | | 18 | 2026-11-11 | Task 7: стор формул вынесен в чистый `utils/formulaStore.js` (подписка по ключу ячейки, токены против устаревших ответов, повтор WS-событий поверх GET); загрузка карты при каждой смене `isConnected` (один лишний GET при открытии); `fx` слева-снизу; проверка «выражение без =» не действует на текстовые колонки; удалены `clearLegacyFormulaKeys`, `resolveEditorState`, пропсы `tableId/cellId`; `options` проброшен и через `RealtimeTable.jsx` | Тестируемость и отсутствие перерисовки всей таблицы; согласуется с D7 | Низкая: визуальные детали и один лишний запрос; в браузере не проверено | | 19 | 2026-11-11 | Миграция переименована в `0060_cell_formula` (`down_revision = "0059"`), ветка перебазирована на `origin/test` f047031, где уже есть `0059_form4_standalone_project` (R-9; D9 исполнен) | Номер 0059 занят слитым PR | Нет | +| 20 | 2026-11-11 | По итогам финального ревью (opus): WS обнуляет присланные клиентом `formula`/`formula_meta` до проверки доступа (I-1); клиент убирает все пробельные символы перед отправкой, добавлен текст ошибки `invalid_formula:` (I-2); в SQL равенство по владельцу вместо `IS NOT DISTINCT FROM` и отказ на `Infinity` (M-1/M-2/M-3); спека для GET формул отчёта проекта приведена к коду — 400 «Отчёт не найден» как у PATCH (M-5, R-10) | Подделка `fx` через WS без доступа; несовпадение наборов символов; индексы | Низкая | +| 21 | 2026-11-11 | Миграция остаётся 0060 (R-9); PR #315 (AURORA-1879) тоже занимает 0060 — при слиянии #315 первым переименовать в 0061 (I-3 deferred человеку) | Порядок мержа решает человек | Два head Alembic, если слить оба без переименования |