mirror of
https://github.com/windmill-labs/windmill.git
synced 2026-09-21 08:02:38 +00:00
fix(datatables): warn when a settings sync strands fork pointers
A settings save reported the fork pointers left resolving to nothing only for the names in `deleted_datatables`, which `wmill sync push` never sends. The save now works out what it removed from the locked entries, and the CLI prints the stranded pointers it returns. Also correct the replication helper's contract: no role or admin check makes a replication connection safe, so a data table under roles is refused outright rather than gated as an admin operation. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01BjfMkJyKzodxkobqGZ6Lqb
This commit is contained in:
co-authored by
Claude Opus 5
parent
e9c27d63db
commit
46dfcc5c49
@@ -393,10 +393,17 @@ export async function pushWorkspaceSettings(
|
||||
|
||||
if (!deepEqual(localSettings.datatable, settings.datatable)) {
|
||||
log.debug(`Updating datatable config...`);
|
||||
await wmill.editDataTableConfig({
|
||||
const { stranded_references } = await wmill.editDataTableConfig({
|
||||
workspace,
|
||||
requestBody: { settings: localSettings.datatable ?? { datatables: {} } },
|
||||
});
|
||||
if (stranded_references?.length) {
|
||||
log.warn(
|
||||
`Removed data tables governed data tables in other workspaces, which no longer resolve: ${stranded_references
|
||||
.map((r) => `${r.workspace_id}/${r.datatable}`)
|
||||
.join(", ")}. A superadmin can point them somewhere else.`,
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
if (localSettings.slack_command_script != settings.slack_command_script) {
|
||||
|
||||
Reference in New Issue
Block a user