Add SysML2 architecture model support and fix related defects - #140
Merged
Conversation
- Scaffold docs/sysml2/ model and design-views with sysml2tools wired into lint.ps1, build.yaml, .config/dotnet-tools.json, .versionmark.yaml - Refactor docs/design/introduction.md to reference the generated SoftwareStructureView diagram instead of a hand-maintained tree - Embed per-subsystem/unit diagrams across docs/design/vhdltest/** - Rework .reviewmark.yaml to match the updated reviewmark-usage standard (Purpose/Decomposition review-sets, OTS-* naming, context blocks) - Document SysML2Tools as an OTS dependency (reqstream/design/verification docs, requirements.yaml include, ots.md/definition.yaml wiring) - Update docs/verification/introduction.md and ots.md to match Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
… macOS CI Bug-fix sweep on top of the SysML2 architecture model work, addressing defects the improved design clarity surfaced during formal review: - Add TclText/XilinxArgText helpers to quote/escape interpolated paths and names in generated ModelSim/ActiveHdl TCL scripts and QuestaSim/Vivado do-files, preventing breakage or injection from spaces or metacharacters - Fix RunProcessor Windows cmd /c wrapping so a missing/invalid program consistently throws Win32Exception instead of silently producing a non-zero exit, resolving the executable against the actual working directory - Defensively copy the rules array in RunProcessor's constructor to honor its documented immutability - Correct documentation drift: nonexistent ISimulator reference, stale Callers lists, Validation's actual in-process execution model, Simulator test-double description - Add missing docs/reqstream/vhdltest/run/process-invoker.yaml requirements.yaml include, and fix OTS reqstream/design/verification traceability gaps - Split compound Results requirements into atomic, testable siblings and remove implementation-leakage wording from program.yaml - Strengthen SimulatorFactoryTests/ProgramTests assertions to match stated requirements Also restore GHDL integration testing on macOS: remove the version: 5.1.1 pin from ghdl/setup-ghdl@v1 (which only ships macOS 14/15 binaries at that version) so it defaults to the rolling nightly release, and re-add macos-latest (now macOS 26) to the test-ghdl matrix; GHDL 6.0.0+ confirmed macOS aarch64 support. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Contributor
There was a problem hiding this comment.
Pull request overview
This PR extends VHDLTest’s simulator and workflow infrastructure by (1) hardening simulator script/arg-file quoting, (2) fixing Windows RunProcessor missing-executable behavior and improving immutability guarantees, and (3) introducing SysML2 architecture model artifacts plus CI/lint integration to validate and render the model for design documentation.
Changes:
- Added
TclTextandXilinxArgTextquoting helpers; updated simulator script generation to safely handle spaces/metacharacters; added/updated unit tests and verification/design docs. - Updated
RunProcessorto defensively copy rule arrays and to pre-resolve executables on Windows (to throw consistently for missing programs); added regression tests and documentation. - Added SysML2Tools as a local tool and integrated SysML2 lint/render/self-validation into lint/build workflows; added SysML2 model/view files and related standards/agent guidance.
Reviewed changes
Copilot reviewed 135 out of 136 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| test/DEMAConsulting.VHDLTest.Tests/Simulators/XilinxArgTextTests.cs | New unit tests for Xilinx argument-file quoting behavior. |
| test/DEMAConsulting.VHDLTest.Tests/Simulators/VivadoSimulatorTests.cs | Updates existing assertions + adds round-trip tests for quoted paths/test names in Vivado scripts. |
| test/DEMAConsulting.VHDLTest.Tests/Simulators/TclTextTests.cs | New unit tests for TCL quoting (brace quoting + escaped fallback). |
| test/DEMAConsulting.VHDLTest.Tests/Simulators/SimulatorFactoryTests.cs | Strengthens auto-discovery test to validate ordering/selection by reference equality. |
| test/DEMAConsulting.VHDLTest.Tests/Simulators/QuestaSimSimulatorTests.cs | Updates expectations to brace-quoted test names + adds quoting round-trip tests. |
| test/DEMAConsulting.VHDLTest.Tests/Simulators/ModelSimSimulatorTests.cs | Updates expectations to brace-quoted test names + adds quoting round-trip tests. |
| test/DEMAConsulting.VHDLTest.Tests/Simulators/ActiveHdlSimulatorTests.cs | Updates expectations to brace-quoted test names + adds quoting round-trip tests. |
| test/DEMAConsulting.VHDLTest.Tests/Run/RunProcessorTests.cs | Adds Windows-specific regression tests for missing executable behavior and workingDirectory-based resolution; adds immutability test. |
| test/DEMAConsulting.VHDLTest.Tests/ProgramTests.cs | Improves assertions to confirm validation/filter paths actually execute expected behavior via logs. |
| src/DEMAConsulting.VHDLTest/Simulators/XilinxArgText.cs | New helper to quote/escape values for Vivado UG900-style argument files. |
| src/DEMAConsulting.VHDLTest/Simulators/VivadoSimulator.cs | Uses XilinxArgText.Quote for file paths and test entity names in Vivado argument files; docs updated. |
| src/DEMAConsulting.VHDLTest/Simulators/TclText.cs | New helper to quote TCL words safely (brace quoting or escaped double-quote fallback). |
| src/DEMAConsulting.VHDLTest/Simulators/Simulator.cs | Updates contract documentation to reflect per-simulator quoting/argument passing behaviors. |
| src/DEMAConsulting.VHDLTest/Simulators/QuestaSimSimulator.cs | Quotes file paths/test names via TclText.Quote before interpolation into TCL scripts. |
| src/DEMAConsulting.VHDLTest/Simulators/ModelSimSimulator.cs | Quotes file paths/test names via TclText.Quote before interpolation into TCL scripts. |
| src/DEMAConsulting.VHDLTest/Simulators/ActiveHdlSimulator.cs | Quotes file paths/test names via TclText.Quote before interpolation into TCL scripts. |
| src/DEMAConsulting.VHDLTest/Run/RunProcessor.cs | Defensively copies rules array; adds Windows pre-flight executable resolution + consistent missing-program throwing. |
| requirements.yaml | Includes new ReqStream requirement files (TclText/XilinxArgText/ProcessInvoker/SysML2Tools). |
| lint.ps1 | Adds SysML2 model linting via SysML2Tools when docs/sysml2 exists. |
| docs/verification/vhdltest/simulators/xilinx-arg-text.md | New verification evidence for XilinxArgText. |
| docs/verification/vhdltest/simulators/vivado-simulator.md | Adds verification scenarios covering new Vivado quoting behavior. |
| docs/verification/vhdltest/simulators/tcl-text.md | New verification evidence for TclText. |
| docs/verification/vhdltest/simulators/simulator.md | Clarifies how Simulator base behavior is verified via test doubles and MockSimulator. |
| docs/verification/vhdltest/simulators/simulator-factory.md | Updates verification narrative to reflect stronger ordering/selection test. |
| docs/verification/vhdltest/simulators/questasim-simulator.md | Adds verification scenarios for TCL quoting behavior in QuestaSim scripts. |
| docs/verification/vhdltest/simulators/modelsim-simulator.md | Adds verification scenarios for TCL quoting behavior in ModelSim scripts. |
| docs/verification/vhdltest/simulators/active-hdl-simulator.md | Adds verification scenarios for TCL quoting behavior in Active-HDL scripts. |
| docs/verification/vhdltest/run/run-processor.md | Adds verification coverage for Windows missing-program consistency + rules immutability. |
| docs/verification/vhdltest/program.md | Updates verification narrative to reflect MockSimulator usage + stronger filter validation. |
| docs/verification/ots/versionmark.md | Adds “lint detects drift” scenario description. |
| docs/verification/ots/sysml2tools.md | New verification evidence for SysML2Tools integration/self-validation. |
| docs/verification/ots/reqstream.md | Updates referenced self-validation test name. |
| docs/verification/ots/buildmark.md | Expands verification detail to enumerate required self-tests and mapped requirements. |
| docs/verification/ots.md | Adds SysML2Tools to OTS verification index. |
| docs/verification/introduction.md | Expands OTS list to include SysML2Tools and other pipeline OTS items. |
| docs/verification/definition.yaml | Adds SysML2Tools verification doc to verification collection inputs. |
| docs/sysml2/views/design-views.sysml | New SysML2 view declarations for diagram rendering. |
| docs/sysml2/model/vhdltest/simulators/xilinx-arg-text.sysml | Adds SysML2 part def + artifact references for XilinxArgText. |
| docs/sysml2/model/vhdltest/simulators/vivado-simulator.sysml | Adds SysML2 part def + artifact references for VivadoSimulator. |
| docs/sysml2/model/vhdltest/simulators/tcl-text.sysml | Adds SysML2 part def + artifact references for TclText. |
| docs/sysml2/model/vhdltest/simulators/simulator.sysml | Adds SysML2 part def + artifact references for Simulator. |
| docs/sysml2/model/vhdltest/simulators/simulator-factory.sysml | Adds SysML2 part def + artifact references for SimulatorFactory. |
| docs/sysml2/model/vhdltest/simulators/questasim-simulator.sysml | Adds SysML2 part def + artifact references for QuestaSimSimulator. |
| docs/sysml2/model/vhdltest/simulators/nvc-simulator.sysml | Adds SysML2 part def + artifact references for NvcSimulator. |
| docs/sysml2/model/vhdltest/simulators/modelsim-simulator.sysml | Adds SysML2 part def + artifact references for ModelSimSimulator. |
| docs/sysml2/model/vhdltest/simulators/mock-simulator.sysml | Adds SysML2 part def + artifact references for MockSimulator. |
| docs/sysml2/model/vhdltest/simulators/ghdl-simulator.sysml | Adds SysML2 part def + artifact references for GhdlSimulator. |
| docs/sysml2/model/vhdltest/simulators/active-hdl-simulator.sysml | Adds SysML2 part def + artifact references for ActiveHdlSimulator. |
| docs/sysml2/model/vhdltest/simulators.sysml | Adds Simulators subsystem part def and includes TclText/XilinxArgText parts. |
| docs/sysml2/model/vhdltest/self-test/validation.sysml | Adds SysML2 part def + artifact references for Validation. |
| docs/sysml2/model/vhdltest/self-test.sysml | Adds SelfTest subsystem part def. |
| docs/sysml2/model/vhdltest/run/run-results.sysml | Adds SysML2 part def + artifact references for RunResults. |
| docs/sysml2/model/vhdltest/run/run-program.sysml | Adds SysML2 part def + artifact references for RunProgram. |
| docs/sysml2/model/vhdltest/run/run-processor.sysml | Adds SysML2 part def + artifact references for RunProcessor. |
| docs/sysml2/model/vhdltest/run/run-line.sysml | Adds SysML2 part def + artifact references for RunLine. |
| docs/sysml2/model/vhdltest/run/run-line-type.sysml | Adds SysML2 part def + artifact references for RunLineType. |
| docs/sysml2/model/vhdltest/run/run-line-rule.sysml | Adds SysML2 part def + artifact references for RunLineRule. |
| docs/sysml2/model/vhdltest/run/process-invoker.sysml | Adds SysML2 part defs + artifact references for IProcessInvoker/ProcessInvoker. |
| docs/sysml2/model/vhdltest/run.sysml | Adds Run subsystem part def and member parts. |
| docs/sysml2/model/vhdltest/results/test-results.sysml | Adds SysML2 part def + artifact references for TestResults. |
| docs/sysml2/model/vhdltest/results/test-result.sysml | Adds SysML2 part def + artifact references for TestResult. |
| docs/sysml2/model/vhdltest/results.sysml | Adds Results subsystem part def and member parts. |
| docs/sysml2/model/vhdltest/program.sysml | Adds SysML2 part def + artifact references for Program. |
| docs/sysml2/model/vhdltest/cli/options.sysml | Adds SysML2 part def + artifact references for Options. |
| docs/sysml2/model/vhdltest/cli/context.sysml | Adds SysML2 part def + artifact references for Context. |
| docs/sysml2/model/vhdltest/cli/config-document.sysml | Adds SysML2 part def + artifact references for ConfigDocument. |
| docs/sysml2/model/vhdltest/cli.sysml | Adds Cli subsystem part def and member parts. |
| docs/sysml2/model/vhdltest.sysml | Adds VHDLTest system part def and top-level structure. |
| docs/sysml2/model/ots.sysml | Adds OTS dependency part defs (YamlDotNet, DemaConsulting.TestResults). |
| docs/reqstream/vhdltest/simulators/xilinx-arg-text.yaml | New requirements for XilinxArgText quoting behavior. |
| docs/reqstream/vhdltest/simulators/tcl-text.yaml | New requirements for TclText brace-quoting and fallback escaping. |
| docs/reqstream/vhdltest/results/test-results.yaml | Splits PrintSummary into explicit count printing + “suppress zero” child requirement. |
| docs/reqstream/vhdltest/results/results.yaml | Splits Results summary requirements to separate per-test lines vs aggregate counts. |
| docs/reqstream/vhdltest/program.yaml | Refines requirement text to focus on observable behavior (run/report/etc.). |
| docs/reqstream/ots/versionmark.yaml | Adds new requirement proving lint detects manifest drift. |
| docs/reqstream/ots/sysml2tools.yaml | New OTS requirements for SysML2Tools lint/render behavior. |
| docs/reqstream/ots/reviewmark.yaml | Adds additional OTS requirements for ReviewMark features (version/help/index/etc.). |
| docs/reqstream/ots/reqstream.yaml | Adds additional OTS requirements for ReqStream features (processing/matrix/export/filtering). |
| docs/reqstream/ots/buildmark.yaml | Adds additional OTS requirements for BuildMark features beyond report generation. |
| docs/design/vhdltest/simulators/xilinx-arg-text.md | New design doc for XilinxArgText (purpose/behavior/callers). |
| docs/design/vhdltest/simulators/vivado-simulator.md | Updates Vivado design doc to reflect Xilinx argument file quoting and adds diagram embed. |
| docs/design/vhdltest/simulators/tcl-text.md | New design doc for TclText (brace quoting + escaped fallback). |
| docs/design/vhdltest/simulators/simulator.md | Adds diagram embed and clarifies per-implementation “safe passing” responsibility. |
| docs/design/vhdltest/simulators/simulator-factory.md | Adds diagram embed. |
| docs/design/vhdltest/simulators/questasim-simulator.md | Adds diagram embed + updates to describe TclText quoting usage. |
| docs/design/vhdltest/simulators/nvc-simulator.md | Adds diagram embed. |
| docs/design/vhdltest/simulators/modelsim-simulator.md | Adds diagram embed + updates to describe TclText quoting usage. |
| docs/design/vhdltest/simulators/mock-simulator.md | Adds diagram embed. |
| docs/design/vhdltest/simulators/ghdl-simulator.md | Adds diagram embed. |
| docs/design/vhdltest/simulators/active-hdl-simulator.md | Adds diagram embed + updates to describe TclText quoting usage. |
| docs/design/vhdltest/simulators.md | Adds diagram embed and updates contained units list to include new helpers. |
| docs/design/vhdltest/self-test/validation.md | Adds diagram embed and clarifies validation runs are in-process nested invocations. |
| docs/design/vhdltest/self-test.md | Adds diagram embed. |
| docs/design/vhdltest/run/run-results.md | Adds diagram embed. |
| docs/design/vhdltest/run/run-program.md | Adds diagram embed and updates callers description to ProcessInvoker. |
| docs/design/vhdltest/run/run-processor.md | Adds diagram embed and documents Windows resolution behavior + defensive copy. |
| docs/design/vhdltest/run/run-line.md | Adds diagram embed. |
| docs/design/vhdltest/run/run-line-type.md | Adds diagram embed. |
| docs/design/vhdltest/run/run-line-rule.md | Adds diagram embed. |
| docs/design/vhdltest/run/process-invoker.md | Adds diagram embed (new/updated ProcessInvoker abstraction doc). |
| docs/design/vhdltest/run.md | Adds diagram embed and updates unit list to include ProcessInvoker abstraction. |
| docs/design/vhdltest/results/test-results.md | Adds diagram embed. |
| docs/design/vhdltest/results/test-result.md | Adds diagram embed. |
| docs/design/vhdltest/results.md | Adds diagram embed. |
| docs/design/vhdltest/program.md | Adds diagram embed. |
| docs/design/vhdltest/cli/options.md | Adds diagram embed. |
| docs/design/vhdltest/cli/context.md | Adds diagram embed and documents value-flag parsing asymmetry and caller map. |
| docs/design/vhdltest/cli/config-document.md | Adds diagram embed. |
| docs/design/vhdltest/cli.md | Adds diagram embed. |
| docs/design/vhdltest.md | Adds diagram embed. |
| docs/design/ots/sysml2tools.md | New OTS design doc for SysML2Tools integration (lint/render/query). |
| docs/design/ots/reviewmark.md | Expands listed features used/integrated for ReviewMark. |
| docs/design/ots/reqstream.md | Expands listed features used/integrated for ReqStream. |
| docs/design/ots/buildmark.md | Expands listed features + adds error-handling description. |
| docs/design/ots.md | Adds SysML2Tools to OTS list and clarifies xUnit naming. |
| docs/design/introduction.md | Replaces hand-maintained structure tree with SysML2-rendered diagram + updates narrative. |
| docs/design/definition.yaml | Adds SysML2Tools design doc to design collection inputs. |
| AGENTS.md | Updates agent navigation guidance to prefer SysML2 model + updates delegation/reporting notes. |
| .versionmark.yaml | Adds sysml2tools capture regex. |
| .gitignore | Ignores generated diagram output directory. |
| .github/workflows/build.yaml | Adds SysML2Tools self-validation + render steps; extends matrix OS/tool capture list. |
| .github/standards/sysml2-modeling.md | New standard defining SysML2 model/view conventions and integration. |
| .github/standards/software-items.md | Notes SysML2 part defs carry artifact-location comment metadata. |
| .github/standards/reviewmark-usage.md | Updates review-set guidance to include SysML2 + clarifies context vs reviewed files. |
| .github/standards/design-documentation.md | Updates Software Structure requirement to be SysML2-diagram-based; clarifies version-number guidance. |
| .github/skills/sysml2tools-query/SKILL.md | New skill doc guiding sysml2tools query usage and conventions. |
| .github/agents/template-sync.agent.md | Updates template-sync grouping and reporting behavior; adds SysML2 grouping. |
| .github/agents/quality.agent.md | Updates quality checks to include verification docs and stricter companion artifact coverage. |
| .github/agents/planning.agent.md | Adds a new planning agent definition and report template. |
| .github/agents/lint-fix.agent.md | Updates lint-fix report template to include report path. |
| .github/agents/implementation.agent.md | Updates orchestration to use planning agent and standardize report fields/state names. |
| .github/agents/formal-review.agent.md | Clarifies context vs reviewed files and standardizes report template fields. |
| .github/agents/developer.agent.md | Expands companion artifact responsibilities and standardizes report template fields. |
| .cspell.yaml | Adds SysML2-related terms and “metacharacter(s)” to dictionary. |
| .config/dotnet-tools.json | Adds SysML2Tools local tool entry. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
macOS still isn't supported by GHDL despite dropping the version: 5.1.1 pin. Re-exclude macos-latest from the test-ghdl matrix while keeping the version input unpinned (defaults to setup-ghdl's rolling nightly release) rather than restoring the 5.1.1 pin. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- TryResolveCandidates no longer appends PATHEXT variants to an already extension-qualified application name, preventing an unintended match like tool.exe.cmd when tool.exe was requested - The Win32Exception thrown for a missing program now carries NativeErrorCode = ERROR_FILE_NOT_FOUND (2) instead of the default 0 Both were flagged by GitHub's copilot-pull-request-reviewer bot on PR #140. Verified with a disposable check that the fixes match cmd.exe/Win32 resolution semantics, added regression tests (double-extension guard, NativeErrorCode assertion), and updated design/verification docs. Reviewed clean with the built-in code-review agent and the VHDLTest-Run-RunProcessor formal-review review-set (model gpt-5.4-mini). Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Fixes additional issues found in the latest PR #140 review round: - RunProcessor constructor now throws ArgumentNullException when rules is null, instead of a later NullReferenceException from the defensive-copy expression. - TclText.Quote and XilinxArgText.Quote now throw ArgumentNullException when value is null, instead of a NullReferenceException from dereferencing it. - Corrected stale XML-doc/design-doc references to RunProgram.Run that should reference IProcessInvoker.Execute, the actual delegate invoked by RunProcessor.Execute(Context, ...). Added regression tests and updated companion design/verification docs for all three fixes. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Addresses PR #140 review feedback: the design doc's Key Methods and Error Handling sections for Execute(Context, ...) implied Windows pre-flight executable resolution and the pre-flight Win32Exception throw always occur. In fact both only happen when the instance uses the production ProcessInvoker.Instance; they are skipped when a test-double IProcessInvoker is supplied, matching the already-correct XML doc comments in RunProcessor.cs (unchanged). Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…tory search order Addresses PR #140 review feedback: TryResolveWindowsExecutable only searched the starting directory and PATH, but real CreateProcess/cmd.exe resolution always implicitly searches the Windows system directory (%SystemRoot%\System32) and the Windows directory (%SystemRoot%) regardless of PATH contents. This could cause the pre-flight check to throw Win32Exception for a program that cmd /c would actually launch successfully. - Added a WindowsSystemDirectories helper yielding Environment.SystemDirectory and the Windows special folder path. - TryResolveWindowsExecutable now searches the starting directory first, then the system directories, then PATH, matching the documented CreateProcess search order (an initial version of this fix searched the system directories before the starting directory; corrected after a follow-up review caught the order mismatch against the current/starting directory). - Added a regression test that temporarily clears PATH of System32 and confirms 'cmd' (which lives there) still resolves and runs successfully. - Added reqstream requirement VHDLTest-Run-RunProcessor-SystemDirectoryResolution tracing to the new test. - Updated design/verification docs to describe the corrected search order. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Addresses PR #140 review feedback: docs/design/introduction.md's Software Structure section listed Simulator, SimulatorFactory, and MockSimulator as part of the simulator auto-discovery priority order, but SimulatorFactory.Get only ever iterates the six production simulators (GhdlSimulator, ModelSimSimulator, QuestaSimSimulator, VivadoSimulator, ActiveHdlSimulator, NvcSimulator) -- Simulator and SimulatorFactory are not simulators, and MockSimulator is explicitly excluded. Corrected the prose to list only the six production simulators in their actual declared order. While reviewing the affected VHDLTest-Design review-set, formal-review surfaced a related pre-existing inconsistency: simulator.md unconditionally claimed concrete subclasses throw InvalidOperationException when SimulatorPath is null, conflicting with mock-simulator.md's (and the actual MockSimulator.cs implementation's) documented, deliberate omission of that check. Updated simulator.md to describe the throw as the contract for production simulators, with MockSimulator called out as a documented exception. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…atches Restructure TryResolveCandidates so a bare/extensionless application name only matches PATHEXT-qualified variants, never a literal extensionless file sharing the same name, matching real cmd.exe/CreateProcess resolution semantics. Add regression test, update design/verification docs, and add reqstream requirement VHDLTest-Run-RunProcessor-BareNameExtensionlessFileExcluded. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
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.
This pull request introduces a new
planningagent and significantly refines the orchestration, reporting, and quality validation processes for the agent-based development workflow. It updates agent instructions and report templates for improved traceability, companion artifact coverage, and standards compliance. The changes also extend support for SysML2 tooling and terminology.Key changes include:
Agent Orchestration and Planning
planningagent (.github/agents/planning.agent.md) that investigates the codebase, produces a verified implementation plan, and explicitly identifies all required companion artifacts for traceability and compliance. The agent includes a structured critique, risk, and feasibility assessment, and returns a lean summary with a link to the full report..github/agents/implementation.agent.md) to use the new planning agent, clarify state transitions, and require referencing the planning report for full details. The completion report now includes explicit unknowns when the result is INCOMPLETE. [1] [2] [3] [4] [5]Companion Artifact and Quality Coverage
Formal Review and Reporting
Template Synchronization and SysML2 Support
demaconsulting.sysml2tools.toolto.config/dotnet-tools.jsonand updated spelling dictionary entries for SysML2 terminology. [1] [2] [3]