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

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions