Repository navigation
Drop the empty input hint that stopped the whole plugin loading - #52
Merged
Merged
Conversation
dsh-commands rejects a command whose `input` is present with a blank hint,
and `evolver-status` declared `input: { hint: '' }`. The TypeError escaped
the `ctx.inject(['commands'])` callback inside `apply`, so every host with a
commands service failed to load Evolver at all: no recall, no reports, no
skill, no commands. A command that takes no argument omits `input`.
The fake host in the tests accepted what the real one rejects, which is how
this shipped; it now mirrors dsh-commands' own validation, so the eight
definitions are checked at registration the way the host checks them.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
|
Sentinel 已审核此变更,未发现需要报告的问题。 开发 agent 查询详情: 调用 MCP 工具 由 Sentinel 审核 · 目标提交 92b742ce70ae |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What broke
@evomap/dsh-evolver@0.3.0does not load at all on any host with a commands service.evolver-statusdeclaredinput: { hint: '' }, anddsh-commandsrejects a presentinputwhose hint is blank:That
registerruns inside thectx.inject(['commands'])callback inapply, so the TypeError escapesapplyand the whole plugin fiber fails: no recall priming, no turn reports, no skill provider, no commands. Nothing of Evolver reaches a session.Only 0.3.0 is affected — 0.2.x built the hint from
argument-hintand had no empty-string path.The fix
A command that takes no argument omits
inputentirely.The fake host in
test/support/host.jsaccepted what the real one rejects, which is how this shipped green. It now mirrorsnormalizeDefinition's rules, so all eight definitions are validated at registration the way the host validates them.Verification
npm test— 182 pass.input: { hint: '' }back fails 11 tests inapply.test.jswith the production error, so the regression is covered.CommandRuntime.prototype.registerfrom the installed DSH Desktop: all eight get past validation, and the same definition with the oldinputis still rejected withcommand "evolver-status" input hint must not be empty.Needs a 0.3.1 tag to reach users.
🤖 Generated with Claude Code