Skip to content

Releases: DaxServer/curator

auto-release-335

Choose a tag to compare

@github-actions github-actions released this 05 Jul 12:17
ff8e891
feat: add consistent uploadId/batchId log prefix on worker path (#114)

Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com>

auto-release-333

Choose a tag to compare

@github-actions github-actions released this 05 Jul 11:05
9fc5868
fix: retry upload on stashfilestorage/backend-fail-internal storage e…

auto-release-331

Choose a tag to compare

@github-actions github-actions released this 05 Jul 10:34
a508092
fix: retry MediaWiki upload on 5xx instead of failing immediately (#112)

* fix: retry MediaWiki upload on 5xx instead of failing immediately

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>

* fix: do not auto-retry the final commit request on 5xx

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>

---------

Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com>

auto-release-327

Choose a tag to compare

@github-actions github-actions released this 05 Jul 10:06
c55892d
Make CSRF token handling resilient to badtoken errors (#111)

* feat: retry MediaWiki/Wikidata mutating calls on badtoken

CSRF tokens fetched before mutating calls were never refreshed if
MediaWiki rejected them as invalid, failing the whole operation
(including mid-way through a chunked upload). Add a one-shot
fetch-fresh-token-and-retry helper to MediaWikiClient (for both
apiRequest-based and FormData-based chunk/commit calls) and an
analogous pair of private methods to WikidataClient, and wire every
mutating call site through it.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017ak8tpbsoWNcVsSAhxBygf

* test: dedupe badtoken retry tests merged into existing describe blocks

The previous commit added new describe blocks for createPage/applySdc/
replaceCategoryInPage/nullEdit without noticing equivalent blocks already
existed later in the file, creating duplicates. Merge the new badtoken-retry
tests into the pre-existing blocks instead.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017ak8tpbsoWNcVsSAhxBygf

* refactor: unify badtoken retry logic into one shared helper

MediaWikiClient had two near-identical private retry methods
(apiRequestWithTokenRetry, apiUploadChunkWithTokenRetry) and WikidataClient
had a third (editItemWithTokenRetry), all implementing the same
fetch/reuse-token -> request -> refetch-and-retry-once-on-badtoken algorithm,
differing only in how the underlying request was made. Extract this into a
single withCsrfTokenRetry(label, getToken, doRequest, token?) function shared
by both clients, and log a warning (with a per-call-site label, e.g.
"[mw] uploadFile chunk 2/3") whenever a retry is triggered so a badtoken event
is visible in logs instead of silent.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017ak8tpbsoWNcVsSAhxBygf

---------

Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com>

auto-release-325

Choose a tag to compare

@github-actions github-actions released this 04 Jul 12:06
5abe3ef
Make upload-slice sending resilient to WebSocket reconnects (#108)

* feat: make upload-slice sending resilient to WebSocket reconnects

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>

* fix: harden upload-slice ack tracking and reconnect resend against concurrent dispatch

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>

* fix: guard onUploadSliceAck against a null batchId to avoid locking isStatusChecking

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>

* chore: increase slice size to 100

---------

Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com>

auto-release-322

Choose a tag to compare

@github-actions github-actions released this 04 Jul 11:43
bfbb057
fix: pin vite to 8.0.16 to avoid rolldown import-resolution regressio…

auto-release-313

Choose a tag to compare

@github-actions github-actions released this 28 Jun 14:41
38e50a5
feat: redesign UPLOADS_UPDATE to send only changed items (#107)

* feat: redesign UPLOADS_UPDATE to send only changed items (partial updates)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* fix: use >= for same-second upload change detection

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* fix: use (updated_at, id) cursor to eliminate boundary-row re-sends

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* fix: deduplicate via sentState map to handle same-second re-updates

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

---------

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>

auto-release-305

Choose a tag to compare

@github-actions github-actions released this 28 Jun 13:45
fd08a47
fix: recompute batch stats from upload list on each update (#106)

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>

auto-release-303

Choose a tag to compare

@github-actions github-actions released this 28 Jun 13:26
28c2a9d
fix: update batch stats on upload status change and delay subscribe u…

auto-release-298

Choose a tag to compare

@github-actions github-actions released this 28 Jun 12:50
25aeaad
fix: batch upload stats always showed zero (#102) (#104)

* fix: batch upload stats always showed zero

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* fix: offset bug and stale BATCH_INFO guard

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

---------

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>