Repository navigation
chore(release): prepare 0.8.19 release - #19
Merged
Merged
Conversation
- Pin newly entered user questions directly to the top of the transcript viewport (`PINNED_QUESTION_GAP = 12`) - Maintain a dynamic bottom runway (`data-pin-runway`) so first-screen replies grow downward without moving `scrollTop`, auto-following once the turn exceeds one screen and keeping the runway without bounce when short replies finish - Add AGENTS.md rule to follow production code when documentation conflicts and list discovered conflicts in final responses Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
- Display `Stopping…` with loading activity indicator inside the Composer placeholder slot instead of above the composer in `TranscriptView.statusContent` - Align `docs/PLAN.md`, `docs/CAPABILITIES.md`, `docs/DESIGN.md`, and `docs/STATUS.md` with current production implementation Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
Wire useProcessDisclosure buttonRef and contentRef into CommandCard and standalone ToolRow disclosures so keepVisible pushes the transcript upward when expanding near the bottom, and cap .v2-chat-surface .v2-command-well at 228px to match the thinking detail height budget. Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
…om away state - Round pinned turn start and runway height up so subpixel offsets never select the previous question in the pinned overlay - Keep scrollTop anchored at pinTop when process disclosures expand or collapse within the pinned turn runway - Subtract the pin-runway spacer height when computing scroll-to-bottom button visibility so blank runway does not trigger the away button Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
…icate stopped status - Enforce pinned turn runway floor via column CSS min-height so collapse transitions never clamp scrollTop mid-frame before ResizeObserver runs - Keep running latest step mounted in ActivityGroupView until collapsible content becomes visible to avoid a 2-frame 24px height drop on expand - Omit redundant trailing Stopped status notice when the interrupted turn already displays stopped on its transcript activity items Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
- Render SideToolRecords header as an Explored category summary aligned with ThinkingView's left chevron instead of overwriting the disclosure label with Waiting for reply… - Truncate tool targets to a single line with hover titles and omit redundant check icons on completed rows - Show active tool execution and waiting status on a dedicated progress line below the tool group - Sync docs/DESIGN.md and docs/STATUS.md Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
- Add StarfieldBackdrop canvas overlay with pre-rendered pinpoint glow sprites, 4-layer depth breathing (122% size, 100% brightness), frame throttling, and hidden-tab suspension without altering the surface background color - Mount starfield only when the resolved theme is dark and droidvisx.chat.starfield is enabled - Wire droidvisx.chat.starfield setting through Management general settings, UiThemeMessage, and Webview boot attributes Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
… pool discovery polls - Guard pinned-turn minHeight/spacer style writes in TranscriptView and skip observing data-pin-runway in useTranscriptScroll - Ignore benign Chromium ResizeObserver loop notifications in the webview boot beacon and frontend analytics projection - Route session working-state probes through listOpenedForSession on the owning daemon instead of scanning all daemons via pool.all() - Exclude routine daemon.discovery.finished events from GA4 daemon_health reporting Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
…bital rotation - Increase starfield SIZE_SCALE from 1.22 to 1.42 and slightly lift layer base sizes - Model the main chat viewport as the top-left quadrant of a circle centered at (width, height) with radius max(width, height), rotating clockwise around the bottom-right pole - Wrap each star along its visible quadrant arc with smooth entry/exit edge fades Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
…ly state - Auto-save completion switches/selects and blur-commit text inputs with animated collapsible sections and dedicated API key buttons - Move BTW Preparing state into the side-question input placeholder and fix LimitsPopover header button/tab hover states - Place the inline-input caret at the end of inserted slash/skill/mention prefixes instead of keeping the old token offset - Match active turn IDs across merged assistant group items and suppress premature timestamp/copy actions while read-only worker replies are still running Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
…agent rows Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
…d scroll The pin release was gated on layout stability, but the runway height changes with every streamed line, so the gate never opened and syncRunway kept writing scrollTop back to pinTop. Release against the pin the reader actually left, and let a wheel gesture that left the bottom outrank the layout heuristics in onScroll so one grown line cannot re-arm the follow latch. Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
…in runway - Wrap the running-latest row in an inversely synchronized AnimatedCollapsibleContent so expanding or collapsing Explored during streaming transitions both heights over 200ms instead of jumping 24px - Round DOM turn start offsets and allow a 1px subpixel quantization tolerance before snapping scrollTop back to pinTop under fractional display scaling - Wire scrolling.stopFollowing into ProcessPresentationProvider so toggling a process disclosure cancels any active follow animation loop Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
… CJK punctuation bold Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
A paused turn settled as `interrupted`, yet the summary gate treated every cancelled reply as still live and kept the recorded change card hidden. Only a stop still in flight now holds the ledger open. Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
The side chat author line used the neutral Aperture glyph; use the Droid pinwheel mark that the rest of the product shows. Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
The transcript, question block and footer scrolled horizontally, so resizing the panel could push content out of view. Scroll vertically only, wrap long question text, and size the panel against its row instead of the viewport. Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
…bble Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
…ar Model label Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
…g rows Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
…subtask model Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
…ghlighting - Add block-level Markdown streaming with settled block LRU caching, cross-block reference definition fallback, O(1) unclosed code fence projection, and live inline syntax completion. - Fast-path reference-identical HAST nodes in worker tree delta calculation to skip redundant JSON serialization on settled blocks. - Maintain incremental per-stream Shiki GrammarState sessions in syntaxWorker, coalesce pending jobs by streamKey, and render memoized per-line spans in CodeSyntax so text selection persists while code streams. Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
…reparse - Re-parse in worker when streaming ends on text that had synthesized inline closures, and avoid caching synthesized streaming nodes as settled. - Restrict O(1) fence projection to unindented top-level fences and skip inline completion inside blockquote or nested open fences. - Cancel in-flight syntax worker jobs when CodeSyntax switches to a non-prefix source. Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
…olish reply typography - Measure away-from-bottom directly against the active viewport bottom when following is paused instead of subtracting runway height, and avoid snapping scrollTop back to pinTop on streaming height updates once following stops - Increase webview-host code/blockquote reset specificity so VS Code body.vscode-dark preformat styles do not tint inline code green - Refine markdown-prose line height, paragraph/list spacing, muted list markers and blockquotes, subtle inline-code borders, and dotted file-link underlines after Kilo - Keep the active FadingText span key stable until onAnimationEnd so fast token streams complete their fade smoothly Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
… mock Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
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
GrammarState按行增量高亮:未闭合代码围栏直接走body.vscode-dark code样式渗透;保持流式文字渐显跨度直至动画完成。Verification
pnpm run release:checkpnpm run typecheckpnpm run lint:budgetspnpm --filter @droidvisx/chat-ui buildpnpm exec vitest run(覆盖Transcript.scrollMotion、Transcript.anchoring、Markdown、Markdown.worker、Transcript.navigation、Composer、SideChatSheet等受影响测试)pnpm run package:vsix&pnpm run verify:vsix