Launch GraphOS Studio

Implement approved proposals

Use Rover and schema checks to implement only approved changes

This feature is only available with a

You can test it out by signing up for a free
Enterprise trial

This article describes actions in the Proposal implementation and Publication stages of the


Proposal implementation
Fetch proposal and
implement locally
Run checks on
local changes
schema checks

Proposal publication
Schema checks
Publish schema
to GraphOS
GraphOS matches
changes to proposals

Once a is Approved, its changes need to be implemented. For those implementing the changes,

into their IDE is a great starting point. The approved schema changes serve as a guide for and any other supporting code that needs to be implemented.

Once the changes are implemented, you can use to ensure your organization only


Pull proposed schemas with Rover


rover subgraph fetch command
can pull from and proposals. To pull a subgraph schema from a proposal, use the proposal's ID instead of a variant name:

rover subgraph fetch my-graph@p-101 --name subgraph

A proposal's ID is always prefixed with p- and followed by a number. You can find the proposal ID in the proposal's URL in

. For example, a proposal with the following URL has an ID of p-101.


You can't push schema changes to proposals with the rover subgraph publish command.

Validate changes with checks


to help you identify breaking changes. You
run checks on local changes
before publishing them.

Since schema checks

in a proposal, if your last revision's checks pass, any changes you implement locally from a proposal should pass too. Regardless, it's best to run checks before publishing changes to make sure errors haven't crept in.

Ensure changes match an approved proposal

You can

that run in GraphOS to include a Proposals task. Proposal checks verify that the changes a check is running on have matching and approved .

Proposal check settings in GraphOS Studio

Configuring the Proposals task's severity to Error ensures that only changes approved through the proposal process can be published. By setting the severity to Warning you can publish changes that haven't been approved and receive warnings about them.


The Proposals task also checks descriptions in the . For example, the Proposals task fails if a matching approved proposal includes a description with a period and the change the check is running on doesn't.

When a check with the Proposals task runs, you can see which changes match a proposal by clicking the Proposals task on the Checks page:

Schema proposals check task in Studio
  • Changes with matching approved proposals show checkmark icons.
  • Changes without matching approved proposals show warning or error icons depending on the
    configured severity

Clicking the icons reveals a list of matching proposals in the right panel. Click Ignore to allow the Proposals task to succeed without matching approved proposals for all changes.

Matching changes to proposals

Incoming changes and approved proposals don't need to match one-to-one. For example, suppose you have an approved proposal with changes in multiple . You can check each subgraph's changes separately. Each subgraph check still passes even though the change doesn't encompass all the approved proposal's changes.

Similarly, a single proposal can contain a large change in one that you want to divide into multiple checks. Those changes can match across multiple checks and each check passes.

Publish changes to GraphOS

Once you've implemented the approved schema changes, including supporting code, you need to publish the subgraph schemas back to GraphOS. Publishing schema proposal changes follows the same

as publishing any other changes.

When a published to a proposal's contains changes that are in an Approved, Open for Feedback, or Draft proposal, the corresponding

appears in the proposal's activity log.

A matching launch appears on a schema proposal's activity log

When an Approved or Open for feedback proposal's changes have been fully implemented—

—the proposal's status changes to Implemented.


  • A proposal with Draft status can't become Implemented, even when all its changes are published. Once such a proposal's status is changed to Open for feedback, it automatically switches to Implemented.
  • Implemented proposals can't receive further revisions, nor their status be changed.
Review proposals
Publish schemas
Edit on GitHubEditForumsDiscord

© 2024 Apollo Graph Inc.

Privacy Policy