Skip to content

Revise GUI inputs and result controls from #299 review - #300

Merged
martin-raden merged 1 commit into
feat/297-gui-sessionsfrom
fix/299-gui-review
Oct 26, 2026
Merged

martin-raden merged 1 commit into
feat/297-gui-sessionsfrom
fix/299-gui-review

Conversation

@Alexander-Mitrofanov

Copy link
Copy Markdown
Collaborator

Addresses the GUI revision request on #299. This follow-up depends on #299 and targets its branch, feat/297-gui-sessions.

The input panels now follow Sequences → Seed → Output → Model & Energy → Query → Target → CLI-only. Controls use the requested row order and aligned inputs; SHAPE sits beside each strand's accessibility inputs, shared accessibility flags stay synchronized, and helix controls sit under Model & Energy. The three-way seed selector and accessibility modes disable irrelevant fields and omit their stale values from computations and saved parameters.

  • Use “IntaRNA package”, put Compute/Evaluate first, and follow it with Input Parameters, Examples, Store, Load and Reset. Give sequence/CLI information the available width.
  • Accept up to 50 FASTA records per field and 5,000 nt per record, enforcing longest selected query × longest selected target ≤ 1,000,000. Raise FASTA upload/JSON limits to accommodate these batches, warn about ignored header descriptions, place start indices before record counts, and allow scrolling in both directions.
  • Group compact CSV column names with description tooltips and per-group Select/Deselect actions. Prediction defaults to 10 interactions plus ED1/2 and seed energy/start columns; evaluation selects all energy columns. Preserve these defaults explicitly in native-compatible JSON, while existing imported files retain native defaults for omitted settings.
  • Rename Sessions to Results, order Show/Hide before name, ZIP and deletion, and restore inputs from header/name selection. Compact numeric table headings/padding and distinguish table headers from selected rows. Folded export and deletion continue to preserve edited inputs.
  • Update examples, usage documentation, ChangeLog and regression coverage.

Validation:

  • npm test --prefix gui: 20 passed.
  • Real-WASM scripts/wasm/test-browser.py in Chromium and Firefox at a nested URL: passed. Includes mode availability, stale disabled values, explicit-seed JSON restoration, synchronized controls, grouped CSV actions, header selection, existing session/ZIP behavior and cancellation. Desktop/mobile screenshots inspected; all panels fit at 390 px without document overflow.
  • node scripts/wasm/smoke-protocol.mjs <staged-engine>: native-reference checks and byte-identical JSON archive replay passed.
  • Fresh GCC 14 release make tests -j2: all nine API/CLI groups passed. Existing CLI fixtures were linked into the out-of-tree build's tests/data directory.
  • Static staging/digest checks, JS/Python/shell syntax and git diff --check: passed.

The C++ engine and worker protocol are unchanged. Browser checks reuse the parent's compiled Emscripten 4.0.23 / ViennaRNA 2.7.2 assets with their original provenance. Sessions remain page-local; the new sequence cap applies to the largest selected pair rather than total batch work.

@martin-raden
martin-raden merged commit 4ce566a into feat/297-gui-sessions Oct 26, 2026
7 checks passed
@martin-raden
martin-raden deleted the fix/299-gui-review branch October 26, 2026 09:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants