Skip to content

Shared runtime regression entry + remove extraction compat#520

Merged
justinmoon merged 2 commits intomasterfrom
swift-panda
Mar 8, 2026
Merged

Shared runtime regression entry + remove extraction compat#520
justinmoon merged 2 commits intomasterfrom
swift-panda

Conversation

@justinmoon
Copy link
Copy Markdown
Collaborator

@justinmoon justinmoon commented Mar 8, 2026

Summary

  • Add shared runtime regression entrypoint (just recipe + integration matrix doc)
  • Remove extraction compatibility scaffolding (dead code cleanup in agent session and marmot runtime)

Test plan

  • CI passes

🤖 Generated with Claude Code


Open with Devin

Summary by CodeRabbit

  • Refactor

    • Reduced runtime library public API surface by removing unused exports.
  • Tests

    • Added comprehensive regression test suite validating core functionality boundaries.
    • Added smoke test coverage for encrypted media upload/download operations.
  • Documentation

    • Updated integration test matrix documentation.

@coderabbitai
Copy link
Copy Markdown

coderabbitai bot commented Mar 8, 2026

📝 Walkthrough

Walkthrough

The PR removes dead code allowances from session types, eliminates public re-exports from the runtime crate's public API surface, documents shared runtime regression testing, and adds new integration test targets to the justfile.

Changes

Cohort / File(s) Summary
Session Cleanup
cli/src/agent/session.rs
Removed #[allow(dead_code)] attributes from PublishedWelcome struct and published_welcomes field in CreatedChatGroup.
Runtime API Surface
crates/pika-marmot-runtime/src/lib.rs
Removed public re-exports for group and welcome-related types and functions (CreatedGroup, create_group_and_publish_welcomes, AcceptedWelcome, IngestedWelcome, PublishedWelcome, and associated utility functions).
Testing & Documentation
justfile, docs/testing/integration-matrix.md
Added shared-runtime-regression and cli-smoke-media test targets to justfile; updated integration matrix documentation to reflect shared runtime regression test coverage.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~12 minutes

Possibly related PRs

Poem

🐰 Dead code allowances fade away,
Runtime exports trimmed today,
Tests expand their careful gaze,
API surfaces find their place,
Cleaner borders, tighter bounds—
Where shared runtime safety's found! ✨

🚥 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 summarizes both main changes: adding a shared runtime regression entry and removing extraction compatibility scaffolding (dead-code cleanup).
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 docstrings (stacked PR)
  • 📝 Generate docstrings (commit on current branch)
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch swift-panda

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Copy Markdown

@devin-ai-integration devin-ai-integration bot left a comment

Choose a reason for hiding this comment

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

✅ Devin Review: No Issues Found

Devin Review analyzed this PR and found no potential bugs to report.

View in Devin Review to see 2 additional findings.

Open in Devin Review

Copy link
Copy Markdown

@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.

🧹 Nitpick comments (1)
justfile (1)

972-979: Reuse existing selector recipes inside shared-runtime-regression.

Line 978 re-embeds the cli-smoke contract instead of calling the existing recipe, and Line 979 does the same for the daemon selector. That gives this wrapper its own copy of the invocation details, so future selector/flag changes can drift from the documented entrypoints. Consider delegating to public recipes here and adding a focused daemon recipe if you want to keep this set minimal.

♻️ Possible cleanup
 shared-runtime-regression:
     cargo test -p pika-marmot-runtime publish_welcome_rumors_
     cargo test -p pika-marmot-runtime create_group_and_publish_welcomes_returns_group_and_published_metadata
     cargo test -p pikachat-sidecar init_group_uses_shared_runtime_helper_and_keeps_expiration_tag
     cargo test -p pika_core app_background_publish_uses_shared_welcome_pairing
-    cargo test -p pikahut --test integration_deterministic cli_smoke_local -- --ignored --nocapture
-    cargo test -p pikahut --test integration_deterministic openclaw_scenario_invite_and_chat_daemon -- --ignored --nocapture
+    just cli-smoke
+    just openclaw-pikachat-daemon
openclaw-pikachat-daemon:
    cargo test -p pikahut --test integration_deterministic openclaw_scenario_invite_and_chat_daemon -- --ignored --nocapture
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@justfile` around lines 972 - 979, The shared-runtime-regression recipe
currently duplicates the cargo invocations instead of delegating to existing
recipes; update shared-runtime-regression to call the public selector recipes
(e.g., replace the long cargo invocation that runs cli_smoke_local with a
invocation of the existing cli-smoke recipe and replace the
openclaw_scenario_invite_and_chat_daemon cargo line with a call to an
openclaw-pikachat-daemon recipe), and if that daemon recipe doesn’t exist yet
add a focused recipe named openclaw-pikachat-daemon that contains the single
cargo test command shown so the wrapper delegates rather than re-embeds
invocation details.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Nitpick comments:
In `@justfile`:
- Around line 972-979: The shared-runtime-regression recipe currently duplicates
the cargo invocations instead of delegating to existing recipes; update
shared-runtime-regression to call the public selector recipes (e.g., replace the
long cargo invocation that runs cli_smoke_local with a invocation of the
existing cli-smoke recipe and replace the
openclaw_scenario_invite_and_chat_daemon cargo line with a call to an
openclaw-pikachat-daemon recipe), and if that daemon recipe doesn’t exist yet
add a focused recipe named openclaw-pikachat-daemon that contains the single
cargo test command shown so the wrapper delegates rather than re-embeds
invocation details.

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: d5b45574-ee27-4d72-ae62-5ec245981e1a

📥 Commits

Reviewing files that changed from the base of the PR and between a63ee86 and d967300.

📒 Files selected for processing (4)
  • cli/src/agent/session.rs
  • crates/pika-marmot-runtime/src/lib.rs
  • docs/testing/integration-matrix.md
  • justfile
💤 Files with no reviewable changes (2)
  • cli/src/agent/session.rs
  • crates/pika-marmot-runtime/src/lib.rs

@justinmoon justinmoon merged commit 6e01e49 into master Mar 8, 2026
18 checks passed
@justinmoon justinmoon deleted the swift-panda branch March 20, 2026 14:52
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