{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":102186072,"defaultBranch":"main","name":"safe-smart-account","ownerLogin":"safe-global","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2017-09-02T09:23:38.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/102983781?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1716555999.0","currentOid":""},"activityList":{"items":[{"before":"0ce9061cdae76409cd8a7cc3c6fed3ccc9633023","after":null,"ref":"refs/heads/feature/module-tx-guard","pushedAt":"2024-05-24T13:06:39.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"akshay-ap","name":"Akshay","path":"/akshay-ap","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/16358982?s=80&v=4"}},{"before":"5feb0d08f59cfbb44918be1ed5889d9bb634562a","after":"f8304669d54c64bd0c788e2d6f59e3e71d4cbcfd","ref":"refs/heads/main","pushedAt":"2024-05-24T13:05:14.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"akshay-ap","name":"Akshay","path":"/akshay-ap","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/16358982?s=80&v=4"},"commit":{"message":"Create a separate interface for module guard (#758)\n\nFixes #755 \r\n\r\nSummary of changes:\r\n\r\n- The PR creates a separate interface for Module guards instead of\r\nhaving a single `Guard` interface for both module transactions and Safe\r\ntransactions.\r\n\r\n- The new Module guard interface i.e,\r\n[IModuleGuard](https://github.com/safe-global/safe-smart-account/pull/758/files#diff-82762908b9416ddadffb149ee4d25f328078fc27f938d454d8a207aad1ec3839R10)\r\nhas two functions:\r\n1. `checkModuleTransaction`\r\n2. `checkAfterExecution`\r\n\r\n- The [updated\r\naddresses](https://github.com/safe-global/safe-smart-account/pull/758/files#diff-f567630e82b097ce6631513f19df3108366fc8b80a8de13632297dbd68a6f181R18)\r\nin migration contracts are taken from logs from the tests.\r\n\r\n- Rename interface `Guard` to `ITransactionGuard`. \r\n\r\n- Fix typo: Rename `ModuleTransasctionDetails` to\r\n`ModuleTransactionDetails`\r\n\r\nCodesize:\r\nMain branch:\r\n\r\n```\r\nSafe 21210 bytes (limit is 24576)\r\nSafeL2 22052 bytes (limit is 24576)\r\n```\r\n\r\n\r\nThis PR (+571 bytes):\r\n```\r\nSafe 21781 bytes (limit is 24576)\r\nSafeL2 22623 bytes (limit is 24576)\r\n```\r\n\r\nChanges in PR:\r\n- [x] Documentation\r\n- [x] Fix test cases\r\n- [x] Rebase branch\r\n- [x] Migration contracts\r\n\r\nOpen for discussion:\r\n\r\n1. Rename `Guard` to `ITransactionGuard`? -> Yes\r\n2. Rename `setGuard` function to `setTransactionGuard`? : Impacts Safe\r\ninterface\r\n3. Rename `ChangedGuard` event to `ChangedTransactionGuard`? Impacts\r\nservices monitoring this event\r\n\r\n---------\r\n\r\nCo-authored-by: Shebin John \r\nCo-authored-by: Mikhail <16622558+mmv08@users.noreply.github.com>\r\nCo-authored-by: Nicholas Rodrigues Lordello ","shortMessageHtmlLink":"Create a separate interface for module guard (#758)"}},{"before":"d71ff3ac75b1461bcba9cf692b80f1f7902d36a8","after":"0ce9061cdae76409cd8a7cc3c6fed3ccc9633023","ref":"refs/heads/feature/module-tx-guard","pushedAt":"2024-05-24T11:22:08.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"akshay-ap","name":"Akshay","path":"/akshay-ap","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/16358982?s=80&v=4"},"commit":{"message":"Minor fixes: Update addresses in Safe150Migration.sol, fix typo in test","shortMessageHtmlLink":"Minor fixes: Update addresses in Safe150Migration.sol, fix typo in test"}},{"before":"ff203418c1f1376eb82348836eec3de583b82614","after":"d71ff3ac75b1461bcba9cf692b80f1f7902d36a8","ref":"refs/heads/feature/module-tx-guard","pushedAt":"2024-05-24T11:04:24.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"akshay-ap","name":"Akshay","path":"/akshay-ap","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/16358982?s=80&v=4"},"commit":{"message":"Minor fixes: Update addresses in Safe150Migration.sol, fix typo in test","shortMessageHtmlLink":"Minor fixes: Update addresses in Safe150Migration.sol, fix typo in test"}},{"before":"fcca0b337b8091022d8c89a6788fb321ca8f35aa","after":"d3f244550fd471a89fd793c4e7d62ceaec85003b","ref":"refs/heads/feat/update-certora-prover","pushedAt":"2024-05-21T14:07:35.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"mmv08","name":"Mikhail","path":"/mmv08","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/16622558?s=80&v=4"},"commit":{"message":"fix specs by removing redundant options and keywords","shortMessageHtmlLink":"fix specs by removing redundant options and keywords"}},{"before":"d9bbfb55bcef2d6f0ea93af95b95d37f1e8b9a79","after":"fcca0b337b8091022d8c89a6788fb321ca8f35aa","ref":"refs/heads/feat/update-certora-prover","pushedAt":"2024-05-21T13:41:46.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"mmv08","name":"Mikhail","path":"/mmv08","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/16622558?s=80&v=4"},"commit":{"message":"fix specs by removing redundant options and keywords","shortMessageHtmlLink":"fix specs by removing redundant options and keywords"}},{"before":null,"after":"d9bbfb55bcef2d6f0ea93af95b95d37f1e8b9a79","ref":"refs/heads/feat/update-certora-prover","pushedAt":"2024-05-21T13:06:22.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"mmv08","name":"Mikhail","path":"/mmv08","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/16622558?s=80&v=4"},"commit":{"message":"upgrade certora cli/prover to 7.6.3 on the ci","shortMessageHtmlLink":"upgrade certora cli/prover to 7.6.3 on the ci"}},{"before":"80e02657edfcd65a032100314f0eb9fa73697b38","after":"ff203418c1f1376eb82348836eec3de583b82614","ref":"refs/heads/feature/module-tx-guard","pushedAt":"2024-05-16T15:07:46.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"akshay-ap","name":"Akshay","path":"/akshay-ap","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/16358982?s=80&v=4"},"commit":{"message":"Remove unnecessary guard migration related code","shortMessageHtmlLink":"Remove unnecessary guard migration related code"}},{"before":"72182da5e5655b437a1d1f8ba0389112bb124d2b","after":"80e02657edfcd65a032100314f0eb9fa73697b38","ref":"refs/heads/feature/module-tx-guard","pushedAt":"2024-05-16T15:02:40.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"akshay-ap","name":"Akshay","path":"/akshay-ap","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/16358982?s=80&v=4"},"commit":{"message":"Remove unnecessary guard migration related code","shortMessageHtmlLink":"Remove unnecessary guard migration related code"}},{"before":"dbd83c7f8709fd9b2e39278186f43b9798d4503e","after":"72182da5e5655b437a1d1f8ba0389112bb124d2b","ref":"refs/heads/feature/module-tx-guard","pushedAt":"2024-05-16T14:20:10.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"akshay-ap","name":"Akshay","path":"/akshay-ap","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/16358982?s=80&v=4"},"commit":{"message":"Update contracts/Safe.sol\n\nCo-authored-by: Nicholas Rodrigues Lordello ","shortMessageHtmlLink":"Update contracts/Safe.sol"}},{"before":"904fae519edf0625f519851cf09a795b52f9a366","after":"dbd83c7f8709fd9b2e39278186f43b9798d4503e","ref":"refs/heads/feature/module-tx-guard","pushedAt":"2024-05-16T12:07:53.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"akshay-ap","name":"Akshay","path":"/akshay-ap","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/16358982?s=80&v=4"},"commit":{"message":"Rename checkAfterExecution to checkAfterModuleExecution in IModuleGuard interface","shortMessageHtmlLink":"Rename checkAfterExecution to checkAfterModuleExecution in IModuleGua…"}},{"before":"7ca6dc2bbbba46658584cf2077fcd50a18391334","after":"904fae519edf0625f519851cf09a795b52f9a366","ref":"refs/heads/feature/module-tx-guard","pushedAt":"2024-05-16T11:33:22.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"akshay-ap","name":"Akshay","path":"/akshay-ap","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/16358982?s=80&v=4"},"commit":{"message":"Fix natspec in BaseGuard.sol","shortMessageHtmlLink":"Fix natspec in BaseGuard.sol"}},{"before":"4153512e7d59ab55d7d99bd80a989a54632c9095","after":"7ca6dc2bbbba46658584cf2077fcd50a18391334","ref":"refs/heads/feature/module-tx-guard","pushedAt":"2024-05-16T09:22:44.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"akshay-ap","name":"Akshay","path":"/akshay-ap","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/16358982?s=80&v=4"},"commit":{"message":"Update contracts/examples/guards/BaseGuard.sol\n\nCo-authored-by: Nicholas Rodrigues Lordello ","shortMessageHtmlLink":"Update contracts/examples/guards/BaseGuard.sol"}},{"before":"6a19c4e118b487c546289e7f8559b5243ae9ce10","after":"4153512e7d59ab55d7d99bd80a989a54632c9095","ref":"refs/heads/feature/module-tx-guard","pushedAt":"2024-05-13T13:17:08.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"akshay-ap","name":"Akshay","path":"/akshay-ap","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/16358982?s=80&v=4"},"commit":{"message":"Make checkAfterExecution in BaseGuard abstract","shortMessageHtmlLink":"Make checkAfterExecution in BaseGuard abstract"}},{"before":"d0009e64d8919a24d28fad1bad0d9b0cd584c0a7","after":"6a19c4e118b487c546289e7f8559b5243ae9ce10","ref":"refs/heads/feature/module-tx-guard","pushedAt":"2024-05-13T11:06:29.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"akshay-ap","name":"Akshay","path":"/akshay-ap","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/16358982?s=80&v=4"},"commit":{"message":"Fix param name in DebugTransactionGuard, Fix lint issue","shortMessageHtmlLink":"Fix param name in DebugTransactionGuard, Fix lint issue"}},{"before":"8eb8ab24e4a178f1d3a68dd50340b015265f0646","after":"d0009e64d8919a24d28fad1bad0d9b0cd584c0a7","ref":"refs/heads/feature/module-tx-guard","pushedAt":"2024-05-13T10:10:59.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"akshay-ap","name":"Akshay","path":"/akshay-ap","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/16358982?s=80&v=4"},"commit":{"message":"Fix event name in DebugTransactionGuard.sol","shortMessageHtmlLink":"Fix event name in DebugTransactionGuard.sol"}},{"before":"781a9d50efa1baabd7a219e0d0d98692dd429741","after":"8eb8ab24e4a178f1d3a68dd50340b015265f0646","ref":"refs/heads/feature/module-tx-guard","pushedAt":"2024-05-13T09:49:27.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"akshay-ap","name":"Akshay","path":"/akshay-ap","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/16358982?s=80&v=4"},"commit":{"message":"Update contracts/examples/guards/DebugTransactionGuard.sol\n\nCo-authored-by: Mikhail <16622558+mmv08@users.noreply.github.com>","shortMessageHtmlLink":"Update contracts/examples/guards/DebugTransactionGuard.sol"}},{"before":"355f88ac2fe96f45821dc833f0b3cf031d84d3cd","after":"781a9d50efa1baabd7a219e0d0d98692dd429741","ref":"refs/heads/feature/module-tx-guard","pushedAt":"2024-05-07T14:04:28.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"akshay-ap","name":"Akshay","path":"/akshay-ap","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/16358982?s=80&v=4"},"commit":{"message":"Remove Guard migration function from Safe150Migration as they are no longer needed","shortMessageHtmlLink":"Remove Guard migration function from Safe150Migration as they are no …"}},{"before":null,"after":"d2120295fa5fa7566d60d3d364b7cbf60418cf4f","ref":"refs/heads/experiment/auto-l2-safe","pushedAt":"2024-05-07T13:59:09.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"nlordell","name":"Nicholas Rodrigues Lordello","path":"/nlordell","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4210206?s=80&v=4"},"commit":{"message":"Add Safe to L2 Setup Contract\n\nThis PR introduces a setup contract that can be called from the `Safe`\nsetup function in order to automatically promote a Safe at setup time if\nthe code is executing on an L2. Namely, this allows the Safe Proxy\nfactory to use a single singleton and initializer for all chains, but\nend up with different `singleton`s depending on the chain ID.","shortMessageHtmlLink":"Add Safe to L2 Setup Contract"}},{"before":"3e4f790849556a5bcc815beb3936af16a3e45ce2","after":"355f88ac2fe96f45821dc833f0b3cf031d84d3cd","ref":"refs/heads/feature/module-tx-guard","pushedAt":"2024-05-07T13:53:04.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"akshay-ap","name":"Akshay","path":"/akshay-ap","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/16358982?s=80&v=4"},"commit":{"message":"Rename Guard to ITransactionGuard","shortMessageHtmlLink":"Rename Guard to ITransactionGuard"}},{"before":"dd78fdcb8b40a59edb014c4ee454438dee26fb54","after":"3e4f790849556a5bcc815beb3936af16a3e45ce2","ref":"refs/heads/feature/module-tx-guard","pushedAt":"2024-05-07T13:36:40.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"akshay-ap","name":"Akshay","path":"/akshay-ap","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/16358982?s=80&v=4"},"commit":{"message":"Rename BaseGuard to BaseTransactionGuard, Update function name in IModuleGuard, Update tests","shortMessageHtmlLink":"Rename BaseGuard to BaseTransactionGuard, Update function name in IMo…"}},{"before":"3bf517df57bb4adf87bc547945fbcdfcaf9b3362","after":"dd78fdcb8b40a59edb014c4ee454438dee26fb54","ref":"refs/heads/feature/module-tx-guard","pushedAt":"2024-05-07T12:00:04.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"akshay-ap","name":"Akshay","path":"/akshay-ap","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/16358982?s=80&v=4"},"commit":{"message":"Use revertWithError(\"GS301\")","shortMessageHtmlLink":"Use revertWithError(\"GS301\")"}},{"before":"6d34f6a1202823eb58063eb67c1cdb6c854ce32e","after":"3bf517df57bb4adf87bc547945fbcdfcaf9b3362","ref":"refs/heads/feature/module-tx-guard","pushedAt":"2024-05-07T11:52:58.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"akshay-ap","name":"Akshay","path":"/akshay-ap","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/16358982?s=80&v=4"},"commit":{"message":"Re-organize Module Manager tests","shortMessageHtmlLink":"Re-organize Module Manager tests"}},{"before":"110ad2f0e2a38181230f8ece49c094e2da193e1c","after":"6d34f6a1202823eb58063eb67c1cdb6c854ce32e","ref":"refs/heads/feature/module-tx-guard","pushedAt":"2024-05-07T11:50:22.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"akshay-ap","name":"Akshay","path":"/akshay-ap","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/16358982?s=80&v=4"},"commit":{"message":"Re-organize Module manager tests","shortMessageHtmlLink":"Re-organize Module manager tests"}},{"before":"fad0ea2f0041e744c2ebdffdf5244794039bdbbb","after":"110ad2f0e2a38181230f8ece49c094e2da193e1c","ref":"refs/heads/feature/module-tx-guard","pushedAt":"2024-05-07T10:31:46.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"akshay-ap","name":"Akshay","path":"/akshay-ap","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/16358982?s=80&v=4"},"commit":{"message":"Remove unused import","shortMessageHtmlLink":"Remove unused import"}},{"before":"b818688d6001aadf112acbd8838765d4815ccb91","after":"fad0ea2f0041e744c2ebdffdf5244794039bdbbb","ref":"refs/heads/feature/module-tx-guard","pushedAt":"2024-05-07T10:29:37.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"akshay-ap","name":"Akshay","path":"/akshay-ap","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/16358982?s=80&v=4"},"commit":{"message":"Update natspec format, add solhint","shortMessageHtmlLink":"Update natspec format, add solhint"}},{"before":"c9d2b5e1a77f21040201ec8944ca4299298be157","after":"b818688d6001aadf112acbd8838765d4815ccb91","ref":"refs/heads/feature/module-tx-guard","pushedAt":"2024-05-06T15:35:50.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"akshay-ap","name":"Akshay","path":"/akshay-ap","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/16358982?s=80&v=4"},"commit":{"message":"Update test/core/Safe.ModuleManager.spec.ts\n\nCo-authored-by: Shebin John ","shortMessageHtmlLink":"Update test/core/Safe.ModuleManager.spec.ts"}},{"before":"8ff871265801aaabab75f80c12370b56769ca229","after":"c9d2b5e1a77f21040201ec8944ca4299298be157","ref":"refs/heads/feature/module-tx-guard","pushedAt":"2024-05-06T15:35:43.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"akshay-ap","name":"Akshay","path":"/akshay-ap","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/16358982?s=80&v=4"},"commit":{"message":"Update test/core/Safe.ModuleManager.spec.ts\n\nCo-authored-by: Shebin John ","shortMessageHtmlLink":"Update test/core/Safe.ModuleManager.spec.ts"}},{"before":"767f653f5dedf664f9c997810e37519409bd8855","after":"8ff871265801aaabab75f80c12370b56769ca229","ref":"refs/heads/feature/module-tx-guard","pushedAt":"2024-05-06T15:25:41.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"akshay-ap","name":"Akshay","path":"/akshay-ap","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/16358982?s=80&v=4"},"commit":{"message":"Merge branch 'feature/module-tx-guard' of github.com:safe-global/safe-contracts into feature/module-tx-guard","shortMessageHtmlLink":"Merge branch 'feature/module-tx-guard' of github.com:safe-global/safe…"}},{"before":"617367bf2b5f00933045653fc47fd00de404990e","after":"767f653f5dedf664f9c997810e37519409bd8855","ref":"refs/heads/feature/module-tx-guard","pushedAt":"2024-05-06T15:21:58.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"akshay-ap","name":"Akshay","path":"/akshay-ap","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/16358982?s=80&v=4"},"commit":{"message":"Update contracts/interfaces/IModuleManager.sol\n\nCo-authored-by: Shebin John ","shortMessageHtmlLink":"Update contracts/interfaces/IModuleManager.sol"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEUw1fgQA","startCursor":null,"endCursor":null}},"title":"Activity · safe-global/safe-smart-account"}