Skip to content

Releases

v5.5.4

Choose a tag to compare

@Neup123 Neup123 released this 10 Nov 21:22
9305653

v5.5.4

Version-label release: the root endpoint and the Prometheus environment metric now report 5.5.4, matching the code that has been running since the v5.5.3-labelled deploys of the pairing fix and the connection-stability bundle.

Changes since v5.5.3

  • Version bump (PR #56) — package.json + both package-lock.json root entries: 5.5.3 → 5.5.4. No logic changes.
  • Connection stability bundle (PR #55, issue #54) — vendored Baileys patch (pin stays 7.0.0-rc14): exponential backoff with full jitter and immediate retry on 515, previous-socket teardown before makeWASocket, 60s send timeout (EVOLUTION_SEND_TIMEOUT_MS), the 515→401 guard (a 515 followed by 401 within 30s is not treated as a logout), remove.instance always emitted, monotonic WhatsApp version with a persisted cache. Registered-credentials 408s reconnect instead of logging out.
  • WhatsApp pairing fix (PR #53, issue #52) — vendored patch for the companion_reg_refresh adv-secret failure that made QR pairing never complete on Baileys 7.0.0-rc14 (upstream evolution-foundation PR evolution-foundation#2727: evolution-foundation#2765 + evolution-foundation#2602 + one evolution-foundation#2749 line).

Image

ghcr.io/neup123/evolution-api:v5.5.4 — digest sha256:944d969d8d08771ffa7d5963277615237b45c44bf3ef6eae32765d9db8f67c3f

Verified before publish: npm ci clean on host and in a container rig (vendored patch applies), db:generate, tsc --noEmit, production build, and the connection-recovery / disconnection-fields / socket-watchdog suites all pass. No GitHub Actions CI exists for this repo (disabled); verification was run locally on the build machine.

v5.5.3

Choose a tag to compare

@Neup123 Neup123 released this 06 Nov 10:57
24f74f5

What's Changed

  • Recover Baileys connections and handle missing chat content by @Neup123 in #47

Full Changelog: v5.5.2...v5.5.3

Evolution API v5.5.2

Choose a tag to compare

@Neup123 Neup123 released this 23 Sep 13:44
ddc6e9c

Queue delivery-state correctness\n\n- Queued acceptance now explicitly reports messageWasSent=false, deliveryStatus=PENDING, and final=false.\n- Every actual delivery attempt resolves the current settings template and rechecks all safety rules.\n- Temporary policy blocks are requeued only inside the configured queue horizon.\n- Long waits and permanent policy changes mark the queue item FAILED with diagnostics instead of implying delivery.\n- OpenAPI and lifecycle documentation are updated.\n\nCloses #37.

Evolution API v5.5.1

Choose a tag to compare

@Neup123 Neup123 released this 23 Sep 13:13
dca2b04

Outbound queue fixes\n\n- Enforces combined sent + queued capacity for instance and recipient minute/day limits.\n- Enforces the unique new/dormant outreach daily limit.\n- Rejects a new queue item when its calculated send time is more than the configured distance after the current queue tail.\n- Adds OUTBOUND_QUEUE_MAX_TAIL_GAP_SECONDS, defaulting to 120 seconds.\n- Returns detailed 429 responses with capacity totals or queue-horizon timing.\n- Adds worker delivery, reschedule, and failure logging.\n\nThe v5.5.0 worker was confirmed to run correctly: it delivered one due message and rescheduled the others because only one outreach quota slot was available. This release prevents that queue over-admission and exposes the reason clearly.\n\nCloses #35.

Evolution API v5.5.0

Choose a tag to compare

@Neup123 Neup123 released this 23 Sep 12:24
70423c5

Durable outbound text queue

  • Existing sendText requests now queue transient Automation Safety cooldowns instead of returning 429.
  • PostgreSQL/MySQL-backed queue survives restart and WhatsApp reconnect.
  • Current policy is re-evaluated before every delivery.
  • Exact rolling-window expiry determines the earliest send time.
  • New GET /message/outboundQueue/{instanceName} reports counts, schedules, and estimated empty time.
  • New DELETE /message/outboundQueue/{instanceName} clears unsent work.
  • Permanent suppression, allowlist, quiet-hour, duplicate, and invalid-recipient decisions still fail safely.
  • Queue admission fails only when recent sends plus queued work reach the configured instance or recipient daily capacity.

Includes database migrations, detailed Swagger responses, tests, and English documentation. See #34 and #33.

Evolution API v5.4.3

Choose a tag to compare

@Neup123 Neup123 released this 22 Sep 17:25
f6a47c1

Delete Message automatic maximum scope

  • Keeps one backward-compatible Delete Message endpoint.
  • Automatically deletes for everyone when the connected account has permission.
  • Falls back to delete for this account for incoming direct messages, non-admin group messages, missing group participant data, or unconfirmed revoke attempts.
  • Returns explicit deletion scope and confirmation state.
  • Adds guided Swagger form fields while retaining raw JSON input.
  • Updates request, webhook-mapping, response, and fallback documentation.

See #32 and #22.

Evolution API v5.4.2 - Confirmed automatic message deletion

Choose a tag to compare

@Neup123 Neup123 released this 22 Sep 12:39
c93f8b5

Corrective delete release

  • automatically resolves whether the original message belongs to the connected account or another group participant
  • uses the authoritative archived message key and group-admin revoke mode when applicable
  • rejects impossible incoming direct-message revokes and missing group permissions with explicit errors
  • waits for WhatsApp acknowledgement across direct and group Baileys event channels before updating local state or emitting MESSAGES_DELETE
  • stops returning Baileys PENDING as deletion success
  • documents requests, permissions, response fields, errors, and n8n mappings

Release integrity

  • runtime package version is 5.4.2
  • the root endpoint exposes the image source revision
  • GHCR images carry OCI version and revision labels
  • tag builds now fail when the tag and package version differ

Validation

PR #31 passed the full TypeScript build, ESLint, runtime OpenAPI and chat-contract audits, CodeQL, and the repository quality workflow. No unapproved destructive WhatsApp message was used for acceptance testing; issue #22 remains the place to report the first designated live group test.

Evolution API v5.4.1 - Group LID delete fix

Choose a tag to compare

@Neup123 Neup123 released this 22 Sep 09:49
e23fe13

Group LID delete fix

Fixes group chat.deleteMessage calls that returned 200/PENDING but did not remove the WhatsApp message when n8n supplied a group JID, message ID, and an @lid participant without the complete original key.

Fix

  • resolve the authoritative stored message key by current instance, original message ID, and matching chat/group JID
  • hydrate participantAlt, addressingMode, remoteJidAlt, and the original fromMe value before sending the Baileys delete stanza
  • retain the requested message ID so hydration cannot redirect deletion
  • add regression coverage for the partial n8n group/LID request

Validation

  • Quality/full build passed
  • CodeQL workflow and GitHub Advanced Security gate passed
  • message-key regression tests, ESLint, TypeScript, and diff checks passed before the PR

No destructive live deletion was run. Live acceptance still needs an explicitly designated disposable group message after deployment.

Rollback

The exact pre-fix main state is tagged rollback/pre-group-delete-lid, commit feae32cfeaead06d3826d8a402aa9c7c0c5ef769.

git fetch origin --tags
git switch -c instinct/group-delete-lid-rollback rollback/pre-group-delete-lid
git push -u origin instinct/group-delete-lid-rollback

The release merge commit is e23fe130673318e5dc2796db5d981405fff009cc.

Evolution API v5.4.0 - Mistakes Generator

Choose a tag to compare

@Neup123 Neup123 released this 22 Sep 07:38
feae32c

Mistakes Generator

Adds optional natural adjacent-key mistakes to outbound text and media captions.

Settings

  • enabled: on/off
  • minLetters / maxLetters: eligible letters to change
  • probability: 0-100% chance per eligible send
  • Available in instance settings and Settings Templates
  • Embedded Evolution Manager controls are included for both

Protection and language behavior

  • Preserves HTTP(S)/www URLs and bare domains such as wikipedia.com
  • Preserves email addresses, mentions, and phone-like identifiers
  • Leaves quoted keys, mention metadata, previews, and other message metadata unchanged
  • Uses adjacent keyboard-row substitutions for Latin/QWERTY, Hebrew, Cyrillic, and Arabic, preserving case

Validation

Passed: Mistakes Generator tests (including protected identifiers, multilingual changes, case, and bounds); Settings Template hierarchy; review surfaces for docs and Manager UI; runtime OpenAPI audit (202 operations); Baileys/webhook/archive/chat documentation audits; message archive; outbound safety; message-key; log-redaction; ESLint; and tsc --noEmit.

The dual CJS+ESM tsup build was retried after Prisma generation. TypeScript completed, but bundling did not finish within the 110-second worker limit. CI remains the final full-build proof.

Rollback

The exact pre-feature source is tagged rollback/pre-mistakes-generator, commit 1cba37f6d49dd3c087e24275e848f0a12be0f5f1.

git fetch origin --tags
git switch -c instinct/mistakes-generator-rollback rollback/pre-mistakes-generator
git push -u origin instinct/mistakes-generator-rollback

This release is merged to main through PR #27 with merge commit feae32cfeaead06d3826d8a402aa9c7c0c5ef769.

Mistakes Generator v5.3.0 RC1

Pre-release

Choose a tag to compare

Mistakes Generator

Adds optional natural adjacent-key mistakes to outbound text and media captions.

Settings

  • enabled: on/off
  • minLetters / maxLetters: eligible letters to change
  • probability: 0-100% chance per eligible send
  • Available in instance settings and Settings Templates
  • Embedded Evolution Manager controls are included for both

Protection and language behavior

  • Preserves HTTP(S)/www URLs and bare domains such as wikipedia.com
  • Preserves email addresses, mentions, and phone-like identifiers
  • Leaves quoted keys, mention metadata, previews, and other message metadata unchanged
  • Uses adjacent keyboard-row substitutions for Latin/QWERTY, Hebrew, Cyrillic, and Arabic, preserving case

Validation

Passed: Mistakes Generator tests (including protected identifiers, multilingual changes, case, and bounds); Settings Template hierarchy; review surfaces for docs and Manager UI; runtime OpenAPI audit (202 operations); Baileys/webhook/archive/chat documentation audits; message archive; outbound safety; message-key; log-redaction; ESLint; and tsc --noEmit.

The dual CJS+ESM tsup build was retried after Prisma generation. TypeScript completed, but bundling did not finish within the 110-second worker limit. CI remains the final full-build proof.

Rollback

The exact pre-feature source is tagged rollback/pre-mistakes-generator, commit 1cba37f6d49dd3c087e24275e848f0a12be0f5f1.

git fetch origin --tags
git switch -c instinct/mistakes-generator-rollback rollback/pre-mistakes-generator
git push -u origin instinct/mistakes-generator-rollback

This prerelease does not merge or modify main.