Skip to content

model_test Gherkin: multi-segment waveform support — one step() per signal caps expressible condition phases #46

Description

@Hobart229

Context

The model_test Gherkin grammar supports exactly two input forms per signal: const(<value>) and a single step(<from> -> <to> @ <time>) (per the testing-simulink-models SKILL.md grammar).

This caps the number of condition phases a scenario can stage at 1 + (number of participating signals with an unused step). Multi-signal step composition covers many multi-event cases (e.g. trip → clear → re-trip by stepping a threshold signal later), but acceptance criteria of the shape "the debounce timer restarts on the NEXT event" need trip → partial-event → interruption → second-event = 4 phases; when the qualifying condition involves only 2 signals (e.g. Temp < RecoveryPoint), the budget is 3 and the scenario is inexpressible.

Request

A multi-segment waveform form, e.g.:

* Temp = steps(90 @ 0ms -> 60 @ 5ms -> 80 @ 100ms -> 60 @ 150ms)

(or allowing repeated step() lines per signal with defined semantics).

Why it matters for agent workflows

In our audited MBD pipeline, "restart on next event" §6 acceptance rows repeatedly graded NOT-TESTED because no scenario could stage the second event — burning multiple agent fix-round iterations before the tooling ceiling was diagnosed. We now split such acceptances into a unit-testable half + a by-analysis note, but native multi-segment support would let them be tested directly.

Environment

Simulink Agentic Toolkit 2026.06 line, MATLAB MCP Server (post-0.10), MATLAB R2024b, macOS.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions