Skip to content

build: Add build recipes for gRPC binary#3250

Merged
julienrbrt merged 1 commit intomainfrom
julien/grpc-apps
Apr 14, 2026
Merged

build: Add build recipes for gRPC binary#3250
julienrbrt merged 1 commit intomainfrom
julien/grpc-apps

Conversation

@julienrbrt
Copy link
Copy Markdown
Member

@julienrbrt julienrbrt commented Apr 14, 2026

Overview

Summary by CodeRabbit

Release Notes

  • Chores
    • Added support for building and distributing the gRPC binary
    • Build pipeline now includes gRPC component compilation

@github-actions
Copy link
Copy Markdown
Contributor

The latest Buf updates on your PR. Results from workflow CI / buf-check (pull_request).

BuildFormatLintBreakingUpdated (UTC)
✅ passed⏩ skipped✅ passed✅ passedApr 14, 2026, 7:15 AM

@claude
Copy link
Copy Markdown
Contributor

claude bot commented Apr 14, 2026

Claude finished @julienrbrt's task in 58s —— View job


Code Review

  • Gather context and read changed files
  • Review .just/build.just changes
  • Post review feedback

Summary: This is a clean, minimal PR that adds build recipes for the apps/grpc binary (evgrpc). The changes are well-structured and consistent with existing patterns.

What Changed

Two additions to .just/build.just:

  1. build-grpc recipe (lines 51–57) — standalone recipe mirroring build-evm exactly.
  2. build-all integration (lines 29–30) — grpc build step inserted between evm and local-da.

Review

Consistency
The new build-grpc recipe follows the same pattern as build-evm precisely: @mkdir -p, go build -ldflags, and a Check the binary with: echo. No deviation from convention.

Binary naming
Output is named evgrpc, which correctly matches Use: "evgrpc" in apps/grpc/main.go:17.

build-all ordering
The grpc binary is inserted between evm and local-da, keeping the recipe logically grouped.

mkdir -p in build-all
build-all already calls @mkdir -p {{ build_dir }} once at the top before building any binary — the new lines correctly omit a redundant mkdir.

Minor Suggestion

The root AGENTS.md / CLAUDE.md building section only documents just build, just install, just build-all, and just docker-build. Consider adding just build-grpc for discoverability, similar to how build-evm and build-da exist as standalone recipes. Not a blocker, just a documentation gap.

Also, apps/grpc/README.md shows go build -o evgrpc without ldflags, while the just recipe correctly injects version/gitsha via -ldflags. You may want to update the README's build instruction to use just build-grpc to avoid this inconsistency — but that's out of scope for this PR.

Overall: LGTM. The change is simple, correct, and consistent with the rest of the build tooling.

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai bot commented Apr 14, 2026

📝 Walkthrough

Walkthrough

A new build-grpc recipe was added to the build system, and the build-all recipe was updated to include gRPC binary compilation alongside existing build steps for other components.

Changes

Cohort / File(s) Summary
Build Recipe Updates
.just/build.just
Added new build-grpc recipe for compiling the gRPC application, and integrated it into build-all to build gRPC binary between EVM and local-da build steps.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~3 minutes

Poem

🐰 A carrot-colored build we've baked,
With gRPC paths newly laid,
The recipes now dance in harmony,
Compiling faster, wild and free—
Just add the magic, watch it soar! ✨

🚥 Pre-merge checks | ✅ 2 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Description check ⚠️ Warning The PR description contains only the template boilerplate with no actual content explaining the changes, context, rationale, or linked issues. Fill in the Overview section with a clear explanation of the changes, context, goals, and rationale. Consider linking the relevant issue if applicable.
✅ Passed checks (2 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly and concisely describes the main changes: adding build recipes for a gRPC binary, which matches the actual modifications to the build system.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch julien/grpc-apps

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

🧹 Nitpick comments (1)
.just/build.just (1)

51-58: Consider DRYing the gRPC build command across recipes.

build-grpc and build-all now duplicate the same grpc build invocation. Reusing build-grpc inside build-all would reduce drift risk.

Suggested simplification
 build-all:
     `@echo` "--> Building all ev-node binaries"
     `@mkdir` -p {{ build_dir }}
     `@echo` "--> Building testapp"
     `@cd` apps/testapp && go build -ldflags "{{ ldflags }}" -o {{ build_dir }}/testapp .
     `@echo` "--> Building evm"
     `@cd` apps/evm && go build -ldflags "{{ ldflags }}" -o {{ build_dir }}/evm .
-    `@echo` "--> Building grpc"
-    `@cd` apps/grpc && go build -ldflags "{{ ldflags }}" -o {{ build_dir }}/evgrpc .
+    `@just` build-grpc
     `@echo` "--> Building local-da"
     `@cd` tools/local-da && go build -ldflags "{{ ldflags }}" -o {{ build_dir }}/local-da .
     `@echo` "--> All ev-node binaries built!"
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In @.just/build.just around lines 51 - 58, The gRPC build invocation is
duplicated between the Justfile recipes build-grpc and build-all; update
build-all to call the existing build-grpc recipe instead of repeating the
commands. Locate the Just recipes named build-grpc and build-all and replace the
grpc-specific lines in build-all with a dependency or invocation of build-grpc
(e.g., call or run the build-grpc recipe) so the grpc binary build is
centralized in build-grpc and not duplicated across recipes.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Nitpick comments:
In @.just/build.just:
- Around line 51-58: The gRPC build invocation is duplicated between the
Justfile recipes build-grpc and build-all; update build-all to call the existing
build-grpc recipe instead of repeating the commands. Locate the Just recipes
named build-grpc and build-all and replace the grpc-specific lines in build-all
with a dependency or invocation of build-grpc (e.g., call or run the build-grpc
recipe) so the grpc binary build is centralized in build-grpc and not duplicated
across recipes.

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: a58c7661-7af2-4f21-bfe5-39d0555598db

📥 Commits

Reviewing files that changed from the base of the PR and between cc540d5 and b7aac69.

📒 Files selected for processing (1)
  • .just/build.just

@codecov
Copy link
Copy Markdown

codecov bot commented Apr 14, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 61.79%. Comparing base (cc540d5) to head (b7aac69).
⚠️ Report is 6 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #3250      +/-   ##
==========================================
- Coverage   61.81%   61.79%   -0.02%     
==========================================
  Files         120      120              
  Lines       12670    12670              
==========================================
- Hits         7832     7830       -2     
- Misses       3961     3962       +1     
- Partials      877      878       +1     
Flag Coverage Δ
combined 61.79% <ø> (-0.02%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@julienrbrt julienrbrt merged commit 50a73fb into main Apr 14, 2026
32 checks passed
@julienrbrt julienrbrt deleted the julien/grpc-apps branch April 14, 2026 07:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants