Skip to content

refactor(cli): route credentials through OpenShell provider adapter - #10149

Merged
prekshivyas merged 80 commits into
mainfrom
codex/openshell-provider-adapter
Sep 1, 2026
Merged

refactor(cli): route credentials through OpenShell provider adapter#10149
prekshivyas merged 80 commits into
mainfrom
codex/openshell-provider-adapter

Conversation

@rsliter

@rsliter rsliter commented Aug 24, 2026

Copy link
Copy Markdown
Contributor

Summary

Credential actions previously called OpenShell provider commands and interpreted CLI output inside business logic. This PR adds a typed provider boundary backed by the existing CLI, moves credential add, list, and reset onto it, and closes the credential-custody and endpoint-validation gaps found during review.

Related Issue

Partial #9806

Changes

  • Add a transport-neutral provider adapter for list, create, endpointless profile reconciliation, profile import and inspection, delete, and detach operations used by credential actions.
  • Keep exact OpenShell arguments, gateway targeting, subprocess environment construction, timeout handling, profile parsing, error classification, and redaction in the CLI implementation.
  • Pass credential values only through the filtered child environment and exclude values from typed failures.
  • Discard --from-existing provider creation diagnostics because NemoClaw cannot redact unknown stored credential values.
  • Report validated attachments from the final provider-delete attempt when detach recovery does not settle.
  • Fail closed on malformed attachment lists and validate every sandbox target before detach.
  • Classify gateway identity mismatch separately from gateway unreachability so recovery guidance remains accurate.
  • Move OpenAI profile reconciliation behind the injected adapter boundary.
  • Consolidate provider-list parsing in the CLI adapter.
  • Use one recovery-message formatter for endpointless OpenAI profile failures.
  • Correct credential reset guidance to use a provider name and document that reset is gateway-wide.
  • Reject credential reset provider names outside the OpenShell grammar before prompting, gateway recovery, or mutation.
  • Treat a final provider-absent result as authoritative after concurrent deletion, clearing stale local state instead of emitting detach guidance.
  • Accept only public IP-literal OPENAI_BASE_URL values on the credential-bearing provider path. Reject DNS hostnames because this path cannot enforce admission-time address pins, and route hostname or trusted-private endpoints through onboarding.
  • Add adapter, typed-fake action, integration, compiled-package, diagnostic, and endpoint-validation tests.
  • Ratchet the measured OpenShell architecture budgets.

Provider get, update, and attach operations remain deferred. Onboarding, messaging, managed-provider, general recovery and cleanup, and additional inference consumers also remain deferred. SDK and gRPC provider implementations are separate Phase 2 work.

Type of Change

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

Quality Gates

  • Tests added or updated for changed behavior
  • Sensitive paths changed
  • Sensitive-path review completed. Credential values remain in the filtered child environment, malformed attachment targets stop before mutation, typed failures are redacted, endpoint admission fails closed, and detach-before-delete recovery ordering is preserved.
  • Non-success, skipped, or missing CI check accepted by maintainer

DGX Station Hardware Evidence

  • Tested on DGX Station
  • Tested commit: Not applicable
  • Station profile/scenario: Not applicable
  • Result: Not applicable
  • Supporting evidence: Not applicable

Verification

  • PR description includes a Signed-off-by: line
  • Normal pre-commit, commit-msg, and pre-push hooks passed for the final commit
  • npm run build:cli
  • npm run typecheck:cli
  • Focused CLI validation: credential provider registration 1 file, 26 tests; title follow-up 2 files, 45 tests
  • Focused integration: channel lifecycle and documentation regression 2 files, 8 tests
  • Compiled credentials command package contract: 1 file, 26 tests
  • npm run checks:repository
  • npm run docs: 0 errors, 2 warnings
  • git diff --check
  • All PR commits are GitHub Verified
  • No secrets, API keys, or credentials committed
  • Documentation writer subagent reviewed the completed changes
  • Result: docs-updated
  • Evidence: Reviewed the complete 36-file diff at c5d5ec202e against c67be3984f2. The snapshot clone, provider-profile recovery, and live credential-reset test titles now end with their owning issue references without changing behavior. The quickstart uses the provider reset argument correctly. The command reference accurately documents gateway-wide provider rebuild and reset behavior, public IP-literal configuration, DNS hostname rejection, and onboarding for endpoints that require address pins. Recovery diagnostics remain consistent with the tested allowlist, redaction, gateway scoping, uncertain-mutation reconciliation, and reset behavior.
  • Agent: Codex Desktop documentation writer subagent

Signed-off-by: Rebecca Sliter 571084+rsliter@users.noreply.github.com

Summary by CodeRabbit

  • New Features
    • Added provider-based credential management for listing, creating, importing, inspecting, resetting, and deleting credentials.
    • Added gateway targeting, timeout handling, secret redaction, structured errors, and recovery for attached credentials.
    • Improved diagnostics by separating credential providers from messaging providers.
  • Bug Fixes
    • Improved guidance for unreachable gateways and credential-management failures.
    • Updated reset and onboarding commands to use provider-based terminology.
  • Tests
    • Expanded coverage for provider lifecycle, validation, error handling, redaction, and recovery scenarios.

rsliter and others added 6 commits August 24, 2026 10:20
Signed-off-by: Rebecca Sliter <571084+rsliter@users.noreply.github.com>
Signed-off-by: Rebecca Sliter <571084+rsliter@users.noreply.github.com>
Signed-off-by: Rebecca Sliter <571084+rsliter@users.noreply.github.com>
Signed-off-by: Rebecca Sliter <571084+rsliter@users.noreply.github.com>
@rsliter rsliter self-assigned this Aug 24, 2026
@copy-pr-bot

copy-pr-bot Bot commented Aug 24, 2026

Copy link
Copy Markdown

Auto-sync is disabled for draft pull requests in this repository. Workflows must be run manually.

Contributors can view more details about this message here.

@coderabbitai

coderabbitai Bot commented Aug 24, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

Note

Reviews paused

It looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the reviews.auto_review.auto_pause_after_reviewed_commits setting.

Use the following commands to manage reviews:

  • @coderabbitai resume to resume automatic reviews.
  • @coderabbitai review to trigger a single review.

Use the checkboxes below for quick actions:

  • ▶️ Resume reviews
  • 🔍 Trigger review
📝 Walkthrough

Walkthrough

Credential actions now use an injectable, gateway-scoped OpenShell provider adapter. The CLI adapter adds structured errors, profile handling, secret redaction, and sandbox-detachment recovery. Provider classification, diagnostics, tests, and reset guidance were updated.

Changes

Provider adapter credential lifecycle

Layer / File(s) Summary
Provider adapter contract
src/lib/adapters/openshell/provider-adapter.ts
Defines gateway-scoped provider requests, lifecycle results, structured errors, profile operations, and the OpenShellProviderAdapter interface.
CLI adapter implementation and validation
src/lib/adapters/openshell/provider-adapter-cli.ts, src/lib/adapters/openshell/provider-adapter-cli.test.ts, src/lib/adapters/openshell/provider-command.ts, src/lib/adapters/openshell/provider-command.test.ts, ci/source-architecture-budget.json
Adds CLI-backed provider operations with gateway targeting, validation, timeout handling, secret redaction, profile reconciliation, sandbox detachment, provider-name parsing, and typed failure mapping.
Adapter-based credential actions
src/lib/actions/credentials-add.ts, src/lib/actions/credentials/list.ts, src/lib/actions/credentials/reset.ts, src/lib/actions/credentials-provider-adapter.test.ts, test/credentials/*, test/package-contract/cli/credentials-cli-command.test.ts, src/commands/credentials.test.ts, src/lib/credentials/provider-list.ts
Updates credential add, list, and reset flows to use injected adapters, classify providers, and recover deletion by detaching validated sandboxes before retrying.
Provider diagnostics and command guidance
src/lib/actions/inference-set-provider-diagnostics.ts, src/lib/actions/inference-set-provider-diagnostics.test.ts, docs/get-started/quickstart.mdx, src/lib/onboard/dashboard.ts, test/onboarding/onboard-dashboard.test.ts
Updates provider parsing and diagnostics, and changes reset guidance to use the <PROVIDER> placeholder.

Estimated code review effort: 4 (Complex) | ~60 minutes

Merge Risk: 🔵 Low · up to 140a2

The refactor routes credential operations through a typed provider adapter while preserving public behavior, but profile import/export and endpointless reconciliation may misplace the gateway selector and fail for named gateways; the PR is mergeable with explicit owner awareness and follow-up validation.

Sequence Diagram(s)

sequenceDiagram
  participant CredentialsAction
  participant OpenShellProviderAdapter
  participant OpenShellCLI
  CredentialsAction->>OpenShellProviderAdapter: provider operation with gateway and timeout
  OpenShellProviderAdapter->>OpenShellCLI: execute gateway-scoped command
  OpenShellCLI-->>OpenShellProviderAdapter: captured output or command failure
  OpenShellProviderAdapter-->>CredentialsAction: typed result or redacted structured error
Loading

Suggested reviewers: apurvvkumaria

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 2.94% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 34 functions across 18 files. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly and concisely summarizes the main change: routing CLI credentials through the OpenShell provider adapter.
✨ Finishing Touches 💡 2
📝 Generate docstrings 💡
  • Create stacked PR
  • Commit on current branch
🛠️ Fix failing CI checks 💡
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch codex/openshell-provider-adapter

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

@rsliter

rsliter commented Aug 24, 2026

Copy link
Copy Markdown
Contributor Author

@coderabbitai review

@coderabbitai

coderabbitai Bot commented Aug 24, 2026

Copy link
Copy Markdown
Contributor
✅ Action performed

Review finished.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

Signed-off-by: Rebecca Sliter <571084+rsliter@users.noreply.github.com>

@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.

I reviewed commit 7418fa2. I found no concrete code defect in the provider-adapter and credential-action slice. CodeRabbit reports no actionable findings, and GitHub reports no review threads. The commit is Verified, the PR DCO check passes, and the PR body contains the contributor sign-off.

I cannot approve this draft under the Product Scope Gate. Issue #9806 still labels this work as draft scope, has no acceptance decision, and the PR warns that scope is pending. A maintainer must accept the provider-adapter capability slice and define its ownership, lifecycle, compatibility, security, and validation expectations before product approval. This is a scope decision, not a code-defect finding.

The exact-commit Advisor jobs were skipped. CodeQL, checks, commit lint, DCO, and CodeRabbit pass. Several earlier specialist jobs and the code-growth check failed, and the latest full test jobs were skipped. I did not request changes for those gate results. Local targeted tests could not start because this detached worktree has no installed Vitest dependencies. The PR body records prior focused validation: 39 targeted tests, CLI build and type-check, and repository checks.

Disposition: neutral pending the maintainer scope decision and complete required-check evidence.

@rsliter

rsliter commented Aug 24, 2026

Copy link
Copy Markdown
Contributor Author

@coderabbitai review

@coderabbitai

coderabbitai Bot commented Aug 24, 2026

Copy link
Copy Markdown
Contributor
⚠️ Action not completed

No files to review.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

@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.

I re-reviewed exact head 159095ca97194a925243a3e647ca3028f39a832b against base 101246c10c7a9811270e2d6d80424da4f80d858f. I found no concrete correctness, security, or test defect in the complete 10-file provider-adapter diff. The new merge commit only refreshes the dependency branch and relocates equivalent doctor-observation tests; it does not change this PR's production diff. No mechanical repair was warranted, so I made no commit or push.

Product Scope remains unaccepted. Issue #9806 still says the work is pending scoping, calls its contents “Draft scope,” and has no acceptance comment. This PR remains a draft and repeats the pending-scope warning. The required ownership, lifecycle, compatibility, security, and validation decision for the provider-adapter product surface is therefore still missing. I cannot approve under the Product Scope Gate. This is a product decision, not a code-defect finding, so I am not requesting changes.

Exact-head evidence: both PR commits are GitHub Verified; the PR body contains Rebecca Sliter's Signed-off-by declaration and dco-check passes; CodeRabbit reports no actionable findings; GitHub reports 0 review threads. The Advisor specialist jobs failed and synthesis/publish were skipped, so there is no accepted exact-head Advisor conclusion. checks, commit lint, hash checks, ShellCheck, Python CodeQL, and the aggregate CodeQL check pass; JavaScript/TypeScript CodeQL is still in progress, while codebase-growth and specialist checks are failing and the full CI jobs are skipped. The PR body records passing CLI build/typecheck, 39 focused tests, and repository checks. I did not treat gate state alone as a code defect.

Disposition: neutral pending accepted Product Scope and complete exact-head gate evidence.

Signed-off-by: Rebecca Sliter <571084+rsliter@users.noreply.github.com>
@wscurran wscurran added area: cli Command line interface, flags, terminal UX, or output area: providers Inference provider integrations and provider behavior refactor PR restructures code without intended behavior change labels Aug 24, 2026
@github-code-quality

github-code-quality Bot commented Aug 24, 2026

Copy link
Copy Markdown
Contributor

Code Coverage Overview

Languages: TypeScript

TypeScript / code-coverage/plugin

The overall line coverage in commit 9e43b0d in the codex/openshell-prov... branch remains at 96%, unchanged from commit a00ab27 in the main branch.

TypeScript / code-coverage/cli

The overall line coverage in commit 9e43b0d in the codex/openshell-prov... branch remains at 84%, unchanged from commit 6bf74e9 in the main branch.

Show a line coverage summary of the most impacted files.
File main 6bf74e9 codex/openshell-prov... 9e43b0d +/-
src/lib/onboard...ider-cleanup.ts 97% 94% -3%
src/lib/onboard...uild-context.ts 74% 75% +1%
src/lib/onboard...up-inference.ts 83% 85% +2%
src/lib/agent/t...ersion-drift.ts 88% 96% +8%
src/lib/actions...ntials/reset.ts 85% 96% +11%
src/lib/actions/global.ts 56% 70% +14%
src/lib/actions...entials/list.ts 76% 90% +14%
src/lib/actions...dentials-add.ts 62% 90% +28%
src/lib/adapter...-adapter-cli.ts 0% 99% +99%
src/lib/adapter...ateway-scope.ts 0% 100% +100%

Updated September 01, 2026 22:16 UTC

Signed-off-by: Rebecca Sliter <571084+rsliter@users.noreply.github.com>

@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.

I reviewed commit 9bbf1113101640b830027573316a753e2bb95a8d against base commit 5dbab5d614129dc71efe8d418a2e0fe7123334ce. I found no concrete correctness, security, or test defect in the complete 10-file provider-adapter diff. The latest merge commit refreshes the dependency branch and preserves this PR's production diff. No mechanical repair was warranted, so I made no commit or push.

The Product Scope Gate prevents approval. Issue #9806 still marks the work as “Draft scope,” contains no acceptance comment, and defers provider v2 product decisions outside accepted behavior. This PR also remains a draft. A maintainer must accept this provider-adapter capability slice and define ownership, lifecycle, compatibility, security, and validation expectations before product approval. This is a product decision, not a code defect, so I am not requesting changes.

Exact-commit evidence:

  • All four PR commits are GitHub Verified.
  • The PR body contains Rebecca Sliter's Signed-off-by declaration, and dco-check passes.
  • CodeRabbit reports no actionable findings.
  • GitHub reports 0 review threads, and the complete thread read is not truncated.
  • The exact-commit PR Advisor synthesis and publish jobs were skipped. Earlier specialist jobs failed, so no accepted Advisor conclusion applies to this commit.
  • checks, commit lint, hash checks, ShellCheck, CodeQL, and CodeRabbit pass. Other full CI jobs are skipped, and codebase-growth and earlier specialist checks fail. I did not use those gate results as a reason for this disposition.
  • The PR body records passing CLI build and type-check, 57 focused CLI tests, 14 focused integration tests, and repository checks.

Disposition: neutral pending an accepted Product Scope decision.

@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.

I reassessed exact head 9bbf1113101640b830027573316a753e2bb95a8d after checks stopped. I found no new concrete code defect and made no code change. CodeRabbit has 0 actionable findings, and the complete GitHub thread read has 0 threads.

Approval remains unavailable because required evidence and the product decision are missing:

  • All nine PR Advisor specialists failed before analysis because OpenShell inference configuration failed or the advisor credential was unavailable. Their session artifacts were absent; Synthesis and Publish advisor were skipped. There is no exact-head Advisor conclusion.
  • codebase-growth-guardrails failed while reading the PR files API with HTTP 403. This is infrastructure evidence loss, not a reported growth violation.
  • The full build-typecheck, cli-tests, cli-test-shards, static-checks, and installer-integration jobs were skipped. The PR body records passing focused evidence, but the stopped check set does not supply complete broad CI evidence or a maintainer waiver for the non-success checks.
  • My local focused rerun could not start because this isolated worktree has no installed Vitest dependencies (vitest/config and vitest/node are unavailable).
  • Issue #9806 still labels the proposal Draft scope, has no acceptance comment, and does not establish the ownership, lifecycle, compatibility, security, and validation decision required by the Product Scope Gate for this provider-adapter surface. The PR remains a draft.

Passing exact-head evidence includes checks, DCO, commit lint, hash checks, ShellCheck, CodeQL, and CodeRabbit. No review threads or automated-review findings remain. Because the remaining blockers are missing infrastructure/evidence and an unaccepted product decision rather than a concrete defect, I am not requesting changes. Disposition: neutral; do not approve until the scope decision is accepted and the missing exact-head evidence passes or receives a documented maintainer waiver.

@rsliter rsliter closed this Aug 25, 2026
@rsliter rsliter reopened this Aug 27, 2026
@rsliter
rsliter changed the base branch from codex/openshell-adapter-inventory to main August 27, 2026 18:54
@prekshivyas

Copy link
Copy Markdown
Collaborator

Addressed the Design/Architecture and Trust findings from exact-head Advisor run 33521873430 in commit df493a3328f4119b620b02cad6a6ad168b7dacce:

  • OPENAI_BASE_URL on credentials add now rejects DNS hostnames because the provider path cannot enforce admission-time DNS pins; only public IP literals survive the generic endpoint preflight. Hostname and trusted-private endpoints route through nemoclaw onboard.
  • Regression coverage rejects a DNS hostname before profile import/provider creation, retains loopback and link-local rejection, and confirms the credential secret is absent from diagnostics.
  • Hermes portable uninstall imports the gateway scoper directly from the OpenShell adapter owner; the onboarding compatibility re-export is removed.

Local validation: 152 focused tests across six files; exact credential-command replay 12/12 with a 60-second cold-load allowance; growth guard 33/33; CLI type-check; repository checks; docs build; commit hooks; and npm run validate:pr all passed.

A fresh PR Advisor run on this exact head SHA is required before approval.

rsliter and others added 4 commits September 1, 2026 08:11
Signed-off-by: Rebecca Sliter <571084+rsliter@users.noreply.github.com>
Signed-off-by: Rebecca Sliter <571084+rsliter@users.noreply.github.com>
@prekshivyas

Copy link
Copy Markdown
Collaborator

Candidate update for 88de9a84a9bc7fb837d5645049aa977eaf9567b8:

  • Integrated the two signed follow-up commits already published to this PR (fix(cli): preserve provider recovery guidance and test(cli): close provider adapter review findings).
  • Merged current main at d8790e0d81c3836f8f86858eac6ad929aa8dc883, including fix(e2e): restore exact PR managed images #10745, which restores exact managed-image resolution for trusted PR E2E and removes the local-Dockerfile path that blocked the prior sandbox-operations run.
  • Focused validation passed: CLI provider-profile tests (58), reset-outcome integration tests (4), rebuilt CLI plus package-contract tests (26).
  • Full repository validation passed: npm run validate:pr (pre-commit, commit-message, and pre-push gates).

Awaiting a fresh PR Advisor review and required CI for this exact head before dispatching new exact-SHA sandbox-operations evidence.

@prekshivyas

Copy link
Copy Markdown
Collaborator

Advisor remediation for 3937ec81b091d126abd13e7ee69313daa52d5559:

  • Operations: replaced the misleading singular “target sandbox” guidance with gateway-wide guidance to rebuild each sandbox that should use the provider, including successful and uncertain create outcomes; reconciliation tests assert the corrected wording.
  • Documentation: restored the runtime-backed distinction that ordinary stock onboarding uses the trusted Dockerfile recipe when the managed-image catalog is unavailable, while invalid or inconsistent catalog evidence still fails closed and explicit temporary managed-image onboarding remains strict.
  • Integrated current main at f68ccab0c9cde2afbef32425fea1f2472a0f8532.
  • Focused validation passed: credential provider action tests (46/46) and managed-workload onboarding policy tests (14/14).
  • Full npm run validate:pr passed on the exact head.

Awaiting a fresh PR Advisor run and required CI for this exact SHA before dispatching replacement sandbox-operations E2E evidence.

Signed-off-by: Prekshi Vyas <prekshiv@nvidia.com>
Signed-off-by: Prekshi Vyas <prekshiv@nvidia.com>
@prekshivyas

Copy link
Copy Markdown
Collaborator

Advisor remediation for bcf2503221f27c3f043c86fbdc41d02d61a91cdc:

  • Code reduction: moved static messaging profile verification onto the shared checked-in profile parser and exported-profile comparator, while retaining messaging-specific endpointless, no-binary, and non-inference constraints at the call site. Removed the duplicate boundary parser/comparator (40 net lines removed).
  • Migration completion: updated the Deep Agents and Pi docs to describe credentials reset detach-and-retry behavior, gateway credential removal, and required rebuilds; retained direct OpenShell detach only for preserving the provider for other sandboxes.
  • Focused validation passed: messaging bridge provider tests (44/44) and CLI type-check.
  • Full npm run validate:pr passed on the exact head.

Awaiting a fresh PR Advisor run and required CI for this exact SHA before dispatching replacement sandbox-operations E2E evidence.

@rsliter

rsliter commented Sep 1, 2026

Copy link
Copy Markdown
Contributor Author

@prekshivyas I reproduced the current CI failures locally at exact head 91c1b5906 and I am working on the repair. The provider failures are fixture defects: one fixture keeps returning profile absence after a successful import, and another returns success with an empty profile export, so the production fail-closed profile check correctly stops. The managed-image regression is a documentation contract split: the command reference and OpenClaw quickstart describe the trusted Dockerfile fallback, while the test and four related pages still assert the retired stop-before-creation behavior. I will push one focused repair after targeted validation.

Signed-off-by: Rebecca Sliter <571084+rsliter@users.noreply.github.com>
@cv cv added the v0.0.119 label Sep 1, 2026
@github-actions

github-actions Bot commented Sep 1, 2026

Copy link
Copy Markdown
Contributor

PR Review Advisor finished for commit 5c98b47. Include the Advisor findings in the complete PR feedback collection. Verify and group valid findings before repair.

All previous runs

@prekshivyas

Copy link
Copy Markdown
Collaborator

Final merge-candidate verification

  • Head: 9e43b0daa60c7d04298c0dc96a6c99f686bb055a
  • Scope: focused credential add/list/reset lifecycle corrections only; no additional consumers were added.
  • Local validation: npm run validate:pr, npm run docs, npm run typecheck:cli, focused credential action/command tests, and reset outcome tests passed.
  • Exact-head CI: CI / Pull Request run 33562831871 passed on retry, including all 12 CLI shards and the aggregate checks gate.
  • Review: @prekshivyas approved this exact head; all previously raised inline threads are resolved.
  • Automated Advisor: run 33562829191 was attempted three times on this exact head. Each attempt failed before analysis because the NVIDIA inference endpoint returned HTTP 429, and no finding was emitted. This is recorded as an unrelated service failure, not a code failure; no further branch churn or retries are warranted.

No broad live E2E matrix was dispatched for this final candidate, per maintainer direction.

@prekshivyas
prekshivyas merged commit 0bf091c into main Sep 1, 2026
84 of 115 checks passed
@prekshivyas
prekshivyas deleted the codex/openshell-provider-adapter branch September 1, 2026 22:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area: cli Command line interface, flags, terminal UX, or output area: providers Inference provider integrations and provider behavior refactor PR restructures code without intended behavior change

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants