dsh-strata-sync 0.10.4 → 0.10.6
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/README.md +2 -2
- package/dist/client.js +0 -5
- package/docs/CAPABILITIES.md +1 -1
- package/docs/README.zh-CN.md +2 -2
- package/docs/README.zh-TW.md +2 -2
- package/docs/VALIDATION.md +17 -142
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -10,7 +10,7 @@ The plugin reads Strata's model information, previews the changes, and updates D
|
|
|
10
10
|
|
|
11
11
|
- **Sync model settings:** context window, response output limit, and confirmed input types and reasoning levels.
|
|
12
12
|
- **Align compaction budgets:** update the matching policies in enabled DSH Agent presets.
|
|
13
|
-
- **Control summary length:** edit the supplemental prompt and adjust
|
|
13
|
+
- **Control summary length:** edit the supplemental prompt and adjust two target-length ratios.
|
|
14
14
|
- **Sync on startup:** optionally synchronize once after DSH becomes idle.
|
|
15
15
|
- **Review and recover:** preview differences, back up settings, and view the last synchronization result.
|
|
16
16
|
|
|
@@ -86,7 +86,7 @@ Two divisors control the target (both default to **2**, or **50%**):
|
|
|
86
86
|
| Output budget (O) | 2 | Estimated effective summary output budget ÷ O |
|
|
87
87
|
| Source length (S) | 2 | Estimated content being summarized ÷ S |
|
|
88
88
|
|
|
89
|
-
The target is the smaller result, rounded down. All divisors accept decimals of at least 1.
|
|
89
|
+
The target is the smaller result, rounded down. All divisors accept decimals of at least 1. Existing output/source divisors and explicit enable choices are preserved. New or unspecified guidance remains **off**.
|
|
90
90
|
|
|
91
91
|
The effective output budget is an **estimate**, not the raw requested `maxTokens` or a server-confirmed cap. It is the smaller of the request's summary cap and estimated remaining context. The latter uses the smaller verified server/client window, subtracts the full prompt (including system text, tool schemas and the supplement), and allows for the supported pi-ai adapter's 4,096-token safety reserve. Text is estimated at 3.5 characters/token with extra framing. The separate source estimate uses DSH's four-character heuristic and excludes the system prompt, tools and summary instruction. Neither estimate is an exact tokenizer count.
|
|
92
92
|
|
package/dist/client.js
CHANGED
|
@@ -151,10 +151,6 @@ window.__ModuleLoader__.load({
|
|
|
151
151
|
"zh-Hant": "本次預覽低於 256 tokens 的最低目標,將保留原生摘要提示詞。",
|
|
152
152
|
"zh-Hans": "本次预览低于 256 tokens 的最低目标,将保留原生摘要提示词。"
|
|
153
153
|
},
|
|
154
|
-
"Summary guidance is off. No extra sentence is added to the native prompt.": {
|
|
155
|
-
"zh-Hant": "摘要提示補充已關閉,不會在原生提示詞中加上額外句子。",
|
|
156
|
-
"zh-Hans": "摘要提示补充已关闭,不会在原生提示词中添加额外句子。"
|
|
157
|
-
},
|
|
158
154
|
"Save preferences to apply these controls to subsequent summary requests; other model and compaction settings stay unchanged.": {
|
|
159
155
|
"zh-Hant": "儲存偏好後,這些控制項會套用至後續摘要請求;其他模型與壓縮設定保持不變。",
|
|
160
156
|
"zh-Hans": "保存偏好后,这些控制项将应用于后续摘要请求;其他模型与压缩设置保持不变。"
|
|
@@ -533,7 +529,6 @@ REASONING_DEFAULT_CONFLICT: 'The provider default reasoning level is not support
|
|
|
533
529
|
state&&!validPrompt&&h('p',{className:'ss-status ss-error',role:'alert'},t('Use 1–2,048 characters and include {target}.')),
|
|
534
530
|
h('button',{type:'button','data-testid':'summary-prompt-reset',disabled:pending||!state?.defaultSummaryPromptTemplate||form.summaryPrompt===state.defaultSummaryPromptTemplate,onClick:()=>edit({summaryPrompt:state.defaultSummaryPromptTemplate})},t('Restore default prompt')),
|
|
535
531
|
h('p',{className:'ss-muted'},t("Appended to DSH's native prompt; {target} becomes the calculated token target. Save preferences to apply.")),
|
|
536
|
-
!form.summaryGuidance&&h('p',{className:'ss-status','data-testid':'summary-guidance-off'},t('Summary guidance is off. No extra sentence is added to the native prompt.')),
|
|
537
532
|
summaryTargetCeiling!==null&&(summaryTargetCeiling>=256
|
|
538
533
|
? h('p',{'data-testid':'summary-target-ceiling'},t('Maximum target for this preview: '),format(summaryTargetCeiling),' tokens')
|
|
539
534
|
: h('p',{className:'ss-status','data-testid':'summary-target-native'},t('This preview is below the 256-token minimum. The native summary prompt remains unchanged.'))),
|
package/docs/CAPABILITIES.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Verified model capabilities
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Capability synchronization uses the preview, backup, rollback and idle-only synchronization workflow. It does not send generation requests or alter Strata Server.
|
|
4
4
|
|
|
5
5
|
## Input types
|
|
6
6
|
|
package/docs/README.zh-CN.md
CHANGED
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
|
|
11
11
|
- **同步模型设置:**上下文窗口、回复输出上限,以及已确认的输入类型和推理等级。
|
|
12
12
|
- **对齐压缩预算:**更新已启用的 DSH Agent 预设中,对应模型的压缩策略。
|
|
13
|
-
-
|
|
13
|
+
- **控制摘要长度:**编辑补充提示词,调整两项目标长度比例。
|
|
14
14
|
- **启动时同步:**可选择在 DSH 启动并空闲后同步一次。
|
|
15
15
|
- **预览与恢复:**检查差异、备份设置,并查看最近一次同步结果。
|
|
16
16
|
|
|
@@ -86,7 +86,7 @@ Keep the entire checkpoint, including all required headings, within a target of
|
|
|
86
86
|
| 摘要输出(O) | 2 | 估算有效摘要输出预算 ÷ O |
|
|
87
87
|
| 原文长度(S) | 2 | 待摘要内容的估算长度 ÷ S |
|
|
88
88
|
|
|
89
|
-
目标取两项结果的较小值,再向下取整。除数支持大于或等于 1
|
|
89
|
+
目标取两项结果的较小值,再向下取整。除数支持大于或等于 1 的小数。已有输出/原文除数及明确的启用选择会保留,新安装或未指定时仍**默认关闭**。
|
|
90
90
|
|
|
91
91
|
有效输出预算是**估算值**,不是直接把请求的 `maxTokens` 当作服务器确认的上限。它取本次摘要输出上限与估算上下文剩余空间中的较小值;后者使用已确认的服务器/客户端窗口较小值,扣除完整提示内容(包含系统提示、工具定义和补充句),再预留支持的 pi-ai 适配器所用的 4,096 tokens 安全空间。文本以每 token 约 3.5 字符并加上格式成本估算。原文长度另采用 DSH 的每 token 约 4 字符估算,不含系统提示、工具和摘要指令。两者都不是精确 tokenizer 计数。
|
|
92
92
|
|
package/docs/README.zh-TW.md
CHANGED
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
|
|
11
11
|
- **同步模型設定:**上下文視窗、回覆輸出上限,以及已確認的輸入類型和推理等級。
|
|
12
12
|
- **對齊壓縮預算:**更新已啟用的 DSH Agent 預設中,對應模型的壓縮政策。
|
|
13
|
-
-
|
|
13
|
+
- **控制摘要長度:**編輯補充提示詞,調整兩項目標長度比例。
|
|
14
14
|
- **啟動時同步:**可選擇在 DSH 啟動並閒置後同步一次。
|
|
15
15
|
- **預覽與復原:**檢查差異、備份設定,並查看最近一次同步結果。
|
|
16
16
|
|
|
@@ -86,7 +86,7 @@ Keep the entire checkpoint, including all required headings, within a target of
|
|
|
86
86
|
| 摘要輸出(O) | 2 | 估算有效摘要輸出預算 ÷ O |
|
|
87
87
|
| 原文長度(S) | 2 | 待摘要內容的估算長度 ÷ S |
|
|
88
88
|
|
|
89
|
-
目標取兩項結果的較小值,再向下取整。除數支援大於或等於 1
|
|
89
|
+
目標取兩項結果的較小值,再向下取整。除數支援大於或等於 1 的小數。既有輸出/原文除數及明確的啟用選擇會保留,新安裝或未指定時仍**預設關閉**。
|
|
90
90
|
|
|
91
91
|
有效輸出預算是**估算值**,不是直接把請求的 `maxTokens` 當作伺服器確認的上限。它取本次摘要輸出上限與估算上下文剩餘空間中的較小值;後者使用已確認的伺服器/客戶端視窗較小值,扣除完整提示內容(包含系統提示、工具定義和補充句),再預留支援的 pi-ai 轉接器所用的 4,096 tokens 安全空間。文字以每 token 約 3.5 字元並加上格式成本估算。原文長度另採 DSH 的每 token 約 4 字元估算,不含系統提示、工具和摘要指令。兩者都不是精確 tokenizer 計數。
|
|
92
92
|
|
package/docs/VALIDATION.md
CHANGED
|
@@ -2,154 +2,29 @@
|
|
|
2
2
|
|
|
3
3
|
Validation date: 2026-10-30 (Asia/Taipei).
|
|
4
4
|
|
|
5
|
-
##
|
|
5
|
+
## Current summary behavior
|
|
6
6
|
|
|
7
|
-
-
|
|
8
|
-
-
|
|
9
|
-
- Effective output room is estimated
|
|
10
|
-
-
|
|
11
|
-
- No model inference requests were sent. Tests do not prove truncation is impossible; this supplement is a writing target and leaves native hard caps, reasoning and server configuration unchanged.
|
|
7
|
+
- Summary guidance is off by default in the schema, host fallback, request middleware and English, Simplified Chinese and Traditional Chinese interfaces. Explicit enable choices, output/source divisors and editable templates are supported.
|
|
8
|
+
- The writing target is the smaller of estimated effective summary output budget / output divisor and selected-source estimate / source divisor, rounded down. Both divisors default to 2 (50%).
|
|
9
|
+
- Effective output room is estimated against the supported pi-ai 1.1.0 context clamp, including the supplement, system text and tools. It is not a server tokenizer result. Reasoning and later request transformations can reduce usable answer space.
|
|
10
|
+
- The native summary prompt and request options are preserved. Unknown content, unverified metadata and targets below 256 tokens keep native behavior. The hook sends no extra inference requests and adds no retry loop.
|
|
12
11
|
|
|
13
|
-
##
|
|
12
|
+
## Automated verification
|
|
14
13
|
|
|
15
|
-
|
|
16
|
-
- Added a three-language UI regression for an omitted preference. Host and middleware tests verify that omitted/disabled guidance preserves native requests and makes no metadata calls; explicit opt-in still appends the configured sentence.
|
|
17
|
-
- All 152 automated tests pass, including 39 UI tests and the package verifier. No inference requests were sent.
|
|
14
|
+
All **155 automated tests pass** for the current runtime. Coverage includes:
|
|
18
15
|
|
|
19
|
-
|
|
16
|
+
- Actual pi-ai context clamping across multiple input sizes, near-full and exhausted context, independent source length, additional prompt costs, disabled-mode zero discovery and restored native requests.
|
|
17
|
+
- Native Cordis waterfall dispatch, immutable messages, concurrent summaries, duplicate hooks, cancellation, metadata failures, early stream closure, native errors and unload.
|
|
18
|
+
- Verified model discovery, selected-provider/loaded-model matching, alias validation, input types, model-specific reasoning choices and eight mocked SDK wire cases.
|
|
19
|
+
- Preference validation, idle guards, stale-preview rejection, concurrent edits, backup and rollback, startup synchronization, hot reload and enabled Agent preset policies.
|
|
20
|
+
- Three-language settings rendering, editable prompt preservation, custom divisors, preview ceilings, default-off behavior and preference conflicts.
|
|
20
21
|
|
|
21
|
-
|
|
22
|
-
- Verification is limited to the 38 affected UI tests and package checks; inference and native integration tests are not repeated for this wording-only change.
|
|
22
|
+
The package verifier checks the public file list, English root README selection, translated documentation links, entry points, source/build consistency and publishing metadata. It excludes private configuration, user conversations, credentials, backups and the native-prompt test fixture from the public package.
|
|
23
23
|
|
|
24
|
-
##
|
|
24
|
+
## Compatibility and limits
|
|
25
25
|
|
|
26
|
-
|
|
27
|
-
- `summaryPromptTemplate` requires literal `{target}` and at most 2,048 characters. Substitution is plain text, never code evaluation; the native instruction remains intact. All three divisors accept finite numbers from 1 to `Number.MAX_SAFE_INTEGER`, including fractions. Defaults remain 16/2/2; the final target is floored.
|
|
28
|
-
- All **151 automated tests pass**, including 38 UI tests and the package verifier. Checks cover saved custom prompts, restore-default, locale stability, fractional bounds, invalid input, stale preferences during discovery and saving, and custom-text deduplication through the native waterfall. Saving only these preferences leaves model and compaction settings unchanged.
|
|
29
|
-
- A local probe exercised the installed DSH 0.2.1-rc.3 native summary engine with a custom supplement and divisors 8.5/1.5/2.5. At 32K with a 4,096 output cap and sufficient source, the appended target was 2,730 tokens. Defaults, off state, native prompt preservation and unload also passed. Synthetic adapter output was used; no inference requests or real-model truncation claims are involved.
|
|
26
|
+
The integration targets **DSH Desktop 0.2.1-rc.3**, Cordis 4.0.5 and pi-ai 1.1.0. Native-host preview, synchronization, backup and interface checks used an isolated DSH profile and metadata-only fixture server. Native-summary integration probes used synthetic adapter responses.
|
|
30
27
|
|
|
31
|
-
|
|
28
|
+
These checks validate configuration, dispatch and preservation of native behavior. They do **not** establish that real models always follow the writing target, never truncate, or compact at an optimal frequency. No inference benchmark was run for this release. Server configuration and the user's running DSH profile were not changed.
|
|
32
29
|
|
|
33
|
-
|
|
34
|
-
- Backend tests cover native schema defaults and validation, persisted controls across reloads, disabling without metadata requests, re-enabling with a custom divisor, unchanged native compaction, source/output bounds, and changes during discovery. The three-language UI tests cover default-on controls, saving, invalid input, external changes/conflicts, custom previews, disabled state and below-256 fallback messages.
|
|
35
|
-
- A local probe exercised the installed DSH 0.2.1-rc.3 `BasicCompactionEngine.summarize()` through its actual Cordis waterfall. At 32K with a 4,096 summary cap, the default divisor produced 2,048, divisor 32 produced 1,024, disabled guidance preserved the native prompt without discovery, and divisor 8 remained capped at 2,048. Original prompt content, input, output cap, tools and configuration were preserved; unloading restored native behavior. Responses were synthetic: no inference requests were sent.
|
|
36
|
-
- All **142 automated tests pass**, including the package verifier and 33 settings UI tests. These checks validate configuration and integration, not a measured reduction in real-model truncation or compaction frequency.
|
|
37
|
-
|
|
38
|
-
## Package rename and target ratio 0.8.1
|
|
39
|
-
|
|
40
|
-
- Package identity, native bundle and client module now use `dsh-strata-sync`; the GitHub repository is unchanged. Existing scoped installations must be migrated, not loaded alongside the renamed plugin.
|
|
41
|
-
- The context contribution to the target changes from `/ 32` to `/ 16`. Summary-cap and selected-source bounds stay at `/ 2`; with a 4,096 summary cap, sufficiently long sources at both 32K and 64K now target 2,048 tokens. Other model and compaction settings are unchanged.
|
|
42
|
-
- Necessary verification consists of the 86 affected summary, plugin and UI tests plus the package verifier. Existing 0.8.0 native-runtime integration evidence below is historical; it was not rerun for this arithmetic/name change.
|
|
43
|
-
|
|
44
|
-
## Dynamic summary guidance 0.8.0
|
|
45
|
-
|
|
46
|
-
- Each supported native summary receives exactly one appended sentence. The target is `floor(min(context / 32, request.maxTokens / 2, selected-content estimate / 2))`; context is the smaller of verified server and existing client capacity. Source estimates exclude system messages, tool schemas and the summary instruction. Unknown attachment pricing and targets below 256 leave the native request unchanged.
|
|
47
|
-
- The official `llm/stream` waterfall is used without replacing the compaction engine. Tests exercise actual Cordis 4.0.5 services, plugin lifecycle and waterfall dispatch, with immutable native messages, concurrent summaries, duplicate hooks, cancellation, metadata failures, early stream closure, native errors and unload. All non-message request options and the complete native prompt are preserved.
|
|
48
|
-
- Plugin-level integration tests verify fresh metadata reads per summary, selected-provider/loaded-model matching, server identity, concurrent configuration edits and conservative client/server context matching. They assert zero configuration writes or backups during summary guidance. No prompt, raw tool content or credentials are recorded by the feature.
|
|
49
|
-
- A separate local integration probe called the **installed DSH 0.2.1-rc.3 native `BasicCompactionEngine.summarize()`** through its shipped Cordis runtime. Synthetic text yielded 1,024 at 32K and 2,048 at 64K; its original prompt, 4,096 output cap, signals, tools and configuration remained unchanged. Unloading the hook restored the original prompt. The adapter returned synthetic chunks: **no inference service was contacted**.
|
|
50
|
-
- English, Simplified Chinese and Traditional Chinese settings-render tests cover the read-only explanation, preview ceiling, unavailable values and live locale changes without adding preferences. All three READMEs describe the same behavior and limitations. Package verification checks the new runtime module is included and the authentic native-prompt test fixture is excluded from the public tarball.
|
|
51
|
-
- The target is a heuristic writing instruction. These checks establish integration and preservation, **not** that a real model always meets the target, never truncates, or stops compacting frequently. Natural-work model validation remains separate. No server or model settings are changed by this feature.
|
|
52
|
-
|
|
53
|
-
## npm documentation packaging 0.7.1
|
|
54
|
-
|
|
55
|
-
- The 0.7.0 tarball included all three root-level README files. Using the npm 11.19.0 publish-time manifest reader (`pacote` with `fullMetadata` and `fullReadJson`) selected `README.zh-TW.md` rather than `README.md`; the result matched the registry's README filename and length.
|
|
56
|
-
- Version 0.7.1 keeps only the English `README.md` at the package root. The translated READMEs move into `docs/`, along with capability and validation documentation included in the package. README links use absolute GitHub URLs so their destinations work from the npm package page as well as GitHub.
|
|
57
|
-
- All three READMEs now make public-registry installation the primary path and retain source/tarball installation as an alternative. Package metadata supplies explicit documentation, issue-reporting, discovery and publishing information.
|
|
58
|
-
- All **95 tests pass**, including the 94 existing tests and a new publish-artifact regression test. The verifier uses npm's package metadata reader and actual pack file list to check the chosen README, all 11 public files, documentation links, entry points, current build artifacts and publishing metadata. It runs again through `prepublishOnly` for directory publication. Dependency audit reported no known vulnerabilities.
|
|
59
|
-
- This patch changes release packaging and documentation, not the synchronization runtime. The native DSH checks described under 0.7.0 remain the prior integration baseline. Registry publication and npm website rendering must be verified separately after release.
|
|
60
|
-
- The observed 0.7.0 npm page showed no README even though registry metadata contained its text, matching a staged-publishing website/registry discrepancy reported in [npm/cli issue 9405](https://github.com/npm/cli/issues/9405). The root README selection issue is separately reproducible; fixing it does not by itself prove the website discrepancy is resolved.
|
|
61
|
-
|
|
62
|
-
## Synchronization and settings safeguards 0.7.0
|
|
63
|
-
|
|
64
|
-
- All **94 tests pass**, including 29 new regression tests. Coverage now includes changes during discovery and queued writes, revision-checked preference patches, multi-window conflicts, busy-to-idle startup deferral, startup readiness errors, alias resolution, non-text generators, unsupported catalog routes, delayed status responses and retained sync results.
|
|
65
|
-
- Explicitly verified the originally reported races: changing model settings during an apply query now rejects the stale preview without overwriting the newer value; a task beginning during startup discovery leaves synchronization pending until idle.
|
|
66
|
-
- The UI follows untouched preferences from other windows, reports conflicts for locally edited preferences, sends only changed fields with their baseline revision, and ignores older delayed status responses. Latest synchronization results from other windows replace older local results.
|
|
67
|
-
- All three locales cover automatic/manual output controls, provenance, partial capability alignment and result summaries. No independent language selector was added.
|
|
68
|
-
- Packed 0.7.0 and installed it through the official DSH plugin installer into the existing isolated DSH Desktop 0.2.1-rc.3 web profile. Startup synchronization, native preference saving/hot reload, manual 8,192-token output preview/application and result-card retention succeeded.
|
|
69
|
-
- Returned the isolated profile to automatic output mode. With a fixture server default of 4,096 and context 32,768, preview and apply used 4,096 output tokens and a 24,576-token (75%) compaction threshold. The UI distinguished the server default, effective value and source, and reported a backup.
|
|
70
|
-
- Native English and Simplified Chinese settings were checked through the browser. The installed host offers en/zh; Traditional Chinese is covered by automated locale/rendering tests. Reviewed the native result-card layout visually.
|
|
71
|
-
- Catalog-only routes and nonempty modelOverrides are rejected during preview; support for editing catalog overrides is not claimed. Existing explicit custom model lists remain supported, including adding the newly loaded canonical model.
|
|
72
|
-
- The fixture accepts metadata requests only. Production DSH, OpenCode and Strata server settings were not modified, and no inference requests were sent.
|
|
73
|
-
|
|
74
|
-
## Server output defaults 0.6.0
|
|
75
|
-
|
|
76
|
-
- All 65 tests pass. New coverage includes fixed server caps, absent/null and unlimited (-1/0) defaults, unavailable props, wrong model/Strata identity, invalid types, insufficient compaction space, manual precedence, stale-preview rejection after server-cap changes, applied model limits and translated output provenance.
|
|
77
|
-
- Uses the existing metadata-only GET /props?model=... response, specifically default_generation_settings.params.n_predict. [Strata server source](https://github.com/Niko1221/Strata/blob/main/serve/server.py) exposes the shared max_tokens default there; it is a default rather than a hard model maximum.
|
|
78
|
-
- Native isolated DSH 0.2.1-rc.3 startup sync adopted an 8,192-token fixture default at 32,768 context and saved a backup. English and Chinese previews reported the server source, a 20,480-token compaction threshold and unchanged 4,096 summary allowance.
|
|
79
|
-
- Changing only the fixture cap to -1 yielded a fresh preview of 9,830 output tokens, Automatic calculation, and an 18,842-token compaction threshold. This fallback preview was not applied. Traditional Chinese provenance is covered by UI tests.
|
|
80
|
-
- The updated English settings screenshot is retained locally only; it is not published with this release. Production DSH and the actual Strata server were not modified; no inference requests were sent.
|
|
81
|
-
|
|
82
|
-
## DSH language and startup synchronization 0.5.0
|
|
83
|
-
|
|
84
|
-
- All 58 tests pass. Regression coverage includes DSH locale subscriptions and cleanup, ignoring obsolete browser language preferences, Chinese regional variants, idle deferral, one attempt per process/profile, no repeat reads after completion/failure, HMR deduplication and manual retry availability.
|
|
85
|
-
- Installed the packed 0.5.0 bundle only in the existing isolated DSH Desktop 0.2.1-rc.3 web profile. Native English and Chinese UI switches automatically update the plugin. The language selector and product disclaimer are absent. The stock host exposes en/zh; Traditional Chinese regional mapping is covered by automated tests.
|
|
86
|
-
- Enabled startup sync in the UI. Saving the preference left the model at 32,768/9,830. Restarted only the isolated host; it synchronized the fixture model to 65,536/16,384 and displayed its successful sync timestamp and backup path. No Apply action or inference was used.
|
|
87
|
-
- The English screenshot is a fresh native-host capture. Older screenshots are not linked from the current READMEs.
|
|
88
|
-
- Production DSH and Strata configuration were not changed. Language integration uses DSH's locale service (getLocale/subscribe), described in [upstream client locale source](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/locale/src/client/index.ts).
|
|
89
|
-
|
|
90
|
-
## Difference-table layout 0.4.1
|
|
91
|
-
|
|
92
|
-
All 56 existing tests passed after the UI renderer change. In the isolated native host, a 32K-to-64K preview rendered a 528px table without horizontal overflow, with approximately 180/174/174px columns and right-aligned current/after values. English, Traditional Chinese and Simplified Chinese headers and values were checked in the live DOM. This version also renders capability arrays as chips, nested mappings as expandable details, and stacks rows when the table container is narrower than 440px. The narrow layout has not received a separate visual check. Browser screenshot capture timed out, so existing 0.4.0 screenshots are retained rather than presented as new captures. No synchronization was applied in this layout check.
|
|
93
|
-
|
|
94
|
-
## Capability synchronization 0.4.0
|
|
95
|
-
|
|
96
|
-
- All 56 automated tests pass. New checks cover verified template profiles, exact native efforts, unknown/malformed inputs, unverified reasoning preservation, conflicting provider defaults, localized warnings, stale capabilities, rollback and preservation of unrelated compatibility fields.
|
|
97
|
-
- Eight SDK wire tests use the public pi-ai 1.1.0 SDK (matching the installed DSH package version) with mocked fetch responses. Qwen off/low/medium/xhigh and DeepSeek off/low/high/max produce the expected thinking booleans and effort values. No inference endpoint is contacted.
|
|
98
|
-
- Queried the real Strata server's model and props metadata read-only: 32K Qwen with text/image input and the reviewed Qwen template. Inspected installed DeepSeek and Huihui tokenizer templates without loading them. Raw templates stay outside the repository.
|
|
99
|
-
- Installed the plugin into the isolated native DSH Desktop 0.2.1-rc.3 test profile. The fixture served the reviewed Qwen and DeepSeek templates as metadata. Preview/apply succeeded for each, retained 32K/9,830 budgets, saved profile backups, and the second preview showed no changes.
|
|
100
|
-
- Opened DSH's native Models editor and confirmed Qwen's context, output, text/image input and off/low/medium/xhigh entries. The DeepSeek test profile saved off/low/high/max.
|
|
101
|
-
- Unknown templates are covered by preservation tests; the plugin does not infer supported efforts from a model name or claim all future templates are compatible.
|
|
102
|
-
- Model inference quality, physical vision encoding and the production DSH profile were not changed or tested.
|
|
103
|
-
|
|
104
|
-
## Multilingual release 0.3.0
|
|
105
|
-
|
|
106
|
-
- All 38 automated tests pass, including Chinese preview labels and warnings, translated apply notices, local language persistence, invalid-language fallback and unchanged RPC write behavior on language switching.
|
|
107
|
-
- Packed and installed 0.3.0 in the isolated DSH Desktop 0.2.1-rc.3 web profile.
|
|
108
|
-
- Verified English, Traditional Chinese and Simplified Chinese in Settings → Strata Sync, including metadata preview and budget labels.
|
|
109
|
-
- Verified the selected language remains after leaving and reopening the Settings section.
|
|
110
|
-
- Captured the three native screenshots linked from the README editions.
|
|
111
|
-
- The npm package includes all three README editions. Unknown backend diagnostics deliberately retain their original text.
|
|
112
|
-
- No production DSH or Strata settings were changed; the native check only read metadata.
|
|
113
|
-
|
|
114
|
-
## Previous version scope
|
|
115
|
-
|
|
116
|
-
Version **0.2.0** moves the English interface to **Settings → Strata Sync**. Its Settings navigation, preferences, preview and synchronization were verified in the native host. The synchronization backend is unchanged from 0.1.0; the earlier full automatic-polling validation is retained below.
|
|
117
|
-
|
|
118
|
-
## Completed automated checks for 0.2.0
|
|
119
|
-
|
|
120
|
-
`npm test`: 35 passing tests covering discovery, native-client registration and UI behavior, budgeting, credentials, redirects, concurrent changes, lifecycle disposal, rollback, preset activation, retention inheritance and HMR timer context.
|
|
121
|
-
|
|
122
|
-
The updated UI tests require registration in `settings.section`, reject the old `plugins.item` location, and verify English UI text. Repository source and documentation were also scanned for remaining Chinese text; the screenshot was replaced with the English Settings page.
|
|
123
|
-
|
|
124
|
-
`npm run build` and `npm pack` produce the native host and browser entries. The package contains original plugin code only; no extracted DSH code, credentials, user conversations, server configuration or backups are distributed.
|
|
125
|
-
|
|
126
|
-
## Native Settings validation for 0.2.0
|
|
127
|
-
|
|
128
|
-
Using the installed DSH Desktop 0.2.1-rc.3 host with an isolated web profile and a metadata-only local fixture:
|
|
129
|
-
|
|
130
|
-
- Installed version 0.2.0 using the official plugin installer.
|
|
131
|
-
- Navigated through Account menu → Settings → Strata Sync; confirmed the page is a first-level Settings section.
|
|
132
|
-
- Switched only the isolated test profile to English to capture an entirely English screenshot.
|
|
133
|
-
- Previewed the context mismatch, used **Back up and sync**, and verified the saved context/output limits were 32,768/9,830 with a profile backup.
|
|
134
|
-
- Saved and cleared an output-budget override using **Save preferences**.
|
|
135
|
-
- Checked again and confirmed the settings were aligned.
|
|
136
|
-
|
|
137
|
-
No production DSH settings or Strata server settings were changed.
|
|
138
|
-
|
|
139
|
-
## Earlier native backend validation for 0.1.0
|
|
140
|
-
|
|
141
|
-
Tested using the installed DSH Desktop 0.2.1-rc.3 host in an isolated web profile, with a local metadata-only fixture. The real user profile and running inference server were not modified.
|
|
142
|
-
|
|
143
|
-
- Installed the packed bundle through the official DSH plugin installer.
|
|
144
|
-
- Opened the actual DSH Plugins page and Strata Sync UI used by version 0.1.0.
|
|
145
|
-
- Saved preferences, previewed a 64K-to-32K mismatch, and applied the change.
|
|
146
|
-
- Confirmed the native ConfigEditor saved the model limit and the exact provider/model policy in four enabled Agent presets: `standard`, `ptc`, `minimal`, and `cordis`.
|
|
147
|
-
- Confirmed the original profile was backed up, preset activation succeeded, and a second preview reported no differences.
|
|
148
|
-
- Toggled auto-sync off and on in the real UI, changed the fixture to 65,536 tokens, and verified the normal 60-second poll updated the DSH model from 32,768/9,830 to 65,536/16,384 without a manual apply or application restart.
|
|
149
|
-
- Verified metadata traffic uses only `GET /v1/models` and `GET /slots`; no inference endpoint is implemented by the fixture.
|
|
150
|
-
|
|
151
|
-
The native test exposed two host integration details now covered by regression tests: inactive root compaction placeholders must not be edited, and a timer created during HMR reload must exit the inherited transaction context before future ConfigEditor calls.
|
|
152
|
-
|
|
153
|
-
## Limits of validation
|
|
154
|
-
|
|
155
|
-
This validates configuration synchronization and native UI integration, not model answer quality or completion of arbitrary long summaries. No inference benchmark was run. Existing DSH conversations retain their Agent preset revision; start a new conversation after synchronization. The production DSH profile has not been modified or restarted by this validation.
|
|
30
|
+
Existing conversations retain their Agent preset revision; start a new conversation after synchronizing model settings.
|