Applied scoring rubric to NF section, reorganised folders for detaile… - #52
Conversation
…d pages, and templated remaining sections for later completion.
There was a problem hiding this comment.
Pull request overview
This PR updates the Solution Architecture Framework (SAF) requirements area by introducing detailed requirement pages (with a scoring rubric applied for the Non‑Functional section), reorganising requirement page folders, and updating navigation to point at the new structure.
Changes:
- Added detailed Non‑Functional (NF01–NF06) requirement pages including scoring rubric content.
- Added placeholder templates for other requirement groups (S, DM, SD, T, RU, D) for later completion.
- Updated the SAF requirements index and side navigation to link to the new
/requirements/...page structure, and removed the old NF06 page.
Reviewed changes
Copilot reviewed 42 out of 42 changed files in this pull request and generated 4 comments.
Show a summary per file
| File | Description |
|---|---|
| app/views/solution-architecture-framework/requirements/t/t01.njk | New placeholder detailed page for T01. |
| app/views/solution-architecture-framework/requirements/t/t02.njk | New placeholder detailed page for T02. |
| app/views/solution-architecture-framework/requirements/t/t03.njk | New placeholder detailed page for T03. |
| app/views/solution-architecture-framework/requirements/s/s01.njk | New placeholder detailed page for S01. |
| app/views/solution-architecture-framework/requirements/s/s02.njk | New placeholder detailed page for S02. |
| app/views/solution-architecture-framework/requirements/s/s03.njk | New placeholder detailed page for S03. |
| app/views/solution-architecture-framework/requirements/s/s04.njk | New placeholder detailed page for S04. |
| app/views/solution-architecture-framework/requirements/dm/dm01.njk | New placeholder detailed page for DM01. |
| app/views/solution-architecture-framework/requirements/dm/dm02.njk | New placeholder detailed page for DM02. |
| app/views/solution-architecture-framework/requirements/dm/dm03.njk | New placeholder detailed page for DM03. |
| app/views/solution-architecture-framework/requirements/dm/dm04.njk | New placeholder detailed page for DM04. |
| app/views/solution-architecture-framework/requirements/dm/dm05.njk | New placeholder detailed page for DM05. |
| app/views/solution-architecture-framework/requirements/dm/dm06.njk | New placeholder detailed page for DM06. |
| app/views/solution-architecture-framework/requirements/dm/dm07.njk | New placeholder detailed page for DM07. |
| app/views/solution-architecture-framework/requirements/dm/dm08.njk | New placeholder detailed page for DM08. |
| app/views/solution-architecture-framework/requirements/sd/sd01.njk | New placeholder detailed page for SD01. |
| app/views/solution-architecture-framework/requirements/sd/sd02.njk | New placeholder detailed page for SD02. |
| app/views/solution-architecture-framework/requirements/sd/sd03.njk | New placeholder detailed page for SD03. |
| app/views/solution-architecture-framework/requirements/sd/sd04.njk | New placeholder detailed page for SD04. |
| app/views/solution-architecture-framework/requirements/sd/sd05.njk | New placeholder detailed page for SD05. |
| app/views/solution-architecture-framework/requirements/sd/sd06.njk | New placeholder detailed page for SD06. |
| app/views/solution-architecture-framework/requirements/sd/sd07.njk | New placeholder detailed page for SD07. |
| app/views/solution-architecture-framework/requirements/sd/sd08.njk | New placeholder detailed page for SD08. |
| app/views/solution-architecture-framework/requirements/sd/sd09.njk | New placeholder detailed page for SD09. |
| app/views/solution-architecture-framework/requirements/sd/sd10.njk | New placeholder detailed page for SD10. |
| app/views/solution-architecture-framework/requirements/sd/sd11.njk | New placeholder detailed page for SD11. |
| app/views/solution-architecture-framework/requirements/sd/sd12.njk | New placeholder detailed page for SD12. |
| app/views/solution-architecture-framework/requirements/ru/ru01.njk | New placeholder detailed page for RU01. |
| app/views/solution-architecture-framework/requirements/ru/ru02.njk | New placeholder detailed page for RU02. |
| app/views/solution-architecture-framework/requirements/ru/ru03.njk | New placeholder detailed page for RU03. |
| app/views/solution-architecture-framework/requirements/d/d01.njk | New placeholder detailed page for D01. |
| app/views/solution-architecture-framework/requirements/d/d02.njk | New placeholder detailed page for D02. |
| app/views/solution-architecture-framework/requirements/d/d03.njk | New placeholder detailed page for D03. |
| app/views/solution-architecture-framework/requirements/nf/nf01.njk | New detailed NF01 page with rubric content. |
| app/views/solution-architecture-framework/requirements/nf/nf02.njk | New detailed NF02 page with rubric content. |
| app/views/solution-architecture-framework/requirements/nf/nf03.njk | New detailed NF03 page with rubric content. |
| app/views/solution-architecture-framework/requirements/nf/nf04.njk | New detailed NF04 page with rubric content. |
| app/views/solution-architecture-framework/requirements/nf/nf05.njk | New detailed NF05 page with rubric content and external links. |
| app/views/solution-architecture-framework/requirements/nf/nf06.njk | New detailed NF06 page with rubric content. |
| app/views/solution-architecture-framework/requirements.njk | Updated NF requirement codes to be links to detailed pages. |
| app/views/solution-architecture-framework/nf/nf06.njk | Removed old NF06 page from the previous folder structure. |
| app/views/includes/_side-nav.njk | Reworked SAF requirement navigation to include detailed-page links and new sub-sections. |
Suppressed comments (11)
app/views/solution-architecture-framework/requirements.njk:263
- The link target is relative to /solution-architecture-framework/requirements, so
href="requirements/nf/nf02"will resolve to/solution-architecture-framework/requirements/requirements/nf/nf02and 404. Usenf/nf02(or an absolute path) to link to the detailed NF02 page.
<td class="nhsuk-table__cell"><a href="requirements/nf/nf02">NF02</a></td>
app/views/solution-architecture-framework/requirements.njk:267
- The link target is relative to /solution-architecture-framework/requirements, so
href="requirements/nf/nf03"will resolve to/solution-architecture-framework/requirements/requirements/nf/nf03and 404. Usenf/nf03(or an absolute path) to link to the detailed NF03 page.
<td class="nhsuk-table__cell"><a href="requirements/nf/nf03">NF03</a></td>
app/views/solution-architecture-framework/requirements.njk:271
- The link target is relative to /solution-architecture-framework/requirements, so
href="requirements/nf/nf04"will resolve to/solution-architecture-framework/requirements/requirements/nf/nf04and 404. Usenf/nf04(or an absolute path) to link to the detailed NF04 page.
<td class="nhsuk-table__cell"><a href="requirements/nf/nf04">NF04</a></td>
app/views/solution-architecture-framework/requirements.njk:275
- The link target is relative to /solution-architecture-framework/requirements, so
href="requirements/nf/nf05"will resolve to/solution-architecture-framework/requirements/requirements/nf/nf05and 404. Usenf/nf05(or an absolute path) to link to the detailed NF05 page.
<td class="nhsuk-table__cell"><a href="requirements/nf/nf05">NF05</a></td>
app/views/solution-architecture-framework/requirements.njk:283
- The link target is relative to /solution-architecture-framework/requirements, so
href="requirements/nf/nf06"will resolve to/solution-architecture-framework/requirements/requirements/nf/nf06and 404. Usenf/nf06(or an absolute path) to link to the detailed NF06 page.
<td class="nhsuk-table__cell"><a href="requirements/nf/nf06">NF06</a></td>
app/views/includes/_side-nav.njk:179
- This loop emits an empty nested
- and closes tags in the wrong order (
</li></ul>), producing invalid HTML that may affect navigation semantics for assistive tech. Other nav sections in this file render a simple<li>...</li>(e.g.dsTRGat lines 121-123), so the nested list can be removed here.<li class="app-side-nav__item{% if item.title == pageTitle %} app-side-nav__item--current{% endif %}"><a class="app-side-nav__link" href="{{ item.url }}">{{ item.title }}</a> <ul class="app-side-nav__list app-side-nav__list--nested"> </li> </ul>app/views/includes/_side-nav.njk:190
- This loop emits an empty nested
- and closes tags in the wrong order (
</li></ul>), producing invalid HTML that may affect navigation semantics for assistive tech. Other nav sections in this file render a simple<li>...</li>(e.g.dsTRGat lines 121-123), so the nested list can be removed here.<li class="app-side-nav__item{% if item.title == pageTitle %} app-side-nav__item--current{% endif %}"><a class="app-side-nav__link" href="{{ item.url }}">{{ item.title }}</a> <ul class="app-side-nav__list app-side-nav__list--nested"> </li> </ul>app/views/includes/_side-nav.njk:201
- This loop emits an empty nested
- and closes tags in the wrong order (
</li></ul>), producing invalid HTML that may affect navigation semantics for assistive tech. Other nav sections in this file render a simple<li>...</li>(e.g.dsTRGat lines 121-123), so the nested list can be removed here.<li class="app-side-nav__item{% if item.title == pageTitle %} app-side-nav__item--current{% endif %}"><a class="app-side-nav__link" href="{{ item.url }}">{{ item.title }}</a> <ul class="app-side-nav__list app-side-nav__list--nested"> </li> </ul>app/views/includes/_side-nav.njk:212
- This loop emits an empty nested
- and closes tags in the wrong order (
</li></ul>), producing invalid HTML that may affect navigation semantics for assistive tech. Other nav sections in this file render a simple<li>...</li>(e.g.dsTRGat lines 121-123), so the nested list can be removed here.<li class="app-side-nav__item{% if item.title == pageTitle %} app-side-nav__item--current{% endif %}"><a class="app-side-nav__link" href="{{ item.url }}">{{ item.title }}</a> <ul class="app-side-nav__list app-side-nav__list--nested"> </li> </ul>app/views/includes/_side-nav.njk:223
- This loop emits an empty nested
- and closes tags in the wrong order (
</li></ul>), producing invalid HTML that may affect navigation semantics for assistive tech. Other nav sections in this file render a simple<li>...</li>(e.g.dsTRGat lines 121-123), so the nested list can be removed here.<li class="app-side-nav__item{% if item.title == pageTitle %} app-side-nav__item--current{% endif %}"><a class="app-side-nav__link" href="{{ item.url }}">{{ item.title }}</a> <ul class="app-side-nav__list app-side-nav__list--nested"> </li> </ul>app/views/includes/_side-nav.njk:234
- This loop emits an empty nested
- and closes tags in the wrong order (
</li></ul>), producing invalid HTML that may affect navigation semantics for assistive tech. Other nav sections in this file render a simple<li>...</li>(e.g.dsTRGat lines 121-123), so the nested list can be removed here.<li class="app-side-nav__item{% if item.title == pageTitle %} app-side-nav__item--current{% endif %}"><a class="app-side-nav__link" href="{{ item.url }}">{{ item.title }}</a> <ul class="app-side-nav__list app-side-nav__list--nested"> </li> </ul>
- This loop emits an empty nested
- This loop emits an empty nested
- This loop emits an empty nested
- This loop emits an empty nested
- This loop emits an empty nested
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| <tbody class="nhsuk-table__body"> | ||
| <tr role="row" class="nhsuk-table__row"> | ||
| <td class="nhsuk-table__cell">NF01</td> | ||
| <td class="nhsuk-table__cell"><a href="requirements/nf/nf01">NF01</a></td> |
| @@ -0,0 +1,20 @@ | |||
| {% set pageTitle = "SD05 - Commodoties" %} | |||
| { title: "SD02 - NHSE Principles", url: "/solution-architecture-framework/requirements/sd/sd02" }, | ||
| { title: "SD03 - Standards Compliance", url: "/solution-architecture-framework/requirements/sd/sd03" }, | ||
| { title: "SD04 - Good Practice", url: "/solution-architecture-framework/requirements/sd/sd04" }, | ||
| { title: "SD05 - Commodoties", url: "/solution-architecture-framework/requirements/sd/sd05" }, |
| <li class="app-side-nav__item{% if item.title == pageTitle %} app-side-nav__item--current{% endif %}"><a class="app-side-nav__link" href="{{ item.url }}">{{ item.title }}</a> | ||
| <ul class="app-side-nav__list app-side-nav__list--nested"> | ||
| </li> </ul> |
Description
Applied scoring rubric to NF section, reorganised folders for detailed pages, and templated remaining sections for later completion.