Skip to content

fix(client): rc.7 keyed settings.plugin.item + dsh peer floor - #59

Merged
btspoony merged 2 commits into
mainfrom
fix/rc7-plugin-item-key
Aug 17, 2026
Merged

fix(client): rc.7 keyed settings.plugin.item + dsh peer floor#59
btspoony merged 2 commits into
mainfrom
fix/rc7-plugin-item-key

Conversation

@btspoony

Copy link
Copy Markdown
Collaborator

Why

dsh 0.1.0-rc.7 web fails to load this plugin:

Failed to load plugins
dsh-advisor
failed to apply loader entry … (dsh-advisor): keyed slot "settings.plugin.item" requires options.key

rc.7 moved settings.plugin.item from a list slot (id/order) to a keyed slot (key = settings namespace).

What

  • Register the Advisor card as { name: 'settings.plugin.item', key: 'advisor', locale, inject } (no id/order).
  • Floor every @deepseek-ai/dsh-* peer to ^0.1.0-rc.7 (user-directed). cordis / schemastery / react unchanged.
  • Pin tests/peer-deps.test.ts and the registration spec; surgical docs wording.

Out of scope

  • settingsScope migration (gateway channel kept).
  • Sibling dsh-llm-fallbacks has the same crash class (id: 'fallbacks').

Verify

  • pnpm typecheck / pnpm test (377) / pnpm build green on the feature branch.

rc.7 moved settings.plugin.item from a list slot (id + order) to a keyed
slot: options.key is the settings namespace the card edits, and the slot
runtime throws when it is missing, which crashed apps/web with 'Failed to
load plugins'. Register key 'advisor' (the already-installed advisor
namespace, spelled as a literal because the host-half settings module is
outside the client bundle externals) and drop id/order. Pin the key in
the registration spec so a missing or wrong key fails the suite.

Also bump every @deepseek-ai/dsh-* peerDependency to ^0.1.0-rc.7 (same
caret) so dev-time types match the running rc.7 host; cordis/schemastery/
react unchanged, peers stay peerDependencies only. Sync the lockfile and
the workspace minimumReleaseAgeExclude pins to rc.7, and update docs/
comments that still described the old list-slot shape or rc.6 pin.
@btspoony
btspoony merged commit 50d9e38 into main Aug 17, 2026
1 check passed
@btspoony
btspoony deleted the fix/rc7-plugin-item-key branch August 17, 2026 14:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant