Conversation
…and requirements-loop section Co-authored-by: Malcolmnixon <1863707+Malcolmnixon@users.noreply.github.com>
Co-authored-by: Malcolmnixon <1863707+Malcolmnixon@users.noreply.github.com>
Malcolmnixon
left a comment
There was a problem hiding this comment.
The ARCHITECTURE.md is over 1100 lines long. That means it seems to have delved deeper into esoteric design details. An architecture is supposed to be a high-level view - identifying the main blocks of the application and how they work together, but not necessarily diving into the esoteric details of the blocks.
…etail, replace diagram Co-authored-by: Malcolmnixon <1863707+Malcolmnixon@users.noreply.github.com>
Addressed in a1157e6. The document has been trimmed from 1163 lines to 410 lines (65% reduction). Removed all C# code blocks, YAML usage examples, algorithm pseudocode, step-by-step internal walkthroughs, and repeated content. What remains is a proper architecture overview: what the components are, why they exist, and how they relate — with detail-heavy sections (like the DFS cycle detection and satisfaction criteria) reduced to prose + bullet descriptions. |
|
@copilot Would the ascii-art block diagram be better handled as a Mermaid diagram? |
Co-authored-by: Malcolmnixon <1863707+Malcolmnixon@users.noreply.github.com>
|
@copilot The '\n' in the mermaid diagrams don't produce line-breaks in the diagrams, but just appear as characters. |
Co-authored-by: Malcolmnixon <1863707+Malcolmnixon@users.noreply.github.com>
There was a problem hiding this comment.
Pull request overview
Updates the project’s architecture documentation to be a higher-level overview aligned with the current ReqStream implementation, and adjusts the spell-check dictionary to avoid a known false positive.
Changes:
- Restructures
ARCHITECTURE.md(overview-first, component summary, Mermaid diagrams) and removes detailed code/example walkthroughs. - Updates documented APIs/behaviors (e.g., filtering parameters, cycle detection approach) to reflect current code.
- Adds
SARIFto the cspell dictionary.
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 2 comments.
| File | Description |
|---|---|
| ARCHITECTURE.md | Major restructure + accuracy updates for current components, flows, and behaviors |
| .cspell.json | Adds SARIF to reduce false-positive spellcheck findings |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
You can also share your feedback on Copilot code review. Take the survey.
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Reviewed
ARCHITECTURE.mdagainst current source and updated it to reflect recent changes, improve accuracy, and restructure as a true high-level architecture overview.Description
Accuracy fixes
ResultsFileproperty toContextclass definition (the--resultsCLI argument)Requirements.Export()andExportJustifications()signatures to includeHashSet<string>? filterTags = nullTraceMatrix.Export(),CalculateSatisfiedRequirements(), andGetUnsatisfiedRequirements()signatures to includeHashSet<string>? filterTags = nullNew content
### How Circular Requirement References Are Preventedsection documenting the DFS cycle detection inValidateCycles()— the three tracking structures (visiting,path,visited), the error message produced, and whyTraceMatrix.CollectAllTests()needs no cycle guard of its ownSARIFto.cspell.jsonto silence pre-existing false-positive warningsStructure
## Overviewwith three new subsections for a scope-zoom-in feel:### Components at a Glance— table of the four top-level components and their responsibilities### How the Components Fit Together— Mermaidflowchart TDdiagram showing three inputs (YAML Files, Test Result Files, CLI Arguments) flowing through Requirements and TraceMatrix to two outputs (Markdown Reports, Exit Code)### Execution Flow at a Glance— five-item priority-ordered list with a forward reference to the detailed section## Table of Contents(viewers and document compilers generate their own)flowchart TDdiagram for clearer rendering in GitHub; node label line-breaks use<br/>(correct Mermaid syntax)Type of Change
Pre-Submission Checklist
Build and Test
dotnet build --configuration Releasedotnet test --configuration Releasedotnet run --project src/DemaConsulting.ReqStream --configuration Release --framework net10.0--no-build -- --validateCode Quality
dotnet format --verify-no-changesQuality Checks
Please run the following checks before submitting:
cspell "**/*.{md,cs}"markdownlint "**/*.md"yamllint .Testing
Documentation
Additional Notes
No code changes — documentation and spell-check dictionary only.
🔒 GitHub Advanced Security automatically protects Copilot coding agent pull requests. You can protect all pull requests by enabling Advanced Security for your repositories. Learn more about Advanced Security.