refactor(agent)!: focus tools on SCADA
This commit is contained in:
@@ -0,0 +1,19 @@
|
||||
import { describe, expect, it } from "bun:test";
|
||||
import { readFileSync } from "node:fs";
|
||||
|
||||
describe("SCADA opencode tools", () => {
|
||||
it("documents asset listing and reading query parameters", () => {
|
||||
const listTool = readFileSync(".opencode/tools/list_scada_assets.ts", "utf8");
|
||||
const queryTool = readFileSync(".opencode/tools/query_scada_readings.ts", "utf8");
|
||||
|
||||
expect(listTool).toContain("无请求参数");
|
||||
expect(listTool).toContain("assets[].scada_id");
|
||||
expect(queryTool).toContain("asset_ids");
|
||||
expect(queryTool).toContain("observed_from");
|
||||
expect(queryTool).toContain("observed_to");
|
||||
expect(queryTool).toContain("granularity");
|
||||
expect(queryTool).toContain("metrics");
|
||||
expect(queryTool).toContain("半开区间");
|
||||
expect(queryTool).toContain("不要使用 GeoServer feature id/fid、external_id 或 site_external_id");
|
||||
});
|
||||
});
|
||||
@@ -26,8 +26,8 @@ describe("skill_manager tool", () => {
|
||||
const skillDocument = (body: string) =>
|
||||
[
|
||||
"---",
|
||||
"name: pressure-review",
|
||||
"description: Pressure review workflow.",
|
||||
"name: scada-level-review",
|
||||
"description: SCADA level review workflow.",
|
||||
"---",
|
||||
"",
|
||||
body,
|
||||
@@ -64,32 +64,32 @@ describe("skill_manager tool", () => {
|
||||
await tool.execute(
|
||||
{
|
||||
action: "write_skill",
|
||||
content: skillDocument("# Pressure Review"),
|
||||
content: skillDocument("# SCADA Level Review"),
|
||||
reason: "verified reusable workflow",
|
||||
skill_path: "workflow/pressure-review",
|
||||
skill_path: "workflow/scada-level-review",
|
||||
},
|
||||
toolContext,
|
||||
) as string,
|
||||
);
|
||||
expect(writeResult.decision).toBe("accepted");
|
||||
await expect(readFile(writeResult.target, "utf8")).resolves.toContain(
|
||||
"# Pressure Review\n",
|
||||
"# SCADA Level Review\n",
|
||||
);
|
||||
|
||||
const updateResult = JSON.parse(
|
||||
await tool.execute(
|
||||
{
|
||||
action: "write_skill",
|
||||
content: skillDocument("# Updated Pressure Review"),
|
||||
content: skillDocument("# Updated SCADA Level Review"),
|
||||
reason: "verified reusable workflow overwrite",
|
||||
skill_path: "workflow/pressure-review",
|
||||
skill_path: "workflow/scada-level-review",
|
||||
},
|
||||
toolContext,
|
||||
) as string,
|
||||
);
|
||||
expect(updateResult.decision).toBe("accepted");
|
||||
await expect(readFile(updateResult.target, "utf8")).resolves.toContain(
|
||||
"# Updated Pressure Review\n",
|
||||
"# Updated SCADA Level Review\n",
|
||||
);
|
||||
|
||||
const removeResult = JSON.parse(
|
||||
@@ -97,7 +97,7 @@ describe("skill_manager tool", () => {
|
||||
{
|
||||
action: "remove_skill",
|
||||
reason: "workflow is obsolete",
|
||||
skill_path: "workflow/pressure-review",
|
||||
skill_path: "workflow/scada-level-review",
|
||||
},
|
||||
toolContext,
|
||||
) as string,
|
||||
|
||||
Reference in New Issue
Block a user