Skip to content

fix: address PR #133 review findings — AG-UI queue, composer, banner, docs generator - #134

Merged
cnjack merged 1 commit into
mainfrom
fix/pr-133-review-findings
Jul 11, 2026
Merged

fix: address PR #133 review findings — AG-UI queue, composer, banner, docs generator#134
cnjack merged 1 commit into
mainfrom
fix/pr-133-review-findings

Conversation

@cnjack

@cnjack cnjack commented Jul 11, 2026

Copy link
Copy Markdown
Owner

What

Follow-up to #133: triaged all CodeRabbit review findings on the merged PR and fixed everything that held up (18 of 18 actionable items), plus two packaging nits found during the npm release verification.

Functional fixes

  • AG-UI runtime — real type-ahead queue (was Major): enqueueMessage buffered nothing, so pressing Enter mid-run cleared the textarea and silently dropped the draft. Drafts now land in RuntimeState.queued (rendered by the composer's queue chips), drain one per natural turn end, and are never fired after a user stop(). removeQueuedMessage implemented. Selftest still 6/6.
  • Composer.send(): uploading/error attachment slots are no longer wiped (only done slots are consumed — in-flight uploads stay visible, failed ones remain retryable); dictation buffers reset on send so recognition results can't resurrect sent text.
  • ConnectionBanner: flashRecovered removed from the effect deps — the self-triggered re-run cancelled its own timeout, leaving the "Reconnected" flash on screen forever.
  • WorkflowCanvas: interactive contract can no longer be silently overridden by {...rest}; explicit per-flag overrides still work.
  • Transcription: assign-only active-segment ref — backward seeks no longer null the ref via the stale segment's cleanup.
  • FileTree renderer: the trailing-annotation cleanup the comment promised ("(dir)", size columns) is now implemented.

API docs generator (three root causes)

  • JSDoc capture could backtrack past */ and weld an earlier comment plus intervening code onto the next symbol's doc — now structurally forbidden.
  • Function-signature scanning counted </> (arrows and comparisons corrupted the depth and swallowed following declarations) — now counts parentheses only.
  • Index links pointed at #pkg-symbol anchors that were never emitted — sections now carry real anchor ids.
  • Regenerated: 275 symbols (up from 226 — the previously-swallowed declarations are now extracted individually).

Docs / hygiene

  • Doc snippets compile as pasted (missing icon import, undefined identifiers, version-content mismatch, wrong runtime link).
  • web/src/styles.css: all @imports moved before other at-rules (late imports are spec-invalid; the bundler tolerated it, browsers wouldn't).
  • Deprecated CSS replaced (word-break: break-wordoverflow-wrap, clipclip-path); stylelint/Biome nits.
  • Packaging: ./package.json added to both packages' exports; selftest artifacts excluded from the published core tarball.

Versions

jcode-ui-core0.2.1, jcode-ui0.2.2 (changelog updated). Publish after merge — with pnpm publish (core first, then ui).

Verification

core/ui build + typecheck green · AG-UI selftest 6/6 · markdown smoke 25/25 · web typecheck + build green · make build-web green · site tsc + vite build green.

Generated with Jack AI bot

Functional fixes:
- agui runtime: implement the type-ahead queue — enqueueMessage buffers
  drafts into RuntimeState.queued and drains one per natural turn end
  (never after stop()); removeQueuedMessage works. Previously a no-op
  silently dropped drafts composed mid-run.
- Composer.send(): keep uploading/error attachment slots (only done ones
  are consumed) and reset dictation buffers so recognized text can't
  repopulate the textarea after sending.
- ConnectionBanner: drop flashRecovered from the effect deps — the
  self-triggered re-run cancelled its own timeout, leaving the
  'Reconnected' flash on screen forever.
- WorkflowCanvas: interactive-driven flags now come after {...rest} with
  per-flag override support, so the spread can't silently undo them.
- Transcription: assign-only active ref — backward seeks no longer wipe
  the ref via the stale segment's null-clear.
- FileTree renderer: implement the documented trailing-annotation cleanup
  ((dir) suffixes, double-space columns).
- API docs generator: forbid '*/' inside the JSDoc capture (backtracking
  welded earlier comments + code onto the next symbol), count only
  parentheses in function-signature scanning ('>' in arrows corrupted the
  depth), and emit real anchor ids matching the index links. Regenerated:
  275 symbols (previously-swallowed declarations now extracted).

Docs/examples:
- artifact.md: import the icon used; demoSources artifact snippet made
  self-contained; branch-picker.md content mirrors its active version;
  connection-banner.md runtime link fixed.

Hygiene:
- web/src/styles.css: all @imports moved before other at-rules (late
  imports are spec-invalid).
- Deprecated CSS replaced (word-break: break-word, clip); canvas.css
  stylelint spacing; smoke script self-comparison lint.
- Packaging: ./package.json export on both packages; selftest artifacts
  excluded from the core tarball.

Versions: jcode-ui-core 0.2.1, jcode-ui 0.2.2 (publish after merge, with
pnpm publish).

Generated with Jack AI bot
@coderabbitai

coderabbitai Bot commented Jul 11, 2026

Copy link
Copy Markdown

Warning

Review limit reached

@cnjack, you've reached your PR review limit, so we couldn't start this review.

Next review available in: 30 minutes

Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available.
You're only billed for reviews past your plan's rate limits ($0.25/file).

How can I continue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews.

How do review limits work?

CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability.

For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window.

Please refer docs for additional details.

Review details
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: fe17a3d8-b6d4-4cf2-860a-8f4a5d51600c

📥 Commits

Reviewing files that changed from the base of the PR and between a083324 and 3dfa3cf.

📒 Files selected for processing (21)
  • packages/jcode-ui-core/package.json
  • packages/jcode-ui-core/src/primitives/Composer.tsx
  • packages/jcode-ui-core/src/runtime/aguiRuntime.ts
  • packages/jcode-ui/CHANGELOG.md
  • packages/jcode-ui/package.json
  • packages/jcode-ui/scripts/smoke-markdown.mjs
  • packages/jcode-ui/src/canvas/WorkflowCanvas.tsx
  • packages/jcode-ui/src/canvas/canvas.css
  • packages/jcode-ui/src/components/ConnectionBanner.tsx
  • packages/jcode-ui/src/styles/components.css
  • packages/jcode-ui/src/styles/p5.css
  • packages/jcode-ui/src/toolRenderers/fileTree.tsx
  • packages/jcode-ui/src/voice/Transcription.tsx
  • packages/jcode-ui/src/voice/voice.css
  • script/generate_jcode_ui_api_docs.mjs
  • site/docs/chat-ui/api/generated.md
  • site/docs/chat-ui/components/artifact.md
  • site/docs/chat-ui/components/branch-picker.md
  • site/docs/chat-ui/components/connection-banner.md
  • site/src/playground/demoSources.ts
  • web/src/styles.css
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch fix/pr-133-review-findings

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@cnjack
cnjack merged commit 0d55e06 into main Jul 11, 2026
3 checks passed
@cnjack
cnjack deleted the fix/pr-133-review-findings branch July 11, 2026 14:05
cnjack added a commit that referenced this pull request Jul 12, 2026
fix: address PR #133 review findings — AG-UI queue, composer, banner, docs generator
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant