• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

wegamekinglc / Derivatives-Algorithms-Lib / 28282781998
81%
master: 81%

Build:
Build:
LAST BUILD BRANCH: docs/full-review-and-perf-reflect
DEFAULT BRANCH: master
Ran 27 Jun 2026 08:07AM UTC
Jobs 1
Files 218
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

27 Jun 2026 07:39AM UTC coverage: 80.505%. Remained the same
28282781998

Pull #147

github

wegamekinglc
fix: script-engine correctness bugs (firstElse_ default, EvaluatorBase_ move-ctor)

Four script-module items addressed (two fixes, one investigation, one
deferral):

- NodeIf_::firstElse_ default changed from 0 to -1. Every consumer
  (EvaluatorBase_, FuzzyEvaluator_, Compiler_) tests firstElse_ == -1
  for "no else"; a default of 0 misread as "else at arg 0", i.e. the
  condition itself, whenever an If node was constructed before the
  if-processor set the real index.

- EvaluatorBase_ move constructor now initializes variablesInit_ (it was
  omitted from the member-init list), so a moved-from evaluator's Init()
  no longer resets all variables to zero. bStack_ is now moved too;
  scenario_ is copied as before, matching the copy ctor.

- compiler.hpp EvalCompiled switch, case Smooth: investigated whether
  the opcode is ever emitted. Compiler_::Visit* never emits Smooth into
  nodeStream_, and FuzzyEvaluator_ operates on the AST, not the compiled
  stream, so the case is unreachable. Left as dead code with a comment
  explaining why the duplicate if (x < -y) condition is not "fixed" --
  silently keeping wrong-looking code that could mislead was worse than
  documenting it.

- compiler.hpp hand-written enum NodeType_: migration to the Machinist-
  generated enum deferred as high-risk. The generated NodeType_ is a
  class wrapper over Value_ : char (not an enum), so it cannot be used
  as a non-type template parameter the way VisitBinary/VisitUnary/
  VisitCondition require. The two enums also diverge (Mult vs Multi,
  Uminus vs UMinus, missing Exp, different integer values from
  Smooth/Sqrt/Log onward), and ~167 bare-opcode references plus the
  compiled nodeStream_ integer contract would need auditing. Added a
  TODO note capturing this so the deferral is discoverable.

Co-Authored-By: Claude <noreply@anthropic.com>
Pull Request #147: fix: script-engine correctness bugs (firstElse_ default, EvaluatorBase_ move-ctor)

6285 of 7807 relevant lines covered (80.5%)

3208651.03 hits per line

Jobs
ID Job ID Ran Files Coverage
1 28282781998.1 27 Jun 2026 08:07AM UTC 218
80.5
GitHub Action Run
Source Files on build 28282781998
  • Tree
  • List 218
  • Changed 3
  • Source Changed 3
  • Coverage Changed 3
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #28282781998
  • Pull Request #147
  • PR Base - master (#28282236600)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc