Files
ironclaw/migrations/checksums.lock
Pierre LE GUEN 0892f56af9 fix(wasm): remove stale 10M fuel limit from settings DB (#2851)
* fix(wasm): remove stale 10M fuel limit from settings DB

Databases that persisted `wasm.default_fuel_limit = 10000000` before
the code default was bumped to 500M (limits.rs, config/wasm.rs) still
read the old value at startup because DB settings take priority over
code defaults. This caused WASM tools like google_slides to fail with
"Fuel exhausted: execution exceeded 10000000 fuel units" even though
the code default is 500M.

Add migration V25 (both PostgreSQL and libSQL) that deletes the stale
setting row when its value is <= 10M, so the 500M code default takes
effect. Users who intentionally set a custom limit above 10M are
unaffected.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* ci: trigger fresh run with skip-regression-check label

[skip-regression-check]

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* fix(wasm): extract JSONB scalar before cast, narrow to exact match (#2851)

Address review feedback:
- PostgreSQL: use (value#>>'{}')::BIGINT to extract JSONB scalar as text
  before casting, preventing runtime errors on JSONB columns
- libSQL: use json_extract(value, '$') for equivalent JSON extraction
- Narrow predicate from <= to = 10000000 to avoid deleting intentionally
  lowered custom fuel limits

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-authored-by: serrrfirat <f@nuff.tech>
2026-04-23 09:07:48 +03:00

41 lines
1.8 KiB
Plaintext

# Released migration checksums (refinery SipHasher13 over name+version+sql).
#
# This file is the immutability guard for released migrations. The
# `released_migrations_are_immutable` test in src/db/migration_fixup.rs
# asserts every migration listed below still hashes to the pinned value
# and that every migration on disk has a pinned value here.
#
# Modifying a released migration is forbidden — it desyncs every
# production database from refinery's checksum validation. See issue
# #1328 for the historical accident this guard prevents.
#
# When adding a new migration, append a new line in the same commit.
# Regenerate locally with:
# cargo test -p ironclaw -- --ignored regenerate_migration_checksums_lockfile
V1__initial = 13924994861355873385
V2__wasm_secure_api = 7920426121433120191
V3__tool_failures = 12003661105690258102
V4__sandbox_columns = 4066773473211554372
V5__claude_code = 879553427473911756
V6__routines = 18049045188188232070
V7__rename_events = 13503025792365661965
V8__settings = 2960080429880963815
V9__flexible_embedding_dimension = 8136426081104542386
V10__wasm_versioning = 18212435829290780557
V11__conversation_unique_indexes = 9262706107262242885
V12__job_token_budget = 13685500183340941819
V13__owner_scope_notify_targets = 2361305667196854503
V14__users = 8534543610808829344
V15__conversation_source_channel = 6931108907510923101
V16__document_versions = 6496010415720970575
V17__user_identities = 14415325645069692436
V18__tool_scope = 3125684809935466111
V19__channel_identities = 409356689302266680
V20__pairing_requests = 17756233693090004940
V21__backfill_conversation_source_channel = 4041142068103384561
V22__sandbox_restart_params = 12611649486554869350
V23__list_workspace_files_escape_like = 12519024535161914473
V24__llm_calls_created_at_index = 2650126284755685421
V25__wasm_fuel_limit_bump = 8924323300096627270