Skip to content

TUI Plugin Sharing 3 - render remote plugin catalog sections#26703

Merged
canvrno-oai merged 11 commits into
mainfrom
canvrno/plugin_sharing_tui_stack_pr3_remote_catalog_ui
Jun 22, 2026
Merged

TUI Plugin Sharing 3 - render remote plugin catalog sections#26703
canvrno-oai merged 11 commits into
mainfrom
canvrno/plugin_sharing_tui_stack_pr3_remote_catalog_ui

Conversation

@canvrno-oai

@canvrno-oai canvrno-oai commented Jun 6, 2026

Copy link
Copy Markdown
Contributor

Summary

#26701 added remote plugin identity support, #26702 added remote-section fetching and state, and #28768 extracted the catalog rendering module. This PR builds the product-facing /plugins catalog on that foundation so remote records appear as OpenAI Curated, Workspace, and Shared with me sections rather than backend marketplace implementation details.

Plugin details remain read-only for sharing metadata. This PR does not add share-authoring actions or change the app-server protocol.

Changes

  • Renders OpenAI Curated, Workspace, and Shared with me sections with loading, empty, and error states.
  • Preserves section selection and stable tab ordering as remote sections transition between fallback and populated states.
  • Shows OpenAI Curated loading only when the explicit vertical fallback request was issued.
  • Centralizes remote marketplace identity matching around the existing marketplace constants.
  • Uses product labels for remote marketplaces and identifies the personal marketplace as Local by its path.
  • Shows read-only source, authentication, version, and sharing metadata in plugin detail views.
  • Applies narrow display deduplication for local and remote records sharing a remote plugin ID:
    • installed records take precedence;
    • local mapped sources are preferred for details only when their installed state matches the selected record.
  • Returns from detail and confirmation views through the current plugin cache so newly loaded remote sections are not overwritten by an older captured response.
  • Keeps admin-disabled plugins view-only and labels default-installed plugins as Available by default.

Tests

New tests:

  • plugins_popup_admin_disabled_available_plugin_has_view_only_hint
  • plugins_popup_remote_section_fallback_states_snapshot
  • plugins_popup_installed_remote_row_keeps_remote_detail_when_local_share_is_uninstalled

Updated existing plugin catalog tests and snapshots for product labels, detail metadata, personal-marketplace labeling, and stable tab ordering.

Verification:

  • cargo clippy -p codex-tui --all-targets -- -D warnings

Follow-ups

  • Local/remote duplicate normalization should eventually move into app-server. This PR intentionally keeps the compatibility behavior narrow and display-only.
  • PR5 will sanitize sensitive components before displaying Git source URLs.

@canvrno-oai canvrno-oai changed the title [codex] tui: render remote plugin catalog sections TUI Plugin sharing - render remote plugin catalog sections Jun 6, 2026
@canvrno-oai canvrno-oai force-pushed the canvrno/plugin_sharing_tui_stack_pr2_remote_section_plumbing branch from c3c2f07 to 9d73059 Compare June 6, 2026 00:44
@canvrno-oai canvrno-oai force-pushed the canvrno/plugin_sharing_tui_stack_pr3_remote_catalog_ui branch 2 times, most recently from 8798c0c to 834ca6a Compare June 8, 2026 17:49
@canvrno-oai canvrno-oai force-pushed the canvrno/plugin_sharing_tui_stack_pr2_remote_section_plumbing branch from a339783 to 4f34643 Compare June 8, 2026 18:03
@canvrno-oai canvrno-oai force-pushed the canvrno/plugin_sharing_tui_stack_pr3_remote_catalog_ui branch 2 times, most recently from ba4dd5b to 34ba4ee Compare June 8, 2026 20:22
@canvrno-oai canvrno-oai changed the title TUI Plugin sharing - render remote plugin catalog sections TUI Plugin Sharing 3 Jun 9, 2026
@canvrno-oai canvrno-oai changed the title TUI Plugin Sharing 3 TUI Plugin Sharing 3 - render remote plugin catalog sections Jun 9, 2026
@canvrno-oai canvrno-oai force-pushed the canvrno/plugin_sharing_tui_stack_pr2_remote_section_plumbing branch from b529f33 to 5d54c4e Compare June 9, 2026 23:40
@canvrno-oai canvrno-oai force-pushed the canvrno/plugin_sharing_tui_stack_pr3_remote_catalog_ui branch from 34ba4ee to 40f1ca8 Compare June 9, 2026 23:50
@canvrno-oai

Copy link
Copy Markdown
Contributor Author

@codex review

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

Copy link
Copy Markdown
Contributor

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: 40f1ca88d7

ℹ️ 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".

Comment thread codex-rs/tui/src/chatwidget/plugins.rs Outdated
Comment thread codex-rs/tui/src/chatwidget/plugins.rs Outdated
Comment thread codex-rs/tui/src/chatwidget/plugins.rs Outdated
Comment thread codex-rs/tui/src/chatwidget/plugins.rs Outdated
@canvrno-oai canvrno-oai force-pushed the canvrno/plugin_sharing_tui_stack_pr3_remote_catalog_ui branch from 40f1ca8 to f7b6f35 Compare June 10, 2026 03:56
Base automatically changed from canvrno/plugin_sharing_tui_stack_pr2_remote_section_plumbing to main June 15, 2026 17:25
@canvrno-oai

Copy link
Copy Markdown
Contributor Author

@codex review

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

Copy link
Copy Markdown
Contributor

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: 266578c676

ℹ️ 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".

Comment thread codex-rs/tui/src/chatwidget/plugins.rs Outdated
Comment thread codex-rs/tui/src/chatwidget/plugins.rs Outdated
@canvrno-oai

Copy link
Copy Markdown
Contributor Author

@codex review

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

Copy link
Copy Markdown
Contributor

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: fc5d9cb237

ℹ️ 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".

Comment thread codex-rs/tui/src/chatwidget/plugins.rs Outdated
Comment thread codex-rs/tui/src/chatwidget/plugins.rs Outdated
Comment thread codex-rs/tui/src/chatwidget/plugins.rs Outdated
Comment thread codex-rs/tui/src/chatwidget/plugins.rs Outdated
@canvrno-oai canvrno-oai force-pushed the canvrno/plugin_sharing_tui_stack_pr3_remote_catalog_ui branch from 3e591c2 to ce95121 Compare June 17, 2026 19:15
@canvrno-oai

Copy link
Copy Markdown
Contributor Author

@codex review

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

Copy link
Copy Markdown
Contributor

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: c823a78092

ℹ️ 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".

Comment thread codex-rs/tui/src/chatwidget/plugin_catalog.rs
Comment thread codex-rs/tui/src/chatwidget/plugin_catalog.rs
Comment thread codex-rs/tui/src/chatwidget/plugins.rs
@canvrno-oai canvrno-oai marked this pull request as ready for review June 18, 2026 01:06
Comment thread codex-rs/tui/src/chatwidget/plugin_catalog.rs

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

Copy link
Copy Markdown
Contributor

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: 5a5191fcb2

ℹ️ 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".

Comment thread codex-rs/tui/src/chatwidget/plugin_catalog.rs
@canvrno-oai canvrno-oai requested a review from xl-openai June 18, 2026 20:36

@xl-openai xl-openai left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Nice!!

Self::OpenAiCurated => Some("OpenAI Curated"),
Self::Workspace => Some("Workspace"),
Self::SharedWithMe => Some("Shared with me"),
Self::SharedWithMeLink => Some("Shared with me (link)"),

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Our design on Codex App is to hide Shared with me (link) unless it is installed. But I guess it is more hard to implement in CLI, could be a fast follow.

@canvrno-oai canvrno-oai merged commit f6fa259 into main Jun 22, 2026
31 checks passed
@canvrno-oai canvrno-oai deleted the canvrno/plugin_sharing_tui_stack_pr3_remote_catalog_ui branch June 22, 2026 17:30
@github-actions github-actions Bot locked and limited conversation to collaborators Jun 22, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants