Skip to content

Fix long tag overflow popover interactions - #2436

Merged
niemyjski merged 8 commits into
mainfrom
issue/tag-list-long-tag-overflow
Aug 4, 2026
Merged

Fix long tag overflow popover interactions#2436
niemyjski merged 8 commits into
mainfrom
issue/tag-list-long-tag-overflow

Conversation

@niemyjski

@niemyjski niemyjski commented Aug 4, 2026

Copy link
Copy Markdown
Member

Summary

  • Keep complete long-tag values available from visible tags and +N overflow summaries.
  • Preserve filter and Alt/Option-copy actions for clickable hidden tags.
  • Bound and wrap popovers on narrow viewports without changing desktop rendering.
  • Add realistic synthetic Storybook fixtures and focused regression coverage.
  • Make Aspire, Storybook, and Lume docs Run actions invoke tracked executable scripts atomically.

Root cause

Hidden tags were rendered through the normal tooltip path inside the +N tooltip. Moving from the overflow trigger to a hidden tag opened or closed nested tooltip state, so the full hidden value was not reliably viewable or actionable. The overflow path now renders bounded, wrapping values directly and reuses the existing click handler.

The visible badge is an inline-flex container. Truncation is applied and measured on its inner text span so padding and flex layout do not distort the overflow check.

The first Aspire wrapper was not an Aspire crash: its historical log reached a healthy dashboard and running Api/App/Elasticsearch/Jobs before receiving a normal termination signal. The current desktop failure was separate: multiline TOML commands were pasted into an interactive zsh terminal, leaving the shell at then> before Aspire could run. The Run actions now point to executable project-local scripts. The Aspire script resolves the worktree without requiring CODEX_WORKTREE_PATH, builds the AppHost from the repository root, starts Aspire with --no-build, and uses exec so logs and Ctrl-C remain attached.

Verification

  • Focused TagList tests — 7 passed, including hidden filtering and Alt/Option-copy behavior
  • npm run validate — formatting, Svelte check, Prettier, and ESLint passed; 0 Svelte errors or warnings
  • npm run build-storybook — completed successfully
  • Storybook browser matrix — read-only, clickable, overflow, keyboard focus, extreme values, and 320px viewport passed with no browser errors
  • Exact executable Storybook action with CODEX_WORKTREE_PATH absent — stayed attached; Storybook and the long-tag story URL both returned HTTP 200
  • Exact executable Aspire action with CODEX_WORKTREE_PATH absent — AppHost build succeeded, dashboard stayed attached, Api/App/Jobs and infrastructure reported healthy, API and Svelte app returned HTTP 200, and Ctrl-C stopped cleanly
  • Environment TOML parsed; the three executable run scripts passed bash -n; git diff --check passed

Scope

This pull request contains the TagList component, stories, focused tests, and the narrowly scoped environment action repair. It does not include the earlier custom background process manager or a redundant Run Site action; Run Aspire starts the full local site. Local screenshots and dogfood reports remain ignored and are not part of the pull request.

Before / after

The before/after screenshots are embedded here as GitHub user attachments; they are not repository files.

@niemyjski niemyjski self-assigned this Aug 4, 2026
@niemyjski
niemyjski marked this pull request as ready for review August 4, 2026 19:14
@niemyjski
niemyjski requested a review from ejsmith August 4, 2026 19:39
@niemyjski

Copy link
Copy Markdown
Member Author

@codex review

@niemyjski
niemyjski merged commit d49bfeb into main Aug 4, 2026
8 checks passed
@niemyjski
niemyjski deleted the issue/tag-list-long-tag-overflow branch August 4, 2026 19:44

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 33eb68057c

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

fi

if command -v aspire >/dev/null 2>&1; then
exec aspire run --apphost src/Exceptionless.AppHost --no-build --nologo

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Pass the AppHost project file to Aspire

When the Aspire CLI is on PATH (for example, the devcontainer installs it), this branch overrides the repo's aspire.config.json and passes the AppHost directory to --apphost. The Aspire run docs describe --apphost as taking an AppHost file/project file such as a .csproj (https://aspire.dev/reference/cli/commands/aspire-run/#options), and CLI versions that follow that contract fail on directories with “The specified project file does not exist”; use src/Exceptionless.AppHost/Exceptionless.AppHost.csproj or omit --apphost so the Run Aspire action works in CLI-equipped environments.

Useful? React with 👍 / 👎.

@github-actions

github-actions Bot commented Aug 4, 2026

Copy link
Copy Markdown

Code Coverage

Package Line Rate Branch Rate Complexity Health
Exceptionless.Core 75% 67% 9957
Exceptionless.AppHost 38% 40% 139
Exceptionless.Insulation 37% 35% 286
Exceptionless.Web 85% 68% 7022
Summary 78% (23436 / 30233) 67% (10981 / 16482) 17404

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.

2 participants