[pull] main from rmyndharis:main#2
Merged
Merged
Conversation
…ning (#644) Route SIGTERM/SIGINT through the bounded readiness drain (flip 503 -> grace -> teardown), not just the admin restart endpoint, so rolling deploys and `docker stop` stop routing before teardown. Make shutdown() idempotent, default the grace to 0 outside production (fast dev reload/Ctrl+C), and stop whatsapp-web.js's Puppeteer from installing its own signal handlers (which killed Chromium at signal time / exited before the drain could run). Suppress a mid-shutdown reconnect that would race the teardown. Bundled compose gains stop_grace_period. Validate QUEUE_ENABLED / MCP_ENABLED / SERVE_DASHBOARD at boot: a typo or a stray trailing space/CR silently (dis)abled the feature; boot now fails fast on the raw value naming the offending key. Log a fatal uncaught exception through the structured logger (observe-only via uncaughtExceptionMonitor; the crash-and-restart posture is unchanged). Scope import-data's table-clearing catch to a genuinely-missing table so a real I/O/lock error surfaces and rolls the restore back instead of committing a merged (not replaced) dataset on SQLite.
#645) Pin the Docker Compose stack's docker-socket-proxy and minio images to explicit tags (both were on :latest) and add a Dependabot docker ecosystem so base + stack images keep receiving update PRs. Declare a Node >=22 engines floor + .nvmrc and disable the transitive install-time Scarf telemetry. Remove the unused uuid / @types/uuid dependency. Document PORT vs the compose-only API_PORT in .env.example and add the QUEUE_ENABLED/CACHE_ENABLED toggles. Refresh SECURITY.md's supported-versions table and the Java SDK install snippets to the current releases. Correct stale "not yet wired" comments on the plugin ingress-manifest validation, which the loader has called since it shipped.
Add VALIDATION_ERROR_DETAIL to expose field-level validation messages on 400 responses (hidden by default in production, so a bad request doesn't reflect the DTO shape back; set true to debug an SDK/integration against a prod instance without flipping NODE_ENV). Mirrors isSwaggerEnabled's exact-string, production-default-off contract. Declare every controller tag in the OpenAPI document (ten were used but undeclared), add @apitags to the three Integration Fabric controllers, and normalise tag casing so /api/docs groups every endpoint under a described tag.
#647) The webhook dispatch path looks up a session's active webhooks by sessionId on every emitted event (WebhookService.findBySession), so without an index each dispatch scanned the entire webhooks table. The FK column had no index — the @ManyToOne/@joincolumn does not create one. Add a cross-dialect, idempotent index migration plus the matching entity @Index.
…ation CI (#648) conversation_mappings and integration_delivery_failures declare @PrimaryGeneratedColumn('uuid') but AddIntegrationFabric created their id columns without a Postgres DEFAULT gen_random_uuid(), so on PostgreSQL every first insert failed with a NOT NULL violation on id — breaking the plugin conversation-mapping upsert (Chatwoot handover) and the ingress dead-letter write. SQLite mints the uuid client-side, which hid it. Add a forward-only Postgres-only migration that sets the default (no-op on SQLite). Add a CI job that applies the full data-migration chain to a real postgres:16 and asserts every generated-uuid PK has a DB default (an information_schema scan that auto-covers current and future tables) — the dialect gap no SQLite-only test can see. Validated locally: the smoke passes with the fix and fails without it.
…rs) (#649) The global jest coverageThreshold sat at 30-33% against ~65-73% measured, so a regression deleting a large share of the tests would still pass CI green (the gate had no teeth). Raise the global floors to ~7-8 points below measured (statements 65, branches 58, functions 58, lines 66), add per-directory floors for engine/adapters and modules/integration, and raise modules/auth (was 45) toward its ~80% measured. The common/security 85-90 floor is unchanged. Verified the full suite still clears the thresholds with headroom.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
See Commits and Changes for more details.
Created by
pull[bot] (v2.0.0-alpha.4)
Can you help keep this open source service alive? 💖 Please sponsor : )