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

wegamekinglc / Derivatives-Algorithms-Lib / 35454986234
92%

Build:
DEFAULT BRANCH: master
Ran 19 Sep 2026 04:40PM UTC
Jobs 1
Files 296
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

19 Sep 2026 04:26PM UTC coverage: 91.33% (+0.002%) from 91.328%
35454986234

push

github

web-flow
DAL-280: EXERCISE statement parsing skeleton, gates, and diagnostics (T1) (#397)

* Add EXERCISE statement parsing, validation, and diagnostics (DAL-280 T1)

- Parse EXERCISE <value> [IF <condition>] into NodeExercise_ with greedy
  IF binding, per-event duplicate and top-level-only nesting guards, a
  dedicated dangling-IF error, and ReservedIdentifier migration hints for
  variables/definitions named 'exercise' (breaking: keyword reserved)
- Extend ContainsPayoff so EXERCISE-only products pass the preparation
  gate; route the payoff receiver by PAYS presence (sentinel payoffIdx_
  without PAYS, null payoff_index diagnostic)
- Gate preparation: exercise dates strictly after the evaluation date,
  sobol-only rsg with a use-method hint, history-only and legacy
  PreProcess rejections; evaluators/compiler throw UnsupportedExecutionMode
  until the LSMC driver lands (T2)
- Render EXERCISE in all three debugger outputs (JSON kind exercise with
  compare-aligned mode/eps, s-expression label, ASCII tree) and reject it
  in the legacy dal.script-product/1 JSON dump
- Add MonteCarloSettings_::lsmcBasisDegree_ (default 3) validated to 1..8
  in ValidateSimulationSettings
- CHANGELOG Breaking entry + script_engine.md reserved-word note

Co-authored-by: multica-agent <github@multica.ai>

* Fix PR review findings: O(1) payoff queries, sobol gate, warning-clean

- Record hasPays_/hasExercise_ while parsing so HasPayoff/HasPays/
  ContainsExercise stay O(1); the per-call AST walks had regressed
  script.construct_and_parse by ~35% in the paired Python benchmark gate
- Restructure FindExercise into FindExerciseIn + FindExercise: the
  structured-binding range loop tripped GCC 14 -Werror=dangling-reference
  in the warning-clean build
- Express the sobol-only exercise gate as an explicit equality and move
  ValidateSimulationSettings ahead of it, so unknown rsg names keep their
  InvalidSetting error and the gate stays correct for future engines
- Split ParseExercis... (continued)

99 of 107 new or added lines in 13 files covered. (92.52%)

14674 of 16067 relevant lines covered (91.33%)

2532560.45 hits per line

Uncovered Changes

Lines Coverage ∆ File
5
79.27
0.37% dal-cpp/dal/script/visitor/debugger.hpp
3
90.23
-1.58% dal-cpp/dal/script/visitor/domainproc.hpp
Jobs
ID Job ID Ran Files Coverage
1 35454986234.1 19 Sep 2026 04:40PM UTC 296
91.33
GitHub Action Run
Source Files on build 35454986234
  • Tree
  • List 296
  • Changed 14
  • Source Changed 14
  • Coverage Changed 14
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #35454986234
  • 44ce4d5d on github
  • Prev Build on master (#35442554241)
  • Next Build on master (#35464753232)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc