diff --git a/.github/workflows/nix-desktop.yml b/.github/workflows/nix-desktop.yml deleted file mode 100644 index 19fa67e32..000000000 --- a/.github/workflows/nix-desktop.yml +++ /dev/null @@ -1,46 +0,0 @@ -name: nix desktop - -on: - push: - branches: [dev] - paths: - - "flake.nix" - - "flake.lock" - - "nix/**" - - "packages/app/**" - - "packages/desktop/**" - - ".github/workflows/nix-desktop.yml" - pull_request: - paths: - - "flake.nix" - - "flake.lock" - - "nix/**" - - "packages/app/**" - - "packages/desktop/**" - - ".github/workflows/nix-desktop.yml" - workflow_dispatch: - -jobs: - build-desktop: - strategy: - fail-fast: false - matrix: - os: - - ubuntu-latest - - ubuntu-24.04-arm - - macos-15-intel - - macos-latest - runs-on: ${{ matrix.os }} - timeout-minutes: 60 - steps: - - name: Checkout repository - uses: actions/checkout@v6 - - - name: Setup Nix - uses: nixbuild/nix-quick-install-action@v34 - - - name: Build desktop via flake - run: | - set -euo pipefail - nix --version - nix build .#desktop -L diff --git a/.pebbles/events.jsonl b/.pebbles/events.jsonl index c0320e390..e560f4f24 100644 --- a/.pebbles/events.jsonl +++ b/.pebbles/events.jsonl @@ -44,3 +44,8 @@ {"type":"status_update","timestamp":"2026-02-25T23:47:00.068803Z","issue_id":"volt-156.4","payload":{"status":"in_progress"}} {"type":"close","timestamp":"2026-02-25T23:47:47.03211Z","issue_id":"volt-156.4","payload":{}} {"type":"create","timestamp":"2026-02-25T23:52:14.79731Z","issue_id":"volt-5eb","payload":{"description":"## Context\n\nLongMemEval (https://github.com/xiaowu0162/LongMemEval) is a benchmark for\nevaluating chat assistants on long-term interactive memory. Published at ICLR 2025.\nPaper: \"Benchmarking Chat Assistants on Long-Term Interactive Memory.\"\n\nVolt's LCM (Lossless Context Management) is specifically designed to preserve and\nretrieve context across long conversations — summaries, large file storage,\nconversation ancestry. This benchmark is a natural fit for measuring how well\nLCM actually performs at long-term recall.\n\n## Required work\n\n1. Read the LongMemEval repo and understand the evaluation protocol, task categories,\n and metrics.\n2. Determine what adapter/harness is needed to run Volt against the benchmark.\n3. Implement the adapter.\n4. Run the eval and report results.\n\n## Open questions\n\n- What conversation lengths does the benchmark test? Does it exceed Volt's\n compaction thresholds?\n- Does the benchmark require multi-session memory or single-session only?\n- What are baseline scores for comparable systems?\n\n## Reference\n\n- Repo: https://github.com/xiaowu0162/LongMemEval\n- Paper venue: ICLR 2025","priority":"4","title":"Run LongMemEval benchmark against Volt's LCM","type":"task"}} +{"type":"create","timestamp":"2026-02-26T18:42:20.293051Z","issue_id":"volt-b5c","payload":{"description":"## Background\n\nGitHub issue #3: `nix build github:voltropy/volt#packages.x86_64-linux.voltcode` fails because `nix/node_modules.nix` line 32 includes `../install` in its fileset, but no top-level `install` file exists in the Volt repo. It was a top-level install script from the upstream OpenCode repo that didn't survive the fork (commit 944c7943c). Nix evaluates filesets strictly — a missing path is an immediate error.\n\nAdditionally, `flake.nix` exports a `desktop` package target that cannot build (the desktop app has its own broken references, tracked separately). Advertising it as a buildable target misleads users.\n\n## Behavioral contract\n\n1. Remove `../install` from the `lib.fileset.unions` list in `nix/node_modules.nix` (line 32).\n2. Remove the `desktop` definition (line 42-44) and its export (line 65) from `flake.nix`, so `nix flake show` no longer advertises it as a buildable package.\n3. Do NOT delete `nix/desktop.nix` or anything under `packages/desktop/` — the code stays, it's just not wired into Nix as a target.\n\n## Scope boundaries\n\n- This task does NOT fix the desktop app itself (the broken `include_str!` reference in `cli.rs`). That's a separate pebble.\n- This task does NOT touch any non-Nix files.\n\n## Acceptance criteria\n\n- `../install` no longer appears in `nix/node_modules.nix`\n- `desktop` no longer appears in `flake.nix` outputs\n- `nix/desktop.nix` and `packages/desktop/` are untouched\n- `bun typecheck` passes (sanity — these are Nix-only changes, but confirm no collateral)\n\nCloses #3","priority":"2","title":"Remove stale ../install from Nix fileset and unexport desktop package","type":"task"}} +{"type":"create","timestamp":"2026-02-26T18:42:31.749818Z","issue_id":"volt-fbc","payload":{"description":"## Background\n\n`packages/desktop/src-tauri/src/cli.rs` line 51 uses `include_str!(\"../../../../packages/volt-gateway/install.sh\")` — a Rust compile-time macro that embeds a file's contents as a string literal. The referenced file `packages/volt-gateway/install.sh` does not exist in the Volt repo. It was part of the upstream OpenCode project and didn't survive the fork.\n\nThis means the desktop Tauri app cannot compile at all. The `include_str!` macro fails at build time.\n\nThe desktop app is not currently being built or shipped. This pebble exists to track the known breakage so it's documented, not to drive immediate action.\n\n## What the code does\n\n`install_cli()` in `cli.rs` writes the embedded install script to a temp file and runs it with `--binary \u003csidecar-path\u003e` to symlink/copy the bundled CLI binary into `~/.voltcode/bin/volt`. It's the mechanism for the desktop app to install the CLI for terminal use.\n\n## When this matters\n\nOnly if/when someone decides to revive the desktop app. At that point, the full desktop package needs an audit against post-fork changes — this broken reference is just one of potentially many issues.\n\n## Scope\n\n- This is a tracking pebble, not an implementation pebble\n- No work is expected until the desktop app is prioritized\n- volt-b5c (the Nix fix) removes the desktop target from flake.nix so nobody trips over this in the meantime","priority":"4","title":"Track broken desktop app build (stale install.sh reference)","type":"task"}} +{"type":"update","timestamp":"2026-02-26T19:09:53.139981Z","issue_id":"volt-b5c","payload":{"description":"## Background\n\nGitHub issue #3: `nix build github:voltropy/volt#packages.x86_64-linux.voltcode` fails because `nix/node_modules.nix` line 32 includes `../install` in its fileset, but no top-level `install` file exists in the Volt repo. It was a top-level install script from the upstream OpenCode repo that didn't survive the fork (commit 944c7943c). Nix evaluates filesets strictly — a missing path is an immediate error.\n\nAdditionally, `flake.nix` exports a `desktop` package target that cannot build (the desktop app has its own broken references — see volt-fbc). Advertising it as a buildable target misleads users.\n\n## Behavioral contract\n\n1. Remove `../install` from the `lib.fileset.unions` list in `nix/node_modules.nix` (line 32).\n2. Remove the `desktop` definition (lines 42-44) and its export (line 65) from `flake.nix`, so `nix flake show` no longer advertises it as a buildable package.\n3. Do NOT delete `nix/desktop.nix` or anything under `packages/desktop/` — the code stays, it's just not wired into Nix as a target.\n\n## Scope boundaries\n\n- This task does NOT fix the desktop app itself (the broken `include_str!` reference in `cli.rs`). That's volt-fbc.\n- This task only touches `nix/node_modules.nix` and `flake.nix`.\n\n## Acceptance criteria\n\n- `../install` no longer appears in `nix/node_modules.nix`\n- `desktop` no longer appears in `flake.nix` outputs\n- `nix/desktop.nix` and `packages/desktop/` are untouched\n- `bun typecheck` passes\n\nCloses #3"}} +{"type":"status_update","timestamp":"2026-02-26T19:11:14.130513Z","issue_id":"volt-b5c","payload":{"status":"in_progress"}} +{"type":"close","timestamp":"2026-02-26T19:11:36.659546Z","issue_id":"volt-b5c","payload":{}} diff --git a/.pebbles/pebbles.db b/.pebbles/pebbles.db index 0266cde91..c1af3341f 100644 Binary files a/.pebbles/pebbles.db and b/.pebbles/pebbles.db differ diff --git a/flake.nix b/flake.nix index 768349089..afe036f44 100644 --- a/flake.nix +++ b/flake.nix @@ -39,9 +39,6 @@ voltcode = pkgs.callPackage ./nix/voltcode.nix { inherit node_modules; }; - desktop = pkgs.callPackage ./nix/desktop.nix { - inherit voltcode; - }; # nixpkgs cpu naming to bun cpu naming cpuMap = { x86_64 = "x64"; aarch64 = "arm64"; }; # matrix of node_modules builds - these will always fail due to fakeHash usage @@ -62,7 +59,7 @@ in { default = voltcode; - inherit voltcode desktop; + inherit voltcode; } // moduleUpdaters ); }; diff --git a/nix/hashes.json b/nix/hashes.json index fa91b3b31..9ef8cd561 100644 --- a/nix/hashes.json +++ b/nix/hashes.json @@ -1,8 +1,8 @@ { "nodeModules": { - "x86_64-linux": "sha256-80+b7FwUy4mRWTzEjPrBWuR5Um67I1Rn4U/n/s/lBjs=", - "aarch64-linux": "sha256-xH/Grwh3b+HWsUkKN8LMcyMaMcmnIJYlgp38WJCat5E=", - "aarch64-darwin": "sha256-Izv6PE9gNaeYYfcqDwjTU/WYtD1y+j65annwvLzkMD8=", - "x86_64-darwin": "sha256-EG1Z0uAeyFiOeVsv0Sz1sa8/mdXuw/uvbYYrkFR3EAg=" + "x86_64-linux": "sha256-GEmEoKvKIEw2NEcptyYTiq+4A1BaS6fs6g+yGqFbLWg=", + "aarch64-linux": "sha256-Xo1lxlLbkVaWZrNC6VuI51MlSFcihiazwW/5wVvC3hU=", + "aarch64-darwin": "sha256-vK0h25FxgnnQuYlu6OHUE4O2p6fVjOmOeV7GPSpODa4=", + "x86_64-darwin": "sha256-wr897ggzYaOItOmDxH1Yym5SpTgpBGH2So3/YXjFqwM=" } } diff --git a/nix/node_modules.nix b/nix/node_modules.nix index 102e74b88..9db831d2c 100644 --- a/nix/node_modules.nix +++ b/nix/node_modules.nix @@ -29,7 +29,6 @@ stdenvNoCC.mkDerivation { ../bun.lock ../package.json ../patches - ../install ] ); };