Skip to content

chore(gitignore): unignore src/bin and remove unimportant files #865

Open
YoganshSharma wants to merge 1 commit into
citadel-tech:masterfrom
YoganshSharma:chore/fix-gitignore
Open

chore(gitignore): unignore src/bin and remove unimportant files #865
YoganshSharma wants to merge 1 commit into
citadel-tech:masterfrom
YoganshSharma:chore/fix-gitignore

Conversation

@YoganshSharma
Copy link
Copy Markdown

@YoganshSharma YoganshSharma commented May 7, 2026

Pull Request

Description

Allow tracking src/bin/ while continuing to ignore generated root-level bin/ artifacts.

bin was added to .gitignore in #397 to avoid committing downloaded Bitcoin Core binaries. However, the broad bin ignore rule also unintentionally ignores files inside src/bin/, which contains critical Rust binary entrypoint files.

This PR also removes: /docs/fidelity_bonds.md from .gitignore
If contributors want to keep local modifications to docs/fidelity_bonds.md untracked, that rule should be added locally in: git/info/exclude instead of the shared repository .gitignore.

Type of Change

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • Code refactor / performance improvement
  • Documentation update only
  • CI / Docker / Build changes
  • Other (please describe):
    .gitignore cleanup

Protocol Version(s) Affected

  • Legacy (ECDSA — messages.rs, contract.rs, handlers.rs)
  • Taproot-Musig2 (messages2.rs, contract2.rs, handlers2.rs)
  • Both
  • [ x] Neither (infrastructure / tooling only)

Note: When modifying protocol logic, changes must be made to both versions unless the
scope is explicitly version-specific.

Affected Component(s)

  • makerd (background daemon)
  • taker (CLI client)
  • maker-cli (command-line tool)
  • Core protocol / cryptography / library
  • watch_tower (contract monitoring & recovery)
  • Docker / deployment scripts
  • Tests / test framework
  • Documentation (docs/)
  • Other (please specify):
    .gitignore cleanup

Checklist

Code Quality

  • I ran cargo +nightly fmt --all and committed the result
  • I ran cargo +stable clippy --all-features --lib --bins --tests -- -D warnings with zero warnings
  • I ran cargo +stable clippy --examples -- -D warnings with zero warnings
  • I ran RUSTDOCFLAGS="-D warnings" cargo +nightly doc --all-features --document-private-items --no-deps with zero warnings
  • Pre-commit git hook passes (ln -s ../../git_hooks/pre-commit .git/hooks/pre-commit if not already set)

Testing

  • All unit tests pass (cargo test)
  • Integration tests pass (cargo test --features integration-test)
  • Changes were manually tested on regtest
  • End-to-end maker ↔ taker swap tested (where applicable)
  • Test-only code is gated behind #[cfg(feature = "integration-test")]

Documentation

  • Relevant files in the docs/ folder were updated
  • Complex logic is commented

Security & Privacy (Critical)

  • This change preserves trustlessness and atomic swap guarantees
  • No regression in sybil resistance or fidelity bond logic
  • Tor anonymity and P2P message flow were reviewed
  • No new attack vectors or trust assumptions introduced
  • Edge cases and error handling considered
  • ZMQ subscription integrity (raw tx/block feed) is unaffected
  • integration-test feature flag is not reachable in production code paths

How to Test

# Standard swap (good baseline)
cargo test --test standard_swap --features integration-test -- --nocapture

# Abort scenarios
cargo test --test abort1 --features integration-test -- --nocapture
cargo test --test taproot_taker_abort1 --features integration-test -- --nocapture

# Malicious behavior & recovery
cargo test --test malice1 --features integration-test -- --nocapture
cargo test --test taproot_timelock_recovery --features integration-test -- --nocapture

# Or run the full suite
cargo test --features integration-test

Summary by CodeRabbit

  • Chores
    • Updated .gitignore configuration to improve build artifact management and exclude additional development environment files and generated artifacts.

Copilot AI review requested due to automatic review settings May 7, 2026 18:40
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

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

Copilot wasn't able to review any files in this pull request.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented May 7, 2026

Warning

Rate limit exceeded

@YoganshSharma has exceeded the limit for the number of commits that can be reviewed per hour. Please wait 53 minutes and 34 seconds before requesting another review.

You’ve run out of usage credits. Purchase more in the billing tab.

⌛ How to resolve this issue?

After the wait time has elapsed, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout.

Please see our FAQ for further information.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Pro

Run ID: ce9b37d8-c413-421a-9794-365d06fb8643

📥 Commits

Reviewing files that changed from the base of the PR and between c02f8a7 and 1b46bc0.

📒 Files selected for processing (1)
  • .gitignore
📝 Walkthrough

Walkthrough

The .gitignore file is updated to ignore Rust build outputs, editor configurations, coverage artifacts, and generated runtime files. It adds Cargo.lock, .vscode, .idea, .ra-target, target, bin, generated Docker and Tor configs, and .DS_Store while explicitly re-allowing src/bin via negation rule.

Changes

Gitignore Configuration

Layer / File(s) Summary
Development & Build Artifacts
.gitignore
Ignore patterns added for Rust build artifacts (Cargo.lock, target, bin), editor/IDE directories (.vscode, .idea, .ra-target), and coverage reports; src/bin is re-allowed via negation rule.
Generated & System Files
.gitignore
Ignore patterns added for generated Docker/Tor config files (docker-compose.generated.yml, torrc.generated, .docker-config) and macOS system metadata (.DS_Store).

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~2 minutes

Poem

🐰 Hops through the brush with a .gitignore gleam,
Cargo and editors tucked in the scheme,
Docker-born files and macOS dust,
Hidden away—just as developers trust!
Binaries boxed, but src/bin stays free,

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Title check ✅ Passed The title accurately describes the main change: unignoring src/bin and removing unimportant files from .gitignore, which aligns with the changeset's primary objectives.
Description check ✅ Passed The description provides clear context explaining why changes were made (unintentionally ignored src/bin/ due to broad bin/ rule from #397) and covers the Type of Change, Protocol Versions, and Affected Components sections appropriately for a .gitignore cleanup.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

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

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Tip

💬 Introducing Slack Agent: The best way for teams to turn conversations into code.

Slack Agent is built on CodeRabbit's deep understanding of your code, so your team can collaborate across the entire SDLC without losing context.

  • Generate code and open pull requests
  • Plan features and break down work
  • Investigate incidents and troubleshoot customer tickets together
  • Automate recurring tasks and respond to alerts with triggers
  • Summarize progress and report instantly

Built for teams:

  • Shared memory across your entire org—no repeating context
  • Per-thread sandboxes to safely plan and execute work
  • Governance built-in—scoped access, auditability, and budget controls

One agent for your entire SDLC. Right inside Slack.

👉 Get started


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.

Comment thread .gitignore Outdated
.idea
.ra-target
bin
!/src/bin
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

We can't ignore this. Rest are fine.

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

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

The bin in the above line is ignoring src/bin too.
this line unignores that

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Ah I see. In that case, we should just add the /bin pattern. instead of adding a ! of /src/bin.

Comment thread .gitignore Outdated
.idea
.ra-target
bin
!/src/bin
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Ah I see. In that case, we should just add the /bin pattern. instead of adding a ! of /src/bin.

@YoganshSharma YoganshSharma force-pushed the chore/fix-gitignore branch from c02f8a7 to d6282d3 Compare May 12, 2026 07:46
@YoganshSharma YoganshSharma force-pushed the chore/fix-gitignore branch from d6282d3 to 1b46bc0 Compare May 12, 2026 07:50
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