Skip to content

Integrate reprocess behavior and break out services#140

Merged
galt-tr merged 8 commits into
mainfrom
reprocessIntegration
May 13, 2026
Merged

Integrate reprocess behavior and break out services#140
galt-tr merged 8 commits into
mainfrom
reprocessIntegration

Conversation

@galt-tr
Copy link
Copy Markdown
Contributor

@galt-tr galt-tr commented May 12, 2026

This pull request completes the microservice decomposition of the Arcade application by extracting several previously in-process services (SSE, chaintracks, and the block-processing watchdog) into standalone deployments, each with its own configuration, ports, and Kubernetes manifests. This separation improves scalability, reliability, and maintainability by allowing each service to be managed and scaled independently. The configuration system is updated with new config blocks, sensible defaults, and validation logic for the new services.

The most important changes are:

Microservice Extraction and Deployment:

  • Added standalone Kubernetes Deployments and Services for chaintracks (deploy/chaintracks.yaml), sse (deploy/sse.yaml), and watchdog (deploy/watchdog.yaml), each with its own port and resource configuration. These services are no longer run as part of the API server or bump-builder pods. [1] [2] [3] [4] [5]
  • Updated the all-in-one deployment (deploy/all.yaml) to expose the new ports for SSE and chaintracks, ensuring proper routing and access in development and testing environments. [1] [2]

Configuration System Updates:

  • Introduced new configuration sections in config/config.go for WatchdogConfig, SSEConfig, and extended ChaintracksServerConfig with host/port fields and improved documentation. These provide fine-grained control over the new microservices. [1] [2] [3]
  • Added default values for all new config options and ensured that the new services are enabled by default, with sensible resource and operational defaults.

Service Wiring and Validation:

  • Updated the service builder in app/app.go to conditionally start the new services based on config and availability of dependencies, with appropriate logging if prerequisites are missing. [1] [2]
  • Extended config validation to check for required fields and valid values when enabling the watchdog service.

These changes collectively modernize the Arcade deployment model, enabling independent operation and scaling of critical infrastructure components.

@galt-tr galt-tr requested a review from mrz1836 as a code owner May 12, 2026 12:44
@github-actions github-actions Bot added the size/XL Very large change (>500 lines) label May 12, 2026
Comment thread services/chaintracks_server/service.go Fixed
…ed in path expression'

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
Comment thread services/chaintracks_server/service.go Fixed
@galt-tr galt-tr assigned galt-tr and unassigned mrz1836 May 12, 2026
Copy link
Copy Markdown
Collaborator

@mrz1836 mrz1836 left a comment

Choose a reason for hiding this comment

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

CI is failing

galt-tr and others added 5 commits May 13, 2026 13:23
…ed in path expression'

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
golangci-lint 2.12.2 in CI no longer flags context.WithCancel patterns
where the cancel is stored for later invocation (gosec G115 / G505
relaxation), so the suppression at services/sse/manager.go:232 became
unused under nolintlint. The local 2.11.4 still required it, masking
the CI failure.
@mrz1836 mrz1836 added feature Any new significant addition refactor Any significant refactoring labels May 13, 2026
@mrz1836 mrz1836 self-requested a review May 13, 2026 19:35
Copy link
Copy Markdown
Collaborator

@mrz1836 mrz1836 left a comment

Choose a reason for hiding this comment

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

LGTM

@galt-tr galt-tr merged commit 7dab540 into main May 13, 2026
50 checks passed
@galt-tr galt-tr deleted the reprocessIntegration branch May 13, 2026 19:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

feature Any new significant addition refactor Any significant refactoring size/XL Very large change (>500 lines)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants