Page MenuHomeVyOS Platform

Data added via vyos.utils.configfs.add_cli_node() not available when script is called via call_depends()
Open, WishlistPublicBUG

Description

https://github.com/vyos/vyos-1x/blob/bc86b5750033c14aab751e9d3d175f7d45903ef6/python/vyos/utils/configfs.py

My assumption is that when notes are added to the CLI via an ongoing commit, scripts executed via call_depends() DO NOT have access to the newly added data in the CLI.

This can be observed with the bug described here https://vyos.dev/T7299#219881

Details

Version
2025.03.30-0020-rolling, 1.4.2
Is it a breaking change?
Perfectly compatible
Issue type
Bug (incorrect behavior)

Event Timeline

c-po triaged this task as High priority.Apr 1 2025, 12:26 PM
c-po updated the task description. (Show Details)
dmbaturin changed Is it a breaking change? from Unspecified (possibly destroys the router) to Perfectly compatible.

The assumption stated in the description is true, as discussed with @c-po at the time. The following invariant is fundamental to the operation of the commit algorithm (legacy and modern) and the config daemons: during a commit, the active and proposed configs are fixed --- no updates during the commit are reflected in any script's config dict, including those called by config dependencies. Evolution of this model will require a refinement of config dependencies, which is not possible until the legacy backend is retired.

jestabro lowered the priority of this task from High to Wishlist.Nov 11 2025, 5:05 PM

Based on the comments above, I am moving this to 'wishlist' for consideration after the legacy backend is retired. My expectation is that we will not want to drop the invariant as such, however, we will be in a position to consider refinements of the model, radical or conservative, once freed from the legacy constraints.