feat: implementations cycle 6#614
Merged
brunobls merged 279 commits intorelease-candidatefrom Apr 9, 2026
Merged
Conversation
…orkflows/release.yml Bumps [LerianStudio/github-actions-shared-workflows/.github/workflows/release.yml](https://github.com/lerianstudio/github-actions-shared-workflows) from 1.11.0 to 1.13.1. - [Release notes](https://github.com/lerianstudio/github-actions-shared-workflows/releases) - [Changelog](https://github.com/LerianStudio/github-actions-shared-workflows/blob/main/docs/release-workflow.md) - [Commits](LerianStudio/github-actions-shared-workflows@v1.11.0...v1.13.1) --- updated-dependencies: - dependency-name: LerianStudio/github-actions-shared-workflows/.github/workflows/release.yml dependency-version: 1.13.1 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com>
…evelop/LerianStudio/github-actions-shared-workflows/dot-github/workflows/release.yml-1.13.1 ci(deps): bump LerianStudio/github-actions-shared-workflows/.github/workflows/release.yml from 1.11.0 to 1.13.1
…evelop/LerianStudio/github-actions-shared-workflows/dot-github/workflows/gitops-update.yml-1.13.1 ci(deps): bump LerianStudio/github-actions-shared-workflows/.github/workflows/gitops-update.yml from 1.11.0 to 1.13.1
…evelop/LerianStudio/github-actions-shared-workflows/dot-github/workflows/build.yml-1.13.1 ci(deps): bump LerianStudio/github-actions-shared-workflows/.github/workflows/build.yml from 1.11.0 to 1.13.1
…evelop/LerianStudio/github-actions-shared-workflows/dot-github/workflows/pr-validation.yml-1.13.1 ci(deps): bump LerianStudio/github-actions-shared-workflows/.github/workflows/pr-validation.yml from 1.11.0 to 1.13.1
…evelop/LerianStudio/github-actions-shared-workflows/dot-github/workflows/go-pr-analysis.yml-1.13.1 ci(deps): bump LerianStudio/github-actions-shared-workflows/.github/workflows/go-pr-analysis.yml from 1.11.0 to 1.13.1
chore(infra): enable deploy to clotilde server
fix(deps): upgrade gofiber/fiber to v2.52.12
…lotilde fix(manager): trigger build to sync clotilde deploy
Moves tenant middleware from global registration to per-route composition via withTenant() helper, ensuring JWT signature validation runs before any Tenant Manager API calls. Prevents forged JWTs from triggering unnecessary TM API requests. X-Lerian-Ref: 0x1
Adds isPermanentTenantError() to distinguish non-retryable tenant errors (not found, suspended, service not configured) from transient ones (circuit breaker open, network). Permanent errors skip retries and route directly to DLQ, saving resources. X-Lerian-Ref: 0x1
Introduces ValidateKeyForTenant() that verifies the resolved S3 object key starts with the authenticated tenant's ID prefix before any storage operation. Prevents cross-tenant object access if context propagation fails. X-Lerian-Ref: 0x1
…e tests Introduces the deadline entity with full CRUD operations (create, get all, update, delete) and a deliver workflow that marks deadlines as delivered with timestamp tracking. Includes MongoDB repository with filtering (active, type, date range), pagination with total count, soft-delete support, and proper indexes. Improves HTTP body parser to return 400 for all malformed JSON instead of 500. Adds unit, fuzz, property, integration, and chaos tests. X-Lerian-Ref: 0x1
X-Lerian-Ref: 0x1
fix: reduce idempotency TTL from 24h to 30s
Replace withTenant() + append() pattern with inline WhenEnabled() that conditionally applies middleware only when non-nil, reducing boilerplate across all route definitions. X-Lerian-Ref: 0x1
…ixes fix: multi tenant security fixes
X-Lerian-Ref: 0x1
chore: bump lib-commons to v3.0.0-beta.16
# Conflicts: # components/manager/internal/adapters/http/in/routes.go
Update test call sites to handle the new (client, error) return value from buildMultiTenantRedisClientForWorker after the fail-fast change. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Bumps alpine from 3.22 to 3.23. --- updated-dependencies: - dependency-name: alpine dependency-version: '3.23' dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com>
feat: add TLS env var support for MongoDB and multi-tenant Redis
…s/worker/develop/alpine-3.23 build(deps): bump alpine from 3.22 to 3.23 in /components/worker
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. 🗂️ Base branches to auto review (1)
Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Organization UI Review profile: ASSERTIVE Plan: Pro Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
Comment |
Contributor
🔒 Security Scan Results —
|
| Policy | Status |
|---|---|
| Default non-root user | ✅ Passed |
| No fixable critical/high CVEs | ✅ Passed |
| No high-profile vulnerabilities | ✅ Passed |
| No AGPL v3 licenses | ✅ Passed |
Contributor
🔒 Security Scan Results —
|
| Policy | Status |
|---|---|
| Default non-root user | ✅ Passed |
| No fixable critical/high CVEs | ✅ Passed |
| No high-profile vulnerabilities | ✅ Passed |
| No AGPL v3 licenses | ✅ Passed |
…y loops Permanent errors (validation failures, entity not found, JSON parse errors, canceled contexts, schema ambiguity, business errors with REP-* codes) were being Nack'd with requeue=true by lib-commons multi-tenant consumer, causing infinite redelivery. This adds a retry guard that classifies handler errors as retryable or non-retryable across both Consumer 1 (report generation) and Consumer 2 (fetcher notifications). Non-retryable errors return nil so the message is Ack'd and dropped. Also wraps parse/validation errors in process-notification as typed ValidationError so the guard can classify them. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Indirect dependency via S3 SDK. Backward compatible, no breaking changes. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…te RabbitMQ redelivery Replace 20 plain fmt.Errorf returns with typed pkg.ValidationError and pkg.FailedPreconditionError so the retry guard can classify them via errors.AsType(). Covers datasource config, crypto failures, cipher init, decryption errors, template rendering, data pipeline, and extraction request. Also adds isPermanentErrorByPattern heuristic as a last-resort safety net, and adds Unwrap() to FailedPreconditionError for error chain traversal. Reviewed by 6 ring code reviewers; all findings addressed: - Err field populated on typed errors to preserve error chain - Double-wrapping in decryptExtractedData simplified to propagate inner error - Heuristic patterns tightened from generic to specific - Negative test cases added for heuristic patterns Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
The test expected dayOfMonth range validation (TPL-0053) but the field does not exist in CreateDeadlineInput — Go silently ignores it, so the API returns 201 instead of 400. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…abbitmq fix: add defensive retry guard to prevent infinite RabbitMQ redeliver…
arthurkz
approved these changes
Apr 9, 2026
arthurkz
approved these changes
Apr 9, 2026
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 join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Pull Request Checklist
Pull Request Type
Checklist
Please check each item after it's completed.
Additional Notes
Obs: Please, always remember to target your PR to develop branch instead of main.