docs(plan): v0.2 adds Pi subagents and scheduled-jobs board

Co-Authored-By: Claude Fable 5.1 <[email protected]>
This commit is contained in:
rootandClaude Fable 5.1 committed 2026-09-28 02:09:39 +08:00
1 parent b839ed4056
commit 16ab2a6c84
97 files changed
+592 -648

No files matched your search

@@ -25,7 +25,7 @@ import { Chip, Tone } from "./parts.tsx";
const TmdbForm = z.object({
entityType: z.enum(["movie", "tv"]),
externalId: z.string().trim().regex(/^\d+$/, "TMDB id 是纯数字"),
externalId: z.string().trim().regex(/^\d+$/, "TMDB ID 只能是数字"),
});
/** query 摘要:标题 / 年份 / 季集 */
@@ -78,7 +78,7 @@ function CandidateRow({
<ExternalLink className="h-3 w-3" />
</Link>
) : (
<span className="text-meta text-muted-foreground">本地未建档,指定后按外部详情建档</span>
<span className="text-meta text-muted-foreground">本地未建档,指定后按 TMDB 信息建档</span>
)}
</div>
{c.evidence.length ? (
@@ -147,7 +147,7 @@ export function PoolSheet({ item, onClose }: { item: IdentityPoolItem | null; on
</Button>
}
title="忽略这条待识别资源?"
description="忽略后不再自动复查;资源仍可在待识别入口按原始标题找回。"
description="忽略后不再自动复查,仍可按原始标题搜到。"
confirmLabel="忽略"
onConfirm={async () => {
try {
@@ -160,12 +160,7 @@ export function PoolSheet({ item, onClose }: { item: IdentityPoolItem | null; on
}
}}
>
<Textarea
value={note}
onChange={(e) => setNote(e.target.value)}
placeholder="备注(可选):为什么忽略"
rows={2}
/>
<Textarea value={note} onChange={(e) => setNote(e.target.value)} placeholder="忽略原因(可选)" rows={2} />
</ConfirmDialog>
<Button
variant="outline"
@@ -180,7 +175,7 @@ export function PoolSheet({ item, onClose }: { item: IdentityPoolItem | null; on
}}
>
{retry.isPending ? <LoaderCircle className="animate-spin" /> : <RotateCw />}
立即重试
重新识别
</Button>
</>
}
@@ -215,7 +210,7 @@ export function PoolSheet({ item, onClose }: { item: IdentityPoolItem | null; on
))}
</ul>
) : (
<p className="text-caption text-muted-foreground">没有候选。可以手动指定 TMDB id 或本地作品。</p>
<p className="text-caption text-muted-foreground">没有候选。手动指定 TMDB ID 或本地作品。</p>
)}
</DetailSection>