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

coderaiser / putout-editor / 36619706354
100%

Build:
DEFAULT BRANCH: master
Ran 29 Sep 2026 07:32PM UTC
Jobs 3
Files 116
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 Sep 2026 07:30PM UTC coverage: 100.0%. Remained the same
36619706354

push

github

coderaiser
docs: style: the template-value grammar, from the reference

The table here was wrong and I published it from probes instead of reading
putout-script.md and @putout/compare, which document every value. Both docs
now link upstream rather than asserting from memory.

What was wrong: `__` was listed as matching nothing, and it is the value that
means "any node". `__a` is "any node, and linked" - its value carries into the
replacement - and the two are not interchangeable. Measured:

  'f(__a)' -> 'g(__a)'   gives g(1), the value carries
  'f(__)'  -> 'g(__)'    gives g(1), unlinked still fills in
  'f(__)'  -> 'g(__a)'   throws "Looks like template values not linked"
  'f(__a)' -> 'g(__b)'   throws "Looks like template values not linked"
  'f(__a__)' -> 'g(__a__)'  leaves f(1) unchanged, exit 0

That last is the trap: two underscores bind nothing, so the text is emitted as
written and the rule reports success having changed nothing. The rule is that a
replacement may reuse a name the key declared, and only those.

Also adds the values my probes never reached: __args, __object, __array,
__imports, __exports, __args__a for linked args, "__a" for any string literal
and /__a/ for any regexp.

My probes read the wrong node: a match visitor is handed the outer node, so
every one reported Identifier, and I generalised from that. The correction in
memory/putout-rules.md follows - include takes type names, where `__` is a type
like any other and not a catch-all - with the asymmetry spelled out.

Lint clean, 151 mcp tests pass.

1081 of 1081 branches covered (100.0%)

Branch coverage included in aggregate %.

6670 of 6670 relevant lines covered (100.0%)

61.48 hits per line

Jobs
ID Job ID Ran Files Coverage
1 36619706354.1 29 Sep 2026 07:32PM UTC 116
100.0
GitHub Action Run
2 36619706354.2 29 Sep 2026 07:32PM UTC 116
100.0
GitHub Action Run
3 36619706354.3 29 Sep 2026 07:32PM UTC 116
100.0
GitHub Action Run
Source Files on build 36619706354
  • Tree
  • List 116
  • 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 #36619706354
  • 3f0cdaba on github
  • Prev Build on master (#36618763473)
  • Next Build on master (#36629484065)
  • 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