Skip to content

feat(ui): reframe Sharing tab to external-client sharing via channels#1347

Open
dolho wants to merge 1 commit into
devfrom
feature/18-reframe-sharing-external-clients
Open

feat(ui): reframe Sharing tab to external-client sharing via channels#1347
dolho wants to merge 1 commit into
devfrom
feature/18-reframe-sharing-external-clients

Conversation

@dolho

@dolho dolho commented Jun 25, 2026

Copy link
Copy Markdown
Contributor

Implements trinity-enterprise#18 (Access/Sharing redesign epic, trinity-enterprise#16). Frontend-only; no API changes.

The Access tab (#17) already owns Trinity operators — this scopes the Sharing tab to the operator → external-client surface.

Changes

  • Google-Docs-style framing — "Share this agent" header; operator language removed (operators are managed on the Access tab).
  • Single Restricted ↔ Open control — replaces the two policy checkboxes with one segmented control over require_email/open_access:
    • Restrictedrequire_email:true, open_access:false (approval-gated)
    • Openrequire_email:true, open_access:true (anyone verified)
    • Identity proof stays on for external sharing; a legacy require_email:false agent is shown by its open_access flag and upgraded the next time a mode is picked (documented inline).
  • Pending requests kept, reframed as external clients awaiting approval.
  • Channels as compact summary rows — new reusable ChannelDisclosure.vue (collapsed by default). Detailed config stays reachable inside the expanded row as a non-regressing interim seam; MCP Execution Query Tools (MCP-007) #19 ("move channel config into dialogs") swaps the body for a modal. No channel functionality removed.
  • Distribution nudge — outbound file sharing + public links moved into a separate "Distribution" section (distribution, not client access), per the issue's technical note.

Acceptance criteria

  • Sharing tab scoped to external clients + channels only (operator allow-list removed — lives on Access tab)
  • External access policy as a single Restricted ↔ Open control
  • Pending access requests surfaced here
  • Channels as compact summary rows (detailed config deferred to the dialogs issue MCP Execution Query Tools (MCP-007) #19)
  • Google-Docs-style "share this agent" framing

Verification

  • Both SFCs compile via vue/compiler-sfc (script setup + template).
  • npm run check:tokens passes.
  • Note: full vite build couldn't run in my sandbox (unrelated stale-node_modules mermaid dep gap in AgentWorkspace.vue, not touched here) — CI installs deps fresh.

Notes

  • SharingPanel prop/emit contract (agent-name, shares, @agent-updated) unchanged.
  • Channel summary rows use emoji glyphs as a dependency-free placeholder; MCP Execution Query Tools (MCP-007) #19 can swap for brand icons.

🤖 Generated with Claude Code

Part of the Access/Sharing redesign (Epic trinity-enterprise#16). The Access
tab (#17) already owns Trinity operators; this scopes the Sharing tab to the
operator → external-client surface.

- Google-Docs-style "Share this agent" framing; operator language removed
  (operators live on the Access tab).
- External access policy collapsed into one **Restricted ↔ Open** segmented
  control over require_email/open_access (Restricted = approval-gated, Open =
  anyone verified; identity proof always on for external sharing).
- Pending requests kept, reframed as external clients awaiting approval.
- Channels rendered as compact collapsible summary rows (new
  ChannelDisclosure.vue). Detailed config stays reachable inside the expanded
  row as a non-regressing interim seam — #19 replaces the body with a modal
  dialog. No channel functionality removed.
- Outbound file sharing + public links nudged into a separate "Distribution"
  section (distribution, not client access).

Frontend-only; no API changes. SharingPanel prop/emit contract unchanged.
Verified: both SFCs compile (vue/compiler-sfc), design-token check passes.

Related to Abilityai/trinity-enterprise#18

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@dolho dolho requested a review from vybe June 25, 2026 09:25
@github-actions

Copy link
Copy Markdown

⚠️ Nightly unit-suite check skipped — merge conflict against dev.

Resolve by running git merge dev locally and pushing the result. The next nightly run will re-test once the conflict is gone.

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