Skip to content

docs(factories): apply GitHub page review follow-ups from #526 - #562

Merged
hongyi-chen merged 6 commits into
hyc/factory-launchfrom
docs/factories-github-foreman-name-bridge
Aug 18, 2026
Merged

docs(factories): apply GitHub page review follow-ups from #526#562
hongyi-chen merged 6 commits into
hyc/factory-launchfrom
docs/factories-github-foreman-name-bridge

Conversation

@hongyi-chen

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

Copy link
Copy Markdown
Collaborator

Follow-ups to the GitHub integration page that couldn't land in #526, which merged first.

1. Maggie's review on #526

Both comments arrived after #526 merged, so they're applied here.

The handle should be @warp-factory. Changed in both spots. This matches warp-server's factoryGitHubHandleDefault, where FactoryGitHubHandle() is documented as "permanently distinct from GitHubAgentHandle(): callers pick whichever applies, never fall back between them", and githubSeedAutomations materializes it into the seeded mention and assignment filters.

⚠️ Sequencing. warp-server#15306 carries that rename and is still an open draft with merge conflicts, gated behind a factory_github_handle flag. Until it lands, this page names a handle that won't answer in production. That's fine while #508 is unmerged and the factories docs aren't public, but #15306 needs to land before #508 reaches main. Worth someone owning that ordering.

Default automations are populated on factory creation, so steps 3–7 weren't required. Correct, and the old shape actively misled: a seven-step procedure where five steps build an automation by hand implied the factory sits idle until you configure a trigger, when it's already listening. Connecting is now the two steps it actually takes, followed by what the defaults do and how to verify. The custom-automation walkthrough moved to its own Add a custom automation section, which is Maggie's suggested alternative and keeps it available for the cases the defaults don't cover — a failed CI run, a review request.

2. The original Foreman name bridge

#560's alignment pass linked the control room's Foreman name field to the definition's alias key on control-room.mdx and quickstart.mdx, but skipped this page because it was still unmerged in #526. The page used factory:<alias> three times without saying where <alias> comes from, so a reader who only knows the control room label had nothing connecting the two. Bridged on first use, matching the sibling pages' link convention.

Verification

  • npm run build exits 0, with only the pre-existing /404 route-priority warning
  • Confirmed in the built HTML that connect-github-to-a-factory, add-a-custom-automation, and mention-the-factory all emit anchor IDs, and that factory-as-code/index.html emits id="alias" so the bridge link resolves
  • 6 @warp-factory occurrences render, 0 oz-agent remain on the page
  • style_lint --changed reports 0 errors; remaining warnings are bolded UI labels, which the style guide requires
  • No inbound links target the old section anchors, so the split breaks nothing

…the GitHub page

The Foreman name alignment pass in #560 updated control-room.mdx and
quickstart.mdx to link the control room's **Foreman name** field to the
definition's `alias` key, but it skipped the GitHub integration page
because that page was still in the open PR for #526.

The page uses `factory:<alias>` three times without ever saying where
<alias> comes from, so a reader who only knows the control room label has
no way to work out what their label is actually called. Bridge it on
first use, matching the link convention the sibling pages now use.

Co-Authored-By: Warp <agent@warp.dev>
@warp-agent-staging

Copy link
Copy Markdown
Contributor

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

@warp-local-for-testing-only

Copy link
Copy Markdown

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

@warp-factories

Copy link
Copy Markdown
Contributor

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

@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:04am

Request Review

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-agent-staging

Copy link
Copy Markdown
Contributor

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

@warp-local-for-testing-only

Copy link
Copy Markdown

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

@hongyi-chen
hongyi-chen marked this pull request as ready for review August 18, 2026 01:06
@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

@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 clarifies the first factory:<alias> reference on the GitHub integration page by linking <alias> to the factory Foreman name field. The change is limited to one documentation sentence and aligns the page with the terminology bridge described in the PR context.

Concerns

No blocking or inline concerns found. No approved spec context was available, and the security pass found no issues in this documentation-only change.

Verdict

Found: 0 critical, 0 important, 0 suggestions

Approve

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

Powered by Oz

hongyi-chen and others added 2 commits August 18, 2026 01:51
Two review comments on #526, which merged before they could be applied.

Handle: the page said the shared account is @oz-agent. Maggie confirmed
it will be @warp-factory. That matches warp-server's
factoryGitHubHandleDefault, where FactoryGitHubHandle() is
"permanently distinct from GitHubAgentHandle(): callers pick whichever
applies, never fall back between them", and githubSeedAutomations
materializes it into the seeded mention and assignment filters.

Automations: the connect procedure ran to seven steps, of which the last
five built an automation by hand. Default GitHub automations are seeded
at factory creation, so that work isn't required to connect GitHub, and
presenting it as part of setup implied the factory does nothing until
you configure a trigger. Connecting is now the two steps it actually
takes, followed by what the defaults already do and how to verify, with
the custom-automation walkthrough moved to its own section for the cases
the defaults don't cover.

Sequencing: warp-server#15306 carries the handle rename and is still an
open draft, so this page leads the server until it lands.

Co-Authored-By: Warp <agent@warp.dev>
@hongyi-chen hongyi-chen changed the title docs(factories): bridge factory:<alias> to the Foreman name label on the GitHub page docs(factories): apply GitHub page review follow-ups from #526 Aug 18, 2026
…ctories-github-foreman-name-bridge

# Conflicts:
#	src/content/docs/factories/integrations/github.mdx
@hongyi-chen
hongyi-chen merged commit 883027f into hyc/factory-launch Aug 18, 2026
3 of 4 checks passed
@hongyi-chen
hongyi-chen deleted the docs/factories-github-foreman-name-bridge branch August 18, 2026 02:01
hongyi-chen added a commit that referenced this pull request Aug 18, 2026
* docs(factories): lead the GitHub page with what the reader does

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>

* docs(factories): clarity sweep over the launch pages

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>

* Apply suggestion from @oz-for-oss[bot]

Co-authored-by: oz-for-oss[bot] <277970191+oz-for-oss[bot]@users.noreply.github.com>

---------

Co-authored-by: Warp Agent <agent@warp.dev>
Co-authored-by: oz-for-oss[bot] <277970191+oz-for-oss[bot]@users.noreply.github.com>
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.

1 participant