Repository navigation
Conversation
Vedaant-J
temporarily deployed
to
gha-kumo-workflow-tests
October 24, 2026 19:29 — with
GitHub Actions
Inactive
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the
|
Contributor
Author
Change map
|
Vedaant-J
force-pushed
the
vedaant/mlops-prediction-tracking
branch
from
October 24, 2026 19:42
5b51082 to
1d3acd6
Compare
Vedaant-J
force-pushed
the
vedaant/mlops-sf-stage
branch
from
October 24, 2026 20:30
86d7e79 to
b9ba641
Compare
Vedaant-J
temporarily deployed
to
gha-kumo-workflow-tests
October 24, 2026 20:30 — with
GitHub Actions
Inactive
Vedaant-J
temporarily deployed
to
gha-kumo-workflow-tests
October 24, 2026 21:02 — with
GitHub Actions
Inactive
Vedaant-J
temporarily deployed
to
gha-kumo-workflow-tests
October 24, 2026 21:25 — with
GitHub Actions
Inactive
This was referenced Oct 26, 2026
Vedaant-J
force-pushed
the
vedaant/mlops-sf-stage
branch
from
October 26, 2026 18:29
42acd3d to
28cdf93
Compare
Vedaant-J
temporarily deployed
to
gha-kumo-workflow-tests
October 26, 2026 18:29 — with
GitHub Actions
Inactive
Vedaant-J
changed the base branch from
vedaant/mlops-prediction-tracking
to
vedaant/mlops-filestore-sink
October 26, 2026 18:29
Vedaant-J
force-pushed
the
vedaant/mlops-filestore-sink
branch
from
October 27, 2026 07:30
d2153fe to
db52381
Compare
Vedaant-J
force-pushed
the
vedaant/mlops-sf-stage
branch
from
October 27, 2026 07:30
28cdf93 to
0a24e45
Compare
Vedaant-J
temporarily deployed
to
gha-kumo-workflow-tests
October 27, 2026 07:30 — with
GitHub Actions
Inactive
Vedaant-J
force-pushed
the
vedaant/mlops-sf-stage
branch
from
October 27, 2026 09:51
0a24e45 to
348c337
Compare
Vedaant-J
temporarily deployed
to
gha-kumo-workflow-tests
October 27, 2026 09:51 — with
GitHub Actions
Inactive
Vedaant-J
force-pushed
the
vedaant/mlops-filestore-sink
branch
from
October 27, 2026 18:58
db52381 to
db74c6c
Compare
Vedaant-J
force-pushed
the
vedaant/mlops-sf-stage
branch
from
October 27, 2026 18:58
348c337 to
ff5a9c6
Compare
Vedaant-J
temporarily deployed
to
gha-kumo-workflow-tests
October 27, 2026 18:59 — with
GitHub Actions
Inactive
Vedaant-J
changed the base branch from
vedaant/mlops-filestore-sink
to
vedaant/mlops-score-sketch
October 27, 2026 20:36
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
… package tests can import Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
… only table writes Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
_quoted already names identifier quoting in kumo_snowflake.session. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> # Conflicts: # packages/kumo-engine/docs/mlops.md # packages/kumo-engine/kumo/engine/trainer/trainer.py
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
… older ones Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This branch was successfully deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Stack: #53 → #112 → #50 → #60 → #64; #114 on #112; #115 on #64. Merge bottom to top.
Summary
Teams whose data lives only in Snowflake have nowhere to keep Kumo artifacts and cannot score a registered Kumo model inside Snowflake. This PR adds both:
@DB.SCHEMA.STAGE/...path is a file destination ofSnowflakeConnector(Let any sink hold files: FileStoreSink protocol and a chunked filesystem #112'sFileStoreSink, as Hold MLOps artifacts on Unity Catalog volumes through the Files API #114 does for volumes): bundles, snapshot and prediction exports, and the MLOps artifact root. Writes usePUT; reads use presigned ranged URLs, falling back to oneGETper file. Files up to 4 GiB are plain objects; larger ones are parts only kumo reads.KumoModelthat scores entity ids against a stage snapshot in Snowpark Container Services (ModelVersion.run_batchon a GPU pool). kumo-snowflake finds the builder through thekumo_snowflake.registry_modelsentry point. Registering a bundle again reuses its version when the serving environment matches.In the container, the snapshot and the stage assets are read with the container's own Snowflake identity (
_snowflake_serving.py).Usage
Back-compat
SnowflakeConnector@DB.SCHEMA.STAGE/...pathAPPEND;OVERWRITEempties it first, as on every file store.SNOWFLAKE_FULLstageOSErrornamingSNOWFLAKE_SSE.V<n>.ModelOutputConfig,SnowflakeTrackingserving_snapshot/serving_options; existing calls unchanged.run_batchoutputevaluateorscore_drift.Testing
kumo-snowflake/tests/test_stage_fs.py(in-memory stage): routing, bundles and Parquet through a stage path, listings, exact removes, ranged andGETreads, the occupied-directory rule, refusals, no signed URL in errors.kumo-snowflake/tests/test_registry.py: version reuse, builder arguments, environment refusal, carrier fallback, bundle-only fetch.kumo-engine/test/test_snowflake_model.pyandtest_model_agnostic_mlops.py: a version packaged by snowflake-ml scores likeTrainer.predict; serving options; staged assets load through the loading connector; a stage root registers versions serving its snapshot.run_batchbinary (300/300 rows, labels equal to localpredict) and regression on a GPU pool; all steps as a role with only the documented grants.Change map: see the
kumo-pr-change-mapcomment.🤖 Generated with Claude Code