Skip to content

feat(xtask): add IR benchmark evidence command - #689

Merged
flyingrobots merged 15 commits into
spec/external-target-protocol-mvpfrom
evidence/rust-ir-performance-baseline
Jul 5, 2026
Merged

flyingrobots merged 15 commits into
spec/external-target-protocol-mvpfrom
evidence/rust-ir-performance-baseline

Conversation

@flyingrobots

Copy link
Copy Markdown
Owner

Summary

  • Add cargo xtask bench-ir as a Rust-native advisory IR lowering benchmark.
  • Generate scale fixtures for wide schemas, deep input nesting, directive-heavy schemas, operation-heavy schemas, and extension folding.
  • Emit table or JSON reports with structural counters, timing samples, summary timings, and explicit memory.peakRss: "not-captured" posture.
  • Update active performance evidence docs so current guidance points at cargo xtask bench-ir instead of retired pnpm perf:ir scripts.

Validation

  • cargo test -p xtask -- --nocapture
  • cargo --quiet xtask bench-ir --json --iterations 1 --warmups 0
  • cargo xtask bench-ir --iterations 1 --warmups 0 --output out/rust-ir-performance-baseline.json
  • cargo xtask help
  • cargo xtask docs-check
  • pnpm run preflight
  • pre-push Rust product preflight

Closes #681

@coderabbitai

coderabbitai Bot commented Jul 4, 2026 •

Copy link
Copy Markdown

Warning

Review limit reached

@flyingrobots, you've reached your PR review limit, so we couldn't start this review.

Next review available in: 26 minutes

Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available.
You're only billed for reviews past your plan's rate limits ($0.25/file).

How can I continue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews.

How do review limits work?

CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability.

For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window.

Please refer docs for additional details.

Review details
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: 02842055-e0fb-4a4f-a253-643f4dddec17

📥 Commits

Reviewing files that changed from the base of the PR and between d6f0c62 and c08bd7e.

📒 Files selected for processing (21)
  • CHANGELOG.md
  • CONTRIBUTING.md
  • SECURITY.md
  • crates/wesley-core/src/adapters/apollo.rs
  • crates/wesley-core/tests/lowering_validation.rs
  • docs/design/0013-rust-ir-parity-sentinel/EVIDENCE_rust-core-performance-baseline.md
  • docs/design/0013-rust-ir-parity-sentinel/SOURCE_wesley-core-rs-ir-contract-and-fixtures.md
  • docs/design/0013-rust-ir-parity-sentinel/rust-ir-parity-sentinel.md
  • docs/design/0015-resilience-policy-boundary/resilience-policy-boundary.md
  • docs/design/0016-rust-core-binding-observatory/EVIDENCE_rust-core-binding-and-memory-baselines.md
  • docs/design/0016-rust-core-binding-observatory/rust-core-binding-observatory.md
  • docs/design/0017-rust-native-front-door-and-node-retirement/PARITY_SENTINEL_ARCHIVE.md
  • docs/reference/directives.md
  • docs/topics/README.md
  • docs/topics/ci-workflows.md
  • docs/topics/contributing/first-pr.md
  • docs/topics/docs-orientation.md
  • docs/topics/security-tooling.md
  • docs/topics/validation.md
  • docs/truth-manifest.json
  • xtask/src/main.rs
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch evidence/rust-ir-performance-baseline

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.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: ef746ad889

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread xtask/src/main.rs Outdated
@github-actions

github-actions Bot commented Jul 5, 2026 •

Copy link
Copy Markdown

🔍 The Case of Pull Request #689

Schema Sets

  • ecommerce
  • reference

Schema Set ecommerce

Plain-English Readout

  • Holmes (evidence investigation): The Holmes report is unavailable because the workflow finished without a readable holmes-report.json artifact.
  • Watson (independent verification): The Watson report is unavailable because the workflow finished without a readable watson-report.json artifact.
  • Moriarty (trend forecast): The Moriarty forecast is unavailable because the workflow finished without a readable moriarty-report.json artifact.

Suggested next actions

  1. Regenerate the HOLMES artifacts and make sure holmes-report.json is uploaded before trusting this PR summary.
  2. Regenerate the WATSON artifacts and make sure watson-report.json is uploaded before trusting this PR summary.
  3. Regenerate the MORIARTY artifacts and make sure moriarty-report.json is uploaded before trusting this PR summary.
🕵️ SHA-lock HOLMES full report for ecommerce (click to expand)

Report unavailable for holmes: readable holmes-report.md artifact not found.

🩺 Dr. WATSON full report for ecommerce (click to expand)

Report unavailable for watson: readable watson-report.md artifact not found.

🔮 Professor MORIARTY full report for ecommerce (click to expand)

Report unavailable for moriarty: readable moriarty-report.md artifact not found.


Schema Set reference

Plain-English Readout

  • Holmes (evidence investigation): The Holmes report is unavailable because the workflow finished without a readable holmes-report.json artifact.
  • Watson (independent verification): The Watson report is unavailable because the workflow finished without a readable watson-report.json artifact.
  • Moriarty (trend forecast): The Moriarty forecast is unavailable because the workflow finished without a readable moriarty-report.json artifact.

Suggested next actions

  1. Regenerate the HOLMES artifacts and make sure holmes-report.json is uploaded before trusting this PR summary.
  2. Regenerate the WATSON artifacts and make sure watson-report.json is uploaded before trusting this PR summary.
  3. Regenerate the MORIARTY artifacts and make sure moriarty-report.json is uploaded before trusting this PR summary.
🕵️ SHA-lock HOLMES full report for reference (click to expand)

Report unavailable for holmes: readable holmes-report.md artifact not found.

🩺 Dr. WATSON full report for reference (click to expand)

Report unavailable for watson: readable watson-report.md artifact not found.

🔮 Professor MORIARTY full report for reference (click to expand)

Report unavailable for moriarty: readable moriarty-report.md artifact not found.


📚 Glossary (what the Holmes terms mean)
  • HOLMES: Wesley’s main evidence investigation. It decides whether the cited proof is strong enough to justify shipping this commit.
  • WATSON: An independent verification pass. It checks Holmes’s citations and score math instead of trusting them blindly.
  • MORIARTY: A readiness forecast over time. It is advisory trend analysis, not the release gate itself.
  • Schema coverage score (SCS): How much of the schema has direct supporting evidence across generated artifacts and cited proof.
  • Test confidence index (TCI): How much test evidence exists for constraints, policies, relationships, and operations.
  • Migration risk index (MRI): How risky the schema change is to roll out. Lower is better.
  • Evidence trust: Whether the report is backed by exact citations, whole-file citations, or coarse references. Weak trust means the claim may be directionally right but not specific enough to trust blindly.
  • Citation quality: A count of exact line-span citations versus whole-file or coarse references.
  • ELEMENTARY: Ready to ship based on the current evidence.
  • REQUIRES INVESTIGATION: More work or review is needed before shipping.
  • YOU SHALL NOT PASS: Do not ship this change in its current state.

Machine-readable reports are grouped by schema set in workflow artifacts.


Filed at 221B Repository Street

@flyingrobots

Copy link
Copy Markdown
Owner Author

Activity Summary

Item Severity Source File Commit Outcome
bench-ir ignored CARGO_TARGET_DIR when locating the built wesley binary P2 Review thread xtask/src/main.rs c08bd7ed build_wesley_for_bench now returns the debug binary path from CARGO_TARGET_DIR when set, otherwise repo target/debug; run_bench_ir uses that path for all benchmark lowers.

Validation:

  • RED: cargo test -p xtask bench_ir_binary_path_honors_cargo_target_dir -- --nocapture failed before implementation because the resolver did not exist.
  • GREEN: cargo test -p xtask bench_ir -- --nocapture passed.
  • cargo test -p xtask -- --nocapture passed.
  • cargo fmt --check passed.
  • git diff --check origin/main...HEAD passed.
  • CARGO_TARGET_DIR=target/bench-ir-review cargo xtask bench-ir --json --iterations 1 --warmups 0 emitted "lowerer": "target/bench-ir-review/debug/wesley".
  • pnpm run preflight passed.
  • Push-time Rust product preflight passed.
  • gh pr checks 689 passed, including CodeRabbit.
  • Review thread resolved: PRRT_kwDOPoavfs6OUa2j.

Merge gate: clean and green for admin merge.

@flyingrobots
flyingrobots merged commit 3af97ef into spec/external-target-protocol-mvp Jul 5, 2026
16 checks passed
@flyingrobots
flyingrobots deleted the evidence/rust-ir-performance-baseline branch July 5, 2026 07:04
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.

1 participant