{ "version": "1.0.0", "minCliVersion": "1.8.0", "files": { "safe": [ "src/components/ui/", "src/components/seo/", "src/components/layout/", "src/layouts/", "src/lib/", "src/styles/tokens/", "src/styles/themes/", "src/styles/global.css", "src/content.config.ts", "tsconfig.json", "eslint.config.js", ".prettierrc", ".prettierignore", ".gitignore", "vercel.json", "netlify.toml", "wrangler.toml", "src/config/nav.config.ts" ], "protected": [ "astro.config.mjs", "src/config/site.config.ts", "src/config/consent.config.ts", "src/pages/", "src/content/", "src/assets/", "src/components/landing/", "src/components/blog/", "src/components/patterns/", ".env", ".env.example" ] }, "dependencies": { "update": { "astro": "6.0.0", "@astrojs/mdx": "5.0.0", "@astrojs/react": "5.0.0", "@astrojs/check": "0.9.7", "vitest": "^3.2.0" }, "remove": ["zod", "astro-seo"], "add": { "class-variance-authority": "^0.7.1" } }, "migrations": [ { "title": "Update zod imports", "description": "Replace `import { z } from 'zod'` with `import { z } from 'astro/zod'` in all files.", "pattern": "import.*from ['\"]zod['\"]", "searchPaths": ["src/"], "toVersion": "0.2.0-beta" }, { "title": "Update Zod 4 API calls", "description": "Replace `z.string().email()` with `z.email()` and `.errors` with `.issues` on ZodError.", "pattern": "z\\.string\\(\\)\\.email\\(\\)", "toVersion": "0.2.0-beta" }, { "title": "Remove experimental.contentIntellisense", "description": "Delete the `experimental: { contentIntellisense: true }` block from astro.config.mjs.", "toVersion": "0.2.0-beta" }, { "title": "Configure astro:env", "description": "Add env schema to astro.config.mjs and update import.meta.env references to use astro:env imports.", "toVersion": "0.3.0-beta" }, { "title": "Remove colorScheme prop from Button", "description": "The `colorScheme` prop has been removed from Button. Wrap the Button in a `
` instead.", "pattern": "colorScheme\\s*[=:]", "toVersion": "0.3.0-beta" }, { "title": "Remove variant=\"invert\" from Input", "description": "The `variant=\"invert\"` prop has been removed from Input. Wrap the Input in a `
` instead.", "pattern": "variant\\s*=\\s*['\"]invert['\"]", "toVersion": "0.3.0-beta" }, { "title": "Rename selectSize to size on Select", "description": "The `selectSize` prop on Select has been renamed to `size`. Update: `selectSize=\"sm\"` → `size=\"sm\"`.", "pattern": "selectSize\\s*[=:]", "toVersion": "0.3.0-beta" }, { "title": "Rename textareaSize to size on Textarea", "description": "The `textareaSize` prop on Textarea has been renamed to `size`. Update: `textareaSize=\"sm\"` → `size=\"sm\"`.", "pattern": "textareaSize\\s*[=:]", "toVersion": "0.3.0-beta" }, { "title": "Migrate routes.ts to nav.config.ts", "description": "Replace `src/config/routes.ts` with `src/config/nav.config.ts`. Delete routes.ts and update imports.", "pattern": "config/routes", "searchPaths": ["src/"], "toVersion": "0.4.0-beta" }, { "title": "Verify image rendering after Astro 6 beta.20 upgrade", "description": "Astro 6 changed image defaults: cropping is now enabled by default and images are never upscaled. Visually verify hero images, blog post images, and OG images render correctly. If images appear cropped unexpectedly, add `fit: 'contain'` to your Image components.", "fromVersion": "0.4.0-beta", "toVersion": "0.5.0-beta" }, { "title": "Check heading anchor links in MDX content", "description": "Astro 6 changed the heading ID generation algorithm. If you have internal links to heading anchors (e.g., `#my-heading`), verify they still resolve correctly after the upgrade.", "fromVersion": "0.4.0-beta", "toVersion": "0.5.0-beta" }, { "title": "Review script and style ordering", "description": "Astro 6 now renders `