stratagate-dsh 0.2.82 → 0.2.84

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/docs/DSH.md CHANGED
@@ -134,7 +134,7 @@ Open DSH Settings and select **StrataGate-AgentMemory**. The page provides:
134
134
 
135
135
  Events, graph facts, and source messages cannot be edited, deleted, or approved in the UI. The UI can manually expand a Block, import memory exported by another AI, and change the completed turns per Block or the global Block decay coefficient λ in Advanced Settings. When the Block size changes, the UI explains their relationship and suggests a λ that preserves the decay rate per conversation turn; the user decides whether to adopt it. Saved settings immediately apply to every existing workspace, become the defaults for future workspaces, and survive restarts. Existing sealed Blocks are never repartitioned.
136
136
 
137
- Advanced Settings also edits eight fixed Persistent Profile fields. The same installation-wide Profile is used by `memory_profile_update`, across sessions and namespaces. Each saved field takes effect on the next model call; empty fields are omitted. Profile values use Unicode code-point limits of 100/100/100/1000/1000/1500/1000/1200 characters, with a 6000-character total budget. The SQLite database records each Settings, tool, and maintenance change with its previous value and source. Maintenance runs when 24 hours have passed since the first nonempty write or the last successful run, or when a capacity threshold is reached; it sees only the current Profile and may compress wording without adding facts. Event extraction and Graph projection never write Profile fields.
137
+ The primary Persistent Profile tab edits nine fixed fields in compact groups, one field at a time. It refreshes about every five seconds while visible, preserves an open draft, and prevents a stale same-field save from overwriting a concurrent change. The same installation-wide Profile is used by `memory_profile_update`, across sessions and namespaces. The preferred answer language applies only to the final answer; the independent visible reasoning language applies only to reasoning/thinking text exposed by the host UI when supported, never to hidden internal reasoning. An empty visible reasoning language adds no extra requirement. Each saved field takes effect on the next model call; empty fields are omitted. Profile values use Unicode code-point limits of 100/100/100/100/1000/1000/1500/1000/1200 characters, with a 6000-character total budget and a 4800-character maintenance trigger. The SQLite database records each Settings, tool, and maintenance change with its previous value and source. Maintenance runs when 24 hours have passed since the first nonempty write or the last successful run, or when a capacity threshold is reached; it sees only the current Profile and may compress wording without adding facts or semantically rewriting the four short fields. Event extraction and Graph projection never write Profile fields.
138
138
 
139
139
  The UI validates and previews pasted `stratagate.external-memory.v2` JSON before writing. Malformed input uses a model-backed recovery fallback whose candidates always require review. Exact duplicates are ignored deterministically; the configured model adjudicates other candidates against Top-K local Events as add, merge, supersede, conflict, or ignore. Analysis jobs persist per-candidate progress in SQLite, resume after the import page is reopened, and let users choose the action for low-confidence decisions. High-confidence decisions remain automatic, and a committed import can be undone as one batch. Common token and credential patterns are redacted in message content and structured tool traces before they leave the local server. The SQLite database remains the source of truth.
140
140
 
package/docs/DSH.zh-CN.md CHANGED
@@ -131,7 +131,7 @@ ID、`blockId`、角色、轮次和有界摘录。`narrative`、`quotes`、来
131
131
 
132
132
  界面不允许直接编辑、删除或批准 Event、图谱事实和来源消息。用户可以手动展开 Block、导入其他 AI 的记忆,以及在“高级设置”中修改每个 Block 包含的完整对话轮数或全局 Block 衰减系数 λ。修改轮数时,界面会解释两者关系并给出保持单位对话衰减速度的建议 λ,是否采用由用户决定。保存后设置立即应用到所有已有工作区,同时成为新工作区默认值,并在重启后保持;已封存 Block 不会重新切分。
133
133
 
134
- “高级设置”还可编辑固定的八项常驻画像字段。Settings 与 `memory_profile_update` 修改同一份安装级画像,跨会话、跨命名空间生效;保存后下一次模型调用立即看到新值,空字段不注入。字段按 Unicode 码点计数,上限依次为 100、100、100、1000、1000、1500、1000、1200 字符,总预算 6000 字符。SQLite 会记录 Settings、工具及后台整理的每次变更、旧值和来源。后台整理在首次写入非空画像或上次成功整理满 24 小时后,或达到容量阈值时执行;只读取当前画像,只压缩表达,不新增事实。Event 提取和 Graph 投影都不会写入画像。
134
+ 顶部“常驻画像”页面可编辑固定的九项字段。页面按身份与语言、交互偏好、关于用户、其他分组,默认紧凑显示;编辑时只展开一个字段。“默认回答语言”仅用于最终回复,“思考过程语言”仅用于宿主界面向用户展示的 reasoning/thinking 文本(若支持),两项互不推导;后者为空时不额外要求思考语言,也不控制隐藏的内部推理。页面可见时约每 5 秒读取最新画像,隐藏或离开时停止,并保留正在编辑的草稿。同一字段被其他来源修改时会提示冲突,保存不会覆盖新值。Settings 与 `memory_profile_update` 修改同一份安装级画像,跨会话、跨命名空间生效;保存后下一次模型调用立即看到新值,空字段不注入。字段按 Unicode 码点计数,上限依次为 100、100、100、100、1000、1000、1500、1000、1200 字符,总预算 6000 字符;总容量 4800 字符触发后台整理。SQLite 会记录 Settings、工具及后台整理的每次变更、旧值和来源。后台整理在首次写入非空画像或上次成功整理满 24 小时后,或达到容量阈值时执行;只读取当前画像,只压缩表达,不新增事实,也不语义改写四个短字段。Event 提取和 Graph 投影都不会写入画像。
135
135
 
136
136
  当前界面会在写入前校验并预览粘贴的 `stratagate.external-memory.v2` JSON:不合格内容会进入模型兜底恢复,恢复候选全部需要人工确认。完全重复项会被确定性忽略,其余候选由当前模型结合 Top-K 本地 Event 判断新增、合并、取代、冲突或忽略。分析任务和逐条进度持久化到 SQLite,关闭并重新打开页面后会恢复进度;高置信度判断自动采用,低置信度项可由用户选择具体动作;提交后可按批次撤销。消息内容和结构化工具轨迹中的常见令牌及凭证格式,会在离开本地服务器前被脱敏。SQLite 数据库始终是唯一可信数据源。
137
137
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "stratagate-dsh",
3
- "version": "0.2.82",
3
+ "version": "0.2.84",
4
4
  "description": "Recent conversations stay vivid. Older ones fade into summaries, not oblivion. StrataGate gives DeepSeek Harness six-layer, time-decaying memory, while lasting events and relationships settle into a knowledge graph. Bring your memories from other AIs with you—no need to start over.",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -56,6 +56,7 @@
56
56
  "check:workbuddy": "npm run check --workspace stratagate-workbuddy",
57
57
  "test": "npm run test:core && npm run test:dsh && npm run test:workbuddy",
58
58
  "test:dsh": "vitest run --config vitest.config.ts",
59
+ "test:profile-browser": "node scripts/test-profile-browser.mjs",
59
60
  "test:core": "npm run test --workspace @diqier/stratagate",
60
61
  "test:workbuddy": "npm run test --workspace stratagate-workbuddy",
61
62
  "verify:dsh": "npm run build:dsh && node scripts/verify-package.mjs && npm pack --ignore-scripts --pack-destination . && node scripts/verify-dsh-install.mjs",
@@ -223,6 +224,7 @@
223
224
  "cytoscape": "^3.34.1",
224
225
  "cytoscape-fcose": "^2.2.0",
225
226
  "esbuild": "^0.28.2",
227
+ "playwright-core": "^1.63.0",
226
228
  "tsup": "^8.5.0",
227
229
  "typescript": "^5.7.0",
228
230
  "vitest": "^3.0.0"