Skip to content

No usage stats for OpenCode on windows #359

@KanAtGodo

Description

@KanAtGodo

I have installed codeburn version 0.9.9 on Windows 10 but it would not show me any usage data for my OpenCode sessions. There was no error, just the message that there is no data found.

I used OpenCode then to investigate and it has found the issue and fixed it locally for me.
This is the summary of the issue and the resolution:

Codeburn 0.9.9 - OpenCode Provider Fix

Problem

Codeburn reports "No usage data found" despite OpenCode sessions existing in ~/.local/share/opencode/opencode.db.

Root Cause

In parseProviderSources (main.js:8396), codeburn calls fingerprintFile2(source.path) where source.path for sqlite-based providers (OpenCode, Goose, Cursor) is encoded as:

C:\Users\{username}\.local\share\opencode\opencode.db:ses_1bfc913a9ffeSBZlb0fto2jHK0

The :sessionId suffix makes stat() fail:

  • Windows: Interpreted as an NTFS Alternate Data Stream (ADS) — the stream doesn't exist.
  • Linux/macOS: No file exists with a literal : in the name at that path.

Since fingerprintFile2 returns null on failure, all sessions are silently skipped.

Fix Applied

File: C:\Program Files\nodejs\node_modules\codeburn\dist\main.js
Line: 8396

Before

const fp = await fingerprintFile2(source.path);

After

const fpPath = source.path.replace(/\.db:.+$/, '.db');
const fp = await fingerprintFile2(fpPath);

This strips the :sessionId suffix before calling stat(), allowing the fingerprint to resolve against the actual .db file.

Notes

  • This is a local patch that will be overwritten on npm update.
  • This likely affects all sqlite-based providers (OpenCode, Goose, Cursor) on all platforms.
  • Consider reporting upstream at the codeburn repository.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions