Skip to content

Copy and naming pass: providers, add flows, API keys, policies#1267

Merged
RhysSullivan merged 1 commit into
mainfrom
ux/copy-and-naming-pass
Jul 2, 2026
Merged

Copy and naming pass: providers, add flows, API keys, policies#1267
RhysSullivan merged 1 commit into
mainfrom
ux/copy-and-naming-pass

Conversation

@RhysSullivan

Copy link
Copy Markdown
Owner

Several copy problems surfaced in a first-run walkthrough. The Providers page rendered the built-in store as encrypted encrypted provider because the label map was keyed default while the runtime provider key is encrypted. Add flows disagreed on the noun (Add MCP Source, Add GraphQL Source, Add OpenAPI Integration). API keys copy explained one acronym with another (PATs). The policies description led with matching mechanics before saying what policies are for.

The built-in provider now renders as Encrypted store with a default badge and a plain-language description; add flows all say Add ... integration; PATs is now personal access tokens; the policies header leads with what the user decides (run automatically, ask for approval, block) before the precedence rule.

Verified in the browser on each page. Typecheck is green.

Stacked on #1266.

@greptile-apps

greptile-apps Bot commented Jul 2, 2026

Copy link
Copy Markdown

Greptile Summary

This is a copy and naming consistency pass across providers, add flows, API keys, and policies pages. All changes are text-only; no logic, data, or component structure was modified.

  • Providers (secrets.tsx): The built-in provider key \"encrypted\" now matches its runtime value (was \"default\"), a human-readable fallback title-caser was added for unknown keys, and each entry gains a description and a contextual badge label.
  • Add flows: Four plugin add-flow headings and button labels are unified to Add <X> integration (was a mix of "Source", "Integration", and bare brand names).
  • API keys / Policies: "PATs" expanded to "personal access tokens"; the policies description now leads with the user decision (run / ask / block) before the precedence rule.

Confidence Score: 5/5

All changes are UI copy only — no logic, API calls, or data mutations were modified, so there is no runtime risk.

Every diff line is a string literal or label map entry. The one structural change in secrets.tsx (adding per-entry descriptions and a fallback title-caser) is straightforward and well-bounded.

No files require special attention.

Important Files Changed

Filename Overview
packages/react/src/pages/secrets.tsx Key map entry renamed from "default" to "encrypted" to match the runtime provider key; added fallback title-caser for unknown provider keys; per-entry descriptions and "default" badge for the encrypted provider added.
packages/react/src/pages/policies.tsx Description rewritten to lead with user-facing decisions (run automatically / ask / block) before the precedence rule; partial behavior detail ("fail at invoke") was trimmed.
packages/react/src/pages/api-keys.tsx Acronym "PATs" replaced with plain-English "personal access tokens" in the page sub-description.
packages/plugins/mcp/src/react/AddMcpSource.tsx Heading and two button labels updated from "MCP Source" → "MCP integration" for noun consistency.
packages/plugins/graphql/src/react/AddGraphqlSource.tsx Heading, hint strings, and button label updated from "GraphQL Source" → "GraphQL integration".
packages/plugins/google/src/react/AddGoogleSource.tsx Heading updated from "Add Google" → "Add Google integration".
packages/plugins/microsoft/src/react/AddMicrosoftSource.tsx Heading updated from "Add Microsoft Graph" → "Add Microsoft integration"; the "Graph" product brand is no longer surfaced in the title but remains implied by the subtitle.

Flowchart

%%{init: {'theme': 'neutral'}}%%
flowchart TD
    A[Provider key from API] --> B{key in PROVIDER_LABELS?}
    B -- Yes --> C[Use mapped label\ne.g. 'Encrypted store']
    B -- No --> D[Fallback: split on - or _\ncapitalize each word]
    C --> E{key === 'encrypted'?}
    D --> E
    E -- Yes --> F[Description: encrypted DB copy\nBadge: 'default']
    E -- No --> G[Description: external provider copy\nBadge: 'provider']
Loading
%%{init: {'theme': 'base', 'themeVariables': {"darkMode": true, "background": "#0d1117", "primaryColor": "#21262d", "primaryTextColor": "#e6edf3", "primaryBorderColor": "#8b949e", "lineColor": "#8b949e", "textColor": "#e6edf3", "edgeLabelBackground": "#161b22", "actorBkg": "#21262d", "actorBorder": "#8b949e", "actorTextColor": "#e6edf3", "actorLineColor": "#8b949e", "signalColor": "#8b949e", "signalTextColor": "#e6edf3", "noteBkgColor": "#373320", "noteBorderColor": "#d4a72c", "noteTextColor": "#f0e6c0", "labelBoxBkgColor": "#21262d", "labelBoxBorderColor": "#8b949e", "labelTextColor": "#e6edf3", "loopTextColor": "#e6edf3", "activationBkgColor": "#30363d", "activationBorderColor": "#8b949e"}}}%%
flowchart TD
    A[Provider key from API] --> B{key in PROVIDER_LABELS?}
    B -- Yes --> C[Use mapped label\ne.g. 'Encrypted store']
    B -- No --> D[Fallback: split on - or _\ncapitalize each word]
    C --> E{key === 'encrypted'?}
    D --> E
    E -- Yes --> F[Description: encrypted DB copy\nBadge: 'default']
    E -- No --> G[Description: external provider copy\nBadge: 'provider']
Loading

Reviews (4): Last reviewed commit: "Clarify provider and integration copy" | Re-trigger Greptile

<PageHeader
title="Policies"
description="Override default approval behavior for tools. The most restrictive matched action wins. Blocked tools are hidden from agent search and fail at invoke."
description="Decide which tools run automatically, which ask for approval, and which are blocked. The most restrictive matching rule wins; blocked tools are hidden from agents."

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 "fail at invoke" behavior dropped from description

The old description stated "Blocked tools are hidden from agent search and fail at invoke." The new description only says "blocked tools are hidden from agents," omitting what happens when a blocked tool is invoked directly (e.g., via API or explicit tool call). A user who sees the block is silent-to-agents might assume invocation still works through another path and be surprised by an error at runtime.

Comment thread packages/react/src/pages/secrets.tsx
@github-actions

github-actions Bot commented Jul 2, 2026

Copy link
Copy Markdown
Contributor

Cloudflare preview

Torn down — the PR is closed.

@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented Jul 2, 2026

Copy link
Copy Markdown

Deploying with  Cloudflare Workers  Cloudflare Workers

The latest updates on your project. Learn more about integrating Git with Workers.

Status Name Latest Commit Preview URL Updated (UTC)
✅ Deployment successful!
View logs
executor-marketing 97bacb8 Commit Preview URL

Branch Preview URL
Jul 02 2026, 08:23 PM

@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented Jul 2, 2026

Copy link
Copy Markdown

Deploying with  Cloudflare Workers  Cloudflare Workers

The latest updates on your project. Learn more about integrating Git with Workers.

Status Name Latest Commit Updated (UTC)
✅ Deployment successful!
View logs
executor-cloud 97bacb8 Jul 02 2026, 08:26 PM

@pkg-pr-new

pkg-pr-new Bot commented Jul 2, 2026

Copy link
Copy Markdown

Open in StackBlitz

@executor-js/cli

npm i https://pkg.pr.new/@executor-js/cli@1267

@executor-js/config

npm i https://pkg.pr.new/@executor-js/config@1267

@executor-js/execution

npm i https://pkg.pr.new/@executor-js/execution@1267

@executor-js/sdk

npm i https://pkg.pr.new/@executor-js/sdk@1267

@executor-js/codemode-core

npm i https://pkg.pr.new/@executor-js/codemode-core@1267

@executor-js/runtime-quickjs

npm i https://pkg.pr.new/@executor-js/runtime-quickjs@1267

@executor-js/plugin-file-secrets

npm i https://pkg.pr.new/@executor-js/plugin-file-secrets@1267

@executor-js/plugin-graphql

npm i https://pkg.pr.new/@executor-js/plugin-graphql@1267

@executor-js/plugin-keychain

npm i https://pkg.pr.new/@executor-js/plugin-keychain@1267

@executor-js/plugin-mcp

npm i https://pkg.pr.new/@executor-js/plugin-mcp@1267

@executor-js/plugin-onepassword

npm i https://pkg.pr.new/@executor-js/plugin-onepassword@1267

@executor-js/plugin-openapi

npm i https://pkg.pr.new/@executor-js/plugin-openapi@1267

executor

npm i https://pkg.pr.new/executor@1267

commit: 9566a11

@RhysSullivan RhysSullivan force-pushed the ux/resume-unavailable-state branch from 826e586 to e62899a Compare July 2, 2026 17:52
@RhysSullivan RhysSullivan force-pushed the ux/copy-and-naming-pass branch 2 times, most recently from ac34707 to 9566a11 Compare July 2, 2026 17:55
@RhysSullivan RhysSullivan force-pushed the ux/resume-unavailable-state branch 2 times, most recently from 45539b1 to 97559dc Compare July 2, 2026 18:20
@RhysSullivan RhysSullivan force-pushed the ux/copy-and-naming-pass branch from 9566a11 to 9c567e5 Compare July 2, 2026 18:20
@RhysSullivan RhysSullivan force-pushed the ux/resume-unavailable-state branch from 97559dc to 4d35a3c Compare July 2, 2026 18:21
@RhysSullivan RhysSullivan force-pushed the ux/copy-and-naming-pass branch 2 times, most recently from 26755fb to 51ed6e9 Compare July 2, 2026 18:21
@RhysSullivan RhysSullivan force-pushed the ux/resume-unavailable-state branch from 4d35a3c to fcc2b6e Compare July 2, 2026 18:21
@RhysSullivan RhysSullivan force-pushed the ux/copy-and-naming-pass branch from 51ed6e9 to 7828740 Compare July 2, 2026 18:21
@RhysSullivan RhysSullivan force-pushed the ux/resume-unavailable-state branch from fcc2b6e to e502c2f Compare July 2, 2026 18:21
@RhysSullivan RhysSullivan force-pushed the ux/copy-and-naming-pass branch from 7828740 to 07590a7 Compare July 2, 2026 18:22
@RhysSullivan RhysSullivan force-pushed the ux/resume-unavailable-state branch from e502c2f to 074d005 Compare July 2, 2026 18:22
@RhysSullivan RhysSullivan force-pushed the ux/copy-and-naming-pass branch from 07590a7 to 97bacb8 Compare July 2, 2026 18:22
@RhysSullivan RhysSullivan changed the base branch from ux/resume-unavailable-state to main July 2, 2026 18:22
@RhysSullivan RhysSullivan merged commit 251130e into main Jul 2, 2026
15 of 21 checks passed
@RhysSullivan RhysSullivan deleted the ux/copy-and-naming-pass branch July 2, 2026 18:23
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