FE-1487: Quick simulation runs an ad-hoc scenario when none is selected - #9287
Draft
kube wants to merge 6 commits into
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
1 Skipped Deployment
|
3 tasks
kube
force-pushed
the
cf/fe-1487-quick-simulation-runs-an-ad-hoc-scenario-when-none-is
branch
from
August 23, 2026 14:18
996e8c5 to
cb17673
Compare
kube
force-pushed
the
cf/fe-1487-quick-simulation-runs-an-ad-hoc-scenario-when-none-is
branch
from
August 23, 2026 14:40
cb17673 to
eb782f9
Compare
kube
force-pushed
the
cf/fe-1487-quick-simulation-runs-an-ad-hoc-scenario-when-none-is
branch
from
August 23, 2026 15:42
eb782f9 to
b4fc27c
Compare
kube
force-pushed
the
cf/fe-1487-quick-simulation-runs-an-ad-hoc-scenario-when-none-is
branch
from
August 24, 2026 01:03
b4fc27c to
1330ce5
Compare
kube
force-pushed
the
cf/fe-1487-quick-simulation-runs-an-ad-hoc-scenario-when-none-is
branch
from
August 24, 2026 01:11
1330ce5 to
ca3db02
Compare
kube
force-pushed
the
cf/fe-1487-quick-simulation-runs-an-ad-hoc-scenario-when-none-is
branch
from
August 24, 2026 17:51
1303f22 to
5bb91a6
Compare
kube
force-pushed
the
cf/fe-1487-quick-simulation-runs-an-ad-hoc-scenario-when-none-is
branch
from
August 24, 2026 18:55
5bb91a6 to
767f468
Compare
kube
force-pushed
the
cf/fe-1487-quick-simulation-runs-an-ad-hoc-scenario-when-none-is
branch
from
August 24, 2026 19:22
767f468 to
d9d170a
Compare
kube
force-pushed
the
cf/fe-1487-quick-simulation-runs-an-ad-hoc-scenario-when-none-is
branch
from
August 24, 2026 21:10
d9d170a to
c21e859
Compare
kube
force-pushed
the
cf/fe-1487-quick-simulation-runs-an-ad-hoc-scenario-when-none-is
branch
from
August 24, 2026 21:58
c21e859 to
4ef9e82
Compare
kube
force-pushed
the
cf/fe-1487-quick-simulation-runs-an-ad-hoc-scenario-when-none-is
branch
from
August 24, 2026 22:13
4ef9e82 to
fc7a5c6
Compare
3 tasks
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.
🌟 What is the purpose of this PR?
The first consumer of the ad-hoc scenario form (FE-778): with no scenario selected, the Simulation Settings panel edits the run's initial state directly, inline — an "Initial state" column between the parameters and the computation settings, with no separate edition step — and the simulation provider compiles that state through a scenario generated at run time. The generated scenario is never persisted into the net file. Sits above FE-1486 (#9285) in stack #9286.
🔗 Related links
🔍 What does this change?
react/simulation/context.tsandprovider.tsx:SimulationContextgainsadHocScenario: AdHocScenarioState | nullandsetAdHocScenario. The setter invalidates the current simulation, the same as every other configuration setter.adHocScenariois set, the provider synthesizes a scenario withsynthesizeAdHocScenarioand compiles it through the existingcompileScenariopath. Synthesis errors surface through the existingscenarioCompilationErrorsBanner (netParametererrors map to theparameterOverridesource, everything else toinitialState).simulation-settings.tsx: with "No scenario" selected, the panel's grid grows a third column, Initial state, hostingAdHocScenarioForminline —bare(the panel's own small-caps heading grammar, no section chrome) andwithVariables={false}(this embedding offers no scenario Variables; the panel's parameter inputs stay the single owner of parameter values, so the form gets no Parameters section either). The column scrolls with the same fade treatment as the parameters list, and a Clear button appears next to its title once the state is non-empty. Selecting a saved scenario collapses the panel back to two columns. The form runs its own LSP session, so expressions type-check live against the net. The earlier "Define initial state" pencil-button drawer is gone (ad-hoc-scenario-drawer.tsxdeleted) — no edition step, the form is the settings.Pre-Merge Checklist 🚀
🚢 Has this modified a publishable library?
This PR:
patch).📜 Does this require a change to the docs?
The changes in this PR:
🕸️ Does this require a change to the Turbo Graph?
The changes in this PR:
🛡 What tests cover this?
The FE-1485 tests cover synthesis and compilation of everything the drawer can produce. The four extended mock fixtures keep the existing hook, playback, and story tests passing against the widened context.
❓ How to test this?
turbo run dev --filter @apps/petrinaut→ open a net → Simulate → simulation settings.🐾 Next steps
FE-1488 wires the experiment drawer's no-scenario branch, FE-1489 the optimization drawer with manifest emission (both hold until the experiment-backend PRs #9178/#9179 merge).
🤖 Generated with Claude Code