You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
connector_type choice list is duplicated in dwdm and patch_panel with no way to share it #87
Context. extensions/dwdm/dwdm.yml and extensions/patch_panel/patch_panel.yml each
carry a byte-identical 28-choice connector_type Dropdown. The two have already drifted
once (one side went optional, the other did not). Infrahub 1.11.0 cannot share a choice
list across extension files without a shared generic in a common ancestor, and there is no
edge to inherit along: extensions/dwdm depends on extensions/sfp, extensions/patch_panel on base only.
Per ruling R6 the review takes the cheap half now and defers the real fix. Landed in #75:
the three choices that a stale 4096-char FIXME had commented out are restored in both
files (urm_p4, urm_p8, splice), and both lists carry a sync note:
extensions/dwdm/dwdm.yml:25-27
# NOTE: this choice list is duplicated in extensions/patch_panel and the two must be
# kept in sync. Infrahub cannot share a choice list across extension files without a
# shared generic in a common ancestor, which is a base-tier change.
(and the mirror of it at extensions/patch_panel/patch_panel.yml:25-27).
What this asks for. Introduce a shared generic, e.g. DcimGenericConnectorInterface
carrying connector_type, in a common ancestor both extensions can inherit from, and
delete both duplicated lists plus their sync notes. The reason this was not done in #75:
the only common ancestor available is base/dcim.yml, so the change puts a 28-choice
fibre-connector enum into the base schema every user loads whether or not they own a patch
panel. That is a base-tier addition justified by two extensions, and it should be decided
on its own rather than riding in on a consistency cleanup. The two alternatives considered
and rejected: leave duplicated with no note (they drift again), or make one extension
depend on the other (couples two unrelated extensions and forces DWDM kinds on anyone
modelling a copper patch panel).
Origin: pass-1 review of #75, packet CONN-02, ruling R6.
Activity
chore: convert remaining TODO markers to issues
fix: apply pass 1 review verdicts to schema library v2 (#80)
Schema library v2 (#75)