Skip to content

Document pre-submit workflow and local dev (AGENTS.md + docs/LOCAL_DEV.md)#7734

Draft
dmerand wants to merge 7 commits into
donald/dx-pre-ci-affectedfrom
donald/dx-docs
Draft

Document pre-submit workflow and local dev (AGENTS.md + docs/LOCAL_DEV.md)#7734
dmerand wants to merge 7 commits into
donald/dx-pre-ci-affectedfrom
donald/dx-docs

Conversation

@dmerand

@dmerand dmerand commented Jun 5, 2026

Copy link
Copy Markdown
Contributor

About this stack

This stack came out of reviewing recent contributor and agent sessions in Shopify/cli, where the same avoidable friction kept recurring: failures found only after pushing, generated files regenerated by hand, local checks drifting from what CI actually enforces, and setup conventions relearned every time. The goal is to make the local dev loop mirror CI and keep the two single-sourced so they can't drift — then document it so people and agents stop rediscovering it.


WHY are these changes introduced?

There was no single place that told a contributor — or a coding agent — how to get a change green in CI, what to run before pushing, or the handful of local-dev conventions that everyone just sort of knew. People rediscovered the same things every time. This folds that guidance into the docs and skills we already have rather than starting a parallel set of files.

WHAT is this pull request doing?

  • AGENTS.md (root, and what .claude/CLAUDE.md now symlinks to) is a short entry point: it keeps the existing .cursor/rules references, summarizes the pre-submit commands, and links out to the real material. It points rather than restates.
  • docs/cli/local-development.md is a new, indexed page (linked from docs/README.md) covering the local service environment (SHOPIFY_SERVICE_ENV=local, SHOPIFY_CLI_NEVER_USE_PARTNERS_API=1) and the admin.shop.dev mapping in fqdn.ts.
  • docs/cli/get-started.md picks up pnpm pre-ci, pre-ci:affected, codegen, and check-ci-gates, plus a note that CI lints package sources through Nx (not root bin/).
  • The CI skills are updated so they describe the same workflow: .agents/skills/_shared/shopify-cli-ci-repo-contracts.md documents the new commands, and cli-pre-submit-ci now leans on the gate manifest and frames the fast (pre-ci:affected) vs. full (pre-ci) checks.

Docs only.

How to test your changes?

Read it through. The facts are checked against the source — the env vars in cli-kit, the admin.shop.dev mapping in packages/cli-kit/src/public/node/context/fqdn.ts, and the custom rules under packages/eslint-plugin-cli/rules/ — and every internal link resolves. Worth confirming on your side: that Claude Code follows the @.cursor/rules/* imports through the .claude/CLAUDE.md symlink.

Post-release steps

None.

Smoke-testing

Validated with a fresh-agent A/B — the same task run with and without this stack:

  • Pre-submit task (pi): a fresh agent, unprompted, read the cli-pre-submit-ci skill first and gave correct, staging-aware guidance (regenerate + commit, the right checks) in a handful of tool calls.
  • Local-dev task (Claude Code, on this branch): a fresh agent read docs/cli/local-development.md and answered in ~11s, versus ~8 minutes of source-grepping for the same question on main. It also confirmed the AGENTS.md routing (via the .claude/CLAUDE.md symlink) resolves.

@github-actions github-actions Bot added the no-changelog This PR doesn't include a changeset entry. Is an internal only change not relevant to end users. label Jun 5, 2026

dmerand commented Jun 5, 2026

Copy link
Copy Markdown
Contributor Author

Warning

This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
Learn more

This stack of pull requests is managed by Graphite. Learn more about stacking.

@dmerand dmerand changed the base branch from donald/dx-pre-ci to graphite-base/7734 June 8, 2026 13:57
@dmerand dmerand changed the base branch from graphite-base/7734 to donald/dx-pre-ci-affected June 8, 2026 13:57
@dmerand dmerand force-pushed the donald/dx-pre-ci-affected branch from 867e4d4 to ed599fc Compare June 8, 2026 14:18
@dmerand dmerand force-pushed the donald/dx-pre-ci-affected branch from ed599fc to ccde915 Compare June 8, 2026 14:45
@dmerand dmerand force-pushed the donald/dx-pre-ci-affected branch from ccde915 to 8b2b10a Compare June 8, 2026 14:58
@dmerand dmerand force-pushed the donald/dx-docs branch 2 times, most recently from 39dc774 to d08090e Compare June 8, 2026 15:14
@dmerand dmerand force-pushed the donald/dx-pre-ci-affected branch from 8b2b10a to 6f30c6e Compare June 8, 2026 15:14
dmerand added 7 commits June 8, 2026 15:30
- AGENTS.md becomes a thin router into docs/ and .agents/skills
- Move local-service-dev facts to docs/cli/local-development.md (indexed)
- Fold pre-ci/codegen/check-ci-gates into get-started + CI contracts doc
- Reconcile pnpm pre-ci (full parity) with cli-pre-submit-ci minimal-derived default
- Remove orphan docs/LOCAL_DEV.md
@dmerand dmerand force-pushed the donald/dx-pre-ci-affected branch from eb2d663 to e96df11 Compare June 8, 2026 19:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

no-changelog This PR doesn't include a changeset entry. Is an internal only change not relevant to end users.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant