refactor(core): dedupe shared config and runtime helpers

This commit is contained in:
Peter Steinberger
2026-02-16 14:52:03 +00:00
parent 544ffbcf7b
commit 04892ee230
68 changed files with 1966 additions and 2018 deletions

View File

@@ -2,7 +2,7 @@ import { describe, expect, it } from "vitest";
import { applyMergePatch } from "./merge-patch.js";
describe("applyMergePatch", () => {
it("replaces arrays by default", () => {
function makeAgentListBaseAndPatch() {
const base = {
agents: {
list: [
@@ -16,6 +16,11 @@ describe("applyMergePatch", () => {
list: [{ id: "primary", memorySearch: { extraPaths: ["/tmp/memory.md"] } }],
},
};
return { base, patch };
}
it("replaces arrays by default", () => {
const { base, patch } = makeAgentListBaseAndPatch();
const merged = applyMergePatch(base, patch) as {
agents?: { list?: Array<{ id?: string; workspace?: string }> };
@@ -26,19 +31,7 @@ describe("applyMergePatch", () => {
});
it("merges object arrays by id when enabled", () => {
const base = {
agents: {
list: [
{ id: "primary", workspace: "/tmp/one" },
{ id: "secondary", workspace: "/tmp/two" },
],
},
};
const patch = {
agents: {
list: [{ id: "primary", memorySearch: { extraPaths: ["/tmp/memory.md"] } }],
},
};
const { base, patch } = makeAgentListBaseAndPatch();
const merged = applyMergePatch(base, patch, {
mergeObjectArraysById: true,