Skip to content

chore(hooks-processor): bump tackle to v0.4.0 - #1165

Open
loadez wants to merge 6 commits into
mainfrom
bump/tackle-v0.4.0-hooks-processor
Open

loadez wants to merge 6 commits into
mainfrom
bump/tackle-v0.4.0-hooks-processor

Conversation

@loadez

@loadez loadez commented Aug 13, 2026

Copy link
Copy Markdown
Contributor

No description provided.

@github-project-automation github-project-automation Bot moved this to Backlog in Roadmap Aug 13, 2026
@loadez
loadez marked this pull request as ready for review August 18, 2026 18:27

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 68e343be10

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment on lines +26 to +29
GHSA-32p9-57cr-4x65
EEF-CVE-2026-65624
EEF-CVE-2026-59248
GHSA-q8x4-x7mp-5vg2

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Do not suppress reachable Cowboy parser advisories

In Helm installations where node ports are reachable, these parser vulnerabilities are not confined to Kubernetes probes: helm/templates/service.yaml exposes the workers' port 4000 via type: NodePort, and helm/templates/api-svc.yaml similarly exposes the gRPC/Cowboy listener on port 50050. An unauthenticated client can therefore exercise the HTTP/1.1 or HTTP/2 parsing paths before HealthCheck or the gRPC handler processes the request, so allowlisting these advisories leaves the exposed processes vulnerable to the documented resource-exhaustion attacks; upgrade the affected Cowboy stack or restrict the listeners before suppressing them.

Useful? React with 👍 / 👎.

# (RepoProxyService server) and from its own internal gRPC client responses -
# internal cluster traffic, not untrusted input (same rationale already accepted in
# github_notifier/.mix-audit.txt).
GHSA-rv48-qqj5-crxg

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Keep the protobuf recursion advisory enabled

In deployments where Kubernetes node ports are reachable, protobuf input is not limited to trusted cluster traffic: helm/templates/api-svc.yaml publishes the RepoProxy gRPC server as a NodePort, and hooks/grpc/endpoint.ex installs no authentication interceptor before protobuf decoding. A reachable client can consequently submit a deeply nested message and trigger the unbounded-recursion DoS described by this advisory, so this entry should not be allowlisted unless the endpoint is network-restricted or protobuf is upgraded.

Useful? React with 👍 / 👎.

ARG ELIXIR_VERSION=1.18.1
ARG OTP_VERSION=26.2.5.6
ARG ALPINE_VERSION=3.21.6
ARG OTP_VERSION=26.2.5.3

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why roll back to .3 ?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Rolled back to 26.2.5.3 because 26.2.5.6 breaks the cold image build. On .6, mix local.hex fails fetching from builds.hex.pm with a TLS unsupported_certificate / key_usage_mismatch alert (OTP's cert-verification change rejects the hex endpoint's cert). Two cold builds on this branch reproduced it; pinning back to .3 builds green, and the only Dockerfile diff between the failing and passing commits is the OTP_VERSION arg. Proper .6 fix is a follow-up, not this PR.

loadez added 6 commits August 26, 2026 08:18
alpine 3.21.6 ships libssl3/libcrypto3 3.3.6-r0, flagged CRITICAL for
CVE-2026-31789 (openssl heap buffer overflow on 32-bit systems from
large X.509 certificate processing). alpine 3.21.7 ships openssl
3.3.7, which fixes it. Elixir 1.18.1 / OTP 26.2.5.3 unchanged; the
matching hexpm/elixir:1.18.1-erlang-26.2.5.3-alpine-3.21.7 image exists
on Docker Hub for both amd64 and arm64.
The dependency bump inadvertently reverted OTP from 26.2.5.6 to 26.2.5.3.
Restore OTP to match main and keep the intended Alpine 3.21.7 bump.
OTP 26.2.5.6 applies stricter TLS certificate validation that rejects the
builds.hex.pm certificate chain (key_usage_mismatch) during mix local.hex in
the Alpine base image build, failing the image build. Pin OTP to 26.2.5.3 and
keep the Alpine 3.21.7 bump. The OTP version delta is a tracked follow-up.
@loadez
loadez force-pushed the bump/tackle-v0.4.0-hooks-processor branch from 68e343b to 344fd1e Compare August 26, 2026 11:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Backlog

Development

Successfully merging this pull request may close these issues.

3 participants