dsh-task-ledger 0.0.119 → 0.0.121
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/dist/client.js +29 -25
- package/dist/client.js.map +1 -1
- package/dist/host/errors.d.ts +2 -2
- package/dist/host/repositories/stats.repository.d.ts +0 -14
- package/dist/host/repositories/stats.repository.js +2 -26
- package/dist/host/repositories/trend.repository.js +1 -1
- package/dist/host/routes.js +1 -1
- package/dist/host/services/dates.d.ts +1 -1
- package/dist/host/services/dates.js +1 -1
- package/dist/host/services/stats.service.d.ts +21 -1
- package/dist/host/services/stats.service.js +26 -40
- package/dist/host/types.d.ts +2 -2
- package/package.json +1 -1
- package/skill/SKILL.md +0 -1
- package/skill/package.json +1 -1
- package/skill/references/troubleshooting.md +1 -1
- package/skill/scripts/bin/ledger-darwin-arm64 +0 -0
- package/skill/scripts/bin/ledger-linux-amd64 +0 -0
- package/skill/scripts/bin/ledger-windows-amd64.exe +0 -0
package/dist/client.js
CHANGED
|
@@ -53402,7 +53402,7 @@ window.__ModuleLoader__.load({
|
|
|
53402
53402
|
}
|
|
53403
53403
|
}
|
|
53404
53404
|
/**
|
|
53405
|
-
* 首屏快照:8 卡 +
|
|
53405
|
+
* 首屏快照:8 卡 + 在办列表 + 趋势(host 侧每工作区跑 skill `stats` / `stats --trend` / `list`)。
|
|
53406
53406
|
* `fresh` = 让 host 先清 1.5s 读缓存再算(手动刷新 / 首读都要最新,不吃上一屏的缓存)。
|
|
53407
53407
|
*/
|
|
53408
53408
|
function fetchBoardSnapshot(opts = {}) {
|
|
@@ -54364,6 +54364,11 @@ body[data-ds-dark-theme]{
|
|
|
54364
54364
|
label: "statStale"
|
|
54365
54365
|
}
|
|
54366
54366
|
];
|
|
54367
|
+
/** 错误原文只留第一行并截断:脚本报错常把整段用法提示塞在一行里,toast 装不下。 */
|
|
54368
|
+
function firstLine(message) {
|
|
54369
|
+
const line = (message.split("\n")[0] ?? "").trim();
|
|
54370
|
+
return line.length > 80 ? `${line.slice(0, 80)}…` : line;
|
|
54371
|
+
}
|
|
54367
54372
|
function BoardHome(props) {
|
|
54368
54373
|
const { t, onBack } = props;
|
|
54369
54374
|
ensureUiBase();
|
|
@@ -54394,6 +54399,24 @@ body[data-ds-dark-theme]{
|
|
|
54394
54399
|
const board = state.board;
|
|
54395
54400
|
const view = (0, react$1.useMemo)(() => selectView(state), [state]);
|
|
54396
54401
|
const degraded = board?.degraded ?? [];
|
|
54402
|
+
const degradedSig = degraded.map((item) => `${item.workspaceId}|${item.op}|${item.message}`).join("\n");
|
|
54403
|
+
const shownDegraded = (0, react$1.useRef)("");
|
|
54404
|
+
(0, react$1.useEffect)(() => {
|
|
54405
|
+
if (degradedSig === "" || degradedSig === shownDegraded.current) return;
|
|
54406
|
+
shownDegraded.current = degradedSig;
|
|
54407
|
+
notify(t("degradedToastTitle", { n: degraded.length }), {
|
|
54408
|
+
variant: "error",
|
|
54409
|
+
durationMs: 8e3,
|
|
54410
|
+
description: degraded.slice(0, 2).map((item) => t("degradedItem", {
|
|
54411
|
+
title: item.workspaceTitle,
|
|
54412
|
+
message: firstLine(item.message)
|
|
54413
|
+
})).join(";")
|
|
54414
|
+
});
|
|
54415
|
+
}, [
|
|
54416
|
+
degradedSig,
|
|
54417
|
+
degraded,
|
|
54418
|
+
t
|
|
54419
|
+
]);
|
|
54397
54420
|
/** 工作区下拉候选:宿主里所有含台账的工作区(不是从任务里反推,空工作区也要能选)。 */
|
|
54398
54421
|
const workspaceOptions = (0, react$1.useMemo)(() => [{
|
|
54399
54422
|
value: "",
|
|
@@ -54536,8 +54559,8 @@ body[data-ds-dark-theme]{
|
|
|
54536
54559
|
onClick: onBack
|
|
54537
54560
|
}, `← ${t("backToConversation")}`), (0, react$1.createElement)("div", { style: titleStyle }, t("panelTitle"), (0, react$1.createElement)("span", {
|
|
54538
54561
|
style: buildTagStyle,
|
|
54539
|
-
title: `v0.0.
|
|
54540
|
-
}, `v0.0.
|
|
54562
|
+
title: `v0.0.121 · 261029-153112-306`
|
|
54563
|
+
}, `v0.0.121 261029-153112-306`))), (0, react$1.createElement)(Button, {
|
|
54541
54564
|
variant: "outline",
|
|
54542
54565
|
size: "lg",
|
|
54543
54566
|
icon: (0, react$1.createElement)(_deepseek_ai_dsh_client_ui_primitives.IconRefreshOutlineRegular, { size: 16 }),
|
|
@@ -54559,26 +54582,7 @@ body[data-ds-dark-theme]{
|
|
|
54559
54582
|
onClick: () => {
|
|
54560
54583
|
refresh();
|
|
54561
54584
|
}
|
|
54562
|
-
}, t("retry"))) : null, board === null ? null : statsGrid(board),
|
|
54563
|
-
display: "flex",
|
|
54564
|
-
alignItems: "flex-start",
|
|
54565
|
-
gap: "var(--dtl-space-2)",
|
|
54566
|
-
padding: "var(--dtl-space-2) var(--dtl-space-3)",
|
|
54567
|
-
marginTop: "var(--dtl-space-3)",
|
|
54568
|
-
border: "1px solid var(--dtl-danger)",
|
|
54569
|
-
borderRadius: "var(--dtl-radius-md)",
|
|
54570
|
-
background: "var(--dtl-danger-soft)",
|
|
54571
|
-
color: "var(--dtl-fg)",
|
|
54572
|
-
fontSize: "var(--dtl-font-sm)",
|
|
54573
|
-
lineHeight: "var(--dtl-line-sm)"
|
|
54574
|
-
} }, (0, react$1.createElement)("span", { style: {
|
|
54575
|
-
color: "var(--dtl-danger)",
|
|
54576
|
-
flex: "none",
|
|
54577
|
-
fontWeight: 600
|
|
54578
|
-
} }, t("degradedTitle")), (0, react$1.createElement)("span", null, degraded.map((item) => t("degradedItem", {
|
|
54579
|
-
title: item.workspaceTitle,
|
|
54580
|
-
message: item.message
|
|
54581
|
-
})).join(";"))), regionHead, board === null ? null : view.rows.length === 0 ? (0, react$1.createElement)(EmptyState, {
|
|
54585
|
+
}, t("retry"))) : null, board === null ? null : statsGrid(board), regionHead, board === null ? null : view.rows.length === 0 ? (0, react$1.createElement)(EmptyState, {
|
|
54582
54586
|
title: t("listEmpty"),
|
|
54583
54587
|
hint: t("listEmptyHint")
|
|
54584
54588
|
}) : (0, react$1.createElement)("div", null, view.rows.slice(0, LIST_LIMIT).map((row) => (0, react$1.createElement)(TaskRowView, {
|
|
@@ -54599,7 +54603,7 @@ body[data-ds-dark-theme]{
|
|
|
54599
54603
|
loading: "读取中…",
|
|
54600
54604
|
retry: "重试",
|
|
54601
54605
|
loadFailed: "读取失败",
|
|
54602
|
-
|
|
54606
|
+
degradedToastTitle: "部分工作区读取失败({n} 个)",
|
|
54603
54607
|
degradedItem: "{title}:{message}",
|
|
54604
54608
|
statMyActive: "我的待办",
|
|
54605
54609
|
statMyOverdueHint: "逾期 {n}",
|
|
@@ -54687,7 +54691,7 @@ body[data-ds-dark-theme]{
|
|
|
54687
54691
|
loading: "Loading…",
|
|
54688
54692
|
retry: "Retry",
|
|
54689
54693
|
loadFailed: "Load failed",
|
|
54690
|
-
|
|
54694
|
+
degradedToastTitle: "{n} workspace(s) failed to load",
|
|
54691
54695
|
degradedItem: "{title}: {message}",
|
|
54692
54696
|
statMyActive: "My todos",
|
|
54693
54697
|
statMyOverdueHint: "overdue {n}",
|