Repository navigation
fix(proxy): propagate model env and accept direct keys - #12940
Merged
Merged
Conversation
Support direct credentials for models created in the UI. Keep env and file references as mutually exclusive alternatives. Use model env for frontend probes and omit credentials from structured config logs. Assisted-by: nib:gpt-6.1-sol Signed-off-by: Ettore Di Giacinto <mudler@localai.io>
Forward complete model environment snapshots through backend installation. Restart worker children when overrides change or are removed, and include keyed snapshot identities in frontend install coalescing. Cover wire compatibility, routing, real worker children, and option copying; document rollout requirements and control-transport security. Assisted-by: nib:gpt-6.1-sol Signed-off-by: Ettore Di Giacinto <mudler@localai.io>
Different backend names can target the same process slot. Hold a slot lock through startup, readiness, and operation attachment so concurrent installs cannot reuse another configuration or an unready child. Assisted-by: nib:gpt-6.1-sol Signed-off-by: Ettore Di Giacinto <mudler@localai.io>
Keep the endpoint command stub aligned with the environment-aware install interface. Assert interface conformance so future changes fail at the stub declaration rather than at endpoint call sites. Assisted-by: nib:gpt-6.1-sol Signed-off-by: Ettore Di Giacinto <mudler@localai.io>
mudler
force-pushed
the
fix/distributed-model-env-proxy-key
branch
from
October 27, 2026 07:52
b526fa8 to
2d35bf4
Compare
Collaborator
Author
|
Rebased onto master at 2f5ec65 and pushed 2d35bf4. Fixed the stale endpoint command stub signatures that caused the lint, Linux, and Apple typecheck failures; added an interface conformance assertion. All core/pkg test packages compile with auth+debug tags, the full affected endpoint package passes, and the focused distributed race checks pass after rebase. Independent review confirmed a clean patch replay and the bounded fix. The prior SYCL failure was an HTTP/2 error downloading Go modules; the new push starts a fresh build. New CI is queued/running, not yet verified green. |
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.
Description
Fix distributed model environment propagation and add optional direct upstream API keys.
A model created through the UI could contain:
Local startup applied these overrides, but distributed workers launched the backend without them. The later load RPC carried
EnvVars, while cloud-proxy resolved credentials from its process environment. Model loading therefore failed withapi_key_env "ANTHROPIC_API_KEY" is unset.proxy.api_keyas an alternative toapi_key_envorapi_key_file; reject conflicting credential sources.No linked issue. No deployment or merge is included.
Notes for Reviewers
Direct keys remain plaintext administrative configuration, like model
envvalues. Password masking does not encrypt YAML, admin API responses, backups, or exports. Existing env/file indirection remains available. Updated frontends, workers, and proxy backend binaries are required for the new behavior; see the rollout documentation.Verification performed:
All commands above passed. The broader auth-enabled run passed workerctl, worker, and pkg/model; nodes timed out after 600 seconds, so the full nodes suite is not verified green. Full UI lint reports two hook-rule errors in the unchanged
e2e/coverage-fixtures.js; changed-file lint passes. A full nativemake buildand live provider requests were not run.Regression tests were observed failing before fixes, including missing install environment serialization and concurrent same-slot startup. Independent review covered both changes; the discovered slot concurrency defect was fixed with a real-child regression.
Signed commits
Assisted-bytrailers.docs/content/) for user-facing changes.