Skip to content

Use noEnvelope for chain#2773

Merged
predic8 merged 2 commits into
masterfrom
improve-chain-syntax
Feb 11, 2026
Merged

Use noEnvelope for chain#2773
predic8 merged 2 commits into
masterfrom
improve-chain-syntax

Conversation

@christiangoerdes

@christiangoerdes christiangoerdes commented Feb 11, 2026

Copy link
Copy Markdown
Collaborator

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
Copy Markdown
Collaborator Author

/ok-to-test

@coderabbitai

coderabbitai Bot commented Feb 11, 2026

Copy link
Copy Markdown
Contributor
📝 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
Copy Markdown

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