Skip to content

Conversation

@patricios-space
Copy link
Collaborator

@patricios-space patricios-space commented Aug 7, 2025

Translates Solidity test: RBACTimelockGetters.t.sol

Copy link
Collaborator

@krebernisak krebernisak left a comment

Choose a reason for hiding this comment

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

Nice work 👏

Base automatically changed from test/timelock-hashing to feature/mcms August 8, 2025 13:05
@patricios-space patricios-space merged commit ea1e5d4 into feature/mcms Aug 8, 2025
10 checks passed
@patricios-space patricios-space deleted the test/timelock-getters branch August 8, 2025 13:06
patricios-space added a commit that referenced this pull request Aug 8, 2025
krebernisak added a commit that referenced this pull request Aug 8, 2025
* Add Timelock incoming message structs

* Upgrade to tolk 0.99

Add MCMS contract (init)

Add MCMC contract method structure and errors

Add MCMC outgoing messages/events structs

Add default execute hook and getters

Add MCMS<T>.execute fn

Resolve MCMS_Execute msg size issue

Add MCMS<T>.setConfig fn impl

Add Ownable2Step to MCMS

Restructure MCMS data storage to avoid limits

Add MCMS signature verification

Add MCMS TS bindings (structs, errors)

Add MCMS TS bindings (msgs, getters)

Add MCMS<T>.setRoot group quorum checks

Finish MCMS<T>.setRoot fn

Add MCMS MerkleProof verify

Fix rebase

Typo

Add more MCMS.ts bindings

[WIP] Add MCMS deploy test (+bindings)

Add MCMS chain ID (globalId) check

Encode address? (Option) properly

Add uint32 ID to contract for multiple instances

Polish bindings

More bindings structure polish

Start translating EVM test/IntegrationTest.t.sol

Add CallProxy contract

Refactor Counter/Ownable2Step contracts and bindings

MCMS integration test - add counter deploy

Remove 'contracts/contracts/examples/counter_legacy.tact' and update Go bindings

	deleted:    ../contracts/wrappers/CounterLegacy.compile.ts

Replace tracetracking-specific counter bindings

Fix lint and add tolk 1.0 declaration to /examples/counter.tolk

Use wrappers.Deploy to fix deploy timing issue

Fix msg (opcode) serialization issue

Fix Timelock<T>.bypasserExecuteBatch (reply vs. event emit)

Fix rbac_timelock.tolk value:0 reply, replace with emit

Fix rbac_timelock.hashOperationBatch TS binding

* Post rebase fixes

* [NONEVM-2276] TS tests Timelock Cancel&BlockFunction (#89)

test: base test setup
test: timelock cancel
test: block function

* [NONEVM-2276] TS tests Timelock Hashing (#93)

test: Timelock Hashing

* [NONEVM-2276] TS tests Timelock Getters (#95)

test: timelock getters

* [NONEVM-2276] TS tests Timelock Receivable (#94)

test: timelock receivable

* [NONEVM-2276] TS tests Timelock Schedule Batch (#96)

test: timelock schedule batch

* [NONEVM-2276] TS tests Timelock Update Delay (#98)

test: timelock update delay

* Post-rebase fixes

---------

Co-authored-by: Patricio <contact@patricios.space>
krebernisak added a commit that referenced this pull request Aug 8, 2025
* Add drawio example support, document Ownable2Step flow

* Add RBACTimelock drawio flow diagram

* Polish diagrams

* Add color to differentiate op, deploy, and log type of messages

* Polish diagrams

* Flow chart polish

* Add Timelock contract (Tolk) MVP

* Remove package-lock.json and add Tolk extension

* Update Timelock to tolk 0.13, update NPM packages, update storage management

* Trait composition model (admin actions)

* Upgrade to tolk 0.99

* Split out contracts/lib/access/access_control.tolk, upgrade to tolk 0.99, format

* Remove global storage

* Add basic admin role check/modifer to timelock

* AC union message type

* Rewrite lib/access/access_control.tolk

* Separate underlying data from trait and hooks

* Fix compile issues

* Add lib/access/extension/access_control_enumerable.tolk

* Add a generic super (extensions) chain for Traits

* Polish docs, remove Ownable example

* Add AccessControlEnumerable<T> trait hooks type (reusing AccessControl<T> hooks)

* Polish and simplify AC composition structure

* Add 'AccessControl_RenounceRole' msg handler

* Namespace hooks - AccessControlEnumerable_Hooks<T>

* Work on TS bindings

* Add lib/access/extension/AccessControlEnumerable bindigs, disable failing tests

* Add test

* Fix data structure encoding/decoding, debug context mutability

* Simplify ACE composition

* Fix rebase

* Update deps

* Merge lib/access/extension/AccessControlEnumerable with lib/access/AccessControl

* Remove lib/access/extension/AccessControlEnumerable

* AC - Reconstruct the address from the key

* Remove tests/libraries/access/Ownable2Step.spec.ts (duplicate)

* Move 'tests/libraries/merkle_proof' to 'tests/lib/merkle_proof'

* Update contracts to tolk 1.0

* Update to use sDict vs uDict for AccessControl_RoleData.hasRole dict

* Add AC contract docs

* Add outgoing message definitions to AC contract

* Send AC outgoing messages on changes

* Fix rebase, move utils.tolk, fmt

* Add tolk lazy

* Remove unused timelock utils

* Add Timelock docs and outgoing message structs

* Add Timelock incoming message structs

* Set up Timelock contract struct with data and hooks

* Add hashOperationBatch fn

* Add Timelock<T>.blockedFnSelectors storage and fns

* Add Timelock<T>.checkFunctionSelectorNotBlocked
fn

* Add Timelock fns that manage timestamps

* Implement block/unblock fn selector

* Add Timelock<T>.executeBatch fn

* Add Timelock<T>.scheduleBatch/cancel fns

* Add Timelock<T>.init fn

* Iterate over collections

* Add Timelock<T>.updateDelay fn

* Add Timelock<T>.bypasserExecuteBatch fn + polish args

* Add Timelock_InMessage processing + fixes

* Cleanup Timelock admin fns

* Add Timelock_TopUp opcode

* Remove unused opcode handling and code/files

* Polish, rename, move paths

* Add Timelock TS bindings

* Add Timelock contract data and call encoders

* Expose Timelock getters

* Simplify Timelock message handling, storage updates

* self.context is now optional

* Polish Timelock role bindings, enable few tests, remove unused getter bindings

* Restructure onInternalMessage handling

* Enable and add more Timelock/AC tests

* Polish ts bindings, add update delay test

* Add the rest of Timelock TS getters, add more tests

* Add missing TS getter bindings and polish

* Enable sendScheduleBatch test, fix opcode bug

* Fix post rebase Nix yarn.lock hash

* Fix Timelock_CallScheduled msg size

* Timestamp as unit64

* PR comments

* Add MCMS and CallProxy contracts (#77)

* Add Timelock incoming message structs

* Upgrade to tolk 0.99

Add MCMS contract (init)

Add MCMC contract method structure and errors

Add MCMC outgoing messages/events structs

Add default execute hook and getters

Add MCMS<T>.execute fn

Resolve MCMS_Execute msg size issue

Add MCMS<T>.setConfig fn impl

Add Ownable2Step to MCMS

Restructure MCMS data storage to avoid limits

Add MCMS signature verification

Add MCMS TS bindings (structs, errors)

Add MCMS TS bindings (msgs, getters)

Add MCMS<T>.setRoot group quorum checks

Finish MCMS<T>.setRoot fn

Add MCMS MerkleProof verify

Fix rebase

Typo

Add more MCMS.ts bindings

[WIP] Add MCMS deploy test (+bindings)

Add MCMS chain ID (globalId) check

Encode address? (Option) properly

Add uint32 ID to contract for multiple instances

Polish bindings

More bindings structure polish

Start translating EVM test/IntegrationTest.t.sol

Add CallProxy contract

Refactor Counter/Ownable2Step contracts and bindings

MCMS integration test - add counter deploy

Remove 'contracts/contracts/examples/counter_legacy.tact' and update Go bindings

	deleted:    ../contracts/wrappers/CounterLegacy.compile.ts

Replace tracetracking-specific counter bindings

Fix lint and add tolk 1.0 declaration to /examples/counter.tolk

Use wrappers.Deploy to fix deploy timing issue

Fix msg (opcode) serialization issue

Fix Timelock<T>.bypasserExecuteBatch (reply vs. event emit)

Fix rbac_timelock.tolk value:0 reply, replace with emit

Fix rbac_timelock.hashOperationBatch TS binding

* Post rebase fixes

* [NONEVM-2276] TS tests Timelock Cancel&BlockFunction (#89)

test: base test setup
test: timelock cancel
test: block function

* [NONEVM-2276] TS tests Timelock Hashing (#93)

test: Timelock Hashing

* [NONEVM-2276] TS tests Timelock Getters (#95)

test: timelock getters

* [NONEVM-2276] TS tests Timelock Receivable (#94)

test: timelock receivable

* [NONEVM-2276] TS tests Timelock Schedule Batch (#96)

test: timelock schedule batch

* [NONEVM-2276] TS tests Timelock Update Delay (#98)

test: timelock update delay

* Post-rebase fixes

---------

Co-authored-by: Patricio <contact@patricios.space>

---------

Co-authored-by: Patricio <contact@patricios.space>
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.

2 participants