Skip to content

Conversation

@christiangoerdes
Copy link
Collaborator

@christiangoerdes christiangoerdes commented Feb 11, 2026

Summary by CodeRabbit

  • Refactor
    • Simplified chain configuration structure in YAML files by flattening nested levels. Request and response handlers can now be specified directly under the chain element, improving configuration clarity and reducing structural complexity.

@christiangoerdes
Copy link
Collaborator Author

/ok-to-test

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Feb 11, 2026

📝 Walkthrough

Walkthrough

Modified ChainInterceptor's MCElement annotation to disable envelope handling by setting noEnvelope = true. Updated example YAML configuration to flatten chain structure by removing intermediate "flow" nesting level, moving request and response entries directly under chain.

Changes

Cohort / File(s) Summary
ChainInterceptor Annotation
core/src/main/java/com/predic8/membrane/core/interceptor/chain/ChainInterceptor.java
Changed @MCElement(name = "chain") to @MCElement(name = "chain", noEnvelope = true) to disable envelope wrapping for chain elements.
Example Configuration Flattening
distribution/examples/extending-membrane/reusable-plugin-chains/apis.yaml
Removed intermediate "flow" nesting level; reorganized log and CORS chain structures to place request/response entries directly as list items under chain path, simplifying YAML structure without altering semantics.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~8 minutes

Possibly related PRs

Suggested reviewers

  • predic8
  • rrayst

Poem

🐰 A chain once wrapped in envelopes deep,
Now nestles flat, no secrets to keep,
The flow dissolves, the path grows clear,
Simpler structures we hold so dear! ✨

🚥 Pre-merge checks | ✅ 2 | ❌ 1
❌ Failed checks (1 warning)
Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (2 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately describes the main change: adding the noEnvelope parameter to the MCElement annotation for the chain component.

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

✨ Finishing touches
  • 📝 Generate docstrings
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch improve-chain-syntax

No actionable comments were generated in the recent review. 🎉


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.

@membrane-ci-server
Copy link

This pull request needs "/ok-to-test" from an authorized committer.

@predic8 predic8 merged commit 0fe9f66 into master Feb 11, 2026
5 checks passed
@predic8 predic8 deleted the improve-chain-syntax branch February 11, 2026 15:38
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.

2 participants