Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions changelog/unreleased/checkin-skipped-feedback.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
### English

- A check-in that the upstream marks as skipped (the activity is closed, not started, or already ended) now shows "Activity unavailable" on the account card instead of a green success. A one-click "check in all" run counts those accounts as failed in the summary.

### 中文

- 上游返回跳过的签到(活动未开放、未开始或已结束)现在在账号卡片上显示「活动未开放」,不再显示绿色成功。一键签到的汇总也会把这些账号计入失败。
10 changes: 6 additions & 4 deletions frontend/src/components/account/AccountCard.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ type Translate = (key: string, vars?: Record<string, string | number>) => string
// `kind` selects the glyph/colour; `message` is the raw upstream error text
// (only present for failures) and may be truncated in the UI with a copy button.
export type CheckinFeedback = {
kind: 'success' | 'already' | 'error'
kind: 'success' | 'already' | 'skipped' | 'error'
message?: string
}

Expand Down Expand Up @@ -321,16 +321,18 @@ export function AccountCard({
<div className="flex w-full items-start gap-2 rounded-lg bg-surface-secondary p-2 text-caption leading-5">
{feedback.kind === 'success' ? (
<CheckCircle size={14} weight="fill" className="mt-0.5 shrink-0 text-success" />
) : feedback.kind === 'already' ? (
<WarningCircle size={14} weight="fill" className="mt-0.5 shrink-0 text-warning" />
) : (
) : feedback.kind === 'error' ? (
<XCircle size={14} weight="fill" className="mt-0.5 shrink-0 text-danger" />
) : (
<WarningCircle size={14} weight="fill" className="mt-0.5 shrink-0 text-warning" />
)}
<div className="min-w-0 flex-1">
{feedback.kind === 'success' ? (
<span className="font-medium text-success">{t('checkinRecordSuccess')}</span>
) : feedback.kind === 'already' ? (
<span className="font-medium text-warning">{t('checkinRecordAlready')}</span>
) : feedback.kind === 'skipped' ? (
<span className="font-medium text-warning">{t('checkinRecordSkipped')}</span>
) : (
<span className="font-medium text-danger">{t('checkinRecordFailed')}</span>
)}
Expand Down
7 changes: 4 additions & 3 deletions frontend/src/pages/AccountsPage.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -492,10 +492,11 @@ export function AccountsPage() {
}
try {
const result = await checkinAccount(pending[index].id)
summary.checked += 1
const status = result?.last_checkin_status
const message = result?.last_checkin_msg
const kind = status === 'already' ? 'already' : status === 'error' ? 'error' : 'success'
const kind = status === 'already' ? 'already' : status === 'skipped' ? 'skipped' : status === 'error' ? 'error' : 'success'
if (kind === 'error' || kind === 'skipped') summary.failed += 1
else summary.checked += 1
setCheckinFeedbackById((current) => ({
...current,
[pending[index].id]: { kind, message: kind === 'error' ? message || t('checkinRecordFailed') : message },
Expand Down Expand Up @@ -543,7 +544,7 @@ export function AccountsPage() {
}
const status = result?.last_checkin_status
const message = result?.last_checkin_msg
const kind = status === 'already' ? 'already' : status === 'error' ? 'error' : 'success'
const kind = status === 'already' ? 'already' : status === 'skipped' ? 'skipped' : status === 'error' ? 'error' : 'success'
setCheckinFeedbackById((current) => ({
...current,
[id]: { kind, message: kind === 'error' ? message || t('checkinRecordFailed') : message },
Expand Down

Large diffs are not rendered by default.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion internal/webui/static/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@
<meta name="twitter:title" content="CLI2API" />
<meta name="twitter:description" content="Qoder CLI → OpenAI-compatible API. Self-hosted gateway." />
<meta name="twitter:image" content="/og-card.svg" />
<script type="module" crossorigin src="/assets/index-BTLD14uK.js"></script>
<script type="module" crossorigin src="/assets/index-BaFCWWtK.js"></script>
<link rel="stylesheet" crossorigin href="/assets/index-BwJtiLZx.css">
</head>
<body>
Expand Down
Loading