Commit Graph

14303 Commits

Author SHA1 Message Date
tequ
7a7d64979e Merge branch 'dev' into HookFeeV2 2026-09-25 15:55:22 +09:00
tequ
c2e253b365 refactor new account seqno (#772)
When creating accounts in GenesisLedger, we previously set the account Sequence to 0. However, since this conflicts with the PseudoAccount requirements, we are changing it to 1.
There will be no impact on networks that are already running, and for future networks, there won't be any impact unless you create accounts via GenesisLedger.
This specifically addresses an issue that comes up during unittests.
2026-09-25 13:10:18 +10:00
tequ
ba130f8363 AMMClawback supported::no (#827)
Co-authored-by: Richard Holland <richard.holland@starstone.co.nz>
2026-09-25 12:36:31 +10:00
tequ
e87eabd8be HookOnV2_1 Amendment (#766) 2026-09-25 11:17:12 +10:00
Niq Dudfield
2e32b5c6bb feat(server_definitions): distinguish config-forced from ledger-enabled amendments (#765) 2026-09-23 15:33:43 +10:00
tequ
902ed9b492 Use normal consequences factory for standard transactions (#774)
Replace redundant custom consequence factories that returned normal consequences with the built-in Normal factory.
2026-09-21 21:12:15 +10:00
tequ
ec6e57cc00 Merge branch 'dev' into HookFeeV2 2026-09-09 15:32:29 +09:00
tequ
c208a40ce8 remove WASM: $COUNTER from SetHook_wasm.h (#804) 2026-09-09 15:31:11 +10:00
tequ
401a35957d retire fixXahauV1, fixXahauV2 Amendments (#722) 2026-09-09 13:00:24 +10:00
tequ
8b7bdd6303 Change log message output to distinguish between hook and cbak costs 2026-09-08 22:02:16 +09:00
tequ
e93c46b3f5 fix guard-checker log 2026-09-08 21:16:40 +09:00
tequ
ddbaeedbfe fix guard_checker.cpp to return cost instead fee 2026-09-08 20:41:54 +09:00
Niq Dudfield
65ff61d518 fix: fail fast when amendment blocked instead of degraded state (#707) 2026-09-08 13:39:45 +10:00
tequ
1d5cdfbb43 clang-format 2026-09-07 20:33:44 +09:00
tequ
27592e7fec HookFeeV2: flat cost model (0.1 drop per instruction, 10 drops per API call)
Per-API cost tables and the votable HookGasPrice move to the HookFeeV3
branch. V2 charges one cost unit per wasm instruction and 100 units per
hook API call (including _g), with ten units per drop rounded up.

- Guard.h: drop the per-import cost map, charge a fixed api_call_cost on
  every import call
- Remove sfHookGasPrice, FeeSettings/SetFee/validation fields, fee voting,
  server_info output and the hook_gas_price config knob
- hookCostToFee no longer depends on the ledger view
- Restore genesis ledger, jtx Env and fragile-hash tests to dev
- Update expected hook costs in SetHook_test
2026-09-07 18:24:30 +09:00
tequ
0a4631ada2 fix tests 2026-09-07 16:44:21 +09:00
tequ
5e2f7a07e8 remove unnesessary line changes 2026-09-07 16:14:02 +09:00
tequ
c152f71cce Set sfHookGasPrice at genesis instead of waiting for FeeVoting in tests 2026-09-07 16:06:53 +09:00
tequ
0ebdd68807 Merge remote-tracking branch 'upstream/dev' into HookFeeV2 2026-09-07 15:06:26 +09:00
tequ
69e3c361d0 Update cost 2026-09-07 14:45:19 +09:00
Richard Holland
6191c1e09d Onchain manifests (#779) 2026-09-07 13:19:25 +10:00
tequ
0a13e3b5c4 Merge branch 'dev' into HookFeeV2 2026-09-06 01:48:49 +09:00
tequ
f1a3a775a1 Add optional Hooks data to account_info response (#789) 2026-09-02 17:22:53 +10:00
tequ
c1dabe5576 Fix comments (#768) 2026-09-01 14:18:28 +10:00
Niq Dudfield
c6d5b345eb fix: subscription webhook delivery stalling on HTTP errors (#677) 2026-08-27 12:13:21 +10:00
tequ
c484619967 Add HookDefinitionUpdate tests (partially) 2026-08-13 03:30:32 +09:00
tequ
3b51e2b68e Merge branch 'dev' into HookFeeV2 2026-08-13 01:50:09 +09:00
tequ
a238935038 Fix hook api cost accounting in the guard checker
Api costs were looked up as import_type_map[callee_idx], but that map is
keyed by wasm type index while callee_idx is a function index. A hook was
charged whichever api happened to occupy the callee's index, or nothing at
all when no type carried that index, and imports sharing a signature
collapsed to a single cost. Reordering imports was enough to call
util_verify, the most expensive api, for free. Costs now come from
import_cost_map, keyed by import function index, and import_type_map is
reduced to the signature checking it is actually used for.

compute_wce() applied the loop multiplier to instruction_count only, so an
api call inside a guarded loop was charged for one iteration no matter how
many the guard allowed. The multiplier now applies to execution_cost as
well, with the same floor instruction_count uses.
2026-08-05 15:00:16 +09:00
Richard Holland
bb244ef772 put release builds into a candidate folder to prevent auto-update scripts running before smoke tests (#761) 2026.6.21-release+3350 2026-06-21 12:12:43 +10:00
Richard Holland
639ea34377 Fixhookmap (#756) 2026-06-16 17:06:25 +10:00
tequ
089c0dc3fe Fix ammLPHolds logic to include escrowed cases (#757) 2026-06-16 15:26:29 +10:00
tequ
78167e09c0 change sfHookOn of ltHookDefinition to soeOptional for HookOnV2 (#755) 2026-06-16 13:58:53 +10:00
tequ
607a7fdf98 Change AMM to Supported::no (#758) 2026-06-16 13:56:58 +10:00
tequ
4599fedd40 fix 2026-06-10 14:04:31 +09:00
tequ
bbbce7337f fix oracle TSH test 2026-06-09 22:49:10 +09:00
tequ
68fc622e26 fix oracle TSH test 2026-06-09 16:50:01 +09:00
tequ
93c135aabc Custom Hook API Cost 2026-06-09 16:12:47 +09:00
tequ
acc639acb0 fix tests 2026-06-09 15:00:00 +09:00
tequ
22620bb585 add incLgrSeqForGasPriceEnabled 2026-06-09 14:04:29 +09:00
tequ
978e50b575 fix conflict 2026-06-09 13:17:01 +09:00
tequ
1b75b9f72f Merge branch 'dev' into HookFeeV2 2026-06-09 13:07:02 +09:00
tequ
c55420bcd8 Fix duplicate and incorrect fields in server_definitions (#753) 2026-05-27 07:58:13 +10:00
tequ
cb91b4e88e Restore pre-reserved tem codes (#754) 2026-05-27 07:57:55 +10:00
tequ
90333b6fd0 Fix HookAPI Expected and Refactor Enum classes (#729) 2026-05-26 11:02:17 +10:00
tequ
7f9a9364b0 fix: Ensures canonical order for PriceDataSeries upon PriceOracle creation (#5485) (#744) 2026-05-25 11:34:24 +10:00
tequ
706d31f01d Update .git-blame-ignore-revs (#746) 2026-05-25 11:28:56 +10:00
tequ
083e9e4315 Generate hook extern declarations with C linkage (#750) 2026-05-25 11:27:21 +10:00
tequ
b9e0c56def Guard depth 32 (#653) 2026-05-25 11:10:49 +10:00
tequ
3a2cc49106 Merge branch 'dev' into HookFeeV2 2026-05-21 20:56:35 +09:00
tequ
663ed4edb8 Named Hook (#718) 2026-05-19 12:00:25 +10:00