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

nagayon-935 / conduit / 26717385420
59%
main: 64%

Build:
Build:
LAST BUILD BRANCH: test/backend-coverage
DEFAULT BRANCH: main
Ran 31 May 2026 04:00PM UTC
Jobs 1
Files 25
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

31 May 2026 03:58PM UTC coverage: 59.215% (-1.1%) from 60.32%
26717385420

Pull #1

github

nagayon-935
feat: add asciinema v2 session recording with LogPage playback

Backend:
- internal/recording: Recorder writes SSH stdout to .cast files (asciinema v2)
  - bufio.Writer with 2s periodic flush + Close flush for data safety
  - thread-safe: WriteOutput/WriteResize protected by mutex
  - resize events recorded as "r" type for accurate PTY size history
- Session.Recorder field; Close() flushes and closes the file
- sshToClientPump taps output before broadcasting (single tap point)
- handleControlMessage taps resize events (owners only, not viewers)
- Config: RECORDING_ENABLED (any non-empty = on), RECORDING_DIR (default ./recordings)
- connect.go: mkdir + recording.New on session creation; RecordingPath stored in connlog.Entry
- GET /api/recordings/{id} — serves .cast via indirect log-ID lookup (path traversal safe)

Frontend:
- LogPage: "▶ Play" button per row when recording_path is set
- PlaybackModal: lazy-imports asciinema-player, creates player in container div
- asciinema-player.d.ts: minimal hand-written type declarations
- LogPage.css: modal backdrop/frame styles, play button, error row highlight
Pull Request #1: feat: SQLite persistence, shared session viewer, and asciinema recording

240 of 423 new or added lines in 13 files covered. (56.74%)

2 existing lines in 2 files now uncovered.

890 of 1503 relevant lines covered (59.21%)

7.56 hits per line

Uncovered Changes

Lines Coverage ∆ File
30
0.0
internal/api/share.go
28
0.0
internal/api/recordings.go
24
77.57
internal/connlog/sqlite.go
17
56.69
-0.87% internal/session/session.go
16
63.56
-6.63% internal/tunnel/pump.go
15
0.0
0.0% cmd/server/main.go
13
82.19
internal/recording/recorder.go
12
50.0
-2.05% internal/api/connect.go
11
72.09
4.14% internal/session/manager.go
10
47.22
-15.74% internal/connlog/store.go
7
70.67
-5.52% internal/api/terminal.go

Coverage Regressions

Lines Coverage ∆ File
1
56.69
-0.87% internal/session/session.go
1
63.56
-6.63% internal/tunnel/pump.go
Jobs
ID Job ID Ran Files Coverage
1 26717385420.1 31 May 2026 04:00PM UTC 25
59.21
GitHub Action Run
Source Files on build 26717385420
  • Tree
  • List 25
  • Changed 9
  • Source Changed 0
  • Coverage Changed 9
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Pull Request #1
  • PR Base - main (#24069915808)
  • Delete
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