Repository navigation
Releases: Hjdd14/dsh-toolong-warning
Releases · Hjdd14/dsh-toolong-warning
Release list
v0.2.0 — draggable floating window, schema fallback and CI fixes
The floating window becomes draggable, and two host-side defects in the fallback
config path are fixed. Install or upgrade with:
dsh plugin --profile web add @hjdd14/dsh-toolong-warningAdded
- The floating window is draggable. Press anywhere on the card (except its own
controls) and move it, so it no longer has to sit over the page's top-right
content. The position is remembered per browser — the same scope as the language
choice and the threshold override, and deliberately not a profile setting,
because it describes one person's screen rather than the conversation. - The window is kept reachable: a position is clamped so at least a grab-sized
part stays on screen (allowing negative coordinates when the window is wider than
the viewport, so its right-hand content is still reachable), and a moved window is
pulled back after a resize, a rotation, or the warning card making it taller. - The Settings section grows a Reset window position row as soon as the window
has been moved, and only then. screenshots.jsonbesidepackage.json, declaring the window screenshot
(docs/overlay.png) for plugin-market storefronts. Screenshots are declared in
the plugin's own repository, so changing them later needs no pull request on
anyone else's repo.
Fixed
- The fallback config descriptor now carries
meta.volatile, the key the Settings
form actually reads. It previously set avol: trueshorthand, so on a host
where@deepseek-ai/schemasterywas not resolvable — the case the fallback exists
for —volatileFormfound no editable field and the plugin's Settings section came
up empty.schemasteryitself setsmeta.volatile, and
@deepseek-ai/dsh-settingsreads exactly that name. - A rejected config no longer carries a
value. Under Standard Schema a failed
validation reportsissuesalone; the fallback returned a partly repairedvalue
beside them, which callers could mistake for a usable config. - The test suite no longer asserts anything about the machine it runs on. Three
assertions did, and each one failed in CI while passing on a developer box, which
is how a redmainwent unnoticed through three runs: the schema library being
resolvable, a profile existing at~/.dsh/profiles/web, and the settings label
resolving to长对话提醒on a machine whose browser language is Chinese. The label
case was the subtle one — the plugin picks its initial language from
navigator.languagesby design, so the assertion was reading the runner's locale.
All three now assert the plugin's own contract, and the language chain is asserted
directly onsrc/i18n.jswith no globals involved.
Notes
- Browser-half only for the drag feature: no host change, so no new
dsh webprocess
is required andmoduleGenerationis unchanged. The bundle hot-reloads. npm testis 446 assertions, 0 failures: 98 intest-detect.mjs, 104 in
test-i18n.mjs, 49 intest-coldread.mjs, 98 intest-routes.mjsand 97 in
check-client.mjs.
Full changelog: CHANGELOG.md
v0.1.1 — draggable floating window
Drag the floating window
The window was pinned to the top-right corner, where it could cover the page's own controls. It is
draggable now, and where you leave it is remembered.
Added
- Draggable floating window — press anywhere on the card and move it. Controls inside it
(Got it, Adjust thresholds, collapse, number fields) keep working. - Position is remembered per browser, next to the language choice and the threshold override.
It is deliberately not a profile setting: it describes one person's screen, not the conversation. - The window stays reachable: clamped so at least a grab-sized part remains on screen, with
negative coordinates allowed when the window is wider than the viewport, and pulled back after a
resize, a rotation, or the warning card growing. - Reset window position row in the Settings section, shown once the window has been moved.
Notes
- Browser half only. No host change, so no new
dsh webprocess is required and
moduleGenerationis unchanged. - Test coverage grew from 374 to 440 assertions (
npm test).
Install
dsh plugin --profile web add @hjdd14/dsh-toolong-warning