@goodandready/dsh-goal 0.1.3 → 0.1.5
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/design/DESIGN.md +7 -0
- package/lib/client.js +400 -213
- package/lib/command-handler.js +192 -189
- package/lib/goal-engine.js +255 -104
- package/lib/index.js +182 -78
- package/package.json +1 -1
package/docs/design/DESIGN.md
CHANGED
|
@@ -74,3 +74,10 @@
|
|
|
74
74
|
3. **Безопасность импортов**: все `require('@deepseek-ai/dsh-client-ui-primitives')` обёрнуты в `try/catch` с SVG-фоллбеками.
|
|
75
75
|
4. **2026-09-04 — rc.1-совместимость клиента**: `dsh.client.inject: []` — в boot-графе клиента ядра 0.1.2-rc.1 нет package-строк `dsh-client-runtime` (модуля в ядре нет вовсе) и `dsh-client-ui-slots`; `slots`/`locale`/`settingsScope` — встроенные службы ядра. `react`, `@deepseek-ai/dsh-client-ui-slots`, `@deepseek-ai/dsh-client-ui-primitives` отвечаются статической seed-таблицей шелла, но динамических package-строк под них в boot-графе нет — объявлять их в inject нельзя. Условие пересмотра: появление этих package-строк в boot-таблице ядра.
|
|
76
76
|
5. **2026-09-04 — контракт карточки настроек**: key слота = пространство настроек (`dsh-goal`), чтение через `ctx.settingsScope.bind`, решение по статусу снимка (loading/unavailable/ready + writable), сохранение всех изменённых полей с обратной сверкой. Причина: контракт вкладки «Настройки → Плагины» ядра rc.1 (BashCard/AgentLoopCard как эталон). Пересмотр — при изменении контракта слота в ядре.
|
|
77
|
+
|
|
78
|
+
6. **2026-09-10 — унификация дизайн-системы с dsh-clinebot (v0.1.5)**:
|
|
79
|
+
- Приведение кнопок, плашек и статусов к единому стилю: овальные пилюли (`.dsh-goal-badge`), кнопки с радиусом 8px, hover-состояниями и цветами (`.dsh-goal-btn-primary`, `.dsh-goal-btn-danger`).
|
|
80
|
+
- Модальное окно декомпозиции цели обогащено компактным 3-колоночным гридом метрик (`.dsh-goal-stat-grid`, `.dsh-goal-stat-box`).
|
|
81
|
+
- Инъекция стилей в DOM изолирована атрибутом `data-dsh-plugin="dsh-goal"`.
|
|
82
|
+
- Серверная защита REST API: ограничение размера тела запроса до 256 КБ (413 Payload Too Large) и строгая валидация входящих параметров вех.
|
|
83
|
+
- Ограничение сессионной памяти: автоматическая ротация завершённых неактивных сессий в `GoalEngine.pruneInactiveSessions()`.
|