3 пункта (WPF UI вынесен на Windows-этап). Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
1.8 KiB
1.8 KiB
Спринт 4 (частичный) — POS Sync API + observability
Автономная работа. WPF/POS-UI (food-market.pos, net8.0-windows) на Linux
не собирается — пропускаем. Здесь только API-сторона синхронизации
и метрики.
После каждого пункта: dotnet build (SDK 8.0.126), unit + integration
тесты, коммит порцией, отметка [x], коммит прогресса.
Чек-лист
- P1-12a Контракты POS в food-market.shared — DTO
ProductSyncDto,PriceSyncDto,StockSyncDto,CounterpartySyncDto,PosSaleBatchDto(с idempotency-key). Версионирование через namespace v1. - P1-12b POS Sync API —
GET /api/pos/sync?since={iso8601}возвращает изменения после ts (товары, цены, остатки, контрагенты).POST /api/pos/salesпринимает батч продаж с idempotency-key (повторный запрос возвращает прежний результат без дублей). Multi-tenant: POS-токен ↔ один магазин. - P1-17 Метрики Prometheus —
prometheus-net.AspNetCore,/metrics.http_requests_total,http_request_duration_seconds,db_query_duration_seconds(через EF interceptor), бизнес:sales_posted_total,supplies_posted_total,documents_error_total.docs/observability.mdс образцом Grafana dashboard.
Лог
- Каждый пункт: build + тесты + коммит порцией + отметка [x] + коммит прогресса.
- Все правки на
main(origin Forgejo), без коммитаglobal.json.