chore: adopt remaining local development state

Catch-all for the intermixed residue of the unpushed otko-development
work ported into this tree: combinations/console-dock/quick-guide wiring
across commands, core, services, views and tests; repo-wide ruff-format
normalization; README/CONTRIBUTING updates; and the toolbar default
(both toolbars now open in the top area, quick guide text updated).

Splitting this further would require hunk-level surgery with low
confidence; the preceding commits in this branch isolate the
self-contained features.
This commit is contained in:
smillmorel 2026-09-16 12:03:22 -04:00
commit ba783718d4
152 changed files with 3394 additions and 1651 deletions

View file

@ -23,15 +23,16 @@ from otko.core import ( # noqa: E402
)
from otko.services.opensees_runner import OpenSeesRunner # noqa: E402
pytestmark = pytest.mark.slow
def _make_truss_project(ndf: int) -> Project:
return Project(
ndm=2, ndf=ndf,
ndm=2,
ndf=ndf,
nodes=[
Node(id=1, coords=(0, 0, 0),
restraint=(True, True, False, False, False, False)),
Node(id=2, coords=(3, 0, 0),
restraint=(True, True, False, False, False, False)),
Node(id=1, coords=(0, 0, 0), restraint=(True, True, False, False, False, False)),
Node(id=2, coords=(3, 0, 0), restraint=(True, True, False, False, False, False)),
Node(id=3, coords=(1.5, 2, 0)),
],
materials=[ElasticUniaxial(id=1, E=200e9)],
@ -40,10 +41,13 @@ def _make_truss_project(ndf: int) -> Project:
TrussElement(id=2, nodes=(2, 3), area=1e-3, material_id=1),
],
time_series=[LinearTimeSeries(id=1, name="R")],
load_patterns=[PlainLoadPattern(
id=1, time_series_id=1,
nodal_loads=[NodalLoad(node_id=3, forces=(1e3, -5e3, 0, 0, 0, 0))],
)],
load_patterns=[
PlainLoadPattern(
id=1,
time_series_id=1,
nodal_loads=[NodalLoad(node_id=3, forces=(1e3, -5e3, 0, 0, 0, 0))],
)
],
analyses=[StaticCase(id=1, name="Static", pattern_ids=[1], n_steps=1)],
)