Repository navigation
fix(overview): make selecting queue + slot fly-in visible again - #448
Merged
Merged
Conversation
Root causes: 2.5s /api/live poll missed the 500ms selecting dwell, and
live queue jobs (request id) never matched slot jobs (live-${account}),
so queue→slot fly never fired.
- Keep account_id on dwell SelectingRequests; expose on LiveJob
- Bump display dwell to 1.6s (Acquire still immediate)
- Poll /api/live at 400ms while InflightLiveCard is expanded
- Fly wait-rail departures to bind account (or single newly busy slot)
Queue→slot fly uses GSAP MotionPath arc into data-cell-id (滑过去槽里). /api/live occupancy from BoundRequests maps each in-flight request to a concurrency cell with RequestedModel and Bind started_at — SlotBar shows model + seconds per cell, not one account timer.
Finish one concurrency cell at a time (request_id completions), keep sibling cells occupied, and GSAP FLIP the worker rail on busy↔available reorder. Changelog + mockInflight tests; sync embedded webui.
Drive Done/Failed exits from each concurrency cell (stagger same-tick multi-cell finishes) and give the worker rail a drag-up / 避让上顶 FLIP when busy rises and idle drops. Changelog ZH+EN; synced static.
Keep concurrency-cell model/elapsed hidden until the queue→slot fly lands (pendingInbound during dwell; React land-gate survives clock re-renders). When a selecting pill leaves, remaining wait pills FLIP up interrupt-safely so another mid-FLIP selecting can still fly out.
CI frontend job fails when npm run sync drifts internal/webui/static. Also polish unreleased notes into a concise numbered bilingual list.
Resolve OverviewPage (keep expanded live poll + cooling chip), re-sync embedded static, number pool-cooldown note as item 4.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
用户反馈 Overview「实时进行中」看不到选号/排队,进入槽位飞入也没有。
根因(有文件证据):
useLive默认每 2.5s 拉/api/live,而selectingMinDwell只有 500ms(internal/logs/recorder.go)。选号 Bind 通常亚毫秒完成 → 绝大多数请求在两次 poll 之间就离开投影,queue经常为空。live-${accountId}(applyLiveProjection)。InflightLiveCard的 queue→slot 动画要求 同一 id 从queued→running,live 路径永远对不上,所以看不到飞入。忙槽本身仍靠
InFlight投影;本次主要修「选号可见 + 飞入槽位」。面板需 展开 才会消费 live(折叠时不拉详情)。Fix
account_id并写入LiveJob/api/live轮询 400msaccount_id(或唯一新忙槽)飞入槽位Test plan
go test ./internal/logs/ ./internal/console/与npx tsx scripts/mockInflight.test.ts已通过Do not merge from this agent — user deploys prod themselves.