Refactor SysML2 model structure and enhance artifact metadata - #22
Merged
Conversation
…-location metadata
- Split docs/sysml2/{system}.sysml into docs/sysml2/model/ mirroring the folder
depth of docs/design/, docs/reqstream/, and docs/verification/ (one file per
System/Subsystem/Unit); docs/sysml2/views/ remains a sibling of model/.
- Added named comment metadata (sourceRef/testRef/designRef/verificationRef/
reqRef) to each part def so agents can query companion-artifact locations via
'sysml2tools query describe' without grepping the source tree.
- Bumped demaconsulting.sysml2tools.tool to 0.1.0-beta.5, which added native
recursive glob expansion to lint/render/query. Simplified build.yaml's render
step (plain PowerShell, no shell: bash/globstar workaround) and lint.ps1's
sysml2 lint step (single quoted glob, no Get-ChildItem/content-filter).
- Rewrote sysml2-modeling.md (repository structure, model content, artifact-
location comments, build/lint integration, diagram embedding) and the
sysml2tools-query skill (new paths, artifact-location metadata section,
beta.5 quoted-glob examples) to document the new approach.
- Added a one-sentence cross-reference in software-items.md's Software Item
Artifact Model section pointing at the new SysML2 comment metadata.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Contributor
There was a problem hiding this comment.
Pull request overview
This pull request refactors the repository’s SysML2 architecture model to a modular, nested file structure under docs/sysml2/model/, and updates linting/build automation plus documentation to use recursive quoted globs and standardized artifact-location metadata for better traceability.
Changes:
- Split the monolithic SysML2 model into many smaller System/Subsystem/Unit files under
docs/sysml2/model/**and removed the old flat files. - Standardized artifact-location metadata on
part defelements viacommentfields (sourceRef,testRef,designRef,verificationRef,reqRef). - Updated scripts/workflows/docs to use quoted recursive globs and upgraded
demaconsulting.sysml2tools.toolto0.1.0-beta.5.
Reviewed changes
Copilot reviewed 24 out of 24 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
lint.ps1 |
Simplifies SysML2 lint invocation to a single quoted recursive glob. |
docs/sysml2/ots.sysml |
Removes old flat OTS model file (replaced by modular structure). |
docs/sysml2/model/ots.sysml |
Adds OTS dependencies model with artifact-location comment metadata. |
docs/sysml2/model/dictionary-mark/utilities/temporary-directory.sysml |
Adds unit model + artifact refs for TemporaryDirectory. |
docs/sysml2/model/dictionary-mark/utilities/path-helpers.sysml |
Adds unit model + artifact refs for PathHelpers. |
docs/sysml2/model/dictionary-mark/utilities/glob-matcher.sysml |
Adds unit model + artifact refs for GlobMatcher. |
docs/sysml2/model/dictionary-mark/utilities.sysml |
Adds UtilitiesSubsystem model and its contained parts + refs. |
docs/sysml2/model/dictionary-mark/self-test/validation.sysml |
Adds unit model + artifact refs for Validation. |
docs/sysml2/model/dictionary-mark/self-test.sysml |
Adds SelfTestSubsystem model and child part usage + refs. |
docs/sysml2/model/dictionary-mark/program.sysml |
Adds unit model + artifact refs for Program. |
docs/sysml2/model/dictionary-mark/dictionary/yaml-loader.sysml |
Adds unit model + artifact refs for YamlDictionaryLoader. |
docs/sysml2/model/dictionary-mark/dictionary/markdown-formatter.sysml |
Adds unit model + artifact refs for MarkdownFormatter. |
docs/sysml2/model/dictionary-mark/dictionary/dictionary-generator.sysml |
Adds unit model + artifact refs for DictionaryGenerator. |
docs/sysml2/model/dictionary-mark/dictionary/conflict-detector.sysml |
Adds unit model + artifact refs for ConflictDetector. |
docs/sysml2/model/dictionary-mark/dictionary.sysml |
Adds DictionarySubsystem plus value-type part defs and refs. |
docs/sysml2/model/dictionary-mark/cli/context.sysml |
Adds unit model + artifact refs for CLI Context. |
docs/sysml2/model/dictionary-mark/cli.sysml |
Adds CliSubsystem model and child part usage + refs. |
docs/sysml2/model/dictionary-mark.sysml |
Adds top-level DictionaryMarkSystem model using modular parts + refs. |
docs/sysml2/dictionary-mark.sysml |
Removes old monolithic system model file (replaced by modular structure). |
.github/workflows/build.yaml |
Updates SysML2Tools render step to use recursive model glob and new paths. |
.github/standards/sysml2-modeling.md |
Documents the new SysML2 layout, glob usage, and artifact-location comment conventions. |
.github/standards/software-items.md |
Notes SysML2 part def comment metadata as a discovery aid for artifacts. |
.github/skills/sysml2tools-query/SKILL.md |
Updates query workflow guidance for new layout, globs, and artifact-location metadata. |
.config/dotnet-tools.json |
Upgrades demaconsulting.sysml2tools.tool to 0.1.0-beta.5. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
… continuations The render invocation is a single logical command, so PowerShell's backtick line-continuation was unnecessary and fragile (it silently depends on the run step defaulting to pwsh on windows-latest, with no shell: declared). Switched to shell: pwsh (explicit, matching every other step's explicit shell: bash in this job) and the > folded block scalar, which joins the multi-line YAML into one space-separated command with no continuation characters needed at all. 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 updates the SysML2 modeling conventions and related documentation to support a more modular, scalable file structure and improved artifact traceability, leveraging new features in
sysml2tools0.1.0-beta.5. The main changes include reorganizing model files into a nested directory structure, updating documentation and workflows to use recursive globs, introducing standardized artifact-location metadata in model files, and removing the old monolithicdictionary-mark.sysmlin favor of the new structure.SysML2 Model Structure and Tooling Improvements:
docs/sysml2/to a nested, modular hierarchy underdocs/sysml2/model/, with one file per System, Subsystem, and Unit, matching the folder structure of companion artifacts (design, requirements, verification). This enables smaller, more maintainable model files and reduces unrelated diffs in PRs. (.github/skills/sysml2tools-query/SKILL.md,.github/standards/sysml2-modeling.md,docs/sysml2/dictionary-mark.sysml[1] [2] [3]'docs/sysml2/model/**/*.sysml') for allsysml2toolscommands, reflecting new internal glob expansion and recursion support insysml2tools0.1.0-beta.5. This ensures consistent behavior across shells and simplifies CI/CD scripts. (.github/skills/sysml2tools-query/SKILL.md,.github/standards/sysml2-modeling.md,.github/workflows/build.yaml[1] [2] [3]Artifact Traceability and Metadata:
sourceRef,testRef,designRef,verificationRef,reqRef) in every System/Subsystem/Unitpart def. These comments point to the corresponding source, test, design, verification, and requirements files, enabling agents and tools to query artifact locations directly from the model. Documentation now describes how to use these comments and the conventions for when each is present. (.github/standards/sysml2-modeling.md,.github/standards/software-items.md,.github/skills/sysml2tools-query/SKILL.md[1] [2] [3]Documentation and Workflow Updates:
.github/skills/sysml2tools-query/SKILL.md,.github/standards/sysml2-modeling.md,.github/workflows/build.yaml[1] [2] [3]docs/sysml2/dictionary-mark.sysmlfile, as the model is now split into modular files per the new convention.Tooling Version Update:
demaconsulting.sysml2tools.toolto version 0.1.0-beta.5 in.config/dotnet-tools.jsonto enable new features such as internal glob expansion and recursive directory processing.