Add root-tags orphan detection with system/quality traceability - #41
Merged
Conversation
- Bump demaconsulting.reqstream to 1.11.0 - Tag all System-level and Platform requirements with [system] - Add docs/reqstream/quality.yaml grouping OTS dependency requirements under [quality] - Add root-tags: [system, quality] to requirements.yaml - Close 54 genuine orphan gaps by adding missing children links across WorkspaceSubsystem, ViewCatalogSubsystem, ViewBuilderSubsystem, LayoutRenderingSubsystem, DiagnosticsPanelSubsystem, LoggingSubsystem, ElementPickerSubsystem, and AppShellSubsystem - Add new System-level requirement SysML2Workbench-QueryWorkspaceModel and new AppShellSubsystem requirements (PresentWorkspaceSources, HostQueryWorkflow, PresentAboutDialog) to trace previously-orphaned WorkspacePanel, QueryDialog, and AboutDialog functionality that had design/code/tests but no product requirement Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
There was a problem hiding this comment.
🟢 Approval recommended
The changes are documentation/config focused, appear internally consistent, and align with the stated ReqStream orphan-detection validation outcomes.
Pull request overview
This PR updates ReqStream traceability configuration and requirement documents to enable root-tag orphan detection for both System-level functionality and quality/OTS dependency requirements in SysML2Workbench.
Changes:
- Add
root-tags: [system, quality]and include a newdocs/reqstream/quality.yamlrequirements file for OTS/quality traceability roots. - Tag System/Platform requirements with
[system]and add missingchildren:links to close previously orphaned requirement gaps across multiple subsystems. - Bump the local
demaconsulting.reqstreamdotnet tool to1.11.0.
File summaries
| File | Description |
|---|---|
| requirements.yaml | Defines root-tags and includes the new quality requirements file for orphan detection enforcement. |
| docs/reqstream/quality.yaml | Introduces [quality]-tagged root requirements that group OTS-derived requirements (xUnit, Appium, Avalonia, AvaloniaEdit, SysML2Tools, Rendering). |
| docs/reqstream/sysml2-workbench.yaml | Tags system-level requirements with [system] and adds a new system requirement for interactive query workflow traceability. |
| docs/reqstream/sysml2-workbench/platform-requirements.yaml | Tags platform/runtime requirements with [system] so they participate as traceability roots. |
| docs/reqstream/sysml2-workbench/workspace-subsystem.yaml | Adds missing children: links to close traceability gaps within WorkspaceSubsystem requirements. |
| docs/reqstream/sysml2-workbench/view-catalog-subsystem.yaml | Adds a missing children: link for view definition building from workspace views. |
| docs/reqstream/sysml2-workbench/view-builder-subsystem.yaml | Adds a missing children: link for directly adding expose-target selections. |
| docs/reqstream/sysml2-workbench/layout-rendering-subsystem.yaml | Adds a missing children: link for clearing stale diagrams in the SVG canvas host. |
| docs/reqstream/sysml2-workbench/element-picker-subsystem.yaml | Adds missing children: links to fully trace picker/filter capabilities used by dialogs. |
| docs/reqstream/sysml2-workbench/app-shell-subsystem.yaml | Adds new AppShell subsystem-level requirements (workspace sources, query workflow, about dialog) and connects them via children: links. |
| .config/dotnet-tools.json | Bumps demaconsulting.reqstream tool version to 1.11.0. |
Review details
- Files reviewed: 11/11 changed files
- Comments generated: 0
- Review effort level: Lite
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
The grouping requirement referenced a non-existent test name. Replace it with the real test ids from AboutDialogViewModelTests that its child requirements already cite. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
There was a problem hiding this comment.
🟢 Approval recommended
The changes are traceability/documentation-focused, appear internally consistent (IDs resolve), and the PR reports successful reqstream enforcement plus passing build/tests.
Review details
- Files reviewed: 11/11 changed files
- Comments generated: 0 new
- Review effort level: Lite
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Applies the root-tags orphan-detection playbook to SysML2Workbench:
demaconsulting.reqstreamto 1.11.0.sysml2-workbench.yaml) and Platform(
platform-requirements.yaml) requirements with[system].docs/reqstream/quality.yaml, grouping the six referenced OTSdependency files' requirements under
[quality](xUnit, Appium,Avalonia, AvaloniaEdit, SysML2Tools, Rendering).
root-tags: [system, quality]torequirements.yaml.missing
children:links across WorkspaceSubsystem,ViewCatalogSubsystem, ViewBuilderSubsystem, LayoutRenderingSubsystem,
DiagnosticsPanelSubsystem, LoggingSubsystem, ElementPickerSubsystem, and
AppShellSubsystem.
SysML2Workbench-QueryWorkspaceModeland three newAppShellSubsystem-level requirements (
PresentWorkspaceSources,HostQueryWorkflow,PresentAboutDialog) to trace previouslyorphaned
WorkspacePanel,QueryDialog, andAboutDialogfunctionality - each of which already had design docs, code, and tests,
but no product requirement connecting it back to user-visible value.
Validation
dotnet reqstream --requirements requirements.yaml --enforce-> 0 of 125requirements orphaned.
pwsh ./build.ps1 -Build -Test-> build succeeded, all 318 unit/headlesstests passed.
pwsh ./fix.ps1/pwsh ./lint.ps1-> clean, no lint errors.