1010 Commits

Author SHA1 Message Date
Andrey Epifancev
baa5f4e8cd docs(openspec): решения #19–#21 по итогам финального ревью (AURORA-1896)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-11 21:14:18 +04:00
Andrey Epifancev
54e60dcf8e test(formulas): GET formulas без доступа, спека приведена к коду (AURORA-1896, M-5)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-11 21:06:53 +04:00
Andrey Epifancev
e107fa418d perf(formulas): равенство по владельцу вместо IS NOT DISTINCT FROM, отказ на Infinity (AURORA-1896, M-1, M-2, M-3)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-11 21:06:53 +04:00
Andrey Epifancev
e569d18624 fix(formulas): нормализация пробелов выражения перед отправкой и текст ошибки invalid_formula (AURORA-1896, I-2)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-11 21:06:53 +04:00
Andrey Epifancev
ecef6eb247 fix(formulas): рассылка WS не несёт формулу клиента при отказе в доступе (AURORA-1896, I-1)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-11 21:06:53 +04:00
Andrey Epifancev
683e12c52f chore(formulas): номер миграции 0060 после rebase на test (AURORA-1896)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-11 20:10:55 +04:00
Andrey Epifancev
18573d6dc4 test(formulas): правки WS-тестов T5.1–T5.3 (AURORA-1896)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-11 20:07:42 +04:00
Andrey Epifancev
aebaaa4ab7 docs(openspec): решение контроллера #18 (AURORA-1896)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-11 20:07:42 +04:00
Andrey Epifancev
3bee5e795f feat(formulas): маркер fx у ячейки, формула с сервера в редакторе, без localStorage (AURORA-1896)
- RealtimeContext: стор карты формул (formulaStore), загрузка при открытии листа и
  переподключении (формы и отчёты проектов), обновление на каждом cell_updated,
  защита от устаревших ответов при смене листа; useCellFormula; updateCell(..., { formula })
- Cell: маркер fx только при актуальной формуле, подсказка с единицей при displayFactor != 1
- EditCell: начальный текст «=выражение», выражение уходит в data.formula, без localStorage;
  ввод «100+50» без «=» не отправляется (тост «Формула начинается с =»)
- удалены resolveEditorState и clearLegacyFormulaKeys; T6.1/T6.2 в cellFormulaUtils

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-11 20:07:42 +04:00
Andrey Epifancev
b93e22080e docs(openspec): решение контроллера #17 (AURORA-1896)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-11 20:07:04 +04:00
Andrey Epifancev
6ba677cd39 feat(formulas): утилиты карты формул и API чтения формул (AURORA-1896)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-11 20:07:04 +04:00
Andrey Epifancev
af687a7e22 feat(formulas): formula и formula_meta в cell_updated по WebSocket (AURORA-1896)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-11 20:07:04 +04:00
Andrey Epifancev
c1e21e7cd6 docs(openspec): решение контроллера #16 (AURORA-1896)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-11 20:07:04 +04:00
Andrey Epifancev
84dbaaf361 test(formulas): правки minor-находок T1.1–T4.2 (AURORA-1896)
T1.1 каскад hard_delete проверяется по AHR_LIMIT; T1.2 тесты триггеров
rent/utility/security/fixed_asset_report; T1.3 NaN в set_cell_formulas
отклоняется (0059 правится на месте); T3.1 unit-кейсы asyncpg-обёртки;
T3.2 предусловие SAVEPOINT-теста и комментарий к 403; T4.1 проверка
незаписи значения при 422 отчёта проекта; T4.2 убрана мёртвая логика.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-11 20:07:04 +04:00
Andrey Epifancev
17e7d46859 docs(openspec): решение контроллера #15 (AURORA-1896)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-11 20:07:04 +04:00
Andrey Epifancev
187988bd76 feat(formulas): формулы в отчётах проектов — запись и GET formulas (AURORA-1896)
PATCH cell/cells отчёта проекта пишут формулу в той же транзакции, GET
.../report/{year}/{report_type}/formulas возвращает формулы отчёта.
Тесты: roundtrip, снятие формулы, каскад удаления проекта, триггер
rf_project_report_line (del_form3_line и прямой DELETE).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-11 20:07:04 +04:00
Andrey Epifancev
f707130ff0 docs(openspec): решение контроллера #14 (AURORA-1896)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-11 20:07:04 +04:00
Andrey Epifancev
5bc6a755bc feat(formulas): запись формулы при правке ячейки формы и GET formulas листа (AURORA-1896)
SheetService.update_cell_with_formula/update_cells пишут формулу после значения в одной
транзакции, GET /form/{id}/sheet/{sheet}/formulas. Ошибки БД с обёрткой asyncpg
"<class ...>: invalid_formula: ..." теперь корректно мапятся в 422.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-11 20:07:04 +04:00
Andrey Epifancev
2bf1aba536 docs(openspec): решение контроллера #13 (AURORA-1896)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-11 20:07:04 +04:00
Andrey Epifancev
1d6d95db9f feat(formulas): CellFormulaRepository, invalid_formula → 422, схемы (AURORA-1896)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-11 20:07:04 +04:00
Andrey Epifancev
725b994afa docs(openspec): решения контроллера #10–#12 (AURORA-1896)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-11 20:07:04 +04:00
Andrey Epifancev
a29207f814 feat(formulas): таблица cell_formula, set/v_cell_formulas, триггеры очистки, миграция 0059 (AURORA-1896)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-11 20:07:04 +04:00
Andrey Epifancev
1187ac2f8f docs(plan): план реализации AURORA-1896 — формулы ячеек на сервере
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-11 20:07:04 +04:00
Andrey Epifancev
8e294e2899 docs(openspec): change aurora-1896-cell-formulas — формулы ячеек на сервере (AURORA-1896)
proposal, дельта спеки cell-formula, design.md со сверкой дизайна Jira
с кодом test 5a91f35 и разделом решений без обсуждения.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-11 20:07:04 +04:00
Andrey Epifancev
f0470313c1 openspec: архив aurora-1839-cell-memo и aurora-1984-pd-standalone-projects
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-11 19:33:14 +04:00
aep
4dc111a0ce Merge pull request 'AURORA-1984: проекты ПД без программы (+1979, 1980, 1989)' (#306) from feat/305-aurora-1984-pd-standalone-projects into test 2026-11-11 18:12:22 +03:00
aep
90e4084e7d Merge pull request 'AURORA-1978: удаление пустой программы и проекта на форме 4' (#304) from feat/303-aurora-1978-pd-delete-program-project into test 2026-11-11 18:12:05 +03:00
aep
d702e9d5aa Merge pull request 'AURORA-1839: мемоизация ячеек таблицы листа' (#240) from feat/234-aurora-1839-cell-memo into test 2026-11-11 18:11:32 +03:00
aep
f4f9c325e2 Merge pull request 'AURORA-1882: явная метка «На удаление» у задач в списке и на странице задачи' (#314) from feat/313-aurora-1882-deletion-mark-chip into test 2026-11-11 18:11:09 +03:00
13ab6fcdbc Merge pull request 'добавление крестиков у поиска по столбцам' (#321) from aourora-2023_2 into test
Reviewed-on: #321
2026-11-11 17:22:39 +03:00
PotapovaA
32e697193e добавление крестиков у поиска по столбцам 2026-11-11 17:12:59 +03:00
Andrey Epifancev
21b4e93008 feat(tasks): чип «На удаление» в списке и на странице задачи, «Пользователь удалён» (AURORA-1882)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-11 16:36:18 +04:00
Andrey Epifancev
f8d14194f9 feat(tasks): formatDeletionHint — текст подсказки пометки на удаление (AURORA-1882)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-11 16:35:17 +04:00
aep
5a91f35ab2 Merge pull request 'AURORA-1902: возврат тестирования — цветные заливки на листах Операц/АХР/КВ выгрузки Сметы РФ' (#310) from feat/309-aurora-1902-export-colors into test 2026-11-11 15:16:32 +03:00
aep
dd40b9f341 Merge pull request 'AURORA-1899: возврат тестирования — разрядность не трогает неденежные и текстовые колонки' (#308) from feat/285-aurora-1899-non-money-fix into test 2026-11-11 15:15:41 +03:00
Andrey Epifancev
3b5f6025aa fix(export): заливки колонок на листах Операц/АХР/КВ Сметы РФ (AURORA-1902)
Возврат тестирования 10.11: в выгрузке формы 2 не было цветных заливок.
XlsxDepthSheetWriter._set_palette искал цвет только по пути ключей дерева
колонок (section_code, god.….q2), а FORM2_COLORS ключуется путём данных
(header.section_code, booking.y2026.q2) — совпадений 0 из 162. Теперь, если
по пути дерева цвета нет, он берётся по плоскому ключу данных колонки.
Форма 1 не меняется (её цвета находятся по пути дерева, как раньше).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-11 15:40:03 +04:00
Andrey Epifancev
44e6afc774 fix(table): разрядность не трогает неденежные и текстовые колонки (AURORA-1899)
Возврат тестирования 11.11:
- tableColumns считал множитель по MRT column, у которого нет accessorKey, —
  getMoneyUnit видел пустой ключ и считал денежной любую колонку (НДС, курс,
  сумма в валюте, площадь масштабировались). getMoneyUnit теперь берёт
  column.columnDef ?? column.
- текстовые колонки (комментарии, обоснования, реквизиты договоров, коды)
  попадали в правило «иначе thousand»: «123» в комментарии делилось, а при
  «млн»/«млрд» редактор обоснования закрывался как денежный. Добавлен
  isTextColumn: такие колонки не масштабируются и не форматируются как числа
  (внутренний заказ 10123 и комментарий «123» показываются как есть).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-11 15:34:08 +04:00
d5eb70e004 Merge pull request 'крестик для очистки строки поиска' (#307) from aurora-2023 into test
Reviewed-on: #307
2026-11-09 14:15:18 +03:00
PotapovaA
a2b132e9dc крестик для очистки строки поиска 2026-11-09 14:13:23 +03:00
Andrey Epifancev
e5660add7a AURORA-1984: правки по итоговому ревью (M-5, M-6, M-7)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-08 23:16:20 +04:00
Andrey Epifancev
77db9cb02f AURORA-1984: рулинги R-8 и R-9 в design.md
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-08 23:06:28 +04:00
Andrey Epifancev
f5ce14fd11 AURORA-1984: самостоятельный проект — уровень программы в дереве и в выгрузке
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-08 23:05:59 +04:00
Andrey Epifancev
b87b12f980 AURORA-1989: номер статьи, сортировка и поиск в окне выбора расхода
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-08 22:38:04 +04:00
Andrey Epifancev
321943db56 AURORA-1979: подпись программы и проекта в третьем столбце и выгрузке
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-08 22:35:02 +04:00
Andrey Epifancev
78227b46c0 AURORA-1980: переименование программы и проекта
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-08 22:32:42 +04:00
Andrey Epifancev
9218d2f7f5 AURORA-1984: рулинг R-7 в design.md
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-08 22:31:17 +04:00
Andrey Epifancev
374ac4bd9e AURORA-1984: добавление проекта в разделе на фронте
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-08 22:29:42 +04:00
Andrey Epifancev
69c4a8f9c9 AURORA-1984: событие project_added без программы
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-08 22:27:16 +04:00
Andrey Epifancev
209d36e832 AURORA-1984: создание, переименование и удаление проекта без программы в SQL
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-11-08 22:23:28 +04:00
Andrey Epifancev
836e812bad AURORA-1984: самостоятельный проект в модели и листе формы 4
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-08 22:18:22 +04:00