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

source-academy / py-slang / 28103174538
74%

Build:
DEFAULT BRANCH: main
Ran 24 Jun 2026 01:49PM UTC
Jobs 1
Files 74
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

24 Jun 2026 01:46PM UTC coverage: 74.161% (+0.006%) from 74.155%
28103174538

push

github

web-flow
feat(cse): Python CSE machine plugin for Conductor framework (#158)

* Add Python CSE Machine plugin for Conductor framework

Implements the CSE Machine visualiser as a Conductor runner plugin.
Snapshots of control, stash, and environments are collected at each
evaluation step and sent to the frontend via the __cse channel.

New files:
- CseSnapshot.ts: wire format types for the __cse channel
- PyCseMachinePlugin.ts: serialises control/stash/env state at each
  step and exposes sendSnapshots() to push them over the channel

PyCseEvaluator.ts: registers PyCseMachinePlugin and replaces the
plain evaluate() call with collectSnapshots() so every evaluation
produces a full step-by-step snapshot stream for the visualiser.

* Fix CSE machine loop spec compliance (#153)

- while loops now raise TypeError when condition is not boolean
- for loops now raise ValueError when range step is zero
- for loops push v1+v3 as a Binary expression onto control instead of a pre-computed literal
- remove stale forRangeRole tagging from evaluateForIterator

* Add tests for loop spec compliance (#153)

Cover the three new behaviours from the loop-spec fix:
- while loop raises TypeError when condition is not boolean
- for loop raises ValueError when range step is zero
- for loop produces empty output for start==stop or reversed step

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

* feat(cse): conductor CSE machine improvements (chapter gating, step limit, highlight)

- Gate CSE snapshot collection to variants 3-4; chapters 1-2 still run
  (for stdout/errors) but emit no snapshots, so the CSE tab is hidden
- collectSnapshots: maxSnapshots=0 runs to completion without collecting;
  honour the editor step limit via the /__cse_config__ file
- Emit currentLine (1-based line of context.runtime.nodes[0]) per snapshot
  to drive the editor's blue "current line" highlight
- Emit operator symbol metadata for binary/bool/unary ops (fixes "undefined"
  in the control stack) an... (continued)

1589 of 2404 branches covered (66.1%)

Branch coverage included in aggregate %.

4619 of 5967 relevant lines covered (77.41%)

13159.54 hits per line

Jobs
ID Job ID Ran Files Coverage
1 28103174538.1 24 Jun 2026 01:49PM UTC 74
74.16
GitHub Action Run
Source Files on build 28103174538
  • Tree
  • List 74
  • Changed 2
  • Source Changed 0
  • Coverage Changed 2
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #28103174538
  • 0fbb08b3 on github
  • Prev Build on main (#28101744099)
  • Next Build on main (#28103238638)
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