Skip to content

RT-2.6: IS-IS Interface Hello Padding changes incorporated#5067

Open
ampattan wants to merge 4 commits intoopenconfig:mainfrom
nokia:AP-rt2dot6
Open

RT-2.6: IS-IS Interface Hello Padding changes incorporated#5067
ampattan wants to merge 4 commits intoopenconfig:mainfrom
nokia:AP-rt2dot6

Conversation

@ampattan
Copy link
Contributor

@ampattan ampattan commented Feb 9, 2026

Updated metadata.textproto

Added new deviations:

  • isis_interface_afi_unsupported
  • isis_global_authentication_not_required
  • isis_multi_topology_unsupported
  • isis_counter_part_changes_unsupported

Updated isis_interface_hello_padding_enable_test.go:

  • Added deviation handling for ISIS global authentication
  • Fixed adjacency verification after MTU modification on ATE
  • Fixed DIS System ID and Multi-Topology checks
  • Fixed system-level counter validations to handle missing default values

"This code is a Contribution to the OpenConfig Feature Profiles project ("Work") made under the Google Software Grant and Corporate Contributor License Agreement ("CLA") and governed by the Apache License 2.0. No other rights or licenses in or to any of Nokia's intellectual property are granted for any other purpose. This code is provided on an "as is" basis without any warranties of any kind."

Updated metadata.textproto

Added new deviations:

- isis_interface_afi_unsupported
-
- isis_global_authentication_not_required
-
- isis_multi_topology_unsupported
-
- isis_counter_part_changes_unsupported

Updated isis_interface_hello_padding_enable_test.go:

- Added deviation handling for ISIS global authentication
-
- Fixed adjacency verification after MTU modification on ATE
-
- Fixed DIS System ID and Multi-Topology checks
-
- Fixed system-level counter validations to handle missing default values

"This code is a Contribution to the OpenConfig Feature Profiles project ("Work") made under the Google Software Grant and Corporate Contributor License Agreement ("CLA") and governed by the Apache License 2.0. No other rights or licenses in or to any of Nokia's intellectual property are granted for any other purpose. This code is provided on an "as is" basis without any warranties of any kind."
@ampattan ampattan requested a review from a team as a code owner February 9, 2026 15:48
@gemini-code-assist
Copy link
Contributor

Summary of Changes

Hello @ampattan, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request primarily focuses on enhancing the robustness and adaptability of ISIS interface hello padding tests within the OpenConfig Feature Profiles project. It introduces new deviation flags to account for platform-specific behaviors and refines existing test logic to handle various ISIS configurations and state validations more accurately. The changes aim to improve the reliability of test outcomes by accommodating devices that may not strictly adhere to default OpenConfig models, particularly concerning authentication, adjacency states, and system counters.

Highlights

  • New Deviation Handling: Introduced four new deviation flags: isis_interface_afi_unsupported, isis_global_authentication_not_required, isis_multi_topology_unsupported, and isis_counter_part_changes_unsupported to accommodate varying device behaviors.
  • Improved ISIS Authentication Logic: The test now conditionally applies ISIS global authentication based on the ISISGlobalAuthenticationNotRequired deviation, making the test more adaptable to different DUT implementations.
  • Enhanced Adjacency Verification: The adjacency state check has been refined to correctly handle UNSET states and provide clearer logging when adjacency goes down as expected after an MTU change.
  • Robust System-Level Counter Validation: New helper functions EqualToDefault and CheckPresence were added to improve the validation of system-level counters, particularly for handling missing default values.
  • Refined DIS System ID and Multi-Topology Checks: Updated checks for DIS System ID and Multi-Topology to incorporate deviation handling, ensuring more accurate test results across different platforms.
Changelog
  • feature/isis/otg_tests/isis_interface_hello_padding_enable_test/isis_interface_hello_padding_enable_test.go
    • Imported the github.com/openconfig/featureprofiles/internal/check package.
    • Added EqualToDefault and CheckPresence helper functions for flexible validation of default values and presence in YGNMI queries.
    • Implemented conditional configuration for ISIS global authentication and level authentication based on the ISISGlobalAuthenticationNotRequired deviation.
    • Modified the adjacency state watch logic to include oc.Isis_IsisInterfaceAdjState_UNSET as a valid 'down' state and added a log message for successful adjacency down events.
    • Updated the DIS System ID check to use check.EqualOrNil when deviations.MissingValueForDefaults is true, allowing for nil values if defaults are not present.
    • Applied deviations.ISISMultiTopologyUnsupported to the Multi-Topology check.
    • Refactored system-level counter checks to utilize the new EqualToDefault and CheckPresence helpers, providing more resilient validation for default and missing values.
    • Added a log message for successful non-zero SPF runs counter validation.
  • feature/isis/otg_tests/isis_interface_hello_padding_enable_test/metadata.textproto
    • Added new deviation flags: isis_interface_afi_unsupported, isis_global_authentication_not_required, isis_multi_topology_unsupported, and isis_counter_part_changes_unsupported.
Activity
  • The author, ampattan, created this pull request to incorporate IS-IS Interface Hello Padding changes.
  • The pull request includes updates to test metadata and Go test files to improve test coverage and deviation handling.
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

@OpenConfigBot
Copy link

OpenConfigBot commented Feb 9, 2026

@coveralls
Copy link

coveralls commented Feb 9, 2026

Pull Request Test Coverage Report for Build 21984973076

Details

  • 0 of 0 changed or added relevant lines in 0 files are covered.
  • No unchanged relevant lines lost coverage.
  • Overall coverage remained the same at 10.114%

Totals Coverage Status
Change from base Build 21975005626: 0.0%
Covered Lines: 2300
Relevant Lines: 22741

💛 - Coveralls

Copy link
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

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

Code Review

This pull request updates the IS-IS hello padding test to incorporate several new deviations and improve test robustness. It introduces helper functions to handle the MissingValueForDefaults deviation, which is a good pattern for cleaning up test logic. The changes also add deviation handling for ISIS global authentication and fix adjacency verification logic.

However, I've found a couple of critical issues in the implementation. A new check using check.EqualOrNil is not being executed, effectively skipping a validation. Additionally, a refactoring of the system-level counter checks has introduced bugs where it uses an incorrect validation function and fails to respect existing deviation flags. I've provided suggestions to fix these issues.

@nsadhasivam
Copy link
Contributor

@ram-mac Please take a look

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants