8000 Fix REST card overtime persistence by AhmedLukman · Pull Request #6888 · wekan/wekan · GitHub
[go: up one dir, main page]

Skip to content

Fix REST card overtime persistence - #6888

Merged
xet7 merged 1 commit into
wekan:mainfrom
AhmedLukman:codex/rest-card-overtime
Nov 10, 2026
Merged

xet7 merged 1 commit into
wekan:mainfrom
AhmedLukman:codex/rest-card-overtime

Conversation

@AhmedLukman
Copy link
Copy Markdown
Contributor

A card update with {"isOverTime": true} returns HTTP 200 but leaves the saved overtime flag unchanged. The REST handler writes isOverTime, while the card schema and UI use isOvertime.

Keep the existing request parameter and store its validated value in isOvertime, using the same scoped, awaited update as neighboring fields. Correct the handler regression and add browser coverage for JSON/form updates, database persistence, independent API reads, reactive UI changes, reloads, and rejected requests.

Validation:

  • Reproduced on v12.57 and the freshly pulled v12.98 latest image on November 6, 2026.
  • Both browser regression tests pass against the fixed source build in Chromium.
  • Six related Node suites pass.
  • The branch merges cleanly with current main.

Keep accepting the isOverTime request parameter and write its validated value to the isOvertime schema field used by card readers and the UI.

Correct the handler regression and cover JSON/form edits, persistence, API reads, reactive display, reloads and rejected requests.
@xet7
xet7 merged commit ad5c35e into wekan:main Nov 10, 2026
4 checks passed
xet7 added a commit that referenced this pull request Nov 10, 2026
…ime.

#6888 makes the REST card PUT write its isOverTime parameter to the
schema's isOvertime field. Every overtime set through the API before it
- since b895e61 - was stored under isOverTime, which the UI and every
reader ignore: those cards still show no overtime.

A schema upgrade step, card-overtime-field, carries that over on the
next start: isOverTime becomes isOvertime where the card has none, the
value the UI already shows wins where it has both, and the stray field
is removed. Two updateMany batches and an $unset, version-gated and
idempotent like the steps beside it.

tests/schemaUpgradeSteps.test.cjs pins the fold, the precedence and a
second pass finding nothing; as negatives, no work on cards without the
field, and - tree-wide - no server code writing isOverTime into a card.

Thanks to AhmedLukman and xet7 !
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants

0