Changelog
v1.7.0: all changes
Every commit in v1.7.0, by type and scope.
On this page
Part of the v1.7.0 release notes.
Every commit between v1.6.0 and v1.7.0, categorized. Items already covered in the prose sections of the release notes are repeated here as a flat reference.
๐ FeaturesLink to this section
apps/design,core,cliLink to this section
- feat(apps/design,core,cli): Systhema Design โ the generator app and its CLI twin (#96) (94f4a4af (opens in new tab))
apps/design,core,figmaLink to this section
- feat(apps/design,core,figma): palette anchors, custom text styles, undo (#142) (d75cc627 (opens in new tab))
cliLink to this section
- feat(cli): add reviewable upgrade plans and database consent (#179) (238e389d (opens in new tab))
- feat(cli): add systhema setup command for existing projects (#107) (db38a8b1 (opens in new tab))
- feat(cli): scaffold into an existing folder with --path and --force (#175) (b6ce0129 (opens in new tab))
core,figmaLink to this section
- feat(core,figma): native opacity and motion tokens from Figma (#174) (4baef552 (opens in new tab))
core,next,templatesLink to this section
- feat(core,next,templates): production CSS optimizations + name obfuscation (#101) (66f992b4 (opens in new tab))
core,react,next,payloadLink to this section
- feat(core,react,next,payload): add native multilingual support (#116) (17d019ab (opens in new tab))
- feat(core,react,next,payload): improve component/template accessibility (#105) (2a3b835e (opens in new tab))
core,react,payloadLink to this section
- feat(core,react,payload): add card-width figure breakout (#103) (c1779f34 (opens in new tab))
nextLink to this section
- feat(next): drop legacy polyfills and set the modern browser baseline (#203) (346b8c53 (opens in new tab))
payloadLink to this section
- feat(payload): add non-interactive postgres schema migration (#193) (b60d7e79 (opens in new tab))
- feat(payload): add native AI assistant module (#98) (f990785b (opens in new tab))
- feat(payload): add troubleshoot tab with revalidate-all-pages action to general settings (#108) (ceb6a226 (opens in new tab))
- feat(payload): defer captcha script loading until the form is needed (#130) (80f41fdc (opens in new tab))
- feat(payload): editor gaps from a consumer backend review (#172) (b8dbfb0c (opens in new tab))
- feat(payload): extend a named Lexical editor tier without forking it (#177) (7adb3bc0 (opens in new tab))
- feat(payload): first-party Cloudflare integration (#110) (d5acab43 (opens in new tab))
- feat(payload): form-submission columns and readable exports (#140) (7c07c890 (opens in new tab))
- feat(payload): make live preview work on locally built sites (#102) (920eeb25 (opens in new tab))
- feat(payload): export RenderForm from the client-safe next entry (#181) (8cd581a4 (opens in new tab))
- feat(payload): let editor overrides reach the tier's admin options (#184) (57f464d7 (opens in new tab))
- feat(payload): name the admin token scope systhema-editor-tokens (#186) (24712e46 (opens in new tab))
- feat(payload): per-locale publishing, block thumbnails, plugin slug (#171) (e0ee7b25 (opens in new tab))
- feat(payload): teach the AI assistant the native block vocabulary, bands and catalogues (#170) (75ce96fa (opens in new tab))
payload,cliLink to this section
- feat(payload,cli): add first-party analytics dashboard widgets (#106) (0cf07428 (opens in new tab))
- feat(payload,cli): reconcile database renames on SQLite, and catch the ones upgrade can't (#125) (0fd5bfc0 (opens in new tab))
payload,coreLink to this section
- feat(payload,core): localize every field by default, share by exception (#141) (4ff4e9ac (opens in new tab))
- feat(payload,core): use the Systhema mark for all built-in branding (#117) (b46865b0 (opens in new tab))
payload,core,cliLink to this section
- feat(payload,core,cli): wildcard redirects (#104) (81b59da6 (opens in new tab))
payload,react,nextLink to this section
- feat(payload,react,next): editor-controlled video preload and shift-free native controls (#129) (04e4d703 (opens in new tab))
react,next,payloadLink to this section
- feat(react,next,payload): footer takes a theme, not a layoutBackground (#176) (f4695f66 (opens in new tab))
generalLink to this section
- feat: posts module, self-resetting demo app, and admin/preview polish (#97) (2219a828 (opens in new tab))
โป๏ธ RefactorsLink to this section
payload,cliLink to this section
- refactor(payload,cli): move SEO global into general settings as a tab (#111) (ae23c68a (opens in new tab))
react,nextLink to this section
- refactor(react,next): share the parallax and scroll-classes listener engines (#126) (1f226f6c (opens in new tab))
โก PerformanceLink to this section
core,react,nextLink to this section
- perf(core,react,next): keep the design-token dataset and swiper out of client bundles (#124) (0fb5c5a4 (opens in new tab))
payloadLink to this section
- perf(payload): keep the country list and Posts templates out of the client bundle (#154) (9449e03b (opens in new tab))
- perf(payload): keep the design-token dataset out of client bundles (#132) (4139b415 (opens in new tab))
react,nextLink to this section
- perf(react,next): rewrite AosListener on IntersectionObserver (#122) (6e4ebfa8 (opens in new tab))
๐ Bug fixesLink to this section
apps/demoLink to this section
- fix(apps/demo): contact form, accurate admin notices, reset guard (#118) (a136f8e0 (opens in new tab))
cliLink to this section
- fix(cli): handle upgrade symlinks, scripts and skill asset lint (#183) (ae660371 (opens in new tab))
- fix(cli): keep pnpm patches, re-runs and family pins honest in
systhema upgrade(#159) (e4e65828 (opens in new tab)) - fix(cli): plan a release's migrations when upgrading off its prereleases (#121) (d816b062 (opens in new tab))
- fix(cli): preserve and repair FontAwesome picker imports (#189) (25f4d5d5 (opens in new tab))
- fix(cli): register the documented obfuscate proxy (#152) (b5367de9 (opens in new tab))
- fix(cli): stop doctor flagging a finished project as having pending migrations (#167) (75337e99 (opens in new tab))
- fix(cli): strip pinch-zoom-blocking viewport properties from existing projects (#127) (89d903dd (opens in new tab))
- fix(cli): tell a blocked schema migration apart from a missing bin script (#194) (1504cf3a (opens in new tab))
- fix(cli): verify pnpm patches still apply before
systhema upgradewrites (#161) (df139ea8 (opens in new tab))
cli,payloadLink to this section
- fix(cli,payload): guard upgrade hooks and preserve cookie opt-outs (#192) (4632ec45 (opens in new tab))
coreLink to this section
- fix(core): give .menu-sub-navigation-wrapper its declarations back (#156) (e39ffc22 (opens in new tab))
- fix(core): give the root font-family tokens a real fallback stack (#131) (45ac0792 (opens in new tab))
- fix(core): keep capital runs whole in toUrlCase (#166) (8af5312e (opens in new tab))
- fix(core): nest reduced-motion media query for Tailwind 4.3.0 dev compat (#109) (70b7320a (opens in new tab))
- fix(core): point orphaned var() references at real tokens (#136) (ed2601db (opens in new tab))
- fix(core): restore dropped @apply directives and separated font-weight names (#149) (f6f12fa0 (opens in new tab))
- fix(core): stop the generated root layout from blocking pinch-zoom (#119) (24b2dbab (opens in new tab))
- fix(core): stop the token-artifact mirror from silently serving scaffold defaults (#144) (7f8c103c (opens in new tab))
- fix(core): warn on customTokens overrides written in the token-file shape (#128) (f35cb227 (opens in new tab))
- fix(core): warn when a fluid spacing rule is uncapped above the top breakpoint (#145) (c9dd0cab (opens in new tab))
- fix(core): recover stale and unloadable token artifacts (#190) (e3916d1a (opens in new tab))
core,cliLink to this section
- fix(core,cli): make the production CSS optimization feature safe to ship (#123) (3cd35353 (opens in new tab))
core,cli,templates,apps/demo,apps/designLink to this section
- fix(core,cli,templates,apps/demo,apps/design): consume the orphaned footer band background tokens (#146) (c7a91954 (opens in new tab))
core,payloadLink to this section
- fix(core,payload): restore the Container width option on viewport-unit spacing configs (#139) (6c8402da (opens in new tab))
core,reactLink to this section
- fix(core,react): let the reduced-motion escape hatch outrank the aos hiding rule (#153) (2f930c8b (opens in new tab))
- fix(core,react): restore posts-listing scroll reveal and theme its card text (#148) (c29e1e60 (opens in new tab))
core,react,nextLink to this section
- fix(core,react,next): col-mx insets per breakpoint, token-backed footer hairline (#168) (c3afb6ac (opens in new tab))
core,react,next,payloadLink to this section
- fix(core,react,next,payload): consumer production defect batch (#165) (3b36dc33 (opens in new tab))
- fix(core,react,next,payload): resolve spacing-function token values to pixels (#138) (4a416523 (opens in new tab))
figmaLink to this section
- fix(figma): export font families with a CSS fallback stack (#135) (14bbb1be (opens in new tab))
nextLink to this section
- fix(next): restore admin host routing behind reverse proxies (#188) (95f7ab0f (opens in new tab))
- fix(next): allow server actions from the public host behind the gateway (#195) (94e78972 (opens in new tab))
payloadLink to this section
- fix(payload): hide API view on general settings global and ai usage collection (#112) (80adea22 (opens in new tab))
- fix(payload): make the legacy-localization notice reachable (#155) (7714e504 (opens in new tab))
- fix(payload): match emoji icon search against the typed glyph (#115) (1f9bc148 (opens in new tab))
- fix(payload): re-hydrate nested block editors after whole-page AI translate (#113) (3e5d531a (opens in new tab))
- fix(payload): render every built-in hero title as an h1 (#169) (258e15fb (opens in new tab))
- fix(payload): stream the published page once in client-mode live preview (#180) (6db0716d (opens in new tab))
- fix(payload): keep the fields barrel clear of core's main entry (#182) (0bec96d9 (opens in new tab))
- fix(payload): name custom blocks missing from livePreview.clientSetup (#185) (460f5b45 (opens in new tab))
- fix(payload): resolve material symbols and apple emoji in client-mode preview (#187) (ac3bbc2e (opens in new tab))
- fix(payload): render lexical regions that start with a block (#143) (c6898d8d (opens in new tab))
- fix(payload): resolve Section theme swatch colors from layout.bg (#114) (6be4ca78 (opens in new tab))
- fix(payload): revalidation guards, consent footers, post title template (#158) (4ef9ec8a (opens in new tab))
- fix(payload): allow trashing drafts with empty slugs (#196) (ada0c7bf (opens in new tab))
reactLink to this section
- fix(react): count images, not scroll stops, in the gallery counter (#157) (99afcdd8 (opens in new tab))
react,nextLink to this section
- fix(react,next): defer native video controls for autoplaying videos too (#134) (db44d2c5 (opens in new tab))
react,next,core,payloadLink to this section
- fix(react,next,core,payload): media accessibility โ honest play affordance, reduced-motion parallax, feature aspect ratio (#150) (179bce02 (opens in new tab))
react,next,payload,coreLink to this section
- fix(react,next,payload,core): keep the frontend in the visitor's locale (#160) (2c00b69a (opens in new tab))
skillsLink to this section
- fix(skills): spacing model, backend shape, consumer-review findings (#164) (e8e2a14a (opens in new tab))
๐ DocsLink to this section
cliLink to this section
- docs(cli): teach capabilities, not just prohibitions, in the consumer skills (#147) (b49aae3e (opens in new tab))
payloadLink to this section
- docs(payload): document the payload-auth 1.9.x admin login conflict (#191) (f4a10990 (opens in new tab))
generalLink to this section
- docs: update agent guidance (806b59ac (opens in new tab))
๐งน ChoresLink to this section
apps/demo,apps/designLink to this section
- chore(apps/demo,apps/design): pin @systhemaui/* to 1.7.0-canary.6 for the security redeploy (#163) (91b17601 (opens in new tab))
- chore(apps/demo,apps/design): pin @systhemaui/* to 1.7.0-canary.9 for the redeploy (#173) (16ee2044 (opens in new tab))
apps/design,apps/demoLink to this section
- chore(apps/design,apps/demo): deploy Systhema Design and repair the demo image (#151) (078c626f (opens in new tab))
cliLink to this section
- chore(cli): repoint test imports on promote, fix release docs (#99) (296e3d95 (opens in new tab))
core,cliLink to this section
- chore(core,cli): upgrade @toon-format/toon to 4 and refresh the reference format (#200) (d486fc5e (opens in new tab))
depsLink to this section
- deps: bump next 16.3.3 โ 16.3.5, payload 3.88.0 โ 3.89.0, react 19.2.8 โ 19.3.0, typescript 6 and sharp 0.35.4 (#197) (e50380a8 (opens in new tab))
- chore(deps): bump next 16.2.12 โ 16.3.3 (security), payload 3.86.0 โ 3.88.0, and other patch/minor versions (#162) (760b193e (opens in new tab))
- chore(deps): bump payload 3.85.0 โ 3.86.0, next 16.2.6 โ 16.2.12, and other patch/minor versions (#133) (bb191c80 (opens in new tab))
docsLink to this section
- chore(docs): format core.md after the merge reconciliation (471c1aac (opens in new tab))
react,nextLink to this section
- chore(react,next): upgrade swiper to 14 and raise the browser baseline (#201) (18eeed05 (opens in new tab))
templatesLink to this section
- chore(templates): regenerate payload types + import map for merged feature set (2d46a2eb (opens in new tab))
generalLink to this section
- chore: added prettier hook for codex (bef5c329 (opens in new tab))
- chore: exclude agent worktrees and generated files from prettier check (d5856fa4 (opens in new tab))
- chore: upgrade prettier to 3.9 and reformat (#199) (2703faeb (opens in new tab))
- chore(*): accept pnpm 11 in engines, matching Payload's template (#198) (f9fd15d9 (opens in new tab))