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/gas constants and versioned OS resource tables used for transaction charging and OS compatibility; changes are test-driven calibration rather than new protocol logic.

Overview
Adds MetaTxV0 to the OS syscall resource regression path: the measurement contract now invokes meta_tx_v0_syscall twice (base and calldata-linear cases), with a zero class-hash early return so nested __execute__ from the syscall does not recurse into other syscalls.

Measured MetaTxV0 OS overhead in blockifier_versioned_constants_0_14_3.json is updated (higher constant steps and Pedersen builtins). OS Cairo META_TX_V0_GAS_COST rises from 167950 to 186850, and program_hash.json reflects a rebuilt OS program.

The flow test drops MetaTxV0 from unmeasurable syscalls, extends invoke calldata for extra_args, and zeros memory holes on subtracted inner-call resources so meta-tx inner execution does not break OsLogger-based subtraction.

Reviewed by Cursor Bugbot for commit f30d4c1. 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(),
        )

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