Skip to content

feat: support composite native pipelines - #16

Merged
UlloaSP merged 3 commits into
developfrom
feat/composite-pipelines
Oct 12, 2026
Merged

UlloaSP merged 3 commits into
developfrom
feat/composite-pipelines

Conversation

@UlloaSP

@UlloaSP UlloaSP commented Oct 12, 2026

Copy link
Copy Markdown
Owner

Pipelines ending in XGBClassifier/XGBRegressor or CatBoostClassifier/CatBoostRegressor now export as composite bundles and load as real sklearn Pipelines. The transformer prefix uses the owned skops boundary; the final estimator uses its unchanged native adapter. Both components, fitted widths/names, claims and transformed-coordinate structure are verified before publication and on load.

The strict format-1 recipe declares step names and outer options. Model member pairs require that recipe; the archive ceiling rises to six so schema and explicit samples fit together. Existing standalone wire bytes and all-sklearn pipelines remain unchanged. Unsupported native placements, outer state, metadata routing and unverifiable transformer widths fail on export. No dependency or native type is added to skops trust.

Validation on Python 3.14 after merging current develop (174385a):

  • Owner acceptance: 21/21 as expected; every accepted bundle/native prediction difference is 0.0.
  • Compatibility: sklearn 18/19 (only HistGradientBoosting rejected), ONNX 10/10, all five joblib files in both variants, all four standalone CatBoost estimators. Pipeline acceptance is the intended change.
  • Ruff lint/format and Pyright pass; pytest: 1,464 passed, 91.88% branch coverage; wheel and source archive built.
  • Isolated base wheel imports and inspects standalone/composite fixtures with optional model libraries absent.
  • Existing performance tests pass; component snapshots are reused only within one synchronous export/load.

Normative rules and rejection messages are in docs/format-pipeline.md. No source, test or documentation file exceeds 300 lines.

@coderabbitai

coderabbitai Bot commented Oct 12, 2026 •

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration
  • Configuration used: defaults
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: feca5b30-4b70-469b-be65-71deb507e82d

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

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.

@UlloaSP
UlloaSP merged commit 0981a59 into develop Oct 12, 2026
9 checks passed
@UlloaSP
UlloaSP deleted the feat/composite-pipelines branch October 12, 2026 14:51
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