Skip to content

docs: expand CLAUDE.md with full build, architecture, and skills reference#1441

Merged
douenergy merged 3 commits intoCanner:mainfrom
goldmedal:chore/update-claduemd
Mar 11, 2026
Merged

docs: expand CLAUDE.md with full build, architecture, and skills reference#1441
douenergy merged 3 commits intoCanner:mainfrom
goldmedal:chore/update-claduemd

Conversation

@goldmedal
Copy link
Copy Markdown
Contributor

@goldmedal goldmedal commented Mar 11, 2026

Summary

  • Expand .claude/CLAUDE.md with comprehensive build & development commands for all modules (wren-core, wren-core-py, ibis-server, mcp-server, Docker)
  • Add detailed architecture section covering query flow, wren-core internals, ibis-server internals, and manifest types
  • Add known limitations section (ModelAnalyzeRule correlated subquery issue, affected TPCH queries)
  • Add skills reference documenting all project-level and portable skills
  • Add ibis-server local test setup instructions including required env vars and macOS OpenSSL fix

Test plan

  • No code changes — docs only
  • Verify all commands listed in CLAUDE.md are accurate against the repo

🤖 Generated with Claude Code

Summary by CodeRabbit

  • Documentation
    • Enhanced developer documentation with expanded architecture details and module descriptions
    • Improved build and development instructions with comprehensive commands and prerequisites
    • Added documentation on known limitations and platform-specific considerations
    • Clarified conventions for CI, formatting, and dependency management
    • Reorganized and enhanced technical guidance for better clarity

…rence

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@github-actions github-actions bot added the documentation Improvements or additions to documentation label Mar 11, 2026
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai bot commented Mar 11, 2026

📝 Walkthrough

Walkthrough

Documentation expansion of .claude/CLAUDE.md adds comprehensive module descriptions, build commands per module, new Build strategies section, enhanced architecture details, improved testing guidance, and a Known wren-core Limitations section. Total changes: +136/-25 lines.

Changes

Cohort / File(s) Summary
Documentation Enhancement
.claude/CLAUDE.md
Restructured and expanded project overview with granular module descriptions, detailed build/development commands per module, new Build strategies section covering WHEEL_SOURCE and BuildKit, enhanced architecture documentation with data flow routing details, expanded testing guidance with environment variables and platform notes, and new Known wren-core Limitations section.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Possibly related PRs

Suggested reviewers

  • douenergy

Poem

🐰✨ A rabbit hops through docs so grand,
With modules mapped across the land,
Build strategies shine, limits laid bare,
Architecture tales beyond compare!
Knowledge blooms in each structured line,
Making wren-engine's wisdom divine! 🌿

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately reflects the main change: expanding CLAUDE.md documentation with comprehensive build instructions, architecture details, and a skills reference.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

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

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment

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.

goldmedal and others added 2 commits March 11, 2026 11:02
@goldmedal goldmedal requested a review from douenergy March 11, 2026 03:07
Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 2

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In @.claude/CLAUDE.md:
- Around line 11-18: Update the heading text that currently reads "Four main
modules:" to accurately reflect the list length (change it to "Five main
modules:") in the .claude/CLAUDE.md section that lists wren-core,
wren-core-base, wren-core-py, ibis-server, and mcp-server so the heading and the
bullet list agree.
- Around line 80-85: The prerequisites under the "Prerequisites for local
strategy (one-time setup):" section currently list a macOS-specific command
("brew install zig") as if universal; update this section to either scope the
macOS command (e.g., prefix "macOS:" before "brew install zig") or add
equivalent Linux package instructions (e.g., "Linux:" with appropriate
package-manager commands for Zig such as apt/yum/pacman or a link to Zig install
instructions) and keep the rustup target lines as a cross-platform note (or
label them "macOS / Linux"). Ensure the edit references the same heading
"Prerequisites for local strategy (one-time setup):" so readers on non-macOS
platforms see the correct install steps.

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 6ec567c8-1ddd-4b29-9ba1-4e564aa10f5b

📥 Commits

Reviewing files that changed from the base of the PR and between 1e92894 and e8d57a7.

📒 Files selected for processing (1)
  • .claude/CLAUDE.md

Comment on lines +11 to +18
Four main modules:

- **wren-core/** — Rust semantic engine (Cargo workspace: `core/`, `sqllogictest/`, `benchmarks/`, `wren-example/`). Handles MDL analysis, query planning, logical plan optimization, and SQL generation via DataFusion.
- **wren-core-base/** — Shared Rust crate with manifest types (`Model`, `Column`, `Metric`, `Relationship`, `View`). Has optional `python-binding` feature for PyO3 compatibility.
- **wren-core-py/** — PyO3 bindings exposing wren-core to Python. Built with Maturin.
- **ibis-server/** — FastAPI web server (Python 3.11). Provides REST API for query execution, validation, and metadata. Uses Ibis framework for data source connectivity.
- **mcp-server/** — MCP server exposing Wren Engine to AI agents (Claude, Cline, Cursor).

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.

⚠️ Potential issue | 🟡 Minor

Fix the module count in this section.

Line 11 says “Four main modules,” but the list contains five entries (wren-core, wren-core-base, wren-core-py, ibis-server, mcp-server). Please make the heading and bullets agree.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In @.claude/CLAUDE.md around lines 11 - 18, Update the heading text that
currently reads "Four main modules:" to accurately reflect the list length
(change it to "Five main modules:") in the .claude/CLAUDE.md section that lists
wren-core, wren-core-base, wren-core-py, ibis-server, and mcp-server so the
heading and the bullet list agree.

Comment on lines +80 to +85
**Prerequisites for local strategy (one-time setup):**
```bash
brew install zig
rustup target add aarch64-unknown-linux-gnu # Apple Silicon
rustup target add x86_64-unknown-linux-gnu # Intel Mac
```
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.

⚠️ Potential issue | 🟡 Minor

Scope these prerequisites to macOS or add a Linux variant.

brew install zig is macOS-specific, but the heading reads like universal setup for the local build strategy. That will mislead non-macOS contributors unless this is labeled explicitly or paired with Linux instructions.

📝 Suggested wording
-**Prerequisites for local strategy (one-time setup):**
+**Prerequisites for local strategy on macOS (one-time setup):**

+If Linux is also supported for the local strategy, add the equivalent package-manager command there as well.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In @.claude/CLAUDE.md around lines 80 - 85, The prerequisites under the
"Prerequisites for local strategy (one-time setup):" section currently list a
macOS-specific command ("brew install zig") as if universal; update this section
to either scope the macOS command (e.g., prefix "macOS:" before "brew install
zig") or add equivalent Linux package instructions (e.g., "Linux:" with
appropriate package-manager commands for Zig such as apt/yum/pacman or a link to
Zig install instructions) and keep the rustup target lines as a cross-platform
note (or label them "macOS / Linux"). Ensure the edit references the same
heading "Prerequisites for local strategy (one-time setup):" so readers on
non-macOS platforms see the correct install steps.

@douenergy douenergy merged commit feeba6a into Canner:main Mar 11, 2026
7 checks passed
nhaluc1005 pushed a commit to nhaluc1005/text2sql-practice that referenced this pull request Apr 3, 2026
…rence (Canner#1441)

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants