fix(crm): детерминированный sortBy=id в постраничных списках контактов #18

Merged
eSlider merged 1 commits from fix/crm-filter-sortby into main 2026-09-03 13:14:36 +01:00
Owner

Дефект, найденный на импорте eslider@ (2dph N-1.5 #275): OnlyOffice filter.json БЕЗ явного sortBy отдаёт контакты в недетерминированном порядке на больших объёмах (~1800 контактов после массового импорта) — постраничный обход count=100 стабильно терял 1 контакт (id 2105 из 1779), count=1000 его находил. Результат: BuildContactEmailIndex/ListAllContacts неполны → повторный прогон импорта создал бы дубль контакта (нарушение идемпотентности).\n\nФикс: ListContacts и ListContactsByTag всегда шлют sortBy=id — детерминированный полный обход (проверено live: count=100 walk 1779/1779 unique, dup=0; tag walk 317/317; FindCompany/FindPersonByEmail находят потерянный контакт).\n\nПроверено: go vet ./... + go test ./... зелёные; live-проба на office.produktor.io.

Дефект, найденный на импорте eslider@ (2dph N-1.5 #275): OnlyOffice filter.json БЕЗ явного sortBy отдаёт контакты в недетерминированном порядке на больших объёмах (~1800 контактов после массового импорта) — постраничный обход count=100 стабильно терял 1 контакт (id 2105 из 1779), count=1000 его находил. Результат: BuildContactEmailIndex/ListAllContacts неполны → повторный прогон импорта создал бы дубль контакта (нарушение идемпотентности).\n\nФикс: ListContacts и ListContactsByTag всегда шлют sortBy=id — детерминированный полный обход (проверено live: count=100 walk 1779/1779 unique, dup=0; tag walk 317/317; FindCompany/FindPersonByEmail находят потерянный контакт).\n\nПроверено: go vet ./... + go test ./... зелёные; live-проба на office.produktor.io.
eSlider added 1 commit 2026-09-03 04:50:24 +01:00
fix(crm): deterministic sortBy=id in contact paged lists
Release Please / Release Please (push) Skipped
Release / GoReleaser (push) Skipped
Tests / Secret scan (gitleaks) (push) Skipped
Tests / Test (Go 1.25) (push) Skipped
Tests / Test (Go stable) (push) Skipped
Tests / Secret scan (gitleaks) (pull_request) Successful in 4s
Tests / Test (Go 1.25) (pull_request) Successful in 26s
Tests / Test (Go stable) (pull_request) Successful in 1m21s
4d91726179
eSlider merged commit 3da11586f9 into main 2026-09-03 13:14:36 +01:00
eSlider deleted branch fix/crm-filter-sortby 2026-09-03 13:14:36 +01:00
Sign in to join this conversation.
No Reviewers
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: eSlider/go-onlyoffice#18