@suifei/dsh-ai-team 0.3.29 → 0.3.30

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/CHANGELOG.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.3.30 — 2026-11-10
4
+
5
+ - 已提交的决策项增加「重新决策」:复用原六问/选项/建议重开一份未读项,可直接采纳建议后修改;
6
+ - 看板已完成默认展开、按 Task 号倒序;
7
+ - 决策建议逐条/全部采纳。
8
+
3
9
  ## 0.3.29 — 2026-11-10
4
10
 
5
11
  - 看板「已完成」默认展开,不再先折叠成「展开全部」;
package/client.js CHANGED
@@ -118,6 +118,9 @@ window.__ModuleLoader__.load({
118
118
  decisionAdopt: '采纳',
119
119
  decisionAdoptAll: '全部采纳建议',
120
120
  decisionAdoptHint: '建议可直接采纳,再按需修改',
121
+ decisionReopen: '重新决策',
122
+ decisionReopenSuffix: '复核',
123
+ decisionReopened: '已重开一份可编辑的决策项。',
121
124
  decisionSubmit: '提交决策',
122
125
  decisionSubmitted: '决策已提交给团队。',
123
126
  inboxEmptyAction: '看任务看板',
@@ -433,6 +436,9 @@ window.__ModuleLoader__.load({
433
436
  decisionAdopt: 'Adopt',
434
437
  decisionAdoptAll: 'Adopt all suggestions',
435
438
  decisionAdoptHint: 'Adopt a suggestion, then edit if needed',
439
+ decisionReopen: 'Decide again',
440
+ decisionReopenSuffix: 'review',
441
+ decisionReopened: 'A new editable decision item is ready.',
436
442
  decisionSubmit: 'Submit decision',
437
443
  decisionSubmitted: 'Decision sent to the team.',
438
444
  inboxEmptyAction: 'Open the board',
@@ -2864,6 +2870,20 @@ window.__ModuleLoader__.load({
2864
2870
  say(tf(t, 'sendFailed', { message: error?.message ?? String(error) }));
2865
2871
  }
2866
2872
  }
2873
+ async function reopenDecision(item) {
2874
+ try {
2875
+ await runCommand('decision.request', {
2876
+ title: (item.ref?.title || t('inboxDecisionTitle')) + ' · ' + t('decisionReopenSuffix'),
2877
+ questions: item.ref?.questions ?? [],
2878
+ taskId: item.ref?.taskId ?? null,
2879
+ source: item.ref?.source ?? 'reopen',
2880
+ }, item.projectId ?? projectId);
2881
+ say(t('decisionReopened'));
2882
+ await reloadData();
2883
+ } catch (error) {
2884
+ say(tf(t, 'sendFailed', { message: error?.message ?? String(error) }));
2885
+ }
2886
+ }
2867
2887
  async function ackInbox(item) {
2868
2888
  try {
2869
2889
  await runCommand('inbox.ack', { itemId: item.id, disposition: 'read' }, item.projectId ?? projectId);
@@ -3116,6 +3136,9 @@ window.__ModuleLoader__.load({
3116
3136
  item.state !== 'unread' ? h('div', { className: 'at-inboxstate' }, item.state) : null),
3117
3137
  h('div', { className: 'at-inboxactions' },
3118
3138
  item.ref?.taskId ? h('button', { className: 'at-btn at-btn-small', type: 'button', onClick: () => openInboxTask(item) }, t('inboxOpenTask')) : null,
3139
+ item.type === 'decision_required' && item.state !== 'unread' && Array.isArray(item.ref?.questions) && item.ref.questions.length
3140
+ ? h('button', { className: 'at-btn at-btn-small', type: 'button', onClick: () => reopenDecision(item) }, t('decisionReopen'))
3141
+ : null,
3119
3142
  item.state === 'unread' && !(item.type === 'decision_required' && Array.isArray(item.ref?.questions) && item.ref.questions.length)
3120
3143
  ? h('button', { className: 'at-btn at-btn-small at-btn-primary', type: 'button', onClick: () => ackInbox(item) }, t('inboxAck'))
3121
3144
  : null)))
package/index.js CHANGED
@@ -34,7 +34,7 @@ export const name = 'ai-team';
34
34
  /** The workbench only makes sense where the Web carrier exists. */
35
35
  export const inject = ['webServer', 'permissionPresets', 'sandboxPolicy'];
36
36
 
37
- const VERSION = '0.3.29';
37
+ const VERSION = '0.3.30';
38
38
  const PROJECT_ID = 'prj_main';
39
39
  const HUMAN_ID = 'mem_human';
40
40
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@suifei/dsh-ai-team",
3
- "version": "0.3.29",
3
+ "version": "0.3.30",
4
4
  "type": "module",
5
5
  "description": "文渊阁 (Wenyuan Pavilion) — AI Team mode for DeepSeek Harness: concurrent projects, owned tasks, threads, inbox and an append-only team ledger",
6
6
  "license": "MIT",