FhSim  3.1.0
Marine systems simulation
Loading...
Searching...
No Matches
Review issues — fhsim_coribo

Findings from code review that await an owner decision or an implementation. Each issue is one file in issues/details/, which holds the evidence, the effect, the possible fix, the test that would prove it and the risk. Resolved issues are kept in issues/resolved/ so that their numbers are never reused. Issues that concern a SimObject are also shown on that model's documentation page.

How to work an item

  1. Reproduce the Evidence at the file:line given in the detail file, at HEAD.
  2. For a blocked item, get the owner's answer to "Decision needed" first, then set Status to ready.
  3. Write the proving test, apply the fix, check the Risk paragraph.
  4. git mv the file to issues/resolved/, add a **Resolved:** <commit>, <date> paragraph after the table, delete the matching \xrefitem reviewissue "Review issues" "Review issues" \ref fhsim_coribo_issue_<ID> lines from the headers, rerun the script and commit it all together.

New issue: --new <slug> "<title>", or add issues/details/<slug>.md with the metadata table but no ID row; the script assigns the next free number, writes the heading and renames the file to <TAG>-<ID>-<slug>.md.

Legend

  • Class
    • BUG code does something other than its documentation or sibling code says
    • KNOWN-LIMITATION behaviour gap by design or omission, document rather than fix silently
    • ARCHITECTURE structure, dependencies, build layout, dead code and stale artefacts
    • DOCUMENTATION missing or wrong documentation or example
    • TEST test coverage or infrastructure
    • API public name (port, state, parameter, registration string) whose change breaks input files
    • SECURITY credentials and supply chain
  • Severity
    • 3 wrong numbers, a crash or a secret exposure reaches a user
    • 2 a documented interface does not work as documented
    • 1 tidiness, readers and tools only
  • Status
    • blocked needs the owner decision named in the file
    • ready fully specified

Open issues (6)

ID Class Severity Status
CORIBO-0001 TEST 3 blocked
CORIBO-0004 BUG 3 blocked
CORIBO-0005 BUG 2 blocked
CORIBO-0006 BUG 2 blocked
CORIBO-0009 BUG 2 blocked
CORIBO-0010 ARCHITECTURE 1 ready
  • CORIBO-0001 — WinchableCable has no automated behavioural test of any kind. Models: WinchableCable
  • CORIBO-0004 — The shipped CoriboCable.xml example stops before the first step: cableStates initial conditions are incomplete. Models: WinchableCable
  • CORIBO-0005 — Winch::LoadAttachedGeometryDataFromFile tests an unsigned index for < 0, so the super-element step-back never runs. Models: WinchableCable
  • CORIBO-0006 — Point-versus-disk face contact: the disk's rotational Jacobian has the wrong sign. Models: — (internal to GeometryTools/CollisionManager; annotated on the fhsim_coribo library group)
  • CORIBO-0009 — ConstraintSolver(double) starts hardware_concurrency threads, which makes small models many times slower; the affinity masks shift past their width. Models: — (library API ConstraintSolver/CoreBoundThreadPool; annotated on the fhsim_coribo library group)
  • CORIBO-0010 — ConstraintSolver's default thread pool takes every hardware thread and hands each small sub-task over with a condition-variable wake-up. Models: — (CoRiBoDynamics::ConstraintSolver, CoreBoundThreadPool; consumer fhsim_marine_elements Net/NetStructureWithConstraints, MARE-0119)

Resolved issues (4)

  • CORIBO-0002 (TEST) — The constraint solver's analytic Jacobians are never checked against finite differences. Resolved: see commit "Check the constraint solver's Jacobians against finite differences", 2026-09-24. File: resolved/CORIBO-0002-constraint-solver-jacobians-unverified.md
  • CORIBO-0003 (DOCUMENTATION) — WinchableCable's Doxygen comment says the init-states file is named .data, code and shipped file use .dat. Resolved: see commit "Name the WinchableCable init-states file .dat in its documentation", 2026-09-24. File: resolved/CORIBO-0003-winchablecable-init-states-filename-doc-mismatch.md
  • CORIBO-0007 (DOCUMENTATION) — README names the Conan conf tools.build:skip_tests, which does not exist; the recipe reads tools.build:skip_test. Resolved: see commit "Name the Conan test switch tools.build:skip_test in the README", 2026-09-24. File: resolved/CORIBO-0007-readme-skip-tests-conf-name.md
  • CORIBO-0008 (DOCUMENTATION) — doc/user/testing_report.md is not a Doxygen input, so the to it from main_coribo.md does not resolve. Resolved: see commit "Give Doxygen the testing report that main_coribo.md links to", 2026-09-24. File: resolved/CORIBO-0008-testing-report-not-in-doxygen-input.md