Skip to content

refactor(faststore): recommend faststore cms-sync for CMS schema sync - #90

Open
renatamottam wants to merge 1 commit into
mainfrom
feat/faststore-storefront-cms-updates
Open

refactor(faststore): recommend faststore cms-sync for CMS schema sync#90
renatamottam wants to merge 1 commit into
mainfrom
feat/faststore-storefront-cms-updates

Conversation

@renatamottam

Copy link
Copy Markdown

Description

Update the faststore-storefront skill to recommend the consolidated faststore cms-sync command as the primary way to sync the CMS schema, instead of manually running vtex content generate-schema + vtex content upload-schema. The manual pair remains documented as a fallback.

Why: faststore cms-sync (in @faststore/cli, verified on v4.4.0) is a wrapper that auto-detects cms/faststore/components and cms/faststore/pages, generates cms/faststore/schema.json, and runs generate-schema + upload-schema for you. The official docs recommend this consolidated flow. The skill previously prohibited faststore cms-sync, which is outdated.

Changes

  • skill.md: new "CMS schema — recommended sync" section; workflow steps, canonical commands, review checklist, and reference table updated. Store ID at the upload prompt is now derived from contentSource.project (removed the hardcoded send "faststore\r").
  • references/cms-schema-and-section-registration.md: Critical Rules, Phase 4, end-to-end workflow and non-interactive upload realigned; added a note distinguishing the login account (api.storeId) from the store ID prompt (contentSource.project).
  • references/project-structure-routes-and-config.md: CMS schema note updated for consistency.
  • scripts/cms-sync.sh: now calls faststore cms-sync (manual fallback documented in comments).
  • Regenerated exports/, rules/, and skills/ mirrors.

Caveats kept in the skill

  • Requires an up-to-date @vtex/cli-plugin-content (old versions fail with "Failed to fetch the base schema from the registry. Not Found"; fix: vtex plugins install @vtex/cli-plugin-content).
  • The upload step is interactive: at the store ID prompt, enter contentSource.project from discovery.config.js (NOT the hardcoded faststore); the published id is {account}.{project}.
  • Content-type definitions belong in cms/faststore/pages/.

Scope

Covers Content Platform (CP) projects (output cms/faststore/schema.json, detecting components + pages). Only the legacy yarn cms-sync / npm run cms-sync project scripts remain discouraged.


Contribution Checklist

  • Source files only: Edited skill files in tracks/faststore/skills/faststore-storefront/
  • Correct file name: Source is skill.md (lowercase)
  • Frontmatter complete: unchanged; name, description, metadata.track, metadata.tags present
  • Validation passed: bun run validate — all hard checks pass (pre-existing soft-check warnings on this skill are unchanged)
  • Exports regenerated: bun run export run; exports/, rules/, skills/ committed
  • Skill name format: unchanged (faststore-storefront)
  • Track directory correct: faststore

Public Documentation Sync

  • Public docs update required — needs verification

This is a skill-body change (updates the recommended command/workflow), so catalog-level pages (e.g. the VTEX Skills guide, skill counts, install snippets) are not affected. However, the underlying behavior it documents may be described on developer-portal guides. The vtex-docs MCP server was not available in the authoring environment, so the pages below could not be diffed automatically — please verify they already recommend the consolidated faststore cms-sync (and not only the manual vtex content pair):

Also search developers.vtex.com / help.vtex.com for faststore cms-sync and vtex content upload-schema. If any guide recommends only the manual pair, open a follow-up in vtex/dev-portal-content.

Update the faststore-storefront skill to recommend the consolidated
`faststore cms-sync` command as the primary way to sync the CMS schema,
instead of manually running `vtex content generate-schema` +
`vtex content upload-schema`. The manual pair remains documented as a
fallback.

`faststore cms-sync` (in @faststore/cli) auto-detects
cms/faststore/components and cms/faststore/pages, generates
cms/faststore/schema.json, and runs generate-schema + upload-schema for
you. The skill previously prohibited it, which is outdated.

Changes:
- skill.md: new "CMS schema - recommended sync" section; workflow,
  canonical commands, checklist and reference table updated.
- references/cms-schema-and-section-registration.md: Critical Rules,
  Phase 4, end-to-end workflow and non-interactive upload realigned;
  clarified account (api.storeId) vs store ID prompt (contentSource.project).
- references/project-structure-routes-and-config.md: CMS schema note updated.
- scripts/cms-sync.sh: now calls `faststore cms-sync` (manual fallback in comments).
- Regenerated exports/, rules/, skills/ mirrors.

Caveats kept in the skill:
- Requires an up-to-date @vtex/cli-plugin-content.
- Upload step is interactive: at the store ID prompt enter contentSource.project
  from discovery.config.js (NOT hardcoded "faststore"); published id is {account}.{project}.
- Content-type definitions belong in cms/faststore/pages/.

Scope: covers Content Platform (CP) projects.
@vtex-pr-sentinel

vtex-pr-sentinel Bot commented Sep 4, 2026

Copy link
Copy Markdown

🛡️ SDD Check — action required

I couldn't detect an SDD in this PR. Please check one option below (requires write access to the repo):

  • SDD lives in another PR — paste the SDD PR URL here:
  • This PR doesn't need an SDD
  • SDD applies, but I'm not adopting it in this PR

@github-actions

github-actions Bot commented Sep 4, 2026

Copy link
Copy Markdown
Contributor

Validation passed — all checks OK

Full validation output
$ bun run scripts/validate.ts --ci
Validating 45 skill files (9 hard, 4 soft checks)...

✅ tracks/headless/skills/headless-caching-strategy/skill.md — 13/13 checks passed
✅ tracks/headless/skills/headless-intelligent-search/skill.md — 13/13 checks passed
✅ tracks/headless/skills/headless-bff-architecture/skill.md — 13/13 checks passed
✅ tracks/headless/skills/headless-checkout-proxy/skill.md — 13/13 checks passed
✅ tracks/payment/skills/payment-provider-protocol/skill.md — 13/13 checks passed
✅ tracks/payment/skills/payment-pci-security/skill.md — 13/13 checks passed
✅ tracks/payment/skills/payment-idempotency/skill.md — 13/13 checks passed
✅ tracks/payment/skills/payment-provider-framework/skill.md — 13/13 checks passed
✅ tracks/payment/skills/payment-async-flow/skill.md — 13/13 checks passed
✅ tracks/architecture/skills/architecture-well-architected-commerce/skill.md — 13/13 checks passed
✅ tracks/sales-app/skills/sales-app-extensibility/skill.md — 13/13 checks passed
✅ tracks/masterdata/skills/masterdata-storage-strategy/skill.md — 13/13 checks passed
✅ tracks/vtex-io/skills/vtex-io-auth-tokens-and-context/skill.md — 13/13 checks passed
✅ tracks/vtex-io/skills/vtex-io-graphql-api/skill.md — 13/13 checks passed
✅ tracks/vtex-io/skills/vtex-io-security-boundaries/skill.md — 13/13 checks passed
✅ tracks/vtex-io/skills/vtex-io-app-settings/skill.md — 13/13 checks passed
✅ tracks/vtex-io/skills/vtex-io-auth-and-policies/skill.md — 13/13 checks passed
✅ tracks/vtex-io/skills/vtex-io-rootpath/skill.md — 13/13 checks passed
✅ tracks/vtex-io/skills/vtex-io-application-performance/skill.md — 13/13 checks passed
✅ tracks/vtex-io/skills/vtex-io-storefront-theme-app/skill.md — 13/13 checks passed
✅ tracks/vtex-io/skills/vtex-io-masterdata-strategy/skill.md — 13/13 checks passed
✅ tracks/vtex-io/skills/vtex-io-client-integration/skill.md — 13/13 checks passed
✅ tracks/vtex-io/skills/vtex-io-http-routes/skill.md — 13/13 checks passed
✅ tracks/vtex-io/skills/vtex-io-render-runtime-and-blocks/skill.md — 13/13 checks passed
✅ tracks/vtex-io/skills/vtex-io-data-access-patterns/skill.md — 13/13 checks passed
✅ tracks/vtex-io/skills/vtex-io-admin-react/skill.md — 13/13 checks passed
✅ tracks/vtex-io/skills/vtex-io-service-configuration-apps/skill.md — 13/13 checks passed
✅ tracks/vtex-io/skills/vtex-io-storefront-theme-versioning/skill.md — 13/13 checks passed
✅ tracks/vtex-io/skills/vtex-io-service-apps/skill.md — 13/13 checks passed
✅ tracks/vtex-io/skills/vtex-io-service-paths-and-cdn/skill.md — 13/13 checks passed
✅ tracks/vtex-io/skills/vtex-io-app-contract/skill.md — 13/13 checks passed
✅ tracks/vtex-io/skills/vtex-io-events-and-workers/skill.md — 13/13 checks passed
✅ tracks/vtex-io/skills/vtex-io-react-apps/skill.md — 13/13 checks passed
✅ tracks/vtex-io/skills/vtex-io-session-apps/skill.md — 13/13 checks passed
✅ tracks/vtex-io/skills/vtex-io-observability-and-ops/skill.md — 13/13 checks passed
✅ tracks/vtex-io/skills/vtex-io-service-runtime/skill.md — 13/13 checks passed
✅ tracks/vtex-io/skills/vtex-io-rbac/skill.md — 13/13 checks passed
✅ tracks/vtex-io/skills/vtex-io-messages-and-i18n/skill.md — 13/13 checks passed
✅ tracks/vtex-io/skills/vtex-io-storefront-react/skill.md — 13/13 checks passed
✅ tracks/vtex-io/skills/vtex-io-masterdata/skill.md — 13/13 checks passed
⚠️  tracks/faststore/skills/faststore-storefront/skill.md — 10/13 checks passed (3 warnings)
   WARN: [required-sections] — Missing required H2 section: "## When this skill applies"
::warning file=tracks/faststore/skills/faststore-storefront/skill.md,title=required-sections::Missing required H2 section: "## When this skill applies"
   WARN: [required-sections] — Missing required H2 section: "## Decision rules"
::warning file=tracks/faststore/skills/faststore-storefront/skill.md,title=required-sections::Missing required H2 section: "## Decision rules"
   WARN: [required-sections] — Missing required H2 section: "## Hard constraints"
::warning file=tracks/faststore/skills/faststore-storefront/skill.md,title=required-sections::Missing required H2 section: "## Hard constraints"
   WARN: [required-sections] — Missing required H2 section: "## Preferred pattern"
::warning file=tracks/faststore/skills/faststore-storefront/skill.md,title=required-sections::Missing required H2 section: "## Preferred pattern"
   WARN: [required-sections] — Missing required H2 section: "## Common failure modes"
::warning file=tracks/faststore/skills/faststore-storefront/skill.md,title=required-sections::Missing required H2 section: "## Common failure modes"
   WARN: [required-sections] — Missing required H2 section: "## Review checklist"
::warning file=tracks/faststore/skills/faststore-storefront/skill.md,title=required-sections::Missing required H2 section: "## Review checklist"
   WARN: [detection-patterns] — No "Detection" or "**Detection**" pattern found in content
::warning file=tracks/faststore/skills/faststore-storefront/skill.md,title=detection-patterns::No "Detection" or "**Detection**" pattern found in content
   WARN: [paired-examples] — Missing correct example marker (✅ or **Correct**)
::warning file=tracks/faststore/skills/faststore-storefront/skill.md,title=paired-examples::Missing correct example marker (✅ or **Correct**)
   WARN: [paired-examples] — Missing incorrect example marker (❌ or **Wrong**)
::warning file=tracks/faststore/skills/faststore-storefront/skill.md,title=paired-examples::Missing incorrect example marker (❌ or **Wrong**)
✅ tracks/marketplace/skills/marketplace-fulfillment/skill.md — 13/13 checks passed
✅ tracks/marketplace/skills/marketplace-rate-limiting/skill.md — 13/13 checks passed
✅ tracks/marketplace/skills/marketplace-order-hook/skill.md — 13/13 checks passed
✅ tracks/marketplace/skills/marketplace-catalog-sync/skill.md — 13/13 checks passed

Summary: 44 passed, 1 warned (45 total)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant