desktop reads everything by itself: one background read scheduler (4 per store, starts spaced per account, App Store Connect X-Rate-Limit slows it below 20 % and pauses at 100 left, backoff with jitter on 429 / RESOURCE_EXHAUSTED, visible app first, one read per key), per-method TTLs over the saved reads, Settings auto-read (on) and interval (15 min, paused while hidden), Refresh all, a refresh icon and 'read 3 min ago' / 'couldn't refresh' per card, writes invalidate, status line with progress and quota; quota reaches the window through ToolResult.quota (cli/lib/quota.ts); Health top issues open with versions, sample stack (health --issue / --signature, read health_issue), Open in Play Console, Copy for AI and likely-cause hints (cli/lib/crash-hints.ts); tests/scheduler.test.ts, tests/quota-crash-hints.test.ts, boot check auto-read case
This commit is contained in:
parent
89256f1e80
commit
0fb4ce0001
46 changed files with 1531 additions and 141 deletions
|
|
@ -169,6 +169,11 @@ svg { flex: none; }
|
|||
.topbar .spacer { flex: 1; }
|
||||
.stamp { display: inline-flex; align-items: center; gap: 6px; font-size: var(--t-meta); color: var(--muted); white-space: nowrap; }
|
||||
.stamp svg { width: 13px; height: 13px; }
|
||||
.read-ctl { display: inline-flex; align-items: center; gap: 8px; min-width: 0; }
|
||||
.read-stamp { font-size: var(--t-meta); color: var(--muted); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 360px; }
|
||||
.read-stamp.read-err { color: var(--warn-ink); }
|
||||
.reader-line { display: flex; align-items: center; gap: 6px; font-size: var(--t-meta); color: var(--muted); min-width: 0; }
|
||||
.reader-line > span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
|
||||
.dev-pill { font: 700 10px/1 var(--mono); letter-spacing: .06em; color: var(--warn-ink); background: var(--warn-bg); border: 1px solid color-mix(in srgb, var(--warn-solid) 45%, transparent); padding: 5px 7px; border-radius: 5px; }
|
||||
.content { flex: 1; overflow: auto; min-height: 0; scroll-behavior: smooth; }
|
||||
.page { padding: 24px 28px 48px; max-width: 1360px; margin: 0 auto; display: grid; gap: 20px; }
|
||||
|
|
@ -794,6 +799,14 @@ h2[tabindex="-1"]:focus, h2[tabindex="-1"]:focus-visible { outline: none; }
|
|||
.roll-ctl > .small:first-child { min-width: 150px; }
|
||||
.table tbody tr.edit-row td { background: var(--surface-2); }
|
||||
.table tbody tr.edit-row:hover td { background: var(--surface-2); }
|
||||
.issue-row { cursor: pointer; }
|
||||
.issue-row:focus-visible { outline: 2px solid var(--accent); outline-offset: -2px; }
|
||||
.issue-row .chev { flex: none; color: var(--muted); transition: transform var(--speed) var(--ease); }
|
||||
.issue-row .chev.rot { transform: rotate(90deg); }
|
||||
.ellipsis { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; min-width: 0; }
|
||||
.issue-detail { display: grid; gap: 12px; padding: 4px 0; min-width: 0; }
|
||||
.issue-title { overflow-wrap: anywhere; }
|
||||
.stack-trace { margin: 0; max-height: 280px; overflow: auto; padding: 10px 12px; border-radius: 8px; background: var(--surface); border: 1px solid var(--line, var(--border)); font: 12px/1.5 var(--mono, ui-monospace, monospace); white-space: pre; }
|
||||
.build-edit { display: grid; gap: 10px; padding: 4px 0; max-width: 760px; }
|
||||
textarea.input { height: auto; padding: 8px 10px; line-height: 1.45; resize: vertical; font-family: var(--font); }
|
||||
.reply-edit { min-height: 110px; }
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue