Skip to content

feat(build): add fast-path fingerprint support to 6 remaining orchestrators - #1290

Merged
zackees merged 1 commit into
mainfrom
feat/fast-path-6-orchestrators-1288
Aug 10, 2026
Merged

feat(build): add fast-path fingerprint support to 6 remaining orchestrators#1290
zackees merged 1 commit into
mainfrom
feat/fast-path-6-orchestrators-1288

Conversation

@zackees

@zackees zackees commented Aug 9, 2026

Copy link
Copy Markdown
Member

Summary

Fixes #1288 by adding fast-path fingerprint support to the 6 platform orchestrators that were missing it, and introducing a shared CoreFingerprintMetadata struct.

Changes

New shared struct

  • CoreFingerprintMetadata in fbuild-build-engine/src/build_fingerprint/fast_path.rs

New fast-path support (6 orchestrators)

Orchestrator Firmware eh_frame Extras
Apollo3 firmware.bin yes none
CH32V firmware.bin no series
ESP8266 firmware.bin yes flash_mode, flash_freq
NXPLPC firmware.bin yes lpc_family
Silabs firmware.bin no protocol_stack
STM32 firmware.hex yes none

Verification

  • Workspace compiles
  • 759 tests pass (0 failures)
  • No new clippy warnings

🤖 Generated with Claude Code

@coderabbitai

coderabbitai Bot commented Aug 9, 2026

Copy link
Copy Markdown

Warning

Review limit reached

@zackees, you've reached your PR review limit, so we couldn't start this review.

Next review available in: 7 minutes

You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository.

How can I continue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews.

How do review limits work?

CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability.

For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window.

Please refer docs for additional details.

Review details
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: 9b00db92-2707-49ad-87fb-20d914bcf395

📥 Commits

Reviewing files that changed from the base of the PR and between bed6808 and 332bfd9.

📒 Files selected for processing (8)
  • crates/fbuild-build-arm/src/apollo3/orchestrator.rs
  • crates/fbuild-build-arm/src/nxplpc/orchestrator.rs
  • crates/fbuild-build-arm/src/silabs/orchestrator.rs
  • crates/fbuild-build-arm/src/stm32/orchestrator/mod.rs
  • crates/fbuild-build-engine/src/build_fingerprint/fast_path.rs
  • crates/fbuild-build-engine/src/build_fingerprint/mod.rs
  • crates/fbuild-build-esp/src/esp8266/orchestrator.rs
  • crates/fbuild-build-mcu/src/ch32v/orchestrator.rs

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.

@zackees
zackees force-pushed the feat/fast-path-6-orchestrators-1288 branch 3 times, most recently from 4b8d68d to 332bfd9 Compare August 9, 2026 23:32
feat(build): add fast-path fingerprint support to 6 remaining orchestrators (#1288)

CH32V, ESP8266, STM32, NXPLPC, Silabs, and Apollo3 now all use
the warm-build fast-path fingerprint check, matching the 7
orchestrators that already had it. Also introduces a shared
CoreFingerprintMetadata struct in fbuild-build-engine that all
future orchestrators can use instead of hand-rolling their own
per-platform metadata structs.

Each orchestrator hashes its board config, profile, env, and
platform-specific extras (series, flash mode/freq, lpc family,
protocol stack) via stable_hash_json, checks against the
persisted fingerprint, and reuses cached artifacts on a hit.

Co-Authored-By: Claude <noreply@anthropic.com>
@
@zackees
zackees force-pushed the feat/fast-path-6-orchestrators-1288 branch from 332bfd9 to d3e9034 Compare August 10, 2026 00:00
@zackees
zackees merged commit 518d2b8 into main Aug 10, 2026
@zackees
zackees deleted the feat/fast-path-6-orchestrators-1288 branch August 10, 2026 00:00
@fastled-project-sync fastled-project-sync Bot moved this to Triage in FastLED Tracker Aug 10, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Triage

Development

Successfully merging this pull request may close these issues.

refactor: extract shared fast-path BuildResult assembly from orchestrators

1 participant