Skip to content

refactor(ollama): migrate auth proxy to .mts - #6949

Closed
laitingsheng wants to merge 5 commits into
mainfrom
chore/6926-ollama-proxy-mts
Closed

refactor(ollama): migrate auth proxy to .mts#6949
laitingsheng wants to merge 5 commits into
mainfrom
chore/6926-ollama-proxy-mts

Conversation

@laitingsheng

@laitingsheng laitingsheng commented Jul 15, 2026

Copy link
Copy Markdown
Contributor

Summary

Migrate the host-side Ollama authentication proxy from CommonJS scripts/ollama-auth-proxy.js to a typed ESM scripts/ollama-auth-proxy.mts entrypoint that runs under Node native type stripping without tsx. The request-handling and lifecycle contract is unchanged; only the entrypoint module format and the process-detection needle move.

Related Issue

Resolves #6926
Part of #6918

Changes

  • Rename scripts/ollama-auth-proxy.js to scripts/ollama-auth-proxy.mts; convert require to node:crypto/node:http ESM imports and add explicit request/response types. The security contract is preserved: fail-closed Bearer-token check, byte-length gate before crypto.timingSafeEqual, authorization and host header stripping, 127.0.0.1 backend, 0.0.0.0 listener, and clean EADDRINUSE exit.
  • Point spawnOllamaAuthProxy at the .mts entrypoint in src/lib/inference/ollama/proxy.ts.
  • Trim the process-ownership needle from ollama-auth-proxy.js to ollama-auth-proxy in src/lib/inference/ollama/proxy.ts and src/lib/actions/uninstall/run-plan.ts. Requirement: an already-installed proxy runs as .../ollama-auth-proxy.js, so upgrade and uninstall must still detect and stop it while new spawns use .mts. Consumers: isOllamaProxyProcess and killStaleProxy (proxy.ts) and OLLAMA_AUTH_PROXY_CMDLINE_MARK (run-plan.ts). A direct pin to .mts would leak a running .js proxy on upgrade. Protected by test/ollama-proxy-recovery.test.ts, test/ollama-proxy-startup.test.ts, and src/lib/actions/uninstall/run-plan.test.ts.
  • Repoint the .mts path in the unit harness and the live E2E target (test/ollama-auth-proxy-handler-helpers.ts, test/ollama-proxy-recovery.test.ts, test/e2e/live/gpu-e2e-helpers.ts, test/e2e/live/ollama-auth-proxy.test.ts) and the handler-test doc comment.

Type of Change

  • Code change (feature, bug fix, or refactor)
  • Code change with doc updates
  • Doc only (prose changes, no code sample modifications)
  • Doc only (includes code sample changes)

Quality Gates

  • Tests added or updated for changed behavior
  • Existing tests cover changed behavior — justification: the Bearer-token, header-stripping, EADDRINUSE, and old-process upgrade-detection contract is already pinned by test/ollama-auth-proxy-handler.test.ts, test/ollama-proxy-recovery.test.ts, test/ollama-proxy-startup.test.ts, src/lib/inference/local-adapter-lifecycle.test.ts, and src/lib/actions/uninstall/run-plan.test.ts; the migration repoints paths and the needle without changing the contract, and these suites stay green (71 tests).
  • Tests not applicable — justification:
  • Docs updated for user-facing behavior changes
  • Docs not applicable — justification: internal tooling-script rename with no user-facing change; the troubleshooting page references the proxy by anchor, not by script path.
  • Sensitive paths changed (security, policy, credentials, preflight, onboarding, inference, runner, sandbox, or messaging)
  • Sensitive-path review completed or maintainer-approved waiver recorded — reviewer/approval link/justification: security contract is byte-identical to the prior .js proxy (only the module format and the extensionless needle change); awaiting maintainer sensitive-path review.
  • Non-success, skipped, or missing CI check accepted by maintainer — check name, approval link, and follow-up issue:

Verification

  • PR description includes a Signed-off-by: line and every commit appears as Verified in GitHub
  • Normal pre-commit, commit-msg, and pre-push hooks passed, or npm run check:diff passed when hooks were skipped or unavailable
  • Targeted behavior tests pass for the current change set, or tests are marked not applicable above — command/result: npx vitest run on the five focused suites → 71 passed; npm run typecheck:cli → pass (both on the merged base under Node 22.22).
  • Applicable broad gate passed — npm test for broad runtime/test-harness changes; npm run check for repo-wide validation/coverage changes — command/result:
  • Quality Gates section completed with required justifications or waivers
  • No secrets, API keys, or credentials committed
  • npm run docs builds without warnings (doc changes only)
  • Doc pages follow the style guide (doc changes only)
  • New doc pages include SPDX header and frontmatter (new pages only)

Signed-off-by: Tinson Lai tinsonl@nvidia.com

Summary by CodeRabbit

  • New Features
    • Added the TypeScript Ollama authenticated reverse-proxy entrypoint with configurable ports and mandatory Bearer-token access.
  • Bug Fixes
    • Improved request handling (401 for unauthorized, 502 on backend errors) and ensured sensitive headers aren’t forwarded; better proxy process detection and safer stale cleanup during restart/uninstall.
    • Clearer messaging and nonzero exit when the proxy port is already in use.
  • Tests
    • Updated E2E and lifecycle tests to use the new entrypoint and added coverage for correct process ownership and token leakage prevention.

Convert scripts/ollama-auth-proxy.js to a typed ESM .mts entrypoint running
under Node native type stripping without tsx. Preserve the fail-closed
Bearer-token check, byte-length gate before timingSafeEqual, authorization
header stripping, loopback backend, and EADDRINUSE exit. Trim the process
needle to ollama-auth-proxy so upgrade and recovery still detect the old .js
process next to the new .mts.

Signed-off-by: Tinson Lai <tinsonl@nvidia.com>
@coderabbitai

coderabbitai Bot commented Jul 15, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

📝 Walkthrough

Walkthrough

The authenticated Ollama reverse proxy moves from the removed JavaScript entrypoint to a new TypeScript module. Process matching, lifecycle management, uninstall detection, restart helpers, and tests now use the .mts script and shared matcher.

Changes

Ollama proxy migration

Layer / File(s) Summary
Typed proxy entrypoint
scripts/ollama-auth-proxy.mts
Adds token validation, authenticated request forwarding, header stripping, backend error responses, port handling, and startup failure handling.
Process matching and lifecycle integration
src/lib/inference/ollama/process.ts, src/lib/inference/local-adapter-lifecycle.ts, src/lib/inference/ollama/proxy.ts, src/lib/actions/uninstall/run-plan.ts, src/lib/inference/*adapter*
Adds shared Ollama proxy command-line matching, predicate-based process matching, updated proxy spawning and cleanup, and renamed adapter matcher options.
Proxy path and process validation
test/e2e/live/*, test/*ollama*, src/lib/actions/uninstall/run-plan.test.ts, src/lib/inference/local-adapter-lifecycle.test.ts
Updates launch paths and recovery assertions, and tests supported, occupied-port, and near-named proxy processes.

Estimated code review effort: 3 (Moderate) | ~20 minutes

Possibly related issues

Possibly related PRs

  • NVIDIA/NemoClaw#6938 — Modifies the local adapter process-matching contract used by this migration.

Suggested labels: refactor

Suggested reviewers: cv

Sequence Diagram(s)

sequenceDiagram
  participant Client
  participant OllamaAuthProxy
  participant OllamaBackend
  Client->>OllamaAuthProxy: Send request with Bearer token
  OllamaAuthProxy->>OllamaBackend: Forward authorized request
  OllamaBackend-->>OllamaAuthProxy: Return response
  OllamaAuthProxy-->>Client: Return proxied response
Loading
🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 20.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly summarizes the main change: migrating the Ollama auth proxy to a .mts entrypoint.
Linked Issues check ✅ Passed The summaries show the .mts migration, launcher/recovery/uninstall updates, legacy process detection, and focused proxy/E2E coverage.
Out of Scope Changes check ✅ Passed The changed files all support the proxy migration or shared lifecycle API cleanup, with no clear unrelated code additions.
✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch chore/6926-ollama-proxy-mts

Comment @coderabbitai help to get the list of available commands.

@laitingsheng laitingsheng added the chore Build, CI, dependency, or tooling maintenance label Jul 15, 2026
@github-code-quality

github-code-quality Bot commented Jul 15, 2026

Copy link
Copy Markdown
Contributor

Code Coverage Overview

Languages: TypeScript

TypeScript / code-coverage/plugin

The overall coverage remains at 96%, unchanged from the main branch.

TypeScript / code-coverage/cli

The overall coverage in the chore/6926-ollama-pr... branch remains at 80%, unchanged from the main branch.

Show a code coverage summary of the most impacted files.
File main 819e6ff chore/6926-ollama-pr... 3a4e4c6 +/-
src/lib/inferen...ollama/proxy.ts 35% 35% 0%
src/lib/actions...all/run-plan.ts 83% 83% 0%
src/lib/securit...ntial-filter.ts 98% 99% +1%
src/lib/inferen...er-lifecycle.ts 70% 71% +1%
src/lib/inferen...lama/process.ts 0% 100% +100%

Updated July 15, 2026 21:27 UTC
Code Coverage is in Public Preview. Learn more and provide us with your feedback.

@github-actions

github-actions Bot commented Jul 15, 2026

Copy link
Copy Markdown
Contributor

PR Review Advisor — Informational

Advisor assessment: Informational / high confidence
Next action: No advisor follow-up needed.
Findings: 0 blockers · 0 warnings · 0 suggestions
Status: No actionable findings remain in the canonical review ledger.

Model lanes

  • GPT-5.6 Terra (primary): Completed · high confidence · 0 blockers · 0 warnings · 0 suggestions
  • Nemotron 3 Ultra (second opinion): Completed · high confidence · 0 blockers · 0 warnings · 0 suggestions
  • Model comparison: normalized findings match; normalized E2E selections differ; severity counts match.

Nemotron output stays in workflow artifacts and does not change the assessment above.

E2E guidance

Advisory only. E2E / PR Gate selects and runs jobs independently.

Recommended E2E: cloud-onboard, credential-sanitization, security-posture, inference-routing, network-policy, ollama-auth-proxy

Workflow run details

This automated review informs maintainers. Warnings and suggestions do not require a response. A maintainer decides whether to merge.

cv
cv previously requested changes Jul 15, 2026

@cv cv left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Security review found one blocking process-ownership regression. The new bare ollama-auth-proxy marker is passed to cmdline.includes() in both proxy lifecycle cleanup and uninstall. That can misclassify and kill near-named processes such as ollama-auth-proxy-helper.mjs or ollama-auth-proxy.mts.backup; uninstall can amplify the impact when elevated. Please match only the legacy .js and new .mts filename tokens with path-boundary semantics, then add positive tests for both supported filenames and negative tests for helper/suffix near matches. The unflagged .mts execution is valid under the repository Node >=22.19 contract and is not a blocker.

Signed-off-by: Prekshi Vyas <prekshiv@nvidia.com>
# Conflicts:
#	src/lib/actions/uninstall/run-plan.ts
#	src/lib/inference/local-adapter-lifecycle.ts

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🧹 Nitpick comments (1)
src/lib/inference/ollama/process.ts (1)

4-8: 📐 Maintainability & Code Quality | 🔵 Trivial | ⚡ Quick win

Regex correctly matches both .js/.mts and excludes near-named scripts; add retirement tracking for the .js compatibility branch.

Verified against the test fixtures in local-adapter-lifecycle.test.ts and run-plan.test.ts: ollama-auth-proxy.js/ollama-auth-proxy.mts match, while ollama-auth-proxy-helper.mjs and ollama-auth-proxy.mts.backup correctly do not. This satisfies the stated requirement that existing .js processes remain detectable during upgrades/uninstall.

Per path instructions, retaining a superseded path is only sanctioned for "a demonstrated external/persisted-data contract or a bounded confidence/rollback window," and requires linking "the retirement issue or PR in GitHub" and stating "observable exit criteria." The .js branch here is a legitimate compat window (detecting already-running old proxy processes on upgrade), but there's no comment linking a retirement issue or criteria for eventually dropping .js detection once it's no longer needed.

As per path instructions: "Retain an old path only for a demonstrated external/persisted-data contract or a bounded confidence/rollback window... link the retirement issue or PR in GitHub, and state observable exit criteria."

📝 Suggested doc note
+// Retains detection of the legacy `.js` entrypoint so upgrades/uninstalls can
+// clean up already-running pre-migration processes. Remove the `js` branch
+// once no supported install can still be running the legacy script — track
+// retirement in issue `#6926` (or a follow-up).
 const OLLAMA_AUTH_PROXY_SCRIPT_PATTERN = /(?:^|[\s/\\])ollama-auth-proxy\.(?:js|mts)(?=$|\s)/;
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@src/lib/inference/ollama/process.ts` around lines 4 - 8, Add a concise
maintenance comment near OLLAMA_AUTH_PROXY_SCRIPT_PATTERN documenting that .js
detection is retained for upgrade/uninstall compatibility, linking the
retirement issue or PR, and defining observable exit criteria for removing it.
Keep the existing regex and isOllamaAuthProxyCommandLine behavior unchanged.

Source: Path instructions

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Nitpick comments:
In `@src/lib/inference/ollama/process.ts`:
- Around line 4-8: Add a concise maintenance comment near
OLLAMA_AUTH_PROXY_SCRIPT_PATTERN documenting that .js detection is retained for
upgrade/uninstall compatibility, linking the retirement issue or PR, and
defining observable exit criteria for removing it. Keep the existing regex and
isOllamaAuthProxyCommandLine behavior unchanged.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Enterprise

Run ID: 1b18de37-9105-432c-abc2-09fec8191b0c

📥 Commits

Reviewing files that changed from the base of the PR and between 4ef1f0a and 4d5b0e9.

📒 Files selected for processing (8)
  • src/lib/actions/uninstall/run-plan.test.ts
  • src/lib/actions/uninstall/run-plan.ts
  • src/lib/inference/bedrock-runtime-adapter.ts
  • src/lib/inference/local-adapter-lifecycle.test.ts
  • src/lib/inference/local-adapter-lifecycle.ts
  • src/lib/inference/ollama/process.ts
  • src/lib/inference/ollama/proxy.ts
  • src/lib/inference/openrouter-runtime-adapter-lifecycle.ts
🚧 Files skipped from review as they are similar to previous changes (1)
  • src/lib/inference/ollama/proxy.ts

Signed-off-by: Prekshi Vyas <prekshiv@nvidia.com>
@prekshivyas
prekshivyas requested a review from cv July 15, 2026 21:17

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🧹 Nitpick comments (1)
test/ollama-auth-proxy-handler.test.ts (1)

149-161: 🔒 Security & Privacy | 🔵 Trivial | ⚡ Quick win

Check stdout as well as stderr for token leakage.

The test pipes child.stdout but only asserts that the token is absent from stderr. A regression using console.log(TOKEN) would therefore pass. Capture stdout and assert the token is absent from both output streams.

Proposed adjustment
+    const stdoutChunks: Buffer[] = [];
+    child.stdout?.on("data", (chunk) => stdoutChunks.push(Buffer.from(chunk)));
     const stderrChunks: Buffer[] = [];
     child.stderr?.on("data", (chunk) => stderrChunks.push(Buffer.from(chunk)));

     const [exitCode, signal] = (await once(child, "close")) as [number | null, string | null];
+    const stdout = Buffer.concat(stdoutChunks).toString("utf8");
     const stderr = Buffer.concat(stderrChunks).toString("utf8");

     expect(signal).toBeNull();
     expect(exitCode).not.toBe(0);
     expect(stderr).toContain(`Ollama auth proxy: port ${occupiedPort} is already in use`);
+    expect(stdout).not.toContain(TOKEN);
     expect(stderr).not.toContain(TOKEN);
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@test/ollama-auth-proxy-handler.test.ts` around lines 149 - 161, Update the
child-process output assertions around the existing stderr capture to also
collect child.stdout, then convert it to text and assert TOKEN is absent from
stdout as well as stderr. Preserve the current exit, signal, and stderr
error-message assertions.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Nitpick comments:
In `@test/ollama-auth-proxy-handler.test.ts`:
- Around line 149-161: Update the child-process output assertions around the
existing stderr capture to also collect child.stdout, then convert it to text
and assert TOKEN is absent from stdout as well as stderr. Preserve the current
exit, signal, and stderr error-message assertions.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Enterprise

Run ID: 82065246-efdb-4a29-8a67-63f04a10597f

📥 Commits

Reviewing files that changed from the base of the PR and between 4d5b0e9 and 3a4e4c6.

📒 Files selected for processing (2)
  • src/lib/inference/ollama/process.ts
  • test/ollama-auth-proxy-handler.test.ts
🚧 Files skipped from review as they are similar to previous changes (1)
  • src/lib/inference/ollama/process.ts

@cv
cv dismissed their stale review July 15, 2026 21:27

Resolved by commit 3a4e4c6: filename-bounded matcher plus positive and negative near-name tests. Maintainer security re-review passed.

@cv cv left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Security blocker resolved in 3a4e4c6. The matcher is filename-bounded, both supported names and near-name exclusions are tested, canonical CI and CodeRabbit are green, and the focused security/correctness review passed. Protected E2E remains required before merge.

@cv

cv commented Jul 15, 2026

Copy link
Copy Markdown
Collaborator

Superseded by #6974 after #6938 created a two-file merge conflict that this contributor branch could not accept maintainer updates for. #6974 preserves all verified commits from this PR, retains the security fix and tests, and records the mechanical resolution against current main. Thank you @laitingsheng and @prekshivy for the implementation and follow-up fixes.

@cv cv closed this Jul 15, 2026
@prekshivyas

Copy link
Copy Markdown
Collaborator

@cjagwani cv has approved the exact latest head and all ordinary CI, CodeRabbit, and both advisor lanes are green. The protected E2E controller is now waiting for maintainer/admin run-control-plane authorization for PR 6949, head 3a4e4c646c3269311d3fa241fac45350d8ee5343, base 7a360ef642c828a3911bc4661d5ae3d5a4053dd5, plan f921de28eb1878e637298889e4fc4d47b439c388c7cb3a27f51b05999923ab09. Selected jobs: cloud-onboard, credential-sanitization, security-posture, inference-routing, network-policy, and ollama-auth-proxy. Please dispatch the exact-revision control-plane run when ready.

cv added a commit that referenced this pull request Jul 15, 2026
## Summary

Migrate the host-side Ollama authentication proxy from CommonJS
`scripts/ollama-auth-proxy.js` to the typed ESM
`scripts/ollama-auth-proxy.mts` entrypoint while preserving the existing
request-handling and lifecycle contract. This maintainer salvage
preserves the verified commits from #6949 and reconciles its process
matcher with the Bedrock adapter migration merged in #6938.

## Related Issue

Resolves #6926
Part of #6918
Supersedes #6949

## Changes

- Rename the Ollama authentication proxy entrypoint to `.mts` and retain
its fail-closed Bearer-token check, byte-length gate before
`timingSafeEqual`, sensitive-header stripping, loopback backend, public
listener, and nonzero `EADDRINUSE` behavior.
- Match only filename-bounded legacy `.js` and current `.mts` proxy
processes during lifecycle cleanup and uninstall, with positive coverage
for both names and negative coverage for helper and suffix near matches.
- Reconcile the shared local-adapter matcher after #6938: strings use
substring matching, regular expressions retain Bedrock's bounded
launcher matching, and callbacks support Ollama's ownership predicate.
All call sites use the existing `processMatcher` name.
- Repoint unit, recovery, uninstall, and live E2E fixtures to the `.mts`
entrypoint.

## Type of Change

- [x] Code change (feature, bug fix, or refactor)
- [ ] Code change with doc updates
- [ ] Doc only (prose changes, no code sample modifications)
- [ ] Doc only (includes code sample changes)

## Quality Gates

- [x] Tests added or updated for changed behavior
- [ ] Existing tests cover changed behavior — justification:
- [ ] Tests not applicable — justification:
- [ ] Docs updated for user-facing behavior changes
- [x] Docs not applicable — justification: the filenames and shared
matcher are internal; existing setup, lifecycle, uninstall, and
port-conflict documentation remains accurate. A documentation-writer
review found no page or standalone changelog change necessary.
- [x] Sensitive paths changed (security, policy, credentials, preflight,
onboarding, inference, runner, sandbox, or messaging)
- [x] Sensitive-path review completed or maintainer-approved waiver
recorded — reviewer/approval link/justification: the focused security
re-review on #6949 passed after the bounded matcher and negative tests
were added; the conflict resolution preserves #6938's bounded Bedrock
matcher and was independently revalidated.
- [ ] Non-success, skipped, or missing CI check accepted by maintainer —
check name, approval link, and follow-up issue:

## Verification

- [x] PR description includes a `Signed-off-by:` line and every commit
appears as `Verified` in GitHub
- [x] Normal `pre-commit`, `commit-msg`, and `pre-push` hooks passed, or
`npm run check:diff` passed when hooks were skipped or unavailable
- [x] Targeted behavior tests pass for the current change set, or tests
are marked not applicable above — 85 focused lifecycle, Bedrock,
uninstall, handler, and recovery tests passed after generating ignored
build artifacts.
- [ ] Applicable broad gate passed — `npm test` for broad
runtime/test-harness changes; `npm run check` for repo-wide
validation/coverage changes — command/result:
- [x] Quality Gates section completed with required justifications or
waivers
- [x] No secrets, API keys, or credentials committed
- [ ] `npm run docs` builds without warnings (doc changes only)
- [ ] Doc pages follow the [style
guide](https://github.com/NVIDIA/NemoClaw/blob/main/docs/CONTRIBUTING.md)
(doc changes only)
- [ ] New doc pages include SPDX header and frontmatter (new pages only)

Additional validation: `npm run build:cli` and `npm run typecheck:cli`
passed. All original #6949 commits remain in the branch unchanged, and
the signed merge commit records the mechanical two-file resolution
against current `main`.

---
Signed-off-by: Tinson Lai <tinsonl@nvidia.com>
Signed-off-by: Carlos Villela <cvillela@nvidia.com>


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

* **New Features**
* Updated the authenticated Ollama proxy launcher to the TypeScript
module entrypoint with configurable ports.
* **Bug Fixes**
* Improved proxy and local-adapter process detection so cleanup targets
only the intended auth-proxy variants.
* Enhanced handling of proxy startup when the configured port is already
in use, and better behavior during backend disconnects.
* **Tests**
* Expanded coverage for proxy ownership, restart/recovery flows,
near-name process matching, and error cases (including port conflicts
and backend disconnect scenarios).
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Signed-off-by: Tinson Lai <tinsonl@nvidia.com>
Signed-off-by: Prekshi Vyas <prekshiv@nvidia.com>
Signed-off-by: Carlos Villela <cvillela@nvidia.com>
Co-authored-by: Tinson Lai <tinsonl@nvidia.com>
Co-authored-by: Prekshi Vyas <prekshiv@nvidia.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

chore Build, CI, dependency, or tooling maintenance

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Migrate the Ollama authentication proxy to .mts

5 participants