logpanel-blank-fix-plan

logpanel-blank-fix-plan is an agent for coding agents from Xsxdot/super-dev. It costs 0 tokens per session (2,721 once invoked), scanned A, original, Apache-2.0.

A written diagnosis and proposed repair for a blank area appearing at the bottom of a live log panel. The panel uses a virtual list, which displays only the visible part of a long list to reduce browser work.

In plain words
What is it for?
Use it to review the root cause and repair plan for the LogPanel follow-the-bottom bug. It is a plan for review and does not change the code.
Why use it?
It explains how mismatched library behavior, estimated row heights, and competing scrolling logic can make the panel lose its position and show empty space.

Agent

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add agents/xsxdot/super-dev/logpanel-blank-fix-plan
Clone the repo
git clone --depth 1 https://github.com/Xsxdot/super-dev

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for logpanel-blank-fix-plan

README.md
[![agentmods](https://agentmods.dev/badge/agents/xsxdot/super-dev/logpanel-blank-fix-plan.svg)](https://agentmods.dev/agents/xsxdot/super-dev/logpanel-blank-fix-plan)
Your own site
<a href="https://agentmods.dev/agents/xsxdot/super-dev/logpanel-blank-fix-plan"><img src="https://agentmods.dev/badge/agents/xsxdot/super-dev/logpanel-blank-fix-plan.svg" alt="Measured on agentmods" height="20"></a>
Per session 0 Only the description is in the session, so the agent can decide to use it. The body loads when it is invoked.
When invoked 2,721 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00000 $0.02721
Opus 5 $0.00000 $0.01360
Sonnet 5 $0.00000 $0.00544
Haiku 4.5 $0.00000 $0.00272

Measured 3d ago against content hash 45cfa1a4ae5d, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

logpanel-blank-fix-plan scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 3d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

docs/agents/logpanel-blank-fix-plan.md · 119 lines

How it starts

The opening of the file, as written. The whole thing — 119 lines — stays where its author put it; the contents beside it link to each section on GitHub.

日志面板底部空白 — 根因与修复方案(评审稿)

状态:待评审 · 只出方案不改代码 症状:LogPanel 实时追踪(follow-bottom)中,日志停在某时间点,下方出现大片空白,往上滑很久才见日志。测试全绿但真机反复出现。


1. 根因(已通过精读 @tanstack/[email protected] 源码钉死)

虚拟列表依赖 @tanstack/[email protected],底层 virtual-core 实际解析到 3.16.0。这个版本相对 3.13 引入了一套全新的滚动沉降(scroll-reconcile)+ 边测量边滚动(measure-during-scroll)+ 端点锚定(anchorTo) 机制。而 LogPanel.vue 里手写的 scrollToBottom 多帧 rAF 沉降循环,是照旧版 API 心智模型写的补丁,两者在抢滚动方向盘,最终露出空白。

空白产生链条

# 环节 代码位置 问题
1 行高先按估算 estimateSize: () => 22(LogPanel.vue:954) scrollToIndex 用 22px 估算算 offset 滚一次
2 底部行真实高度更大 多行日志常 40–60px measureElement 该上报真高、撑大 getTotalSize()
3 框架不补偿贴底 3.16 默认 anchorTo:"start"(core:256);resizeItemwasAtEnd 分支要求 anchorTo==="end"(core:798) 当前配置下自动贴底补偿永远不触发
4 两个 rAF 循环互抢 手写 settle 每帧 scrollToIndex(c-1,{align:'end'})(LogPanel.vue:629);3.16 的 scrollToIndex 自设 scrollState + 启 reconcileScroll(core:960) 手写循环与框架 reconcile 并行,互相拉扯
5 真实测量被推迟 shouldMeasureDuringScroll:measureElement 仅在 (!isScrolling||scrollState) 时写实测高度(core:773) 手写 settle 不断刷 scrollState/isScrolling → 底部行真高测量被反复跳过
6 settle 提前退出 终止条件 totalSize === lastTotalSize(LogPanel.vue:633) 底部行还是 22px 估算时「连续两帧相等」提前满足,循环退出
7 视口永久停在旧位 settle 退出后 scrollState 已清(core:1100)、anchorTo:"start" 不补偿 真实高度姗姗来迟、getTotalSize 变大,但滚动位置没跟上 → 底部差额全成空白

为什么测试全绿

LogPanel.test.ts 全程用 virtualizerMock 把真 virtualizer mock 掉,getTotalSize 直接返回固定值(如 22)。真实的 measure / totalSize 时序永远进不了测试 —— 这是测试盲区,也是这个 bug 反复被"修好"又复发的原因。

为什么这是架构问题而非又一个补丁点

历次提交 4cd1c0d stabilize log bottom scroll539cc42 programmaticScroll timing8860834 avoid measure while scrolling869a668/eb079de measure 时机 全在手写 settle 逻辑上打补丁。根因是「手写贴底 vs 新版框架内建贴底」的机制冲突 —— 满足 systematic-debugging 的 Phase 4.5:3+ 次修复失败 = 质疑架构。继续在 settle 上打补丁不会根治。


2. 修复方向:交给框架内建机制单一负责贴底

tanstack virtual 3.16 恰好内建了一套专为"实时日志贴底追踪"设计的官方 API(字段名、类型已在源码 .d.ts 核对):

Read the full file on GitHub · 119 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 3d ago First seen · 119 lines · 0 tokens per session scan A 45cfa1a4ae5d

Subscribe to this mod's changes

logpanel-blank-fix-plan is an agent published in the GitHub repository Xsxdot/super-dev (1 stars, last pushed 13d ago), licensed Apache-2.0. It costs nothing until one of its globs matches a file; then it loads 2,721 tokens. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other agents, from other repositories

prs-expert

PromptScript language expert. Helps with syntax, compilation issues, and migrations.

mrwogu/promptscript · 19 tokens

debugger

Debugs errors, test failures, and unexpected behavior. Knows PromptScript architecture.

mrwogu/promptscript · 20 tokens

designer

Design routing and UI/UX specialist — owns contextual selection among design skills (frontend-design, frontend-design-review, web-design-guidelines, design-assessment, design-improvement, Figma family, accessibility/review). Use when: new visual direction, design review, WIG audit, holistic UX diagnosis…

ulises-jeremias/agent-toolkit · 78 tokens

platform-engineer

Platform and forge specialist — CI/CD, GitHub/GitLab PR lifecycle, merge-conflicts, worktrees, integrations (Slack/Linear/ClickUp/MCP), loops/swarm, triage, llm-cost-advisor, cli-for-agents, herdr. Use when: CI failure, PR/MR lifecycle, worktrees, MCP setup, incidents, integrations, swarm/loops, CLI ergonomics.

ulises-jeremias/agent-toolkit · 88 tokens

assistant

You are the agent-toolkit Dev Companion. Ensure all work follows agent-toolkit standards and conventions.

ulises-jeremias/agent-toolkit · 35 tokens

implementer

Implementation specialist — feature/bug/refactoring delivery, build/test loop, TDD-aware scaffolding and docs generation. Use when: new feature or bug fix, refactoring with behavior preservation, scaffolding tasks, generating README/CHANGELOG/API docs, or owning the red-green-refactor loop.

ulises-jeremias/agent-toolkit · 62 tokens