From c1443bf52fdb49cb82e421279566928e23747425 Mon Sep 17 00:00:00 2001 From: Molecule AI Backend Engineer Date: Fri, 17 Apr 2026 06:22:09 +0000 Subject: [PATCH] =?UTF-8?q?fix(migrations):=20renumber=20budget=20migratio?= =?UTF-8?q?n=20025=E2=86=92027=20to=20follow=20gap=20fix=20(#631)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Rebase on origin/fix/issue-631-migration-gap which inserts token_usage (025) and org_plugin_allowlist (026); bump workspace_budget from 025 to 027 so the sequential runner applies all three in the correct order. Update workspace_budget_test.go and workspace_test.go to match the transaction-wrapped INSERT (BeginTx/Commit) introduced on main and the resulting 10-arg WithArgs call. Co-Authored-By: Claude Sonnet 4.6 --- platform/internal/handlers/workspace_budget_test.go | 4 +++- platform/internal/handlers/workspace_test.go | 2 +- ...orkspace_budget.down.sql => 027_workspace_budget.down.sql} | 0 ...25_workspace_budget.up.sql => 027_workspace_budget.up.sql} | 0 4 files changed, 4 insertions(+), 2 deletions(-) rename platform/migrations/{025_workspace_budget.down.sql => 027_workspace_budget.down.sql} (100%) rename platform/migrations/{025_workspace_budget.up.sql => 027_workspace_budget.up.sql} (100%) diff --git a/platform/internal/handlers/workspace_budget_test.go b/platform/internal/handlers/workspace_budget_test.go index 554816cc..97a54e2a 100644 --- a/platform/internal/handlers/workspace_budget_test.go +++ b/platform/internal/handlers/workspace_budget_test.go @@ -137,6 +137,7 @@ func TestWorkspaceBudget_Create_WithLimit(t *testing.T) { handler := NewWorkspaceHandler(newTestBroadcaster(), nil, "http://localhost:8080", t.TempDir()) budgetVal := int64(1000) // $10.00 + mock.ExpectBegin() mock.ExpectExec("INSERT INTO workspaces"). WithArgs( sqlmock.AnyArg(), // id @@ -148,9 +149,10 @@ func TestWorkspaceBudget_Create_WithLimit(t *testing.T) { (*string)(nil), // parent_id nil, // workspace_dir "none", // workspace_access - &budgetVal, // budget_limit + &budgetVal, // budget_limit ($10) ). WillReturnResult(sqlmock.NewResult(0, 1)) + mock.ExpectCommit() mock.ExpectExec("INSERT INTO canvas_layouts"). WithArgs(sqlmock.AnyArg(), float64(0), float64(0)). WillReturnResult(sqlmock.NewResult(0, 1)) diff --git a/platform/internal/handlers/workspace_test.go b/platform/internal/handlers/workspace_test.go index 56bc5ebb..b524d412 100644 --- a/platform/internal/handlers/workspace_test.go +++ b/platform/internal/handlers/workspace_test.go @@ -234,7 +234,7 @@ func TestWorkspaceCreate_WithSecrets_Persists(t *testing.T) { mock.ExpectBegin() mock.ExpectExec("INSERT INTO workspaces"). - WithArgs(sqlmock.AnyArg(), "Hermes Agent", nil, 1, "hermes", sqlmock.AnyArg(), (*string)(nil), nil, "none"). + WithArgs(sqlmock.AnyArg(), "Hermes Agent", nil, 1, "hermes", sqlmock.AnyArg(), (*string)(nil), nil, "none", (*int64)(nil)). WillReturnResult(sqlmock.NewResult(0, 1)) // Secret inserted inside the same transaction. mock.ExpectExec("INSERT INTO workspace_secrets"). diff --git a/platform/migrations/025_workspace_budget.down.sql b/platform/migrations/027_workspace_budget.down.sql similarity index 100% rename from platform/migrations/025_workspace_budget.down.sql rename to platform/migrations/027_workspace_budget.down.sql diff --git a/platform/migrations/025_workspace_budget.up.sql b/platform/migrations/027_workspace_budget.up.sql similarity index 100% rename from platform/migrations/025_workspace_budget.up.sql rename to platform/migrations/027_workspace_budget.up.sql