Skip to content

docs(factories): clarity sweep over the launch pages - #566

Merged
hongyi-chen merged 3 commits into
hyc/factory-launchfrom
hyc/factories-github-clarity
Aug 18, 2026
Merged

docs(factories): clarity sweep over the launch pages#566
hongyi-chen merged 3 commits into
hyc/factory-launchfrom
hyc/factories-github-clarity

Conversation

@hongyi-chen

@hongyi-chen hongyi-chen commented Aug 18, 2026

Copy link
Copy Markdown
Collaborator

Two commits into hyc/factory-launch: the GitHub page fix from your review, then a clarity sweep across the rest of the section. Net −80 lines in factories/, almost all of it interface narration and mechanism a reader can't act on.

1. GitHub page: lead with what the reader does (follow-up to #562)

"Mention the factory" explained how routing is built before saying what to do with it:

A factory doesn't get its own GitHub handle. Every factory listens through the same Warp agent account, @warp-factory, and the factory's factory:<alias> label decides which factory a mention reaches, where <alias> is the factory's Foreman name:

Three things to get past before acting: an internal fact about handles, a placeholder to expand yourself, and a definition of that placeholder linking into the YAML reference. Now it's the two actions with a worked example (factory:payments), and the shared-account fact appears below, framed as why the label matters. Foreman name links to Settings, where you read it.

2. Clarity sweep across the section

Interface narration → the task. Slack's five-step connect was really two actions, and two of the steps were the wizard describing itself ("confirm that Slack shows Connected"). GitLab's eight-step connect mixed factory creation, project selection, and hand-building an automation. Linear had two near-identical connect procedures ending in "Both paths end in the same state." Jira's step 3 ran ~90 words across four actions.

Screens we don't own. Slack's app-removal flow and Atlassian's install flow were both walked through step by step. They now link to those vendors' docs, so they can't drift silently when either reskins.

One automation walkthrough, not five. The generic "open Automations → Add trigger → pick an event → Save" sequence appeared on four integration pages. automation-filters owns it; each integration page keeps only its own events and filters.

Mechanism removed — Slack's managed-apps model and manager authorization; GitLab's manager service account, credential minting, one-year provisioning token, and generated-ID naming scheme; the per-run short-lived token; compute resolution precedence; "this declares the jira integration for the factory."

Said once instead of five to nine times — "filters route work, they don't restrict access" now lives on automation-filters; "the factory hands off at the pull request" lives on how-factories-work. Everywhere else points at them.

Two fixes outside the sweep

  • /platform/harnesses/ never mentioned plan gating. Third-party harnesses need a Build plan — stated on the factory agents page and enforced in warp-server/logic/agent_entitlements.go:114 — but absent from the page that exists to explain harnesses, so a Free-plan reader found out at the error.
  • Dropped topic: factories from ten pages. Every factories page is listed in sidebar.ts, and the key only does something for pages that aren't, so it was a no-op that implied it was required.

What I deliberately didn't do

  • No general copy rewrite. I measured it: across all 17 pages only about eight sentences run past 45 words, several of them table markup. Prose density wasn't the problem, so rewriting for its own sake would be churn.
  • No sweep beyond factories/. 377 pages isn't a reviewable diff and most of it isn't part of this launch. Happy to line that up separately.
  • factory-as-code.mdx left alone apart from redundancy — it's a syntax reference, where implementation detail is the point.

Validation

npm run build clean · 0 broken internal links · 0 anchor problems in factories/ (several section headings moved, so this mattered) · factory-proper-noun, platform-determiner, hardcoded-var, and frontmatter all 0 · both lint suites pass (21 + 11 cases) · every changed page re-read top to bottom rather than reviewed as a diff, since this pass is about how they read.

Follow-up to #562. The page explained how mention routing is built
before it said what to do with it, which put the reader through the
architecture to answer "how do I hand this issue to my factory?"

- "Mention the factory" opened on an internal fact ("a factory doesn't
  get its own GitHub handle") and asked the reader to expand
  `factory:<alias>` themselves, with `<alias>` defined mid-sentence via a
  link into the definition-syntax reference. It now leads with the two
  actions and a worked example (`factory:payments`), and explains the
  shared account only where it changes behavior: the label is what picks
  which factory answers. The Foreman name now links to Settings, where
  you read it, rather than to the YAML key.
- The default automations were one dense paragraph; they are two bullets.
- Dropped mechanism the reader can't act on: "both passes are
  best-effort", "CI payloads don't carry issue or label data", and
  "managed GitHub factories".
- Replaced remaining internal vocabulary: "Warp-owned check" and
  "the registered factory directory".
- GitLab carried the same `factory:<alias>` placeholder; same fix.

Co-Authored-By: Warp <agent@warp.dev>
@cla-bot cla-bot Bot added the cla-signed label Aug 18, 2026
@vercel

vercel Bot commented Aug 18, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
docs Ready Ready Preview Aug 18, 2026 2:28am

Request Review

@oz-for-oss

oz-for-oss Bot commented Aug 18, 2026

Copy link
Copy Markdown
Contributor

@hongyi-chen

I'm starting a first review of this pull request.

You can view the conversation on Warp.

I completed the review and no human review was requested for this pull request.

Comment /oz-review on this pull request to retrigger a review (up to 3 times on the same pull request).

Powered by Oz

Copy link
Copy Markdown
Collaborator Author

This PR was generated with Warp.

Comment @warp-agent on this PR to send it follow-up work.

View run View conversation

@warp-local-for-testing-only

Copy link
Copy Markdown

Your GitHub account is not connected to Warp. Connect it here.

@warp-agent-staging

Copy link
Copy Markdown
Contributor

Your Warp account is not a member of any team with access to this repository.

@oz-for-oss oz-for-oss 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.

Overview

This PR rewrites the factories GitHub and GitLab integration docs to lead with reader actions and simplify mechanism-heavy explanations. Most changes are presentation-only, but one GitHub section now omits a condition that affects when factory-definition checks run.

Concerns

  • The factory-definition check instructions now imply that any pull request touching definition files gets the warp/factory-config check, while the troubleshooting guidance still says the pull request must target the branch the factory runs from.
  • No implementation spec context was provided, and the diff is documentation-only; the supplemental security pass found no security findings.

Verdict

Found: 0 critical, 1 important, 1 suggestions

Request changes

Comment /oz-review on this pull request to retrigger a review (up to 3 times on the same pull request).

Powered by Oz

Comment thread src/content/docs/factories/integrations/github.mdx Outdated
## Factory-definition pull request checks

If the factory's [definition is managed as code](/factories/factory-as-code/) in a GitHub repository, Warp reviews configuration changes like CI reviews code. When a pull request targets the production branch and changes files in the registered factory directory, a **warp/factory-config** check runs: it passes with a summary of the change, or fails with diagnostics on what to fix. Require the check in branch protection to block invalid definitions from merging.
If the factory's [definition is managed as code](/factories/factory-as-code/) in a GitHub repository, Warp reviews changes to it the way CI reviews code. Open a pull request that touches the definition files and a **warp/factory-config** check runs: it passes with a summary of what the change does, or fails with the specific fields to fix. Require the check in branch protection to stop an invalid definition from merging.

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.

⚠️ [IMPORTANT] This rewrite drops the branch-targeting condition from the check setup, so it now reads as if any pull request touching definition files gets warp/factory-config; keep it aligned with the troubleshooting guidance that the pull request must target the branch the factory runs from.

Suggested change
If the factory's [definition is managed as code](/factories/factory-as-code/) in a GitHub repository, Warp reviews changes to it the way CI reviews code. Open a pull request that touches the definition files and a **warp/factory-config** check runs: it passes with a summary of what the change does, or fails with the specific fields to fix. Require the check in branch protection to stop an invalid definition from merging.
If the factory's [definition is managed as code](/factories/factory-as-code/) in a GitHub repository, Warp reviews changes to it the way CI reviews code. Open a pull request against the branch the factory runs from that touches the definition files, and a **warp/factory-config** check runs: it passes with a summary of what the change does, or fails with the specific fields to fix. Require the check in branch protection to stop an invalid definition from merging.

Net -80 lines across the section, almost all of it interface narration
and mechanism a reader can't act on. The pages were written as separate
PRs, so each was reasonable alone and repetitive together.

UI narration replaced with the task:
- Slack's five-step connect was two actions (install the app, invite it
  to channels); two of the steps were the wizard describing itself.
- GitLab's eight-step connect mixed factory creation, project selection,
  and hand-building an automation.
- Linear had two near-identical connect procedures ending in "Both paths
  end in the same state."
- Jira's step 3 was ~90 words and four actions.
- Slack and Jira each walked through screens Warp doesn't own (Slack's
  app-removal flow, Atlassian's install flow); both now link out, so
  they can't drift silently.
- The generic four-step "add an automation" walkthrough appeared on four
  integration pages. automation-filters owns it now; each integration
  page keeps only its own events and filters.

Mechanism removed: Slack's managed-apps model and manager authorization,
GitLab's manager service account, credential minting, one-year
provisioning token and generated-ID naming, the per-run short-lived
token, compute resolution precedence, and "this declares the `jira`
integration for the factory."

Said once instead of five to nine times: "filters route work, they don't
restrict access" (now owned by automation-filters) and "the factory
hands off at the pull request" (owned by how-factories-work).

Also:
- /platform/harnesses/ never mentioned that third-party harnesses need a
  Build plan, so a Free-plan reader found out at the error. Verified in
  warp-server/logic/agent_entitlements.go:114.
- Dropped the `topic: factories` frontmatter key from ten pages. Every
  factories page is listed in sidebar.ts, so the key does nothing there
  and implied it was required.

Co-Authored-By: Warp <agent@warp.dev>
@hongyi-chen hongyi-chen changed the title docs(factories): lead the GitHub page with what the reader does docs(factories): clarity sweep over the launch pages Aug 18, 2026
Co-authored-by: oz-for-oss[bot] <277970191+oz-for-oss[bot]@users.noreply.github.com>
@hongyi-chen
hongyi-chen merged commit de37a61 into hyc/factory-launch Aug 18, 2026
3 of 4 checks passed
@hongyi-chen
hongyi-chen deleted the hyc/factories-github-clarity branch August 18, 2026 02:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants