fix(server): deduplicate migration user-state upsert batches (#81)

* fix(server): deduplicate migration user-state upsert batches

Prevent migration failures when source data contains duplicate user-state rows for the same target keys. Keep the latest row per upsert key and prefer richer reading progress signals on timestamp ties, then cover the behavior with focused unit and e2e tests.

Closes #71

* ci: raise commitlint body line limit to 500 chars

Allow longer commit body lines so convention checks do not fail on detailed but still concise commit explanations in this repository.
This commit is contained in:
neon
2026-05-21 22:30:13 -06:00
committed by GitHub
parent aeedecc5ce
commit 53736a95b5
5 changed files with 356 additions and 31 deletions
+1 -1
View File
@@ -3,7 +3,7 @@ module.exports = {
rules: {
"type-enum": [2, "always", ["feat", "fix", "db", "perf", "refactor", "style", "docs", "test", "build", "ci", "chore", "security", "revert"]],
"header-max-length": [2, "always", 100],
"body-max-line-length": [2, "always", 250],
"body-max-line-length": [2, "always", 500],
"subject-full-stop": [2, "never", "."],
"scope-enum": [0],
"scope-empty": [0],