lody 0.76.0 → 0.76.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -3,7 +3,7 @@ import { readFile, mkdir, writeFile, rename } from "node:fs/promises";
3
3
  import os__default from "node:os";
4
4
  import path__default from "node:path";
5
5
  import process from "node:process";
6
- const reviewViewerVersion = "0.76.0";
6
+ const reviewViewerVersion = "0.76.1";
7
7
  const reviewViewerSha256 = "1f06e6a56f50a0f2e72ab32443bccf66dc536395d1cdf67dc511161824fcc0b0";
8
8
  const reviewViewerFileName = "standalone.html";
9
9
  const DEFAULT_CDN_BASES = ["https://cdn.jsdelivr.net/npm", "https://unpkg.com"];
package/dist/index.js CHANGED
@@ -85,6 +85,43 @@ let __tla = Promise.all([
85
85
  }
86
86
  })()
87
87
  ]).then(async () => {
88
+ const REQUIRED_NODE_API_VERSION = 10;
89
+ const SUPPORTED_ARCHS = [
90
+ "x64",
91
+ "arm64"
92
+ ];
93
+ function isNodeApiVersionSupported(napi) {
94
+ const parsed = Number.parseInt(napi ?? "", 10);
95
+ return Number.isFinite(parsed) && parsed >= REQUIRED_NODE_API_VERSION;
96
+ }
97
+ function isArchSupported(arch) {
98
+ return SUPPORTED_ARCHS.includes(arch);
99
+ }
100
+ function describeUnsupportedRuntime(runtime) {
101
+ if (!isArchSupported(runtime.arch)) {
102
+ return `Lody does not support the ${runtime.arch} architecture: its SQLite engine ships prebuilt binaries for ${SUPPORTED_ARCHS.join(" and ")} only, and cannot be built from source.
103
+ On 32-bit ARM, a 64-bit OS (arm64) is the supported path.`;
104
+ }
105
+ if (!isNodeApiVersionSupported(runtime.napi)) {
106
+ return `Lody needs Node-API ${REQUIRED_NODE_API_VERSION}, which means Node.js v22.14.0 or newer (you are on ${process.version}, Node-API ${runtime.napi ?? "unknown"}).
107
+ Its SQLite binding would crash the process instead of failing cleanly here.
108
+ Upgrade Node, then re-run: npx lody@latest`;
109
+ }
110
+ return void 0;
111
+ }
112
+ function assertSqliteRuntimeSupported() {
113
+ const problem = describeUnsupportedRuntime({
114
+ napi: process.versions.napi,
115
+ arch: process.arch
116
+ });
117
+ if (!problem) {
118
+ return;
119
+ }
120
+ process.stderr.write(`${problem}
121
+ `);
122
+ process.exit(1);
123
+ }
124
+ assertSqliteRuntimeSupported();
88
125
  function createModulerModifier() {
89
126
  const getModuleFromFileName = createGetModuleFromFilename();
90
127
  return async (frames) => {
@@ -4192,7 +4229,7 @@ let __tla = Promise.all([
4192
4229
  }
4193
4230
  }
4194
4231
  const name$1 = "lody";
4195
- const version$7 = "0.76.0";
4232
+ const version$7 = "0.76.1";
4196
4233
  const description$1 = "Lody Agent CLI tool for managing remote command execution";
4197
4234
  const type$2 = "module";
4198
4235
  const main$4 = "dist/index.js";
@@ -4200,9 +4237,9 @@ let __tla = Promise.all([
4200
4237
  "lody": "dist/index.js"
4201
4238
  };
4202
4239
  const scripts = {
4203
- "dev": "node scripts/ensure-dev-sqlite-binding.mjs && pnpm run prepare:acp-adapters && node scripts/dev-build.mjs && node --enable-source-maps dist-dev/index.js",
4240
+ "dev": "pnpm run prepare:acp-adapters && node scripts/dev-build.mjs && node --enable-source-maps dist-dev/index.js",
4204
4241
  "dev:build": "node scripts/dev-build.mjs",
4205
- "dev:jiti": "node scripts/ensure-dev-sqlite-binding.mjs && pnpm run prepare:acp-adapters && node dev.mjs",
4242
+ "dev:jiti": "pnpm run prepare:acp-adapters && node dev.mjs",
4206
4243
  "dev:staging": "LODY_PREVIEW_GATEWAY_URL=https://gateway.lody.uk LODY_AUTH_URL=https://impressive-guineapig-165.convex.cloud LODY_AUTH_SITE_URL=https://impressive-guineapig-165.convex.site LODY_SERVER_URL=https://lody-server.zx-073.workers.dev SITE_URL=https://main.lody.pages.dev/ pnpm run dev",
4207
4244
  "dev:prod": "LODY_AUTH_URL=https://convex.lody.ai LODY_SERVER_URL=https://api.lody.ai pnpm run dev",
4208
4245
  "build": "pnpm run clean && pnpm run prepare:acp-adapters && pnpm run typecheck && pnpm run build:bundle && pnpm run check:published-bundle-imports && pnpm run copy:wasm",
@@ -4237,7 +4274,7 @@ let __tla = Promise.all([
4237
4274
  const author = "Leon Zhao";
4238
4275
  const license = "MIT";
4239
4276
  const engines$1 = {
4240
- "node": ">=22.0.0"
4277
+ "node": ">=22.14.0"
4241
4278
  };
4242
4279
  const devDependencies = {
4243
4280
  "@agentclientprotocol/sdk": "catalog:",
@@ -113302,6 +113339,11 @@ The file is not available yet and could not be downloaded; ask the user to resen
113302
113339
  candidate.selector = createLocalProjectBranchSelector(candidate);
113303
113340
  }
113304
113341
  }
113342
+ for (const candidate of candidates) {
113343
+ if (candidate.kind === "local" && !findQualifiedRemoteName(remotes, candidate.branchName) && remoteRefsByBranch.has(candidate.branchName)) {
113344
+ candidate.selector = createLocalProjectBranchSelector(candidate);
113345
+ }
113346
+ }
113305
113347
  const localSelector = (branchName) => candidates.find((candidate) => candidate.kind === "local" && candidate.branchName === branchName)?.selector ?? null;
113306
113348
  const remoteSelector = (remoteName, branchName) => candidates.find((candidate) => candidate.kind === "remote" && candidate.remoteName === remoteName && candidate.branchName === branchName)?.selector ?? null;
113307
113349
  let defaultBranch = null;
@@ -211414,7 +211456,7 @@ ${page}${helpTipBottom}${choiceDescription}${ansiEscapes.cursorHide}`;
211414
211456
  data = createReviewBundleSnapshot(bundle);
211415
211457
  }
211416
211458
  const { injectReviewSnapshot } = await import("./chunks/index-VoI6Ds2-.js");
211417
- const { resolveReviewViewerTemplate } = await import("./chunks/review-viewer-DRumOFSW.js");
211459
+ const { resolveReviewViewerTemplate } = await import("./chunks/review-viewer-T4eaxXkE.js");
211418
211460
  const template = await resolveReviewViewerTemplate();
211419
211461
  const html = injectReviewSnapshot(template, data);
211420
211462
  const outputPath = options.output ? path__default$1.resolve(options.output) : defaultHtmlOutputPath(inputPath);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lody",
3
- "version": "0.76.0",
3
+ "version": "0.76.1",
4
4
  "description": "Lody Agent CLI tool for managing remote command execution",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -17,7 +17,7 @@
17
17
  "author": "Leon Zhao",
18
18
  "license": "MIT",
19
19
  "engines": {
20
- "node": ">=22.0.0"
20
+ "node": ">=22.14.0"
21
21
  },
22
22
  "devDependencies": {
23
23
  "@agentclientprotocol/sdk": "^1.3.0",
@@ -77,13 +77,13 @@
77
77
  "zstd-stream": "^1.1.0",
78
78
  "@lody/code-review-helper": "0.0.0",
79
79
  "@lody/convex": "0.0.1",
80
- "@lody/cli-supervisor": "0.0.1",
81
80
  "@lody/loro-streams-rpc": "0.0.1",
81
+ "@lody/cli-supervisor": "0.0.1",
82
82
  "@lody/shared": "0.0.1",
83
- "acp-extension-claude": "0.62.0",
84
- "acp-extension-codex": "1.3.0",
85
83
  "acp-extension-core": "0.0.5",
86
- "lody-code-review-viewer": "0.76.0"
84
+ "acp-extension-codex": "1.3.0",
85
+ "lody-code-review-viewer": "0.76.1",
86
+ "acp-extension-claude": "0.62.0"
87
87
  },
88
88
  "files": [
89
89
  "dist",
@@ -93,16 +93,16 @@
93
93
  ],
94
94
  "dependencies": {
95
95
  "@lydell/node-pty": "1.2.0-beta.14",
96
- "better-sqlite3": "^12.10.0",
96
+ "better-sqlite3": "^13.0.2",
97
97
  "loro-crdt": "1.13.9",
98
98
  "shell-env": "^4.0.3",
99
99
  "tinypool": "^1.0.0",
100
100
  "typescript": "^5.9.3"
101
101
  },
102
102
  "scripts": {
103
- "dev": "node scripts/ensure-dev-sqlite-binding.mjs && pnpm run prepare:acp-adapters && node scripts/dev-build.mjs && node --enable-source-maps dist-dev/index.js",
103
+ "dev": "pnpm run prepare:acp-adapters && node scripts/dev-build.mjs && node --enable-source-maps dist-dev/index.js",
104
104
  "dev:build": "node scripts/dev-build.mjs",
105
- "dev:jiti": "node scripts/ensure-dev-sqlite-binding.mjs && pnpm run prepare:acp-adapters && node dev.mjs",
105
+ "dev:jiti": "pnpm run prepare:acp-adapters && node dev.mjs",
106
106
  "dev:staging": "LODY_PREVIEW_GATEWAY_URL=https://gateway.lody.uk LODY_AUTH_URL=https://impressive-guineapig-165.convex.cloud LODY_AUTH_SITE_URL=https://impressive-guineapig-165.convex.site LODY_SERVER_URL=https://lody-server.zx-073.workers.dev SITE_URL=https://main.lody.pages.dev/ pnpm run dev",
107
107
  "dev:prod": "LODY_AUTH_URL=https://convex.lody.ai LODY_SERVER_URL=https://api.lody.ai pnpm run dev",
108
108
  "build": "pnpm run clean && pnpm run prepare:acp-adapters && pnpm run typecheck && pnpm run build:bundle && pnpm run check:published-bundle-imports && pnpm run copy:wasm",