mirror of
https://github.com/getpaseo/paseo.git
synced 2026-11-06 08:24:46 +00:00
fix(usage): declare the Paseo requirement on internal usage-source plugins
A manifest without requirements.paseo targets Paseo before 0.8, so the daemon refused to start eight of the nine usage sources.
This commit is contained in:
@@ -1 +1 @@
|
||||
{ "id": "claude-usage-source" }
|
||||
{ "id": "claude-usage-source", "requirements": { "paseo": ">=0.9.2" } }
|
||||
|
||||
@@ -1 +1 @@
|
||||
{ "id": "codex-usage-source" }
|
||||
{ "id": "codex-usage-source", "requirements": { "paseo": ">=0.9.2" } }
|
||||
|
||||
@@ -1 +1 @@
|
||||
{ "id": "copilot-usage-source" }
|
||||
{ "id": "copilot-usage-source", "requirements": { "paseo": ">=0.9.2" } }
|
||||
|
||||
@@ -1 +1 @@
|
||||
{ "id": "cursor-usage-source" }
|
||||
{ "id": "cursor-usage-source", "requirements": { "paseo": ">=0.9.2" } }
|
||||
|
||||
@@ -1 +1 @@
|
||||
{ "id": "grok-usage-source" }
|
||||
{ "id": "grok-usage-source", "requirements": { "paseo": ">=0.9.2" } }
|
||||
|
||||
@@ -1 +1 @@
|
||||
{ "id": "kimi-usage-source" }
|
||||
{ "id": "kimi-usage-source", "requirements": { "paseo": ">=0.9.2" } }
|
||||
|
||||
@@ -1 +1 @@
|
||||
{ "id": "minimax-usage-source" }
|
||||
{ "id": "minimax-usage-source", "requirements": { "paseo": ">=0.9.2" } }
|
||||
|
||||
@@ -1 +1 @@
|
||||
{ "id": "zai-usage-source" }
|
||||
{ "id": "zai-usage-source", "requirements": { "paseo": ">=0.9.2" } }
|
||||
|
||||
@@ -4,8 +4,12 @@ import { tmpdir } from "node:os";
|
||||
import path from "node:path";
|
||||
import { fileURLToPath } from "node:url";
|
||||
import { expect, test } from "vitest";
|
||||
import { assertPluginCompatibility } from "@getpaseo/protocol/plugin-requirements";
|
||||
import { INTERNAL_PLUGINS } from "../../plugins/index.js";
|
||||
import { resolveDaemonVersion } from "../daemon-version.js";
|
||||
import { createPluginImportReader } from "./compiler-imports.js";
|
||||
import { compilePlugin, SERVER_HOST_MODULES } from "./compiler.js";
|
||||
import { readPluginManifest } from "./manifest.js";
|
||||
|
||||
const root = fileURLToPath(new URL("../../plugins/", import.meta.url));
|
||||
const fixture = fileURLToPath(new URL("./test-fixtures/internal-seam/", import.meta.url));
|
||||
@@ -60,3 +64,13 @@ test("internal plugin boundary rejects daemon imports with the file and specifie
|
||||
await rm(directory, { recursive: true, force: true });
|
||||
}
|
||||
});
|
||||
|
||||
test("every internal plugin manifest is compatible with the daemon that ships it", async () => {
|
||||
const version = resolveDaemonVersion(import.meta.url);
|
||||
for (const plugin of INTERNAL_PLUGINS) {
|
||||
const manifest = await readPluginManifest(plugin.directory);
|
||||
expect(() =>
|
||||
assertPluginCompatibility({ ...manifest, version, runtime: "daemon" }),
|
||||
).not.toThrow();
|
||||
}
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user