krona-staff/tests/e2e/report-evidence/acceptance-codex-fix-live-database.txt
grok 51ad03ff65 test(e2e): приёмка веток исполнителей и заметки с двойными ID
Зачем: TASK-GROK-2 §4 — исправления принимаются только по прогону стенда,
«на слово ничего не принимать»; исполнителям нужны ID владельца и
контракты для новых сценариев K8/K9.

Что:
- report-evidence/acceptance-*.txt: для antigravity/fix-reject-device-shifts
  (795bba0), codex/fix-format-baseline (fd1ec3d), codex/fix-live-database
  (ea68e12) — команда, итог vitest, таблица «ID — было — стало — вывод»
  против основной ветки f5ac179 с тем же стендом (worktree, без коммитов в
  их ветки). Итог: fix-live-database — K3/N2, K4/N1 зелёные, открылись K5 и
  K6 по существу; обе ветки Codex — SYNC-A/B зелёные, потому что «style»-
  коммит fd1ec3d содержит исправление Antigravity (после prettier 0 строк
  diff с её веткой) — записано как находка для ревью.
- NOTES: таблица дефектов с двойными ID, строки K6–K9, S9, A4, N12-DATE,
  контракты C4 (verify подписанной ведомости) и C5 (params пресета), CI
  (windows, артефакт evidence), раздел приёмки. Ни одна ветка не влита в
  основную, поэтому known-defects.json не сокращён.
2026-09-26 15:28:10 +07:00

30 lines
4.2 KiB
Text
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Приёмка ветки codex/fix-live-database @ ea68e123506cc29276514f67b1dda7cef77057df (2026-09-26, UTC+7)
# Код продукта — ветка исполнителя (git worktree --detach origin/codex/fix-live-database), поверх — tests/e2e и scripts/test из grok/e2e-harness @ 3475133 (без коммитов в ветку исполнителя).
# PostgreSQL 17.11, мигратор NOSUPERUSER, сервер под krona_staff_app.
$ cd <worktree> && E2E_MIGRATIONS=roundtrip E2E_DATABASE_NAME=krona_staff_acc node scripts/test/run-e2e.mjs
== roundtrip OK: rolledBack=11 reapplied=11
Tests 41 failed | 13 passed (54)
| K13/SYNC-A | GREEN | 1/1 | зелёный — ИСПРАВЛЕН, уберите из known-defects.json |
| K13/SYNC-B | GREEN | 1/1 | зелёный — ИСПРАВЛЕН, уберите из known-defects.json |
| K3/N2 | GREEN | 1/1 | зелёный — ИСПРАВЛЕН, уберите из known-defects.json |
| K4/N1 | GREEN | 1/1 | зелёный — ИСПРАВЛЕН, уберите из known-defects.json |
exit=1
# Было (основная ветка f5ac179 + тот же стенд): Tests 45 failed | 9 passed (54) ; run-e2e OK
# Отличия по ID (compare по e2e-results.json, ULID/порты замаскированы):
| ID | было | стало | фактический вывод |
| A4 | RED | RED | было: AssertionError: тела 500 с деталями PostgreSQL: expected [ …(2) ] to deeply equal [] / стало: AssertionError: тела 500 с деталями PostgreSQL: expected [ { …(2) } ] to deeply equal [] |
| K13/SYNC-A | RED | GREEN | было: AssertionError: HTTP 200 {"results":[{"idempotency_key":"e2e-<ulid>","command_type":"upsert_work_session","status":"applied","result":{"id":"<ulid>","revision":1,"status" / стало: passed |
| K13/SYNC-B | RED | GREEN | было: AssertionError: HTTP 200 {"results":[{"idempotency_key":"e2e-<ulid>","command_type":"upsert_timesheet_entry","status":"applied","result":{"id":"<ulid>","revision":1,"stat / стало: passed |
| K3/N2 | RED | GREEN | было: AssertionError: подтверждение смены: HTTP 500 {"statusCode":500,"code":"23502","error":"Internal Server Error","message":"null value in column \"occurred_at\" of relation / стало: passed |
| K4/N1 | RED | GREEN | было: AssertionError: HTTP 500 {"statusCode":500,"code":"42P08","error":"Internal Server Error","message":"inconsistent types deduced for parameter $2"}: expected 500 to be 201 / стало: passed |
| K5/N4 | RED | RED | было: AssertionError: подтверждение смены (предусловие, см. N2): HTTP 500 {"statusCode":500,"code":"23502","error":"Internal Server Error","message":"null value in column \"occ / стало: AssertionError: смена должна быть начислена ровно один раз: expected 196800n to be 98400n // Object.is equality |
| K6/D5 | RED | RED | было: AssertionError: подтверждение смены (предусловие; падает, пока открыт K3): HTTP 500 {"statusCode":500,"code":"23502","error":"Internal Server Error","message":"null value / стало: AssertionError: после отклонения оплаченной смены должно быть сторно: итог начислений 0: expected 98400n to be 0n // Object.is equality |
| K8/D1 | RED | RED | было: AssertionError: подтверждение смены (предусловие; падает, пока открыт K3): HTTP 500 {"statusCode":500,"code":"23502","error":"Internal Server Error","message":"null value / стало: AssertionError: C4 verify: HTTP 404 {"message":"Route GET:/api/v1/staff/payroll/runs/<ulid>/verify not found","error":"Not Found","statusCode":404}: expected 404 to be 20 |
# F14: форматирование ветки (оверлей tests/e2e/evidence удалён перед проверкой — в ветке исполнителя нет записи .gitignore для него)
$ node node_modules/prettier/bin/prettier.cjs --check .
Checking formatting...
All matched files use Prettier code style!
# Было (основная ветка f5ac179): [warn] Code style issues found in 23 files.