department-of-veterans-affairs / va.gov-cms

Editor-centered management for Veteran-centered content.
https://prod.cms.va.gov
GNU General Public License v2.0
99 stars 69 forks source link

Defect: Modifying the relationship between VAMC SBwSU and a VAMC System via IEF on the Operating Status page leaves VAMC SBwSUs published with no specified System #19906

Open jilladams opened 1 week ago

jilladams commented 1 week ago

Description

Slack discussion that identified this issue.

VAMC System Banner with Situation Updates includes a required field, "Where will this banner appear? > Pages for the following VAMC systems." It should not be possible to create a node without selecting a VAMC System from the list. (Staging Add content form.)

However: we do have examples from recent history in Drupal that do not have a value selected for that field.

To see the issue in play:

  1. Log into Drupal as Admin
  2. Visit VAMC banner alerts, situation updates, and operating statuses view (e.g.https://staging.cms.va.gov/admin/content/vamc-alerts-and-statuses)
  3. Filter by Content Type: VAMC System Banner with Situation Update
  4. Scroll the list and see that in some cases "Targetted VAMC" column is empty. That shouldn't be possible.

This is caused by the ability to modify the VAMC SBwSU relationship to a System via the Inline Entity Form on an Operating Status page.

To demonstrate:

  1. Log into a lower environment Drupal as Admin
  2. Visit VAMC banner alerts, situation updates, and operating statuses view (e.g.https://staging.cms.va.gov/admin/content/vamc-alerts-and-statuses). Find a banner with a Targetted VAMC (stet) listed.
  3. Visit the linked Operating Status page for that banner.
  4. Using IEF, select Remove next to the banner you chose.
  5. Confirm "Remove"
  6. Save with a revision log
  7. Back on https://staging.cms.va.gov/admin/content/vamc-alerts-and-statuses, now see that Banner listed with no linked Targetted VAMC.

Engineering notes

Fixing this will require figuring out the desired UX, which is tracked in the parent epic.

Why is this bad

Nodes without a specified System are not providing any information to the Front-end about where the banner should be displayed.

Alternative Banners implications

19302 initiative cannot handle banners with no specified system. Michelle has approved excluding banners missing a System from the Alt Banners API.

Testing & QA

Scope / Impact analysis

What, if anything, could break as a result of this change? Engineer should assess this when approaching PR.

Roles / assignments

After functional testing, code review, accessibility review, and design review can happen in parallel.

Acceptance criteria

jilladams commented 1 week ago

Per @davidmpickett :

This is likely due to the IEF on the VAMC Operating Status node. Editors can remove a banner from their system via IEF on Operating Status.

Likely will belong as a defect report under this epic https://github.com/department-of-veterans-affairs/va.gov-cms/issues/6160

davidmpickett commented 1 week ago

I was able to reproduce on Staging by

Image Image Image