Upgrade Charm TUI stack to v2 and add dispatch repo links#1048
Merged
gtrrz-victor merged 5 commits intomainfrom Apr 30, 2026
Merged
Upgrade Charm TUI stack to v2 and add dispatch repo links#1048gtrrz-victor merged 5 commits intomainfrom
gtrrz-victor merged 5 commits intomainfrom
Conversation
Contributor
There was a problem hiding this comment.
Pull request overview
This PR migrates the dispatch TUI’s terminal markdown rendering to Glamour v2 to support OSC 8 hyperlinks, and threads a “trusted” GitHub repo URL through dispatch data so repo headings can be rendered as links (and included in generator payloads).
Changes:
- Switch terminal markdown rendering dependencies/imports from
github.com/charmbracelet/glamourtocharm.land/glamour/v2. - Add GitHub repo URL derivation (
githubRepoURL) and propagate it through local/cloud dispatch repo groups and dispatch prompt payloads. - Add regression tests for URL validation, URL propagation, and hyperlink rendering output.
Reviewed changes
Copilot reviewed 14 out of 15 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
go.mod |
Swaps Glamour dependency to charm.land/glamour/v2 and updates related indirect deps. |
go.sum |
Records new/updated module checksums for Glamour v2 and related transitive deps. |
cmd/entire/cli/dispatch_tui.go |
Updates Glamour imports for v2 terminal rendering. |
cmd/entire/cli/dispatch_tui_test.go |
Adds a test asserting OSC 8 hyperlink sequences appear in rendered output. |
cmd/entire/cli/dispatch/types.go |
Extends RepoGroup with a URL field for trusted repo link propagation. |
cmd/entire/cli/dispatch/repo_url.go |
Introduces githubRepoURL helper with validation to derive trusted GitHub URLs. |
cmd/entire/cli/dispatch/repo_url_test.go |
Adds table-driven tests for githubRepoURL validation behavior. |
cmd/entire/cli/dispatch/mode_local.go |
Populates RepoGroup.URL during local grouping. |
cmd/entire/cli/dispatch/mode_local_test.go |
Asserts local mode populates trusted repo URL. |
cmd/entire/cli/dispatch/mode_cloud.go |
Populates RepoGroup.URL when mapping API response to dispatch model. |
cmd/entire/cli/dispatch/mode_cloud_test.go |
Adds coverage verifying URL derivation is applied and unsafe names omit URL. |
cmd/entire/cli/dispatch/generate.go |
Updates prompt requirements to allow linked repo headings and includes url in prompt payload repos. |
cmd/entire/cli/dispatch/generate_test.go |
Adds assertions that prompt and payload include trusted repo URLs and linked-heading guidance. |
cmd/entire/cli/dispatch/consts_test.go |
Adds testRepoURL constant for reuse across tests. |
cmd/entire/cli/dispatch/cloud.go |
Adds url field to APIRepo for JSON compatibility (omitempty). |
Migrate to charm.land/v2 module paths for the Bubble Tea ecosystem now that v2 is GA. View() returns tea.View instead of string, KeyMsg becomes KeyPressMsg, viewport/textinput moved to getter/setter API, and huh.Theme is now an interface backed by ThemeFunc. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> Entire-Checkpoint: 7bb6c3cc8d74
9769ce5 to
b04d01d
Compare
Entire-Checkpoint: 9bea7df4af2a
Entire-Checkpoint: 9dd6ebc2417a
# Conflicts: # cmd/entire/cli/versioncheck/autoupdate.go
toothbrush
approved these changes
Apr 30, 2026
Contributor
toothbrush
left a comment
There was a problem hiding this comment.
Man, that renamed package really pollutes the diff!
Contributor
Author
I know, it looks way more than what it really is.. Thanks for the tick! |
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.
https://entire.io/gh/entireio/cli/trails/237
Summary
Migrate the entire Charm TUI stack to v2: glamour, bubbletea, lipgloss, huh, and bubbles. Also use OSC 8 terminal hyperlink support for dispatch repo headings.
What Changed
charm.land/glamour/v2,charm.land/bubbletea/v2,charm.land/lipgloss/v2,charm.land/huh/v2, andcharm.land/bubbles/v2.activity,dispatch,search) to the v2 declarativetea.ViewAPI:View()returnstea.View, alt-screen/cursor are set on the view,KeyMsgbecomesKeyPressMsg.textinput/viewportcallers to the new getter/setter API (SetWidth,SetHeight,Styles()/SetStyles(), virtual cursor opt-in).huh.ThemeDraculainhuh.ThemeFuncto satisfy the newhuh.Themeinterface..golangci.yamland removed redundant per-line suppressions.Test plan
mise run test(unit + integration)mise run test:e2e:canary(Vogon E2E)mise run lintmise run check