Skip to content

patch(v2.2): restore the external FMDS connection gauge - #5676

Open
chet wants to merge 1 commit into
NVIDIA:release/v2.2from
chet:gh-issue-5670
Open

patch(v2.2): restore the external FMDS connection gauge#5676
chet wants to merge 1 commit into
NVIDIA:release/v2.2from
chet:gh-issue-5670

Conversation

@chet

@chet chet commented Sep 2, 2026

Copy link
Copy Markdown
Contributor

Backports 48a8e0ce2 from #5663 to release/v2.2.

The reconnect change from #4989 is already in v2.2, but the branch was cut before main restored carbide_dpu_agent_fmds_external_connected. An agent configured for external FMDS therefore retries connections without exposing the established connection gauge.

This registers the gauge for external FMDS and updates it after every completed connection attempt. It records the connection result before sending metadata, so a successful connection followed by a rejected update still reports 1; a later connection failure reports 0.

Related issues

Type of Change

  • Add - New feature or capability
  • Change - Changes in existing functionality
  • Fix - Bug fixes
  • Remove - Removed features or deprecated functionality
  • Internal - Internal changes (refactoring, tests, docs, etc.)

Breaking Changes

  • This PR contains breaking changes

Testing

  • Unit tests added/updated

  • Integration tests added/updated

  • Manual testing performed

  • No testing required (docs, internal refactor, etc.)

  • cargo test -p carbide-agent fmds_client and cargo test -p carbide-agent tests::metrics::test_metrics pass all four focused tests for connection state and the exported gauge.

  • cargo make format-nightly and cargo make clippy pass. The full custom lint traversal stops on two existing txn_held_across_await findings in unchanged crates/api-core/tests/integration/dns_resolution.rs.

Review Findings

Model Findings Overview

The local model reviews were not repeated for this backport. The stable patch ID is 0129a06def0d44cff404b5c9a251600073631b7f for both this branch and the reviewed patch from #5663, and no code was changed after the cherry-pick.

Model Findings Details

Per Chet's direction, the Codex, CodeRabbit CLI, Claude CLI, and common-nits passes were not rerun. No additional review findings or edits were produced, and no hosted CodeRabbit review was requested.

Backport `48a8e0ce2` from NVIDIA#5663 to `release/v2.2`.

The reconnect change from NVIDIA#4989 is already in v2.2, but the branch was cut before main restored `carbide_dpu_agent_fmds_external_connected`. An agent configured for external FMDS therefore retries connections without exposing the established connection gauge.

Register the gauge for external FMDS and update it after every completed connection attempt. Record the connection result before sending metadata so a successful connection followed by a rejected update still reports `1`; a later connection failure reports `0`.

This supports NVIDIA#5670

Signed-off-by: Chet Nichols III <chetn@nvidia.com>
@chet
chet requested a review from a team September 2, 2026 05:23
@chet
chet requested a review from a team as a code owner September 2, 2026 05:23
@coderabbitai

coderabbitai Bot commented Sep 2, 2026

Copy link
Copy Markdown
Contributor

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: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Enterprise

Run ID: 7d4605c2-3801-4a05-86d8-ae21497da27a

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

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

@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Sep 2, 2026

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review Completed 2026-09-02T05:26:05.555381Z d1ed4dd PR opened
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: d1ed4dd8df

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment on lines +60 to +62
.u64_observable_gauge("carbide_dpu_agent_fmds_external_connected")
.with_description(
"Result of the DPU agent's latest connection attempt to its configured external FMDS (1 for success, 0 before success or after failure)",

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P1 Badge Add the restored gauge to the generated metric catalogue

The repository-wide search finds this metric only in the implementation and the agent unit-test fixture; docs/observability/core_metrics.md still has no carbide_dpu_agent_fmds_external_connected entry. Consequently, operators using the generated metrics reference cannot discover the restored gauge, and the HELP/emitted/catalogue surfaces disagree. Exercise it through test_integration and regenerate the catalogue rather than updating only the unit fixture.

AGENTS.md reference: AGENTS.md:L391-L400

Useful? React with 👍 / 👎.

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