Skip to content

starknet_os: os resources test - add meta tx#14135

Open
dorimedini-starkware wants to merge 1 commit into
05-22-starknet_os_os_resources_test_-_measure_linear_factor_add_deployfrom
05-23-starknet_os_os_resources_test_-_add_meta_tx
Open

starknet_os: os resources test - add meta tx#14135
dorimedini-starkware wants to merge 1 commit into
05-22-starknet_os_os_resources_test_-_measure_linear_factor_add_deployfrom
05-23-starknet_os_os_resources_test_-_add_meta_tx

Conversation

@dorimedini-starkware
Copy link
Copy Markdown
Collaborator

No description provided.

Copy link
Copy Markdown
Collaborator Author

dorimedini-starkware commented May 24, 2026

@reviewable-StarkWare
Copy link
Copy Markdown

This change is Reviewable

@cursor
Copy link
Copy Markdown

cursor Bot commented May 24, 2026

PR Summary

Medium Risk
Touches fee-related syscall gas and OS resource tables plus the OS program hash; scope is test/measurement-driven but affects protocol cost accounting for MetaTxV0.

Overview
Adds MetaTxV0 to the OS syscall resource regression suite and aligns constants with remeasured costs.

The OS resources test contract now invokes meta_tx_v0_syscall twice (empty vs longer calldata) so base and calldata-linear costs can be derived like Deploy. MetaTxV0 is removed from the unmeasurable syscall list and added to syscalls with a linear factor; inner-call subtraction clears memory holes so nested __execute__ overhead does not skew MetaTxV0 numbers.

Versioned constants and Cairo OS constants bump MetaTxV0 gas and VM resources (steps and Pedersen builtins). The pinned deployable measurement account takes variable-length calldata on __execute__ / validate paths, with updated Sierra/CASM artifacts. OS program hash in program_hash.json changes with the rebuilt OS.

Reviewed by Cursor Bugbot for commit 7c9637b. Bugbot is set up for automated code reviews on this repo. Configure here.

@dorimedini-starkware dorimedini-starkware force-pushed the 05-22-starknet_os_os_resources_test_-_measure_linear_factor_add_deploy branch from a775a63 to 268457e Compare May 24, 2026 17:03
@dorimedini-starkware dorimedini-starkware force-pushed the 05-23-starknet_os_os_resources_test_-_add_meta_tx branch 2 times, most recently from dafb7a8 to ce6eb29 Compare May 24, 2026 20:08
@dorimedini-starkware dorimedini-starkware force-pushed the 05-22-starknet_os_os_resources_test_-_measure_linear_factor_add_deploy branch from 268457e to 8b293fb Compare May 24, 2026 20:08
@dorimedini-starkware dorimedini-starkware force-pushed the 05-23-starknet_os_os_resources_test_-_add_meta_tx branch from ce6eb29 to f48908d Compare May 25, 2026 09:48
@dorimedini-starkware dorimedini-starkware force-pushed the 05-22-starknet_os_os_resources_test_-_measure_linear_factor_add_deploy branch from 8b293fb to bd9c3be Compare May 25, 2026 09:48
@dorimedini-starkware dorimedini-starkware force-pushed the 05-23-starknet_os_os_resources_test_-_add_meta_tx branch from f48908d to f30d4c1 Compare May 25, 2026 15:37
@dorimedini-starkware dorimedini-starkware force-pushed the 05-22-starknet_os_os_resources_test_-_measure_linear_factor_add_deploy branch from bd9c3be to 9711ff8 Compare May 25, 2026 15:37
Copy link
Copy Markdown
Collaborator

@Yoni-Starkware Yoni-Starkware left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@Yoni-Starkware reviewed 1 file and all commit messages, and made 1 comment.
Reviewable status: 1 of 5 files reviewed, 1 unresolved discussion (waiting on dorimedini-starkware).


crates/blockifier_test_utils/resources/feature_contracts/cairo1/os_resources_test_contract.cairo line 69 at r1 (raw file):

            calldata: array![0, 0, 0, 0].span(),
            signature: array![].span(),
        )

Call the const contract instead, so you could have a base cost without arguments (same comment as the deploy syscall)

Code quote:

        // meta_tx_v0 syscall - base.
        meta_tx_v0_syscall(
            address: self_address,
            entry_point_selector: EXECUTE_FUNCTION_SELECTOR,
            // class hash, address, deployable class hash, extra args len.
            calldata: array![0, 0, 0, 0].span(),
            signature: array![].span(),
        )

@dorimedini-starkware dorimedini-starkware force-pushed the 05-23-starknet_os_os_resources_test_-_add_meta_tx branch from f30d4c1 to ed74ad5 Compare May 28, 2026 16:18
@dorimedini-starkware dorimedini-starkware force-pushed the 05-22-starknet_os_os_resources_test_-_measure_linear_factor_add_deploy branch from 9711ff8 to cfcc21d Compare May 28, 2026 16:18
@dorimedini-starkware dorimedini-starkware force-pushed the 05-22-starknet_os_os_resources_test_-_measure_linear_factor_add_deploy branch from cfcc21d to cca3d02 Compare May 29, 2026 14:04
@dorimedini-starkware dorimedini-starkware force-pushed the 05-23-starknet_os_os_resources_test_-_add_meta_tx branch from ed74ad5 to 7c9637b Compare May 29, 2026 14:04
Copy link
Copy Markdown

@cursor cursor Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes and found 1 potential issue.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, have a team admin enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit 7c9637b. Configure here.

~ /os_resources/execute_syscalls/Deploy/constant/n_steps: 1183
~ /os_resources/execute_syscalls/LibraryCall/n_steps: 874
~ /os_resources/execute_syscalls/MetaTxV0/constant/builtin_instance_counter/pedersen_builtin: 13
~ /os_resources/execute_syscalls/MetaTxV0/constant/n_steps: 1333
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Regression diff has wrong MetaTxV0 values

Medium Severity

The regression diff file claims MetaTxV0/constant/n_steps: 1333 and pedersen_builtin: 13, but the actual blockifier_versioned_constants_0_14_4.json has n_steps: 1315 and pedersen_builtin: 10. The 0.14.3 file has n_steps: 1301 and pedersen_builtin: 9. The regression diff format shows the 0.14.4 value (confirmed by the CallContract/n_steps: 901 entry matching the 0.14.4 file), so these values are inconsistent and will likely fail regression tests.

Additional Locations (1)
Fix in Cursor Fix in Web

Reviewed by Cursor Bugbot for commit 7c9637b. Configure here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants