mirror of
https://github.com/Youzini-afk/ST-Bionic-Memory-Ecology.git
synced 2026-05-15 22:30:38 +08:00
refactor: rebalance default prompt block roles
This commit is contained in:
2
index.js
2
index.js
@@ -209,7 +209,7 @@ const defaultSettings = {
|
|||||||
compressPrompt: "",
|
compressPrompt: "",
|
||||||
synopsisPrompt: "",
|
synopsisPrompt: "",
|
||||||
reflectionPrompt: "",
|
reflectionPrompt: "",
|
||||||
taskProfilesVersion: 2,
|
taskProfilesVersion: 3,
|
||||||
taskProfiles: createDefaultTaskProfiles(),
|
taskProfiles: createDefaultTaskProfiles(),
|
||||||
|
|
||||||
// ====== v2 增强设置 ======
|
// ====== v2 增强设置 ======
|
||||||
|
|||||||
2
panel.js
2
panel.js
@@ -1705,7 +1705,7 @@ function _refreshTaskProfileWorkspace(settings = _getSettings?.() || {}) {
|
|||||||
function _patchTaskProfiles(taskProfiles, extraPatch = {}, options = {}) {
|
function _patchTaskProfiles(taskProfiles, extraPatch = {}, options = {}) {
|
||||||
return _patchSettings(
|
return _patchSettings(
|
||||||
{
|
{
|
||||||
taskProfilesVersion: 2,
|
taskProfilesVersion: 3,
|
||||||
taskProfiles,
|
taskProfiles,
|
||||||
...extraPatch,
|
...extraPatch,
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -88,66 +88,66 @@ const BUILTIN_BLOCK_DEFINITIONS = [
|
|||||||
{
|
{
|
||||||
sourceKey: "recentMessages",
|
sourceKey: "recentMessages",
|
||||||
name: "最近消息",
|
name: "最近消息",
|
||||||
role: "user",
|
role: "system",
|
||||||
description: "注入最近的对话上下文片段。extract 和 recall 任务使用,提供 LLM 分析所需的对话历史。",
|
description: "注入最近的对话上下文片段。extract 和 recall 任务使用,提供 LLM 分析所需的对话历史。",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
sourceKey: "userMessage",
|
sourceKey: "userMessage",
|
||||||
name: "用户消息",
|
name: "用户消息",
|
||||||
role: "user",
|
role: "system",
|
||||||
description: "注入当前用户的最新输入内容。recall 任务使用,用于匹配最相关的记忆节点。",
|
description: "注入当前用户的最新输入内容。recall 任务使用,用于匹配最相关的记忆节点。",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
sourceKey: "candidateNodes",
|
sourceKey: "candidateNodes",
|
||||||
name: "候选节点",
|
name: "候选节点",
|
||||||
role: "user",
|
role: "system",
|
||||||
description: "注入待筛选的候选记忆节点列表。recall(选择相关节点)和 consolidation(检测冲突)任务使用。",
|
description: "注入待筛选的候选记忆节点列表。recall(选择相关节点)和 consolidation(检测冲突)任务使用。",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
sourceKey: "graphStats",
|
sourceKey: "graphStats",
|
||||||
name: "图统计",
|
name: "图统计",
|
||||||
role: "user",
|
role: "system",
|
||||||
description: "注入图谱当前状态摘要(如节点数量、类型分布)。所有任务类型均可使用,帮助 LLM 了解图谱全貌。",
|
description: "注入图谱当前状态摘要(如节点数量、类型分布)。所有任务类型均可使用,帮助 LLM 了解图谱全貌。",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
sourceKey: "currentRange",
|
sourceKey: "currentRange",
|
||||||
name: "当前范围",
|
name: "当前范围",
|
||||||
role: "user",
|
role: "system",
|
||||||
description: "注入当前处理的消息楼层范围(如「楼 5 ~ 楼 10」)。extract 和 compress 任务使用。",
|
description: "注入当前处理的消息楼层范围(如「楼 5 ~ 楼 10」)。extract 和 compress 任务使用。",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
sourceKey: "nodeContent",
|
sourceKey: "nodeContent",
|
||||||
name: "节点内容",
|
name: "节点内容",
|
||||||
role: "user",
|
role: "system",
|
||||||
description: "注入待压缩的节点正文内容。compress 任务专用,包含需要合并总结的多个节点文本。",
|
description: "注入待压缩的节点正文内容。compress 任务专用,包含需要合并总结的多个节点文本。",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
sourceKey: "eventSummary",
|
sourceKey: "eventSummary",
|
||||||
name: "事件摘要",
|
name: "事件摘要",
|
||||||
role: "user",
|
role: "system",
|
||||||
description: "注入近期事件时间线摘要。synopsis(生成前情提要)和 reflection(生成反思)任务使用。",
|
description: "注入近期事件时间线摘要。synopsis(生成前情提要)和 reflection(生成反思)任务使用。",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
sourceKey: "characterSummary",
|
sourceKey: "characterSummary",
|
||||||
name: "角色摘要",
|
name: "角色摘要",
|
||||||
role: "user",
|
role: "system",
|
||||||
description: "注入近期角色状态变化摘要。synopsis 和 reflection 任务使用,帮助 LLM 了解角色动态。",
|
description: "注入近期角色状态变化摘要。synopsis 和 reflection 任务使用,帮助 LLM 了解角色动态。",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
sourceKey: "threadSummary",
|
sourceKey: "threadSummary",
|
||||||
name: "主线摘要",
|
name: "主线摘要",
|
||||||
role: "user",
|
role: "system",
|
||||||
description: "注入当前活跃的故事主线摘要。synopsis 和 reflection 任务使用,帮助 LLM 把握叙事走向。",
|
description: "注入当前活跃的故事主线摘要。synopsis 和 reflection 任务使用,帮助 LLM 把握叙事走向。",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
sourceKey: "contradictionSummary",
|
sourceKey: "contradictionSummary",
|
||||||
name: "矛盾摘要",
|
name: "矛盾摘要",
|
||||||
role: "user",
|
role: "system",
|
||||||
description: "注入近期检测到的记忆矛盾或冲突信息。reflection 任务专用,触发基于矛盾的深度反思。",
|
description: "注入近期检测到的记忆矛盾或冲突信息。reflection 任务专用,触发基于矛盾的深度反思。",
|
||||||
},
|
},
|
||||||
];
|
];
|
||||||
|
|
||||||
const DEFAULT_TASK_PROFILE_VERSION = 2;
|
const DEFAULT_TASK_PROFILE_VERSION = 3;
|
||||||
const DEFAULT_PROFILE_ID = "default";
|
const DEFAULT_PROFILE_ID = "default";
|
||||||
|
|
||||||
const LEGACY_PROMPT_FIELD_MAP = {
|
const LEGACY_PROMPT_FIELD_MAP = {
|
||||||
@@ -419,28 +419,28 @@ const TASK_CONTEXT_BLOCK_BLUEPRINTS = {
|
|||||||
id: "default-recent-messages",
|
id: "default-recent-messages",
|
||||||
name: "最近消息",
|
name: "最近消息",
|
||||||
type: "builtin",
|
type: "builtin",
|
||||||
role: "user",
|
role: "system",
|
||||||
sourceKey: "recentMessages",
|
sourceKey: "recentMessages",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: "default-graph-stats",
|
id: "default-graph-stats",
|
||||||
name: "图统计",
|
name: "图统计",
|
||||||
type: "builtin",
|
type: "builtin",
|
||||||
role: "user",
|
role: "system",
|
||||||
sourceKey: "graphStats",
|
sourceKey: "graphStats",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: "default-schema",
|
id: "default-schema",
|
||||||
name: "Schema",
|
name: "Schema",
|
||||||
type: "builtin",
|
type: "builtin",
|
||||||
role: "user",
|
role: "system",
|
||||||
sourceKey: "schema",
|
sourceKey: "schema",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: "default-current-range",
|
id: "default-current-range",
|
||||||
name: "当前范围",
|
name: "当前范围",
|
||||||
type: "builtin",
|
type: "builtin",
|
||||||
role: "user",
|
role: "system",
|
||||||
sourceKey: "currentRange",
|
sourceKey: "currentRange",
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
@@ -449,28 +449,28 @@ const TASK_CONTEXT_BLOCK_BLUEPRINTS = {
|
|||||||
id: "default-recent-messages",
|
id: "default-recent-messages",
|
||||||
name: "最近消息",
|
name: "最近消息",
|
||||||
type: "builtin",
|
type: "builtin",
|
||||||
role: "user",
|
role: "system",
|
||||||
sourceKey: "recentMessages",
|
sourceKey: "recentMessages",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: "default-user-message",
|
id: "default-user-message",
|
||||||
name: "用户消息",
|
name: "用户消息",
|
||||||
type: "builtin",
|
type: "builtin",
|
||||||
role: "user",
|
role: "system",
|
||||||
sourceKey: "userMessage",
|
sourceKey: "userMessage",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: "default-candidate-nodes",
|
id: "default-candidate-nodes",
|
||||||
name: "候选节点",
|
name: "候选节点",
|
||||||
type: "builtin",
|
type: "builtin",
|
||||||
role: "user",
|
role: "system",
|
||||||
sourceKey: "candidateNodes",
|
sourceKey: "candidateNodes",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: "default-graph-stats",
|
id: "default-graph-stats",
|
||||||
name: "图统计",
|
name: "图统计",
|
||||||
type: "builtin",
|
type: "builtin",
|
||||||
role: "user",
|
role: "system",
|
||||||
sourceKey: "graphStats",
|
sourceKey: "graphStats",
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
@@ -479,14 +479,14 @@ const TASK_CONTEXT_BLOCK_BLUEPRINTS = {
|
|||||||
id: "default-candidate-nodes",
|
id: "default-candidate-nodes",
|
||||||
name: "候选节点",
|
name: "候选节点",
|
||||||
type: "builtin",
|
type: "builtin",
|
||||||
role: "user",
|
role: "system",
|
||||||
sourceKey: "candidateNodes",
|
sourceKey: "candidateNodes",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: "default-graph-stats",
|
id: "default-graph-stats",
|
||||||
name: "图统计",
|
name: "图统计",
|
||||||
type: "builtin",
|
type: "builtin",
|
||||||
role: "user",
|
role: "system",
|
||||||
sourceKey: "graphStats",
|
sourceKey: "graphStats",
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
@@ -495,21 +495,21 @@ const TASK_CONTEXT_BLOCK_BLUEPRINTS = {
|
|||||||
id: "default-node-content",
|
id: "default-node-content",
|
||||||
name: "节点内容",
|
name: "节点内容",
|
||||||
type: "builtin",
|
type: "builtin",
|
||||||
role: "user",
|
role: "system",
|
||||||
sourceKey: "nodeContent",
|
sourceKey: "nodeContent",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: "default-current-range",
|
id: "default-current-range",
|
||||||
name: "当前范围",
|
name: "当前范围",
|
||||||
type: "builtin",
|
type: "builtin",
|
||||||
role: "user",
|
role: "system",
|
||||||
sourceKey: "currentRange",
|
sourceKey: "currentRange",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: "default-graph-stats",
|
id: "default-graph-stats",
|
||||||
name: "图统计",
|
name: "图统计",
|
||||||
type: "builtin",
|
type: "builtin",
|
||||||
role: "user",
|
role: "system",
|
||||||
sourceKey: "graphStats",
|
sourceKey: "graphStats",
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
@@ -518,28 +518,28 @@ const TASK_CONTEXT_BLOCK_BLUEPRINTS = {
|
|||||||
id: "default-event-summary",
|
id: "default-event-summary",
|
||||||
name: "事件摘要",
|
name: "事件摘要",
|
||||||
type: "builtin",
|
type: "builtin",
|
||||||
role: "user",
|
role: "system",
|
||||||
sourceKey: "eventSummary",
|
sourceKey: "eventSummary",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: "default-character-summary",
|
id: "default-character-summary",
|
||||||
name: "角色摘要",
|
name: "角色摘要",
|
||||||
type: "builtin",
|
type: "builtin",
|
||||||
role: "user",
|
role: "system",
|
||||||
sourceKey: "characterSummary",
|
sourceKey: "characterSummary",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: "default-thread-summary",
|
id: "default-thread-summary",
|
||||||
name: "主线摘要",
|
name: "主线摘要",
|
||||||
type: "builtin",
|
type: "builtin",
|
||||||
role: "user",
|
role: "system",
|
||||||
sourceKey: "threadSummary",
|
sourceKey: "threadSummary",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: "default-graph-stats",
|
id: "default-graph-stats",
|
||||||
name: "图统计",
|
name: "图统计",
|
||||||
type: "builtin",
|
type: "builtin",
|
||||||
role: "user",
|
role: "system",
|
||||||
sourceKey: "graphStats",
|
sourceKey: "graphStats",
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
@@ -548,35 +548,35 @@ const TASK_CONTEXT_BLOCK_BLUEPRINTS = {
|
|||||||
id: "default-event-summary",
|
id: "default-event-summary",
|
||||||
name: "事件摘要",
|
name: "事件摘要",
|
||||||
type: "builtin",
|
type: "builtin",
|
||||||
role: "user",
|
role: "system",
|
||||||
sourceKey: "eventSummary",
|
sourceKey: "eventSummary",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: "default-character-summary",
|
id: "default-character-summary",
|
||||||
name: "角色摘要",
|
name: "角色摘要",
|
||||||
type: "builtin",
|
type: "builtin",
|
||||||
role: "user",
|
role: "system",
|
||||||
sourceKey: "characterSummary",
|
sourceKey: "characterSummary",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: "default-thread-summary",
|
id: "default-thread-summary",
|
||||||
name: "主线摘要",
|
name: "主线摘要",
|
||||||
type: "builtin",
|
type: "builtin",
|
||||||
role: "user",
|
role: "system",
|
||||||
sourceKey: "threadSummary",
|
sourceKey: "threadSummary",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: "default-contradiction-summary",
|
id: "default-contradiction-summary",
|
||||||
name: "矛盾摘要",
|
name: "矛盾摘要",
|
||||||
type: "builtin",
|
type: "builtin",
|
||||||
role: "user",
|
role: "system",
|
||||||
sourceKey: "contradictionSummary",
|
sourceKey: "contradictionSummary",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: "default-graph-stats",
|
id: "default-graph-stats",
|
||||||
name: "图统计",
|
name: "图统计",
|
||||||
type: "builtin",
|
type: "builtin",
|
||||||
role: "user",
|
role: "system",
|
||||||
sourceKey: "graphStats",
|
sourceKey: "graphStats",
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
@@ -587,14 +587,14 @@ const DEFAULT_TRAILING_BLOCK_BLUEPRINTS = [
|
|||||||
id: "default-format",
|
id: "default-format",
|
||||||
name: "输出格式",
|
name: "输出格式",
|
||||||
type: "custom",
|
type: "custom",
|
||||||
role: "system",
|
role: "user",
|
||||||
contentKey: "format",
|
contentKey: "format",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: "default-rules",
|
id: "default-rules",
|
||||||
name: "行为规则",
|
name: "行为规则",
|
||||||
type: "custom",
|
type: "custom",
|
||||||
role: "system",
|
role: "user",
|
||||||
contentKey: "rules",
|
contentKey: "rules",
|
||||||
},
|
},
|
||||||
];
|
];
|
||||||
@@ -768,10 +768,7 @@ function mergeDefaultTaskProfileBlocks(taskType, existingBlocks = []) {
|
|||||||
? existing.name
|
? existing.name
|
||||||
: canonicalBlock.name,
|
: canonicalBlock.name,
|
||||||
type: canonicalBlock.type,
|
type: canonicalBlock.type,
|
||||||
role:
|
role: canonicalBlock.role,
|
||||||
typeof existing.role === "string" && existing.role
|
|
||||||
? existing.role
|
|
||||||
: canonicalBlock.role,
|
|
||||||
sourceKey: canonicalBlock.sourceKey || "",
|
sourceKey: canonicalBlock.sourceKey || "",
|
||||||
content:
|
content:
|
||||||
canonicalBlock.type === "custom"
|
canonicalBlock.type === "custom"
|
||||||
|
|||||||
@@ -45,7 +45,7 @@ assert.equal(defaultSettings.recallDiffusionTopK, 100);
|
|||||||
assert.equal(defaultSettings.recallLlmCandidatePool, 30);
|
assert.equal(defaultSettings.recallLlmCandidatePool, 30);
|
||||||
assert.equal(defaultSettings.recallLlmContextMessages, 4);
|
assert.equal(defaultSettings.recallLlmContextMessages, 4);
|
||||||
assert.equal(defaultSettings.injectDepth, 9999);
|
assert.equal(defaultSettings.injectDepth, 9999);
|
||||||
assert.equal(defaultSettings.taskProfilesVersion, 2);
|
assert.equal(defaultSettings.taskProfilesVersion, 3);
|
||||||
assert.ok(defaultSettings.taskProfiles);
|
assert.ok(defaultSettings.taskProfiles);
|
||||||
assert.ok(defaultSettings.taskProfiles.extract);
|
assert.ok(defaultSettings.taskProfiles.extract);
|
||||||
assert.ok(defaultSettings.taskProfiles.recall);
|
assert.ok(defaultSettings.taskProfiles.recall);
|
||||||
|
|||||||
@@ -36,7 +36,7 @@ const { buildTaskLlmPayload, buildTaskPrompt } = await import("../prompt-builder
|
|||||||
const { createDefaultTaskProfiles } = await import("../prompt-profiles.js");
|
const { createDefaultTaskProfiles } = await import("../prompt-profiles.js");
|
||||||
|
|
||||||
const settings = {
|
const settings = {
|
||||||
taskProfilesVersion: 2,
|
taskProfilesVersion: 3,
|
||||||
taskProfiles: createDefaultTaskProfiles(),
|
taskProfiles: createDefaultTaskProfiles(),
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -51,6 +51,16 @@ const extractPromptBuild = await buildTaskPrompt(settings, "extract", {
|
|||||||
});
|
});
|
||||||
const extractPayload = buildTaskLlmPayload(extractPromptBuild, "fallback-user");
|
const extractPayload = buildTaskLlmPayload(extractPromptBuild, "fallback-user");
|
||||||
assert.equal(extractPayload.userPrompt, "");
|
assert.equal(extractPayload.userPrompt, "");
|
||||||
|
assert.equal(
|
||||||
|
extractPayload.promptMessages.filter((message) => message.role === "user").length,
|
||||||
|
2,
|
||||||
|
);
|
||||||
|
assert.deepEqual(
|
||||||
|
extractPayload.promptMessages
|
||||||
|
.filter((message) => message.role === "user")
|
||||||
|
.map((message) => message.blockName),
|
||||||
|
["输出格式", "行为规则"],
|
||||||
|
);
|
||||||
assert.deepEqual(
|
assert.deepEqual(
|
||||||
extractPayload.promptMessages
|
extractPayload.promptMessages
|
||||||
.map((message) => message.sourceKey)
|
.map((message) => message.sourceKey)
|
||||||
@@ -76,6 +86,10 @@ const recallPromptBuild = await buildTaskPrompt(settings, "recall", {
|
|||||||
});
|
});
|
||||||
const recallPayload = buildTaskLlmPayload(recallPromptBuild, "fallback-user");
|
const recallPayload = buildTaskLlmPayload(recallPromptBuild, "fallback-user");
|
||||||
assert.equal(recallPayload.userPrompt, "");
|
assert.equal(recallPayload.userPrompt, "");
|
||||||
|
assert.equal(
|
||||||
|
recallPayload.promptMessages.filter((message) => message.role === "user").length,
|
||||||
|
2,
|
||||||
|
);
|
||||||
assert.deepEqual(
|
assert.deepEqual(
|
||||||
recallPayload.promptMessages
|
recallPayload.promptMessages
|
||||||
.map((message) => message.sourceKey)
|
.map((message) => message.sourceKey)
|
||||||
|
|||||||
@@ -15,7 +15,7 @@ const legacySettings = {
|
|||||||
};
|
};
|
||||||
|
|
||||||
const migrated = migrateLegacyTaskProfiles(legacySettings);
|
const migrated = migrateLegacyTaskProfiles(legacySettings);
|
||||||
assert.equal(migrated.taskProfilesVersion, 2);
|
assert.equal(migrated.taskProfilesVersion, 3);
|
||||||
assert.ok(migrated.taskProfiles);
|
assert.ok(migrated.taskProfiles);
|
||||||
assert.ok(migrated.taskProfiles.extract);
|
assert.ok(migrated.taskProfiles.extract);
|
||||||
assert.ok(migrated.taskProfiles.recall);
|
assert.ok(migrated.taskProfiles.recall);
|
||||||
@@ -71,12 +71,12 @@ assert.deepEqual(
|
|||||||
"system",
|
"system",
|
||||||
"system",
|
"system",
|
||||||
"system",
|
"system",
|
||||||
"user",
|
|
||||||
"user",
|
|
||||||
"user",
|
|
||||||
"user",
|
|
||||||
"system",
|
"system",
|
||||||
"system",
|
"system",
|
||||||
|
"system",
|
||||||
|
"system",
|
||||||
|
"user",
|
||||||
|
"user",
|
||||||
],
|
],
|
||||||
);
|
);
|
||||||
assert.equal(
|
assert.equal(
|
||||||
@@ -207,11 +207,18 @@ assert.equal(upgradedLegacyDefault.blocks.length, 11);
|
|||||||
assert.equal(upgradedLegacyDefault.blocks[0].content, "保留我自己的角色定义");
|
assert.equal(upgradedLegacyDefault.blocks[0].content, "保留我自己的角色定义");
|
||||||
assert.equal(upgradedLegacyDefault.blocks[9].content, "保留我自己的输出格式");
|
assert.equal(upgradedLegacyDefault.blocks[9].content, "保留我自己的输出格式");
|
||||||
assert.equal(upgradedLegacyDefault.blocks[10].content, "保留我自己的行为规则");
|
assert.equal(upgradedLegacyDefault.blocks[10].content, "保留我自己的行为规则");
|
||||||
|
assert.equal(upgradedLegacyDefault.blocks[9].role, "user");
|
||||||
|
assert.equal(upgradedLegacyDefault.blocks[10].role, "user");
|
||||||
assert.deepEqual(
|
assert.deepEqual(
|
||||||
upgradedLegacyDefault.blocks
|
upgradedLegacyDefault.blocks
|
||||||
.slice(5, 9)
|
.slice(5, 9)
|
||||||
.map((block) => block.sourceKey),
|
.map((block) => block.sourceKey),
|
||||||
["recentMessages", "graphStats", "schema", "currentRange"],
|
["recentMessages", "graphStats", "schema", "currentRange"],
|
||||||
);
|
);
|
||||||
|
assert.ok(
|
||||||
|
upgradedLegacyDefault.blocks
|
||||||
|
.slice(1, 9)
|
||||||
|
.every((block) => block.role === "system"),
|
||||||
|
);
|
||||||
|
|
||||||
console.log("task-profile-migration tests passed");
|
console.log("task-profile-migration tests passed");
|
||||||
|
|||||||
@@ -60,6 +60,7 @@ const customBlock = activeProfile.blocks.find(
|
|||||||
);
|
);
|
||||||
assert.ok(builtinBlock);
|
assert.ok(builtinBlock);
|
||||||
assert.equal(builtinBlock.injectionMode, "prepend");
|
assert.equal(builtinBlock.injectionMode, "prepend");
|
||||||
|
assert.equal(builtinBlock.role, "system");
|
||||||
assert.ok(customBlock);
|
assert.ok(customBlock);
|
||||||
assert.equal(customBlock.role, "user");
|
assert.equal(customBlock.role, "user");
|
||||||
assert.equal(activeProfile.regex.localRules.length, 1);
|
assert.equal(activeProfile.regex.localRules.length, 1);
|
||||||
|
|||||||
Reference in New Issue
Block a user