@suifei/dsh-ai-team 0.3.28 → 0.3.29

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.29 — 2026-11-10
4
+
5
+ - 看板「已完成」默认展开,不再先折叠成「展开全部」;
6
+ - 看板各列按 Task number 倒序,最新任务优先显示;
7
+ - 收件箱决策支持逐条「采纳」与「全部采纳建议」,建议直接填入可编辑输入框。
8
+
3
9
  ## 0.3.28 — 2026-11-10
4
10
 
5
11
  - 收件箱决策项增加逐条「采纳」与「全部采纳建议」;建议直接填入可编辑输入框,不再手抄;
package/client.js CHANGED
@@ -1515,7 +1515,9 @@ window.__ModuleLoader__.load({
1515
1515
  }
1516
1516
 
1517
1517
  function Board({ t, tasks, selected, follows, doneOpen, onToggleDone, onOpen, onToggleFollow, filter, onClearFilter, q1Extra, onBackMain }) {
1518
- const filtered = filter === 'all' ? tasks : tasks.filter((task) => matchesFilter(task, filter));
1518
+ const filtered = (filter === 'all' ? tasks : tasks.filter((task) => matchesFilter(task, filter)))
1519
+ .slice()
1520
+ .sort((left, right) => (right.number ?? 0) - (left.number ?? 0));
1519
1521
  const filterName = filter === 'all' ? '' : t(filter === 'q1' ? 'q1Title' : filter === 'q2' ? 'q2Title' : filter === 'q3' ? 'q3Title' : 'q4Title');
1520
1522
  const bar = filter === 'all' ? null : h('div', { className: 'at-boardbar', role: 'status' },
1521
1523
  h('span', { className: 'at-filterchip' }, tf(t, 'filterLabel', { name: filterName }) + ' · ' + tf(t, 'itemCount', { n: filtered.length })),
@@ -2180,7 +2182,7 @@ window.__ModuleLoader__.load({
2180
2182
  const [rightNote, setRightNote] = React.useState('');
2181
2183
  const [reply, setReply] = React.useState('');
2182
2184
  const [follows, setFollows] = React.useState({});
2183
- const [doneOpen, setDoneOpen] = React.useState(false);
2185
+ const [doneOpen, setDoneOpen] = React.useState(true);
2184
2186
  const [boardFilter, setBoardFilter] = React.useState('all');
2185
2187
  const [converting, setConverting] = React.useState(false);
2186
2188
  const [cTitle, setCTitle] = React.useState('');
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.28';
37
+ const VERSION = '0.3.29';
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.28",
3
+ "version": "0.3.29",
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",