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

source-academy / py-slang / 28352892606
78%

Build:
DEFAULT BRANCH: main
Ran 29 Jun 2026 06:28AM UTC
Jobs 1
Files 83
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

29 Jun 2026 06:24AM UTC coverage: 76.137% (+0.9%) from 75.202%
28352892606

push

github

web-flow
feat(stepper): implement PythonStepperEvaluator and add stepper dependencies (#152)

* feat(stepper): implement PythonStepperEvaluator and add stepper dependencies

* Update src/conductor/stepper/reduce.ts

Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>

* Update src/conductor/stepper/reduce.ts

Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>

* fix(stepper): address all review feedback on PythonStepperEvaluator PR

- Fix substitute() to add explicit VariableDeclarator case, preventing id
  corruption when substituting into variable declarations (Gemini HIGH)
- Add ZeroDivisionError guards for division/modulo by zero and 0**negative
  in both bigint and float arithmetic paths (Gemini MEDIUM)
- Store Python integers as JS bigint throughout the stepper (translate +
  reduce), including proper floor division and Python-compatible modulo
  for negative operands (AaravMalani)
- Replace pass-as-ExpressionStatement with a dedicated PassStatement node
  type, handled explicitly in reduceProgram (AaravMalani)
- Rename PythonStepperEvaluator1 -> PyStepperEvaluator1 to match Py*
  naming convention used by all other evaluators (AaravMalani)
- Fix JSDoc path ../stepper/translate -> ./translate in ast.ts (AaravMalani)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* feat(stepper): add Python SyntaxProfile for authentic step rendering

PythonStepperRunnerPlugin overrides getSyntaxProfile() to ship pythonSyntaxProfile
(surface-syntax templates + operator/expression precedence for every node type).
The language-agnostic stepper host then renders Python syntax (def, lambda,
if/else, no JS tokens) directly from this data — no per-language host changes.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

* feat(stepper): rename evaluator/plugin, add builtins and preprocess, expand reduce and tests

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthr... (continued)

2211 of 3197 branches covered (69.16%)

Branch coverage included in aggregate %.

709 of 809 new or added lines in 7 files covered. (87.64%)

5558 of 7007 relevant lines covered (79.32%)

12706.78 hits per line

Uncovered Changes

Lines Coverage ∆ File
45
68.18
src/conductor/stepper/builtins.ts
32
81.6
src/conductor/stepper/reduce.ts
8
87.1
src/conductor/stepper/getSteps.ts
7
86.05
src/conductor/stepper/translate.ts
5
91.78
src/conductor/stepper/ast.ts
3
90.91
src/conductor/stepper/lists.ts
Jobs
ID Job ID Ran Files Coverage
1 28352892606.1 29 Jun 2026 06:28AM UTC 83
76.14
GitHub Action Run
Source Files on build 28352892606
  • Tree
  • List 83
  • Changed 0
  • Source Changed 0
  • Coverage Changed 0
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #28352892606
  • f1d246ab on github
  • Prev Build on main (#28318944605)
  • Next Build on main (#28353466930)
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