Skip to content

Editor.add_member() does not support 'assert satisfy' (SatisfyRequirementUsage authoring) #598

Description

@mzargham

Summary

Editor.add_member() cannot produce an assert satisfy R by P usage. The construct is valid SysML v2 syntax that the parser accepts, but the authoring API has no path to produce it.

SysML v2 spec coverage

  • SysML v2 spec formal/2026-03-02 §7.19 defines SatisfyRequirementUsage.
  • OMG API (formal/2026-03-04) names SatisfyRequirementUsage as an element type.
  • Example: assert satisfy timely by nominal parses successfully.

Steps to reproduce

```python
editor = model.edit()

Raises IllegalMemberKindError: "kind 'assert satisfy' is not legal"

editor.add_member(owner="EvidenceBlock", kind="assert satisfy", name="satisfyTimely")
```

Expected

A supported kind string or helper that produces a SatisfyRequirementUsage with the assert qualifier and a by subject reference.

Actual

Neither "assert satisfy" nor "satisfy" is in the authoring allowlist.

Note

This is distinct from the query-path gap (D-001 in toaster/#590) where model.query() does not return SatisfyRequirementUsage. This issue is about the authoring path: the element cannot be created via Editor. Two separate gaps exist for this construct.

Context

Discovered while building Open-MBEE/toaster — assert satisfy is introduced in Ch3.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions