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

coderaiser / putout-editor / 38243080218
100%

Build:
DEFAULT BRANCH: master
Ran 12 Oct 2026 11:33AM UTC
Jobs 3
Files 119
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

12 Oct 2026 11:30AM UTC coverage: 100.0%. Remained the same
38243080218

push

github

web-flow
feature: char: syntax highlighting

* feature: chat: lezer syntax highlighting in SourceBlock, TransformDiff, AstCodePreview

highlight.ts turns JavaScript into HTML spans via @lezer/javascript and
@classHighlighter, escaping every text run first so a string literal holding
<script> stays inert. The tok-* classes are mapped to the existing colour
tokens in highlight.css, scoped under .tok-scope so they cannot bleed into the
AST tree.

The column marker in AstCodePreview now splices into the highlighted string
rather than the plain line: insertMarker counts only non-tag characters, so
the | lands at the same column without ever ending up inside a span tag.

412 tests, 100% branches/lines/functions/statements in packages/chat.

* test: chat: e2e: source: syntax

* test: chat: e2e

* test: chat: e2e for syntax highlighting

Three desktop tests pin what step 1 built, plus the two fixes the e2e
forced back into the source.

- AstCodePreview now renders its line through dangerouslySetInnerHTML.
  Before, markedLine's HTML arrived as a React text child and the page
  showed literal `<span class="tok-keyword">` text — the tok spans were
  strings, not elements. Unit specs read innerHTML, so they passed while
  the browser showed markup as text. Unselected lines go through escHtml
  so a `<div>` in source stays inert.
- AstCodePreview's container is `ast-code` again, not `ast-code-preview`.
  AstTree.css styles and hides `.ast-code`; the renamed class had no rules
  and no coarse-pointer hiding.
- `/transform` answers "needs the putout server and does not run in the
  browser", so no diff block ever renders in e2e. The TransformDiff test
  asserts the empty state and says so, rather than asserting spans that
  cannot appear.
- The AstCodePreview test selects VariableDeclarator first: the preview
  highlights only the selected line, so with no selection there is nothing
  to assert.

65 e2e pass (desktop + mobile); 412 unit, 100% across the board.

* chore: cha... (continued)

1081 of 1081 branches covered (100.0%)

Branch coverage included in aggregate %.

6702 of 6702 relevant lines covered (100.0%)

61.2 hits per line

Jobs
ID Job ID Ran Files Coverage
1 38243080218.1 12 Oct 2026 11:33AM UTC 119
100.0
GitHub Action Run
2 38243080218.2 12 Oct 2026 11:33AM UTC 119
100.0
GitHub Action Run
3 38243080218.3 12 Oct 2026 11:33AM UTC 119
100.0
GitHub Action Run
Source Files on build 38243080218
  • Tree
  • List 119
  • 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 #38243080218
  • 3405963c on github
  • Prev Build on master (#37453792504)
  • 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