food-market/tests
nns 25c37415bf feat(pos): реальный протокол весов Масса-К (57600, ENQ/ACK, DC1, кадр) вместо угаданного
По фактическому замеру с ноутбука магазина (11.10): весы Масса-К (USB-COM CH340)
отвечают только на 57600 8N1; рукопожатие ENQ(0x05)→ACK(0x06); запрос DC1(0x11) →
кадр SOH STX «флаг вес единица» CTRL ETX EOT.

- pos.core/Hardware/SerialScale.cs: ISerialTransport (абстракция для тестов) +
  SystemSerialTransport (8N1, DTR/RTS), MassaK.ParseFrame/Handshake/ReadFrame/
  ReadWeight. Control-байт НЕ валидируем (не подтверждён) — только сырой hex в лог.
  Единицы kg по умолчанию, «г/g» → делим на 1000.
- pos.core/Hardware/ScaleDiscovery.cs: SerialScaleReader (+ стабильность по двум
  одинаковым чтениям) и ScaleAutodiscovery — 57600 и Масса-К-кадр ПЕРВЫМИ, общий
  бюджет, отдельно отмечаем занятые порты («порт занят», а не «весы не найдены»).
- pos: ComScale — тонкий адаптер к pos.core; AppServices хранит scale_proto и по
  умолчанию MassaKFrame/57600; ProbeRunner (--probe-hw) печатает сырой hex кадра.
- tests: разбор реального нулевого кадра 01 02 53 20 20 30 2E 30 30 30 6B 67 71 03 04
  и вариантов (1.235 / 12.500 / отрицательный / граммы / мусор до SOH / обрезанный /
  без ACK) + рукопожатие на фейковом порту. 14/14 зелёных.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-10-11 08:29:06 +05:00
..
e2e docs(site): отчёт и скриншоты проверки круга 2 (44/44) + verify-скрипт 2026-10-11 01:29:07 +05:00
fixtures fix(hotfix): invoice500 + фоновые 403 на reload + regression e2e 2026-10-05 00:21:41 +05:00
food-market.IntegrationTests fix(barcode): весовой разбор выкл по умолчанию; поиск по ШК — точное совпадение 2026-10-09 11:02:43 +05:00
food-market.UnitTests feat(pos): реальный протокол весов Масса-К (57600, ENQ/ACK, DC1, кадр) вместо угаданного 2026-10-11 08:29:06 +05:00
integration perf(s28): integration suite workers=2 (46% speedup 66→36s) 2026-06-09 03:45:41 +05:00
load docs(s27): финальные результаты 4h-soak — 718k iter, 0 mem leak 2026-06-09 07:25:06 +05:00
regression fix(migration): не схлопывать разные карточки МойСклада по артикулу + актуализировать объяснение сверки 2026-10-09 20:11:06 +05:00
scripts feat(menu): новые экраны s31 в sidebar+Cmd+K+Cmd+J + split-кнопки, orphan-audit 2026-10-04 22:50:14 +05:00
stage-smoke.sh docs(s12): ARCHITECTURE/MULTI-TENANCY/RUNBOOK/DEVELOPER-GUIDE + k6 baseline + stage-verify CI 2026-06-07 03:19:25 +05:00