What happens
Editing a row's Slug in the Data workspace grid's detail panel appears to succeed — the input accepts the new value and the panel shows it — but the change is never persisted. Reloading shows the old slug, and the database row is unchanged.
At the same time the console fills with:
Maximum update depth exceeded. This can happen when a component calls setState
inside useEffect, but useEffect either doesn't have a dependency array, or one
of the dependencies changes on every render.
The two may or may not share a cause, but they occur together on the same interaction.
Steps
- Open Data → Pages (any system table with a
slug field should do).
- Click a row to open the detail panel.
- Change the Slug field, blur or tab out.
- Reload — the old slug is back.
Expected
Either the edit persists, or it fails loudly with a visible error.
Workaround
PATCH /admin/api/cms/data/rows/{id} with the full cells object works correctly and persists. The change also survived a subsequent republish without the CRDT reverting it, so the underlying write path is sound — this looks specific to the grid's detail-panel editor.
Environment
- Instatic at
949ddb2d (v0.0.17 dev), SQLite, bun run dev
- Encountered on a
pages table of 31 rows following a Site Import
Note
Found while migrating a real site onto Instatic. Happy to gather more detail or attempt a fix if you can point me at the intended commit path for that editor.
🤖 Generated with Claude Code
https://claude.ai/code/session_01FPTjUK1YJcwK83zYoANRbb
What happens
Editing a row's Slug in the Data workspace grid's detail panel appears to succeed — the input accepts the new value and the panel shows it — but the change is never persisted. Reloading shows the old slug, and the database row is unchanged.
At the same time the console fills with:
The two may or may not share a cause, but they occur together on the same interaction.
Steps
slugfield should do).Expected
Either the edit persists, or it fails loudly with a visible error.
Workaround
PATCH /admin/api/cms/data/rows/{id}with the fullcellsobject works correctly and persists. The change also survived a subsequent republish without the CRDT reverting it, so the underlying write path is sound — this looks specific to the grid's detail-panel editor.Environment
949ddb2d(v0.0.17 dev), SQLite,bun run devpagestable of 31 rows following a Site ImportNote
Found while migrating a real site onto Instatic. Happy to gather more detail or attempt a fix if you can point me at the intended commit path for that editor.
🤖 Generated with Claude Code
https://claude.ai/code/session_01FPTjUK1YJcwK83zYoANRbb