Skip to content

Discourage LLMs from touching fdctl#10014

Open
ripatel-fd wants to merge 1 commit into
mainfrom
llm-fdctl
Open

Discourage LLMs from touching fdctl#10014
ripatel-fd wants to merge 1 commit into
mainfrom
llm-fdctl

Conversation

@ripatel-fd

Copy link
Copy Markdown
Contributor

No description provided.

Copilot AI review requested due to automatic review settings June 1, 2026 06:43
@greptile-jt

greptile-jt Bot commented Jun 1, 2026

Copy link
Copy Markdown

Greptile Summary

Documentation-only PR that steers contributors (and LLMs) away from the legacy Frankendancer surface (fdctl, fddev, discoh) and toward the pure-C Firedancer build target.

  • CLAUDE.md: removes the "focus on firedancer-dev / discof instead" carve-out and simply directs readers to avoid Frankendancer-specific parts.
  • CONTRIBUTING.md: bumps the documented minimum compiler from GCC 8.5 (2024-Jul) to GCC 11 (June 2026); renames the primary build target from "Frankendancer (fdctl)" to "firedancer"; adds "atomic 32 byte load/store" to the required Haswell feature set; drops the list of experimental targets (musl/macOS/FreeBSD/SVM, arm64/ppc64le, sBPFv1/v2).
  • contrib/containers/README.md: replaces make -j all fdctl fddev with make -j to match the new default.
  • doc/build-system.md: refreshes the example ldd output to use bin/firedancer instead of bin/fdctl, with an updated library list.

No source code, build rules, or runtime behavior are touched. One minor latent inconsistency worth flagging for a future docs pass (not introduced by this PR): contrib/containers/README.md still advertises GCC 8/9/10 containers in its header while CONTRIBUTING.md now states GCC 11 is the minimum supported version.

Confidence Score: 5/5

  • Documentation-only changes with no impact on build or runtime behavior — safe to merge.
  • All four edits are prose updates to Markdown docs that align guidance with the current Firedancer-first direction. No source files, Makefiles, configs, or generated artifacts are touched, so there is no functional risk.
  • No files require special attention.

Important Files Changed

Filename Overview
CLAUDE.md Tightens guidance for LLMs: removes the carve-out that pointed contributors at Firedancer equivalents (firedancer-dev, discof) and now simply tells them to avoid Frankendancer-specific parts (fdctl, fddev, discoh). No code impact.
CONTRIBUTING.md Updates compiler compatibility section: bumps minimum GCC from 8.5 (2024-Jul) to GCC 11 (June 2026), renames the primary build target from "Frankendancer (fdctl)" to "firedancer", and adds "atomic 32 byte load/store" to the Haswell feature set. Drops the list of experimental targets (musl, macOS, FreeBSD, SVM, arm64, ppc64le, sBPFv1/v2). Docs-only.
contrib/containers/README.md Replaces make -j all fdctl fddev with make -j in the container build instructions, aligning with the move away from explicit Frankendancer targets.
doc/build-system.md Updates the example ldd output to reference build/native/gcc/bin/firedancer instead of bin/fdctl, with a corresponding refreshed library list (adds libmvec.so.1, drops librt/libdl/libpthread). Documentation refresh only.

Last reviewed commit: 7672c1b

@github-actions

github-actions Bot commented Jun 1, 2026

Copy link
Copy Markdown

Performance Measurements ⏳

Suite Baseline New Change
backtest mainnet-406545575-perf per slot 0.09004 s 0.089946 s -0.104%
backtest mainnet-406545575-perf snapshot load 1.786 s 1.784 s -0.112%
backtest mainnet-406545575-perf total elapsed 90.039632 s 89.94638 s -0.104%
firedancer mem usage with mainnet.toml 1138.39 GiB 1138.39 GiB 0.000%

Copilot AI left a comment

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.

Pull request overview

This PR updates repository documentation to steer tooling/LLM guidance away from Frankendancer (fdctl/fddev) and toward Firedancer (firedancer), and refreshes build instructions/examples accordingly.

Changes:

  • Replace fdctl references in build-system docs with firedancer (e.g., ldd example output).
  • Update contribution/build compatibility text and supported target wording.
  • Simplify container build instructions to use the default make -j target set.

Reviewed changes

Copilot reviewed 4 out of 4 changed files in this pull request and generated 3 comments.

File Description
doc/build-system.md Switches the dynamic-linking example from fdctl to firedancer.
CONTRIBUTING.md Updates compiler compatibility and target/CPU feature-set documentation for the firedancer target.
contrib/containers/README.md Simplifies build command to make -j in container instructions.
CLAUDE.md Tightens guidance to avoid Frankendancer-specific components.

Comment thread CONTRIBUTING.md
Comment on lines +329 to 330
As of June 2026, Firedancer builds on GNU/Linux sysroots with GCC 11 or
newer. Clang and CBMC are also supported build environments.
Comment thread CONTRIBUTING.md
Comment on lines +332 to +333
The "firedancer" build target only targets x86_64 with a Haswell like
minimum feature set (AVX2, FMA, atomic 32 byte load/store).
Comment on lines 57 to +60
Compile desired targets:

```bash
make -j all fdctl fddev
make -j
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.

3 participants