Rename OrderBook to Raindex#2526
Conversation
Rename all Solidity source contracts, libraries, and scripts from OrderBook naming to Raindex naming. File renames and content updates for src/abstract/, src/concrete/, src/lib/, src/generated/, and script/. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Content and file renames for all test utility, abstract, concrete, and lib test files. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Update root Cargo.toml, crate Cargo.toml files, and all Rust source files. Rename crate names from rain_orderbook_* to raindex_*. Update settings crate types (OrderbookCfg -> RaindexCfg, etc.), YAML keys, module declarations, and file names. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Rename YAML config keys (orderbooks -> raindexes) and bump spec version from 5 to 6. Fix remaining Orderbook type references in js_api yaml module and settings crate. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Update import paths, YAML key strings, and constant prefixes that were missed in the initial Rust rename pass. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Update foundry.toml, flake.nix, .gitignore, .devcontainer.json, package.json, README.md, AGENTS.md, copilot instructions, and GitHub workflow files. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Rename directory, update package.json names and URLs, update build scripts (wasm crate name, wbg json), ARCHITECTURE.md, README.md, test files, and ui-components dependency reference. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Rename Svelte components (DropdownOrderbooksFilter -> DropdownRaindexesFilter, ListViewOrderbookFilters -> ListViewRaindexFilters), update imports, types, and variable names. Update ui-components and raindex package dependencies and URLs. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
Note Reviews pausedIt looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the Use the following commands to manage reviews:
Use the checkboxes below for quick actions:
📝 WalkthroughWalkthroughThis pull request performs a comprehensive project rebrand from "Rain Orderbook" to "Raindex" across the entire codebase. Changes include renaming Rust crate dependencies, updating GitHub Actions workflows, modifying CLI command wiring, adjusting documentation, and updating configuration files to reflect the new project identity throughout. Changes
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~25 minutes Poem
🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
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. Comment |
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Add vm.assume guard to LibOrder.testHashNotEqual (A10-1) - Fix stale NatSpec referencing onlyValidTask in RaindexV6FlashBorrower (CR-3) - Mark already-fixed items (CR-2, A14-3) in triage - Create GitHub issues for 17 remaining findings (#2533-#2539) - Zero PENDING items remain in triage Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
… crates Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
RaindexV6 confirmed at 23,437 bytes — identical to pre-rename. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
The rainlang word "orderbook" is now "raindex" — this is a breaking change for existing rainlang expressions. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Fix "raindexs" → "raindexes" spelling in test descriptions - Rename OB_NPM_PACKAGE → RAINDEX_NPM_PACKAGE in CI - Rename ob-addr CLI alias → raindex-addr - Update ob-yaml.md URLs → raindex-yaml.md - Fix "order book" → "raindex" in NatSpec comments Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- ob-rs-test → raindex-rs-test - ob-ui-components-prelude → raindex-ui-components-prelude - rainix-ob-cli-artifact → raindex-cli-artifact Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- raindex_address short flag set to -a to avoid clash with -r (rpcs) - Fix remaining db_schema_version assertions in CLI tests Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Zoltu factory produces deterministic addresses regardless of deployer key, so there's no reason to use a dev key on non-main branches. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…aindex # Conflicts: # .github/workflows/build-cli-binary.yaml # .github/workflows/npm-package-release.yml # Cargo.toml # README.md # crates/common/src/raindex_client/order_quotes.rs # crates/common/src/take_orders/candidates.rs # crates/js_api/src/registry.rs # crates/quote/ARCHITECTURE.md # crates/quote/src/order_quotes.rs # crates/quote/src/rpc.rs # package-lock.json # packages/orderbook/test/js_api/dotrainRainlang.test.ts # packages/raindex/package.json # packages/raindex/test/js_api/dotrainRainlang.test.ts # packages/raindex/test/js_api/dotrainRegistry.test.ts # packages/raindex/typedoc.json # packages/ui-components/package.json # packages/ui-components/src/__tests__/loadRainlangUrl.test.ts # packages/ui-components/src/__tests__/registry.test.ts # packages/ui-components/src/lib/providers/dotrainRainlang/DotrainRainlangProvider.svelte # packages/ui-components/src/lib/providers/dotrainRainlang/context.ts # packages/ui-components/src/lib/services/loadRainlangUrl.ts # packages/webapp/src/lib/constants.ts # packages/webapp/src/routes/+layout.ts # packages/webapp/src/routes/deploy/+layout.ts # packages/webapp/src/routes/deploy/[orderName]/+layout.ts # packages/webapp/src/routes/deploy/[orderName]/[deploymentKey]/+layout.ts # packages/webapp/src/routes/deploy/[orderName]/[deploymentKey]/fullDeployment.test.ts
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@README.md`:
- Around line 54-56: The fenced code block containing the command "cd
packages/webapp && nix develop -c npm run dev" is missing a language tag and
triggers markdownlint MD040; update that fenced block to include a language
identifier (e.g., bash) so it becomes ```bash at the opening fence, keeping the
same command content and closing fence unchanged.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
Run ID: bb8fa837-0a47-412c-9827-52b6bb5bd8de
📒 Files selected for processing (5)
.github/workflows/npm-package-release.yml.github/workflows/vercel-preview-pr-target.yaml.github/workflows/vercel-preview.yamlCargo.tomlREADME.md
✅ Files skipped from review due to trivial changes (2)
- Cargo.toml
- .github/workflows/npm-package-release.yml
🚧 Files skipped from review as they are similar to previous changes (2)
- .github/workflows/vercel-preview-pr-target.yaml
- .github/workflows/vercel-preview.yaml
Removing self from the outputs lambda to satisfy deadnix broke the flake — nix always passes self, so the function must accept it. Use the rainix pattern (omit self, add ...) which both lets nix pass self and keeps deadnix quiet about unused params. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Six leftover references to the old crate paths and types that caused cargo compilation failures across rs-static, wasm, and js-bindings: - crates/quote/src/injector.rs: rain_orderbook_bindings -> raindex_bindings - crates/common/src/take_orders/mod.rs: rain_orderbook_quote -> raindex_quote - crates/common/src/raindex_client/orders.rs: rain_orderbook_quote -> raindex_quote - crates/common/src/raindex_client/take_orders/single.rs: rain_orderbook_bindings -> raindex_bindings, rain_orderbook_subgraph_client -> raindex_subgraph_client - crates/subgraph/src/multi_raindex_client.rs: OrderbookSubgraphClientError -> RaindexSubgraphClientError, MultiOrderbookSubgraphClient -> MultiRaindexSubgraphClient Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
…ingle.rs Two more leftover identifier references in crates/common/src/raindex_client/take_orders/single.rs:652-653 that caused raindex-rs-test and rainix-rs-static to fail compiling raindex_common's test target. - OrderbookIdentifier -> RaindexIdentifier - CHAIN_ID_1_ORDERBOOK_ADDRESS -> CHAIN_ID_1_RAINDEX_ADDRESS Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
…inherits_signed_context_from_quote The test mocks a subgraph response in crates/common/src/raindex_client/take_orders/single.rs but three embedded JSON keys still used the old "orderbook" field name. The post-rename subgraph schema's RaindexOrder type expects "raindex", so cynic's deserialiser failed with "missing field `raindex`". Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
When fetch_manifests fails as a batch (e.g. unsupported db-schema-version
in the served manifest) the runner used to synthesize a single
TargetFailure with chain_id=0 and Address::ZERO, so the UI rendered
"raindex 0x0000…0000 failed at ManifestFetch: …" for every chain. Use
the chain's first configured raindex (chain_id + address + key) so the
UI shows real identity. When settings has no raindexes configured at
all, surface that as the cause directly ("no raindexes configured: …")
instead of pretending a zero-address raindex exists.
Drop prettier and prettier-plugin-* from root package.json — rainix's
prettier-bundle (PR #120) supplies them via the dev shell, and the
no-consumer-prettier pre-commit hook now blocks commits if consumers
declare them. Reformat the file to 2-space indent applied by the
bundle's prettierrc.
Extends manifest_fetch_failure_leaves_state_unloaded to pin the new
identity (chain_id == 42161, raindex_address == RAINDEX_A,
raindex_key == "raindex-a").
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
PR #120 in rainix replaces consumer-side prettier with a curated bundle applied via the rainix pre-commit hook. Per its consumer-impact note, downstream repos must drop prettier from package.json (already done for the root), drop prettier-plugin-* from package.json, AND drop any .prettierrc / prettier.config.* files. Removes: - workspace `format`, `format-check`, and the `prettier --list-different` portion of `lint` scripts in packages/{webapp,ui-components,raindex} - packages/{webapp,ui-components,raindex}/.prettierrc files Lint scripts now run eslint only. Format enforcement happens via the rainix pre-commit hook. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|
i've updated the registry and manually tested out the preview url and webapp works without issues. |
…aindex # Conflicts: # crates/cli/src/subgraph.rs # crates/common/src/local_db/query/fetch_orders/mod.rs # crates/common/src/raindex_client/local_db/mod.rs # crates/common/src/raindex_client/local_db/pipeline/runner/environment.rs # crates/common/src/raindex_client/local_db/pipeline/runner/scheduler/native.rs # crates/common/src/raindex_client/local_db/pipeline/status/native.rs # crates/common/src/raindex_client/local_db/pipeline/status/wasm.rs # crates/common/src/raindex_client/local_db/query/fetch_orders.rs # crates/common/src/raindex_client/orders.rs # crates/subgraph/src/multi_raindex_client.rs # crates/subgraph/src/raindex_client/order.rs # crates/subgraph/src/types/common.rs # package-lock.json # packages/orderbook/package.json # packages/ui-components/package.json
…de-by-owner code Resolves leaks from main's #2497 (trade-by-hash) and #2499 (get_trades_for_owner) PRs that landed during the merge. Renames cover SQL clause names, struct field accesses (raindex_addresses, raindex_in), test fixture YAML keys (raindexes:, arbitrum-raindex), snapshot field names (raindexes, raindex_count, raindex_key), GraphQL filter strings (raindexIn), and the CHAIN_ID_1_RAINDEX_ADDRESS test constant references inside trades/mod.rs.
…call Three CI compile failures from the previous merge: - crates/common/.../status/wasm.rs: test fns and ClientStatusBus call sites still referenced ob_id; renamed to raindex_id alongside the existing with_raindex_id constructor - crates/common/.../trades/mod.rs:271: get_trade_detail was calling get_raindex_client (returns ClientRef, no Result) when it needs the subgraph client; switched to get_raindex_subgraph_client - flake.nix test-js-bindings: dropped npm run format-check (script was removed earlier in the no-consumer-prettier migration)
Summary
Comprehensive rename of "OrderBook" / "orderbook" to "Raindex" / "raindex" across the entire codebase and dependent repositories.
What changed
ob_idstruct field →raindex_id(~300 usages)obabbreviation variable names → descriptiveraindex*namessrc/concrete/ob/→src/concrete/raindex/,test/concrete/ob/→test/concrete/raindex/packages/orderbook→packages/raindex(directory rename)[orderbook]→[raindex]ob-rs-test→raindex-rs-test,ob-ui-components-prelude→raindex-ui-components-prelude,rainix-ob-cli-artifact→raindex-cli-artifactOrderbookentity →Raindex, allorderbookfields →raindexob4→raindex"orderbook"→"raindex"(breaking for existing expressions)Companion PRs (merged)
ob-yaml.md→raindex-yaml.md, document version 6Breaking changes
orderbooks:→raindexes:,orderbook:→raindex:.rainfrontmatter and standalone YAML configs must be updatedorderbook_addresscolumns →raindex_addressacross all tables (including PRIMARY KEYs).DB_SCHEMA_VERSIONbumped 2→3Orderbookentity →Raindex, allorderbookfields →raindexon every entity (Vault, Order, Trade, Deposit, Withdrawal, etc.)ob4→raindexob4-*endpoints stop updating"orderbook"field →"raindex"inTakeOrdersReadyResponse. Doc strings updated ("the raindex contract")@rainlanguage/orderbook→@rainlanguage/raindexOrderbookYaml→RaindexYaml,OrderbookYamlError→RaindexYamlError,getOrderbookByAddress()→getRaindexByAddress().orderbook()→.raindex()onRaindexOrder,RaindexVault,TakeOrdersInfo;.orderbookAddress→.raindexAddressonDeploymentTransactionArgs"obId"→"raindexId"on sync status;"orderbookAddress"→"raindexAddress"on vault/order objects;"orderbook"→"raindex"on trade/order objects"orderbook"→"raindex". Sub-parser bytecode and deterministic deploy address changed.rainfiles usingorderbook()must update. New sub-parser must be deployed/orders/[chainId]-[orderbook]-[orderHash]→[raindex], same for vaultsob-addralias →raindex-addrob-rs-test,ob-ui-components-prelude,rainix-ob-cli-artifactrenamedIntentionally preserved
IOrderBookV1-V5Solidity interfaces inlib/rain.raindex.interface/src/interface/deprecated/— historical ABIs for backwards compatibilitycrates/settings/src/local_db_manifest.rsdocumenting the DB column renameraindexsin GraphQL codegen — The Graph framework naively appendssto entity namesMigration checklist
Rebuild remote DB dumps with new schema (
raindex_addresscolumns)Deploy new sub-parser contract (bytecode changed)
Deploy new Goldsky subgraphs (
raindex-*)Update subgraph URLs in all strategy YAML configs
Update
rain.strategiesregistry to version 6 withraindexes:keysUpdate
RAINLANG_URLinpackages/webapp/src/lib/constants.tsto new strategies commitUpdate external
.rainstrategy files:orderbooks:→raindexes:,orderbook:→raindex:,version: 6Update external
.rainsource usingorderbook()word →raindex()Update any API consumers parsing old JSON field names
Update any JS/TS code using
OrderbookYaml→RaindexYaml,.orderbook()→.raindex(), etc.Publish new
@rainlanguage/raindexnpm packageCoordinate npm publish — consumers must explicitly switch from
@rainlanguage/orderbookto@rainlanguage/raindexMerge Rename ob-yaml.md to raindex-yaml.md specs#52 (rename ob-yaml.md → raindex-yaml.md)
Verify Vercel project configs point to
packages/raindex(notpackages/orderbook)Users clear local DB cache (fresh sync required)
Manual end-to-end verification by @Siddharth2207 before merging
Manual end-to-end verification by @hardyjosh before merging
Manual end-to-end verification by @findolor before merging
🤖 Generated with Claude Code
Summary by CodeRabbit
Chores
@rainlanguage/raindex), Rust crate identifiers, CI/CD workflows, configuration files, and build processes throughout the repository.Documentation