pixellint

Shopify Monorail checks the CLI request envelope.

Advisory checks for the pinned Shopify CLI SDK envelope on its exact /v1/produce request endpoint. The SDK sends schema_id and object payload using POST and JSON MIME. Payload fields, registry membership, timestamp-header requirements and remote acceptance are outside this profile.

What this pack matches

Hosts
monorail-edge.shopifysvc.com
Paths
/v1/produce
Vendor docs
raw.githubusercontent.com/Shopify/cli/ebd7430f89e1ef65a2ae77d0ea4a09349bc337a2/packages/cli-kit/src/public/node/monorail.ts

Rules

Codes are stable. A finding in CI, MCP, or the playground lands on the same id.

Field Required What it checks Rule ids Source
root optional Advisory shape of the pinned Shopify CLI producer. Schema-specific payload rules and current service acceptance remain external. Presence diagnostic severity: warning. Value diagnostic severity: warning. Native JSON type: object. vendor.shopify-monorail.body.root.invalid docs
schema_id recommended The pinned producer emits a schema_id field. Native schema-ID types and registry acceptance remain external; numeric keys and NaN-to-null serialization are valid source boundaries. Presence diagnostic severity: warning. Value diagnostic severity: warning. vendor.shopify-monorail.body.schema_id.missing docs
payload recommended Advisory shape of the pinned Shopify CLI producer. Schema-specific payload rules and current service acceptance remain external. Presence diagnostic severity: warning. Value diagnostic severity: warning. Native JSON type: object. vendor.shopify-monorail.body.payload.missing
vendor.shopify-monorail.body.payload.invalid
docs
method required Advisory shape of the pinned Shopify CLI producer. Schema-specific payload rules and current service acceptance remain external. Complete HTTP capture contract. Presence diagnostic severity: warning. Value diagnostic severity: warning. Native JSON type: string. vendor.shopify-monorail.http.method.missing
vendor.shopify-monorail.http.method.empty
vendor.shopify-monorail.http.method.invalid
docs
content_type recommended Advisory shape of the pinned Shopify CLI producer. Schema-specific payload rules and current service acceptance remain external. Complete HTTP capture contract. Presence diagnostic severity: warning. Value diagnostic severity: warning. Native JSON type: string. vendor.shopify-monorail.http.content_type.missing
vendor.shopify-monorail.http.content_type.empty
vendor.shopify-monorail.http.content_type.invalid
docs
body recommended Advisory shape of the pinned Shopify CLI producer. Schema-specific payload rules and current service acceptance remain external. Complete HTTP capture contract. Presence diagnostic severity: warning. Value diagnostic severity: warning. Native JSON type: object. vendor.shopify-monorail.http.body.missing
vendor.shopify-monorail.http.body.invalid
docs

Validate a payload

pixellint validate request @request.json --rulepack vendor/shopify-monorail

Try this failing payload in the playground. An example with a validation finding.

{"url": "https://monorail-edge.shopifysvc.com/v1/produce", "method": "POST", "headers": [{"name": "Content-Type", "value": "application/json"}]}

cargo install pixellint · npm install pixellint