惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

G
Google Developers Blog
F
Fortinet All Blogs
Microsoft Azure Blog
Microsoft Azure Blog
腾讯CDC
Vercel News
Vercel News
Recent Announcements
Recent Announcements
博客园 - Franky
小众软件
小众软件
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
The Cloudflare Blog
宝玉的分享
宝玉的分享
I
InfoQ
博客园 - 聂微东
Jina AI
Jina AI
J
Java Code Geeks
V
V2EX
U
Unit 42
Stack Overflow Blog
Stack Overflow Blog
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
阮一峰的网络日志
阮一峰的网络日志
L
LangChain Blog
T
The Blog of Author Tim Ferriss
量子位

Recent Commits to openclaw:main

test: merge chat side-result checks · openclaw/openclaw@ddd2c2a test: merge cron history checks · openclaw/openclaw@f7eb746 test: merge responsive navigation shell checks · openclaw/openclaw@c2e4b47 docs(changelog): add codex oauth fixes · openclaw/openclaw@628e6cd test: merge navigation routing cases · openclaw/openclaw@5d8cecb Tests: mock channel registry bundled fallback · openclaw/openclaw@2b08233 Secrets: avoid broad web search discovery for single plugin config · openclaw/openclaw@a464f59 test: merge config view browser checks · openclaw/openclaw@20cf511 fix(status): align oauth health with runtime · openclaw/openclaw@eed7116 feat: add macOS screen snapshots for monitor preview (#67954) thanks … · openclaw/openclaw@f377db1 fix: report shared auth scopes in hello-ok (#67810) thanks @BunsDev · openclaw/openclaw@0b6c39b Auto-reply: avoid eager bundled route fallback · openclaw/openclaw@3ea1bf4 Tests: narrow session binding contract setup · openclaw/openclaw@54e4e16 fix(macOS): enable undo/redo in webchat composer text input (#34962) · openclaw/openclaw@00951dc Tests: speed up channel setup promotion · openclaw/openclaw@82b529a Docs: refresh agent instructions · openclaw/openclaw@5775fe2 fix(auth): serialize OAuth refresh across agents to fix #26322 (#67876) · openclaw/openclaw@8e79080 test: allow ollama public surface boundary test · openclaw/openclaw@7d4f1a6 Docs: add test performance guardrails · openclaw/openclaw@89706d3 Tests: restore context-engine usage proof · openclaw/openclaw@e4c4f95 Tests: slim context engine runtime coverage · openclaw/openclaw@74c198f ci: retry failed custom checkouts · openclaw/openclaw@0ee5baf test: trim duplicate provider auth onboarding cases · openclaw/openclaw@1ffc02e matrix: fix sessions_spawn --thread subagent session spawning (#67643) · openclaw/openclaw@1ce2596 test: reduce auth choice fixture churn · openclaw/openclaw@857b9cd test: mock health status config boundaries · openclaw/openclaw@9d5ab4a test: mock onboard config io boundary · openclaw/openclaw@299694d test: mock legacy state plugin boundaries · openclaw/openclaw@2713089 test: mock channel install boundaries · openclaw/openclaw@b945248 test: mock doctor preview channel boundaries · openclaw/openclaw@b1a3ad4
fix(memory-lancedb): declare apache-arrow peer · openclaw...
steipete · 2026-05-04 · via Recent Commits to openclaw:main
Original file line numberDiff line numberDiff line change

@@ -30,6 +30,7 @@ Telegraph style. Root rules only. Read scoped `AGENTS.md` before subtree work.

3030

- Core/tests: no deep plugin internals (`extensions/*/src/**`, `onboard.js`). Use `api.ts`, SDK facade, generic contracts.

3131

- Extension-owned behavior stays extension-owned: repair, detection, onboarding, auth/provider defaults, provider tools/settings.

3232

- Owner boundary: fix owner-specific behavior in the owner module. Shared/core gets generic seams only; no owner ids, dependency strings, defaults, migrations, or recovery policy. If a bug names an extension or its dependency, start in that extension and add a generic core seam only when multiple owners need it.

33+

- Dependency ownership follows runtime ownership: extension-only deps stay plugin-local; root deps only for core imports or intentionally internalized bundled plugin runtime.

3334

- Legacy config repair: doctor/fix paths, not startup/load-time core migrations.

3435

- Core test asserting extension-specific behavior: move to owner extension or generic contract test.

3536

- New seams: backwards-compatible, documented, versioned. Third-party plugins exist.

Original file line numberDiff line numberDiff line change

@@ -36,6 +36,7 @@ Docs: https://docs.openclaw.ai

3636

- Plugins/catalog: supplement lagging official external WeCom and Yuanbao npm manifests with channel config descriptors and declared tool contracts from the OpenClaw catalog, so trusted package sweeps no longer fail because external package metadata trails the host contract. Thanks @vincentkoc.

3737

- Plugins/install: let trusted official `@openclaw/*` catalog installs recover when npm `latest` points at a prerelease by falling back to the newest stable version, or by selecting the newest exact prerelease for prerelease-only launch packages with a warning instead of making beta/development plugin sweeps fail at install time. Thanks @vincentkoc.

3838

- Google Meet: grant Chrome media permissions against the actual Meet tab, start the local realtime audio bridge only after Meet joins, expose realtime transcripts in status/logs, and force explicit audio responses with current OpenAI realtime output-audio events so BlackHole capture does not keep the OpenClaw participant muted or silent.

39+

- Memory/LanceDB: declare `apache-arrow` in the bundled memory plugin package so LanceDB installs include its runtime peer. Fixes #76910. Thanks @afiqfiles-max.

3940

- Google Meet: use the local call-control microphone button instead of disabled remote participant mute buttons, and block realtime speech when the OpenClaw Meet microphone remains muted.

4041

- Google Meet: refresh realtime browser state during status and retry delayed speech after Meet finishes joining, so a just-opened in-call tab no longer leaves speech stuck behind stale `not-in-call` health.

4142

- Plugins/install: recover the install ledger from the managed npm root when `plugins/installs.json` is empty or partial, so reinstalling Discord and Codex no longer makes the other installed plugin disappear.

Original file line numberDiff line numberDiff line change

@@ -31,6 +31,14 @@ third-party plugins see.

3131

- Do not use relative imports that escape the current extension package root.

3232

- Keep plugin metadata accurate in `openclaw.plugin.json` and the package

3333

`openclaw` block so discovery and setup work without executing plugin code.

34+

- Plugin runtime dependencies belong to the owning plugin package. If a plugin

35+

dependency has a runtime peer, declare/provide it in that plugin's

36+

`package.json`; do not move it to root unless root/package dist owns the

37+

import. Runtime never installs deps; install/update/doctor are repair points.

38+

- Keep plugin dependency assertions in generic contracts

39+

(`package-manifest.contract.test.ts`,

40+

`extension-runtime-dependencies.contract.test.ts`) rather than plugin e2e

41+

tests when they express package ownership.

3442

- Treat files like `src/**`, `onboard.ts`, and other local helpers as private

3543

unless you intentionally promote them through `api.ts` and, if needed, a

3644

matching `src/plugin-sdk/<id>.ts` facade.

Original file line numberDiff line numberDiff line change

@@ -9,6 +9,7 @@

99

"type": "module",

1010

"dependencies": {

1111

"@lancedb/lancedb": "^0.27.2",

12+

"apache-arrow": "18.1.0",

1213

"openai": "^6.35.0",

1314

"typebox": "1.1.37"

1415

},

Original file line numberDiff line numberDiff line change

@@ -25,6 +25,11 @@ const INDIRECT_RUNTIME_DEPENDENCIES = new Map<string, Set<string>>([

2525

// Baileys loads jimp as an optional peer when it needs media thumbnails.

2626

new Set(["jimp"]),

2727

],

28+

[

29+

"extensions/memory-lancedb",

30+

// LanceDB imports apache-arrow at runtime through its peer dependency.

31+

new Set(["apache-arrow"]),

32+

],

2833

[

2934

"extensions/tlon",

3035

// The Tlon plugin manifest exposes the bundled skill from this package path.

Original file line numberDiff line numberDiff line change

@@ -44,7 +44,7 @@ const packageManifestContractTests: PackageManifestContractParams[] = [

4444

{ pluginId: "mattermost", minHostVersionBaseline: "2026.3.22" },

4545

{

4646

pluginId: "memory-lancedb",

47-

pluginLocalRuntimeDeps: ["@lancedb/lancedb"],

47+

pluginLocalRuntimeDeps: ["@lancedb/lancedb", "apache-arrow"],

4848

minHostVersionBaseline: "2026.3.22",

4949

},

5050

{