Repository navigation
Pin OpenSysML to develop 5cd37f288 and apply the model follow-ups it unblocks - #13
Draft
devin-ai-integration[bot] wants to merge 12 commits into
Draft
devin-ai-integration[bot] wants to merge 12 commits into
devin-ai-integration[bot] wants to merge 12 commits into
Conversation
…ord runs The tool build is pinned by full commit (scripts/fetch-tools.sh OPENSYSML_COMMIT), not by the moving nightly or a branch-name clone, so runs/ are reproducible from a fresh checkout; CI builds the same way. runs/tool-version.txt stays commit (9 chars) + Go version only. Co-Authored-By: jason.han <hanhuijun@gmail.com>
Contributor
Author
|
I'll fix CI failures and address comments from users with write access. I'll skip comments containing "(aside)".
|
…luation The ICD parameter tables listed name and type only, because DocumentQueries could not read a row feature's own value (findings F-D04). With the pinned OpenSysML they project valuation, so each table shows the number and unit the model binds (28 V, 15 W, 9600 bit/s on the tug-inspector ICD; adapter diameter and loads on the launch ICD). Co-Authored-By: jason.han <hanhuijun@gmail.com>
VvMatrix and the VerificationMatrix document's MissionRequirements rows project the method, level and stage each requirement declares as @verification, through the Verification::method, Verification::level and Verification::stage paths (findings F-H01). Co-Authored-By: jason.han <hanhuijun@gmail.com>
…part's port TugModes, InspectorModes and FdirSupervisor own port command; ModedTug, ModedInspector and FdirTug now bind it explicitly (bind modes.command = command), since the spec binds no port by name across an exhibit. Both validators accept the form. Co-Authored-By: jason.han <hanhuijun@gmail.com>
… RK4 in the tool tier DroStabilityAnalysis::revolution no longer fixes its integrator in the definition; the mission-tier droStability binds the model's own RungeKutta4 (findings F-F01) and the tool-tier droStabilityRk4 binds StateSpaceIntegration::RK4 with the x-axis crossing guarded on y. The custom calc def RungeKutta4 and the F-F01 probe are unchanged. Co-Authored-By: jason.han <hanhuijun@gmail.com>
F-C05: a nested action's in parameter bound to the enclosing action's in parameter reads empty. F-F09: the second run of the same state-space action in one process does not step. F-F10: redefinitions of a nested state-space action's integrator and guard are not applied. Co-Authored-By: jason.han <hanhuijun@gmail.com>
Co-Authored-By: jason.han <hanhuijun@gmail.com>
Co-Authored-By: jason.han <hanhuijun@gmail.com>
…age they held Co-Authored-By: jason.han <hanhuijun@gmail.com>
… z3 for the SMT run Co-Authored-By: jason.han <hanhuijun@gmail.com>
…e period, xenon trend from the propellant book) Co-Authored-By: jason.han <hanhuijun@gmail.com> # Conflicts: # runs/as-built-satisfy.txt # runs/house-rules.txt # runs/requirements-satisfy.txt # runs/wpb-budgets-satisfy.txt
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.
Summary
Moves the OpenSysML tool pin from
0a5fa2d94to develop5cd37f288fef171d62737d6045f4caff772b6014and applies the model follow-ups that pin unblocks. Stacked onwp/consistency(#12).Pin. The source build was resolved by the moving nightly installer plus a
--depth 1clone ofdevelop(soruns/were not reproducible from a fresh checkout);scripts/fetch-tools.shnow fetches and buildssysmlat the full commit (OPENSYSML_COMMIT), takes the "OpenSysML Libraries" from the same checkout, and passesCOMMIT=tomake build-sysmlso a shallow checkout still reports the full commit. The Go toolchain is pinned with it (GOTOOLCHAIN=go1.25.11, fetched when the host'sgodiffers), becauseruns/tool-version.txtrecords it: the file stays commit (9 chars) + Go version only,5cd37f288/go1.25.11. CI (.github/workflows/check.yml) builds the same way and installsz3, which the recordedfdir-inhibit-chain-smtrun needs on PATH (the base's CI never reachedruns-check: its nightly installer step failed on the checksum).The pin contains #1376 (installer manifest), #1379 (enum identity by load order, F-B01), #1380 (nested state-space action dispatch, F-F05), #1381 (variant feature-chain reads, F-A03/B02/F02), #1382 (requirement-group validate blow-up, F-A02/A05), #1383 (metadata in case bodies, F-A06/F03), #1384 (
accept after <in param>, F-E02), #1385 (DocumentQueriesvaluationand<metadata def>::<feature>paths, F-D04/H01), #1386 (through-bindings into performed actions, F-C04/I02), #1387 (exhibited-state attribute writes, F-E01). Not in the pin: #1388 (send via a state-def port, F-E03), #1389 (node-pin reads), #1390 (vacuous satisfaction, F-I01), #1391 (individual #Tag defparser, F-C01/C02) — those finding rows stay open.Model follow-ups (one commit each, each verified with the new binary):
model/54-icds-tooling.sysml: the ICD parameter tables project the bound value throughvaluation; the tug–inspector ICD shows 28 V / 15 W / 9600 bit/s, the launch ICD its adapter diameter and loads (runs/documents/TethysIcdDocuments-*.md).model/24-verification-tooling.sysml,model/91-documents.sysml: Method / Level / Stage columns throughVerification::method,Verification::level,Verification::stage(runs/vv-report.txt,runs/documents/TethysDocuments-VerificationMatrix.md).model/60-modes.sysml,model/62-fdir.sysml: explicitbind modes.command = command(ModedTug, ModedInspector) andbind fdir.command = command(FdirTug) — the spec-compliant form, accepted by both validators. The runtime send-via path still needs #1388, so F-E03 stays open; no pinned run exercises that path, and the modes/fdir/sequence runs are unchanged in substance.model/73-dynamics.sysml,model/74-analyses-tooling.sysml:DroStabilityAnalysis::revolutionnow binds its integrator per analysis usage — the mission-tierdroStabilitykeeps the model's ownRungeKutta4(kept exactly, as ismodel/probes/F-F01-state-space-integrator.sysml), and the tool-tierTethysAnalysesTooling::droStabilityRk4bindsStateSpaceIntegration::RK4with thexAxisCrossingguard onstateSpace.elements#(2).StateSpaceIntegrationis an OpenSysML library, so the RK4 binding lives in the tooling file to keep73-dynamics.sysmlportable to the pilot. On this build the analysis form does not evaluate: redefinitions of a nested action's features from a redefining usage are not applied (new finding F-F10). The closure comes from the tool-tier actiondroRevolutionRk4(runs/tooling-dynamics.txt): after one full period of 3.20467695 time units = 13.9155 d the state returns to x = 0.8057474419, y = 2.79·10⁻⁸ (start x₀ = 0.8057474388), a closure of 0.011 km — not the ~3.95 km the consistency pass expected.runs/(WP-B, WP-C, WP-D, WP-E, WP-F, WP-H). The F-F02 probe names the model's current members (CaptureTargetCase::large,targetCases.large); it had gone stale onwp/consistency.satisfy powerBudgetCloses by powerBudget fails—demandThrusting35 518 W + bus 778 W againstarrayAtAphelionEol39 757 W isthrustingMargin0.119 < the 0.15 policy. No decision attribute was changed.New finding rows, each with a standalone probe (tool defects, no model workaround):
inparameter bound from the enclosing action'sinreads[](model/probes/F-C05-…,runs/probe-F-C05.txt); this is what still failsCaptureSequence::commit.goafter F-C04.runs/probe-F-F09.txt; also visible as the standalonefallafterdropinruns/probe-F-F05.txt).runs/probe-F-F10.txt,runs/tooling-dro-stability.txt).runs/ diff against
wp/consistency(72 files)modes-table(per-mode power 822 W … 35 518 W instead of 0 W),wpb-power-budget-safe(832 W),wpb-margin-policy(0.1),wpb-sep-thrust-aphelion,wpb-thrusting-time-large,analyses-transfer(823 / 1 039 d thrust),analyses-external-tool,analyses-sweep,montecarlo-return,montecarlo-missed-thrust,wpc-envelope-cases(4 cases pass),notation-readiness(F-I02 evaluates),probe-F-F02,probe-F-F03,tool-version,vv-matrix-l2,vv-report,document-queries,wpd-space-ground-icd-document, and the 34 rendered documents (16 ICD documents × md/html, VerificationMatrix, VvReport).requirements-satisfy,wpb-budgets-satisfy,as-built-satisfy—✗ satisfy powerBudgetCloses by powerBudget fails(real demand, see above).dynamics-standard(the build now refusesRungeKutta4explicitly — F-F01;droStabilitystops at the unbound guard — F-F10),wpc-capture-sequence(instantiates now;commit.gofails — F-C05),probe-F-F05(dropcorrect, the followingfallwrong — F-F09), and the newprobe-F-C05,probe-F-F09,probe-F-F10,tooling-dro-stability.fdir-thruster-restarting,modes-inspector-imaging,modes-inspector-retired,modes-tug-dense-target,modes-tug-early-ops,modes-tug-full-flight,modes-tug-proximity-ops,sequence-nominal-trace(materialisation ids /wren→wrenFMnames, trace lines),house-rules(element count).Gate
sysml -validate -strict -warnings-as-errors model/*.sysml0 ·make pilot-mission0 ·make pilot-all0 ·sysml -validate -self-check-package TethysHouseRules model/*.sysml0 violations ·make check0 (includingruns-check).Open finding rows after this PR
Open: F-A01, F-C01, F-C02 (#1391 not in pin), F-C03, F-C05 (new), F-D01, F-D02, F-E03 (#1388 not in pin), F-F01, F-F07, F-F08, F-F09 (new), F-F10 (new), F-G02, F-G04, F-H03, F-H04, F-H05, F-I01 (#1390 not in pin), F-I03, F-J01, F-J02, F-J03. Adjudicated or closed rows (F-A04, F-B03, F-D03, F-F04, F-F06, F-G01, F-G03, F-H02) are unchanged.
Link to Devin session: https://nasa-jpl-demo.devinenterprise.com/sessions/3d026c8838554bbdb7d11687d024f2a4
Open in Devin Desktop: https://nasa-jpl-demo.devinenterprise.com/desktop/session/3d026c8838554bbdb7d11687d024f2a4?variant=devin
Requested by: @HuiJun