Skip to content

docs: remove stale alloy-ethers-typecast references from ARCHITECTURE.md - #2798

Merged
thedavidmeister merged 3 commits into
mainfrom
docs-2797-architecture-typecast
Aug 18, 2026
Merged

docs: remove stale alloy-ethers-typecast references from ARCHITECTURE.md#2798
thedavidmeister merged 3 commits into
mainfrom
docs-2797-architecture-typecast

Conversation

@thedavidmeister

@thedavidmeister thedavidmeister commented Jul 5, 2026

Copy link
Copy Markdown
Contributor

Closes #2797

Summary

alloy-ethers-typecast is no longer a dependency of any crate (absent from every Cargo.toml, Cargo.lock, and all Rust sources), but two ARCHITECTURE.md lines still listed it. This updates both to describe the current dependency set:

  • crates/quote/ARCHITECTURE.md: removed the alloy-ethers-typecast::ReadableClient bullet ("convenience for fetching block number across multiple HTTP RPCs" — the quote crate no longer fetches block numbers; callers pass an optional block number mapped to a BlockId). Its still-true multi-RPC fact moved into the existing raindex_bindings bullet: mk_read_provider builds an alloy provider with fallback across multiple HTTP RPCs (FallbackLayer in crates/bindings/src/provider.rs).
  • crates/common/ARCHITECTURE.md: "alloy & alloy_ethers_typecast — EVM primitives, providers, signers (Ledger), and Read/Write contract helpers" is now "alloy — EVM primitives, providers, signers (Ledger), and transaction building/sending" (Ledger via alloy::signers::ledger::LedgerSigner in crates/common/src/transaction.rs; sending via Provider::send_transaction in crates/common/src/write_tx.rs).

QA

  • Discriminating tests: n/a (docs-only)
  • Mutations applied: n/a
  • Oracle: each updated claim verified against crates/quote/Cargo.toml, crates/common/Cargo.toml, Cargo.lock, crates/bindings/src/provider.rs (mk_read_provider + FallbackLayer), crates/quote/src/rpc.rs (caller-supplied block_numberBlockId; no block-number fetching), crates/common/src/transaction.rs (LedgerSigner, ProviderBuilder, TransactionRequest), crates/common/src/write_tx.rs (send_transaction)
  • Category check: issue asks to remove/update the two stale alloy_ethers_typecast doc lines in crates/common/ARCHITECTURE.md and crates/quote/ARCHITECTURE.md; covered both, and a repo-wide grep confirms no other typecast references remain in docs or code

🤖 Generated with Claude Code

Co-Authored-By: Claude noreply@anthropic.com

Summary by CodeRabbit

  • Documentation
    • Updated architecture notes to reflect the current EVM tooling and provider setup.
    • Clarified that provider creation now uses an Alloy-based approach with fallback across multiple HTTP RPC endpoints.
    • Removed outdated dependency references from the documentation.

The alloy-ethers-typecast dependency is no longer declared by any crate;
describe the current dependency set (plain alloy plus
raindex_bindings::provider::mk_read_provider) instead.

Closes #2797

Co-Authored-By: Claude <noreply@anthropic.com>
@thedavidmeister thedavidmeister self-assigned this Jul 5, 2026
@coderabbitai

coderabbitai Bot commented Jul 5, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: b7eb983b-98a0-42ea-b67b-0974caca868a

📥 Commits

Reviewing files that changed from the base of the PR and between d8b7f8a and 37a96fe.

📒 Files selected for processing (2)
  • crates/common/ARCHITECTURE.md
  • crates/quote/ARCHITECTURE.md

📝 Walkthrough

Walkthrough

Updated architecture documentation to remove stale alloy_ethers_typecast references, clarify Alloy’s EVM responsibilities, and describe multi-RPC fallback in mk_read_provider.

Changes

Architecture documentation

Layer / File(s) Summary
Dependency reference updates
crates/common/ARCHITECTURE.md, crates/quote/ARCHITECTURE.md
The documentation now lists Alloy for EVM primitives, providers, signers, and transaction handling, and explains that mk_read_provider builds an Alloy provider with fallback across multiple HTTP RPCs.

Estimated code review effort: 1 (Trivial) | ~2 minutes

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly states the docs cleanup and the removed alloy-ethers-typecast references.
Linked Issues check ✅ Passed The docs changes match #2797 by removing stale alloy-ethers-typecast references from both ARCHITECTURE.md files.
Out of Scope Changes check ✅ Passed Only the two requested ARCHITECTURE.md documentation entries were changed, with no unrelated code or docs added.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch docs-2797-architecture-typecast

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.

@thedavidmeister

Copy link
Copy Markdown
Contributor Author

🤖 ai:producer
Producer note: this docs-only PR's three reds are all MAIN-STATE, not PR-caused (verified 2026-07-05):

  1. static + rs-static: the rainix no-vm.skip gate fires on five files that carry vm.skip ON MAIN — test/lib/deploy/LibRaindexDeployTaggedConstants.t.sol:24, LibRaindexDeployIsStartBlockArbitrum.t.sol:17, LibRaindexDeployStartBlock{Flare,Polygon,Base}.t.sol:15. Every raindex PR reds on this until main reconciles those tests with the gate (run-with-RPC vs delete vs exemption — needs a human ruling; deleting tests is not a producer call).
  2. rainix-sol/test: testAllPublishedSoldeerTagsHaveAFullConstantSuite — soldeer tag 0.1.13 was published without its *_0_1_13 deploy-constant suite; WAITING-DEPLOY class (interactive deploy/pin flow records them).
    No empty-commit retrigger pushed — a re-run reproduces both identically. Leaving this PR as-is; it becomes green the moment main is fixed.

@thedavidmeister thedavidmeister added the ai:ready AI vetter: passes review, ready for human decision label Jul 6, 2026
@thedavidmeister

thedavidmeister commented Jul 7, 2026

Copy link
Copy Markdown
Contributor Author

🤖 ai:vetter
Reviewed eaf9068: ready — removes two stale alloy-ethers-typecast doc lines exactly as issue 2797 asks. dep confirmed absent r
cost 57 — docs-only, claims spot-checked via code search

@thedavidmeister

Copy link
Copy Markdown
Contributor Author

🤖 ai:vetter
Reviewed 37a96fe: ready — closes #2797 — both stale alloy-ethers-typecast doc lines updated; replacement claims verified against source (FallbackLayer in bindings provider.rs, LedgerSigner/send_transaction in common, caller-supplied block_number in quote); QA block present and claims hold; red CI external to docs-only diff
cost 52 — docs-only, claims verified by grep

@thedavidmeister thedavidmeister added ai:blocked-on AI producer: blocked on a dependency PR and removed ai:ready AI vetter: passes review, ready for human decision labels Jul 12, 2026
@thedavidmeister

Copy link
Copy Markdown
Contributor Author

🤖 ai:producer
Blocked-on: All three reds (rainix-sol static/test, rs-static) are main-state, inherited identically by this PR (verified against run 29050617862/29050618038: same vm.skip list, same MISSING 0.1.13 constants). Fix is #2804 (removes the banned vm.skip usages + pins the 0.1.13 constants); greens after #2804 lands and this branch updates.

@thedavidmeister
thedavidmeister merged commit d24b7b6 into main Aug 18, 2026
16 of 18 checks passed
@github-actions

Copy link
Copy Markdown
Contributor

@coderabbitai assess this PR size classification for the totality of the PR with the following criterias and report it in your comment:

S/M/L PR Classification Guidelines:

This guide helps classify merged pull requests by effort and complexity rather than just line count. The goal is to assess the difficulty and scope of changes after they have been completed.

Small (S)

Characteristics:

  • Simple bug fixes, typos, or minor refactoring
  • Single-purpose changes affecting 1-2 files
  • Documentation updates
  • Configuration tweaks
  • Changes that require minimal context to review

Review Effort: Would have taken 5-10 minutes

Examples:

  • Fix typo in variable name
  • Update README with new instructions
  • Adjust configuration values
  • Simple one-line bug fixes
  • Import statement cleanup

Medium (M)

Characteristics:

  • Feature additions or enhancements
  • Refactoring that touches multiple files but maintains existing behavior
  • Breaking changes with backward compatibility
  • Changes requiring some domain knowledge to review

Review Effort: Would have taken 15-30 minutes

Examples:

  • Add new feature or component
  • Refactor common utility functions
  • Update dependencies with minor breaking changes
  • Add new component with tests
  • Performance optimizations
  • More complex bug fixes

Large (L)

Characteristics:

  • Major feature implementations
  • Breaking changes or API redesigns
  • Complex refactoring across multiple modules
  • New architectural patterns or significant design changes
  • Changes requiring deep context and multiple review rounds

Review Effort: Would have taken 45+ minutes

Examples:

  • Complete new feature with frontend/backend changes
  • Protocol upgrades or breaking changes
  • Major architectural refactoring
  • Framework or technology upgrades

Additional Factors to Consider

When deciding between sizes, also consider:

  • Test coverage impact: More comprehensive test changes lean toward larger classification
  • Risk level: Changes to critical systems bump up a size category
  • Team familiarity: Novel patterns or technologies increase complexity

Notes:

  • the assessment must be for the totality of the PR, that means comparing the base branch to the last commit of the PR
  • the assessment output must be exactly one of: S, M or L (single-line comment) in format of: SIZE={S/M/L}
  • do not include any additional text, only the size classification
  • your assessment comment must not include tips or additional sections
  • do NOT tag me or anyone else on your comment

@coderabbitai

coderabbitai Bot commented Aug 18, 2026

Copy link
Copy Markdown
Contributor

Tip

For best results, initiate chat on the files or code changes.

SIZE=S

You are interacting with an AI system.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ai:blocked-on AI producer: blocked on a dependency PR

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Stale ARCHITECTURE.md references to removed alloy-ethers-typecast dependency

1 participant