wakamex/github
02.7k
1[{"node": {"oid": "b4cdfbd964226d342afb1b0c8ebd92e0055f5b60", "messageHeadline": "Merge pull request #125 from Hats-Protocol/multicallable", "author": {"name": "Spencer Graham", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 136, "deletions": 12}}, {"node": {"oid": "b43ad0d1dbe4a4190febc036ee8a2849e3f221b4", "messageHeadline": "update README", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 4, "deletions": 0}}, {"node": {"oid": "3ad18500ab1964160fe8814cca463a781010b938", "messageHeadline": "fix solady submodule", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 1, "deletions": 0}}, {"node": {"oid": "6d74d231320894fd09623be536639db7dfd67e61", "messageHeadline": "add remappings.txt", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 4, "deletions": 0}}, {"node": {"oid": "ca1a30ee683eb379f7edfb7389b70751d53893be", "messageHeadline": "deploy to goerli", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 5, "deletions": 7}}, {"node": {"oid": "b23340f825a2cdf9f5758462f8161d7076ad7f6f", "messageHeadline": "add version notice", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 5, "deletions": 2}}, {"node": {"oid": "9353387cd739da442853826b5f1b4854d6ab1b49", "messageHeadline": "multicallable", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 117, "deletions": 3}}, {"node": {"oid": "c6d0da740458198e73aac1dc6775ff7bfc229d44", "messageHeadline": "Merge pull request #124 from Hats-Protocol/audits/sherlock", "author": {"name": "Spencer Graham", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 10, "deletions": 7}}, {"node": {"oid": "269616e05c9ab6c92f2497b151a99fa0a9bb1a47", "messageHeadline": "Merge pull request #122 from omahs/patch-1", "author": {"name": "Spencer Graham", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 5, "deletions": 5}}, {"node": {"oid": "c259b4cc01706fc4691e280154361e32781e0150", "messageHeadline": "Merge pull request #123 from Hats-Protocol/spengrah-patch-1", "author": {"name": "Spencer Graham", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 1, "deletions": 1}}, {"node": {"oid": "2f903ee5fe83bca46da2e378bff2e9d6fe43bfb2", "messageHeadline": "Merge branch 'audits/sherlock' into spengrah-patch-1", "author": {"name": "Spencer Graham", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 5, "deletions": 2}}, {"node": {"oid": "ed527cd72ffdb2b9614c9da90276e8cff9c37bff", "messageHeadline": "update README", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 5, "deletions": 2}}, {"node": {"oid": "4d46ff59b1844534e980b014af56ee9b22dd43ef", "messageHeadline": "add sherlock audit doc", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 0, "deletions": 0}}, {"node": {"oid": "c82cf240036ddd10183699e26a3ec5cdcc705b4d", "messageHeadline": "fix audits url in README", "author": {"name": "Spencer Graham", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 1, "deletions": 1}}, {"node": {"oid": "c2b881f2e1bf0e935517f5a9b009a2a247727fd1", "messageHeadline": "Fix: typos", "author": {"name": "omahs", "email": "73983677+omahs@users.noreply.github.com", "user": {"login": "omahs"}}, "additions": 5, "deletions": 5}}, {"node": {"oid": "9d1275f29d390344e81d0e0561f868ab6b0e1257", "messageHeadline": "Merge pull request #121 from Hats-Protocol/fix/unlinking", "author": {"name": "Spencer Graham", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 239, "deletions": 25}}, {"node": {"oid": "c899496f547a3d70bb46d578021e37b57162437f", "messageHeadline": "fix formatting", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 1, "deletions": 1}}, {"node": {"oid": "bf45aecc6a92cdce625ab13bbe567d4388d2f735", "messageHeadline": "deploy v1.0", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 9, "deletions": 16}}, {"node": {"oid": "e482eb2527e9d5c955dd20b25a6504b2c503c04b", "messageHeadline": "natspec tweak and comment typo fix", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 2, "deletions": 2}}, {"node": {"oid": "0256f36ddb42c2eb4da263c4199c1a05dd154289", "messageHeadline": "prevent unlinking of tophats worn by address(0)", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 43, "deletions": 3}}, {"node": {"oid": "1775232817aacb4e8a5c08256184f65be36d228e", "messageHeadline": "update unlinking docs in readme", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 1, "deletions": 1}}, {"node": {"oid": "121032a9710acf5303a303821eb53d4182caf9eb", "messageHeadline": "add hat property getters", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 34, "deletions": 0}}, {"node": {"oid": "9a927f0e1eed7494bdd31de62a5eb7b096e6e7a3", "messageHeadline": "prevent unworn tophats from being unlinked", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 156, "deletions": 9}}, {"node": {"oid": "4cf4170181edbb568753d79ac5438f6cd8773b6b", "messageHeadline": "Merge pull request #119 from Hats-Protocol/deploy/v1", "author": {"name": "Spencer Graham", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 50, "deletions": 21}}, {"node": {"oid": "8f1aae4c21c723c84e8e76bc6393f45f2f8cd347", "messageHeadline": "update README", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 21, "deletions": 9}}, {"node": {"oid": "c297e51bd7137490d28d91370e050bce202843d4", "messageHeadline": "deploy v1", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 30, "deletions": 13}}, {"node": {"oid": "7509b701fa230e17c175052d08842c22ddfd42f0", "messageHeadline": "Merge pull request #117 from Hats-Protocol/fix-review", "author": {"name": "nintynick", "email": "nintynick@hatsprotocol.xyz", "user": {"login": "nintynick"}}, "additions": 580, "deletions": 138}}, {"node": {"oid": "20e664ad7858918f8f89b3ea304fb57e75560195", "messageHeadline": "Merge pull request #118 from Hats-Protocol/fix/refixes", "author": {"name": "Spencer Graham", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 98, "deletions": 34}}, {"node": {"oid": "ca75998e13b8d007656703428b3bbd8e4ce1b012", "messageHeadline": "96 - remove nested tree cap", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 0, "deletions": 161}}, {"node": {"oid": "019336a3abae769238e5e6aaf5958ec9b0e9f38f", "messageHeadline": "96 - better version of nested linking cap", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 52, "deletions": 17}}, {"node": {"oid": "6b7003587954e3b888b981fe8347ea080d0131df", "messageHeadline": "96 - cap nested tree depth at 11", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 144, "deletions": 14}}, {"node": {"oid": "ebb1debca9650f0a88b542a16b3c0e511db1ff15", "messageHeadline": "add test for `balanceOfBatch`", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 45, "deletions": 1}}, {"node": {"oid": "830ed1d1e41e5aec8d8367fbf08e0b5048f34f7d", "messageHeadline": "prevent invalid relinking via request-approve flow", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 13, "deletions": 15}}, {"node": {"oid": "e4ff47e2522fe8625532c4618e3c88e964e0d82a", "messageHeadline": "comment out console2", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 1, "deletions": 1}}, {"node": {"oid": "8ed78ea90b262559a893040929c8c68eb54f596f", "messageHeadline": "85 - override `balanceOfBatch` without reverting", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 27, "deletions": 15}}, {"node": {"oid": "606c78dec9af1dfc9a5f847ae137d331ddcb838c", "messageHeadline": "2 - cap string length in `_linkTopHatToTree`", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 8, "deletions": 2}}, {"node": {"oid": "4b31ab1733c8ac3f386dfc33e95fa9d85ccb70ef", "messageHeadline": "Merge branch 'main' into fix-review", "author": {"name": "Spencer Graham", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 0, "deletions": 9}}, {"node": {"oid": "9d8fe4708bbd372d17ecbfe0ce5882d15d77db32", "messageHeadline": "Merge pull request #113 from Hats-Protocol/fix/33-35-116", "author": {"name": "Spencer Graham", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 207, "deletions": 54}}, {"node": {"oid": "795a719cc336f710aad4e77183eebb3bde7f9bc9", "messageHeadline": "allow tippyTopHats to bypass relink restrictions", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 16, "deletions": 11}}, {"node": {"oid": "584e424401f9bdc11a88986025c424b285fa63ec", "messageHeadline": "Merge pull request #116 from Hats-Protocol/fix/34", "author": {"name": "Spencer Graham", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 42, "deletions": 10}}, {"node": {"oid": "8a3b168b087402affbea9286680943b87959f35d", "messageHeadline": "fix formatting", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 1, "deletions": 3}}, {"node": {"oid": "3cdf1e9a96aed08c31d120e504343b33faa0487b", "messageHeadline": "Merge branch 'fix-review' into fix/34", "author": {"name": "Spencer Graham", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 274, "deletions": 70}}, {"node": {"oid": "d4791471029911b85e6b5c5d7aba2e35a73cc530", "messageHeadline": "Merge pull request #115 from Hats-Protocol/fix/3", "author": {"name": "Spencer Graham", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 23, "deletions": 0}}, {"node": {"oid": "d3ec3faf757bb5da906b83dcb15b41a9f297d846", "messageHeadline": "fix formatting", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 0, "deletions": 2}}, {"node": {"oid": "00a3d5968766d626dcad414b3ec8028bcce5a0de", "messageHeadline": "fix merge error", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 1, "deletions": 0}}, {"node": {"oid": "13a223065a4fc8095201b323e1345fd3cbd9dd08", "messageHeadline": "Merge branch 'fix-review' into fix/3", "author": {"name": "Spencer Graham", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 250, "deletions": 70}}, {"node": {"oid": "eb54db75766d699479b6aa73ed65540cca8184d0", "messageHeadline": "Merge pull request #114 from Hats-Protocol/fix/2", "author": {"name": "nintynick", "email": "nintynick@hatsprotocol.xyz", "user": {"login": "nintynick"}}, "additions": 46, "deletions": 9}}, {"node": {"oid": "0c46084dd8e72d48cb78032742008a49e5e8afdd", "messageHeadline": "Merge pull request #109 from Hats-Protocol/fix/11", "author": {"name": "nintynick", "email": "nintynick@hatsprotocol.xyz", "user": {"login": "nintynick"}}, "additions": 31, "deletions": 4}}, {"node": {"oid": "b745c250dddba6d32c435b4e06a746407a2db32b", "messageHeadline": "Merge pull request #107 from Hats-Protocol/fix/57", "author": {"name": "nintynick", "email": "nintynick@hatsprotocol.xyz", "user": {"login": "nintynick"}}, "additions": 49, "deletions": 51}}, {"node": {"oid": "eeb759f8ce5c6dcff0ef9e47f9dd824e8ec46767", "messageHeadline": "Merge pull request #108 from Hats-Protocol/fix/47", "author": {"name": "nintynick", "email": "nintynick@hatsprotocol.xyz", "user": {"login": "nintynick"}}, "additions": 92, "deletions": 5}}, {"node": {"oid": "e756d80de5e3828a06188d74de28caebe6bc7bb1", "messageHeadline": "fix formatting", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 6, "deletions": 4}}, {"node": {"oid": "c6aefd11ca3f0f97e8308f0cd218b311afc91ed4", "messageHeadline": "2 - cap size of details and imageURI", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 44, "deletions": 9}}, {"node": {"oid": "1e8a836d53370162e17ecee329e562a2ea819415", "messageHeadline": "116 - prevent relink tree thefts", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 11, "deletions": 1}}, {"node": {"oid": "c3bda8cbeb307b584a0eb2359733668bfff24564", "messageHeadline": "33 - change tophat props on link & relink", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 166, "deletions": 54}}, {"node": {"oid": "9d6e7d41ef47600163d4b01cce2076421cfe6428", "messageHeadline": "Merge pull request #111 from Hats-Protocol/revert-105-fix/3", "author": {"name": "nintynick", "email": "nintynick@hatsprotocol.xyz", "user": {"login": "nintynick"}}, "additions": 0, "deletions": 23}}, {"node": {"oid": "5f701e90dc93fd32187f618a5e18a18764aaf306", "messageHeadline": "Revert \"3 - remove ERC1155 from `supportsInterface()`\"", "author": {"name": "nintynick", "email": "nicholas.naraghi@gmail.com", "user": {"login": "nintynick"}}, "additions": 0, "deletions": 23}}, {"node": {"oid": "eb6c13d8c1a0c0c496ba60e97da26849a7944d3d", "messageHeadline": "Merge pull request #110 from Hats-Protocol/revert-106-fix/34", "author": {"name": "nintynick", "email": "nintynick@hatsprotocol.xyz", "user": {"login": "nintynick"}}, "additions": 10, "deletions": 42}}, {"node": {"oid": "0798ee0b2e41e8edb90959fee3319b71cc99de1e", "messageHeadline": "Revert \"34 - store hat status before changing toggle\"", "author": {"name": "nintynick", "email": "nicholas.naraghi@gmail.com", "user": {"login": "nintynick"}}, "additions": 10, "deletions": 42}}, {"node": {"oid": "1d7e06ad451c2ed37008e12836bfedb5b12cbec3", "messageHeadline": "Merge pull request #106 from Hats-Protocol/fix/34", "author": {"name": "nintynick", "email": "nintynick@hatsprotocol.xyz", "user": {"login": "nintynick"}}, "additions": 42, "deletions": 10}}, {"node": {"oid": "31c70cbc45fc546e4870e6a610c785b53ff18664", "messageHeadline": "Merge pull request #105 from Hats-Protocol/fix/3", "author": {"name": "nintynick", "email": "nintynick@hatsprotocol.xyz", "user": {"login": "nintynick"}}, "additions": 23, "deletions": 0}}, {"node": {"oid": "b5da76927698a6c2f5ac658b55a2eb3284f24cf0", "messageHeadline": "Merge pull request #104 from Hats-Protocol/fix/45", "author": {"name": "nintynick", "email": "nintynick@hatsprotocol.xyz", "user": {"login": "nintynick"}}, "additions": 14, "deletions": 0}}, {"node": {"oid": "fe88b104e507f8212ae593aa4d3e5a8cacd39ba8", "messageHeadline": "Merge pull request #103 from Hats-Protocol/fix/54", "author": {"name": "nintynick", "email": "nintynick@hatsprotocol.xyz", "user": {"login": "nintynick"}}, "additions": 1, "deletions": 1}}, {"node": {"oid": "972353505ac639c992120f21500c86969e4f2e0f", "messageHeadline": "Merge pull request #102 from Hats-Protocol/fix/85", "author": {"name": "nintynick", "email": "nicholas.naraghi@gmail.com", "user": {"login": "nintynick"}}, "additions": 16, "deletions": 0}}, {"node": {"oid": "5845897e1fdeb43aa47f9c8ddc267ea91e82ec3d", "messageHeadline": "35 - prevent unlinked tophats from being rugged", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 26, "deletions": 0}}, {"node": {"oid": "3eaf7b9f70f75dd971b3cdf3e9a68cb1423313ec", "messageHeadline": "fix formatting", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 6, "deletions": 5}}, {"node": {"oid": "b4dc3c0c66205ce97258040b229c5d0867723f5b", "messageHeadline": "11 - prevent hats from being overwritten", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 30, "deletions": 4}}, {"node": {"oid": "191cde58933b22f00f719b36f6ec41ac6738bcb6", "messageHeadline": "47 - prevent empty hat levels", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 92, "deletions": 5}}, {"node": {"oid": "f187e6a6664e17cb7fa58386e7abac48871370a3", "messageHeadline": "57 - disable mints and transfers of inactive hats", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 49, "deletions": 51}}, {"node": {"oid": "ad575d699b3d5b8f3d132f33e0a91cad3cb253e1", "messageHeadline": "34 - store hat status before changing toggle", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 42, "deletions": 10}}, {"node": {"oid": "9d0c4d03795cd994ee3ceab6dd0e8da2e2e109ea", "messageHeadline": "3 - remove ERC1155 from `supportsInterface()`", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 23, "deletions": 0}}, {"node": {"oid": "3a513f0bf4a3ed2ca42f057489f21259efb8b33e", "messageHeadline": "fix formatting", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 0, "deletions": 1}}, {"node": {"oid": "dd85ad7e637af6fbc4f9246b54f4541a5180cc0b", "messageHeadline": "45 - buildHatId reverts after max levels reached", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 15, "deletions": 0}}, {"node": {"oid": "5856a97a1710c7853dafdf8d058f4f419f861a55", "messageHeadline": "54 - fix natspec for changeHatMaxSupply", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 1, "deletions": 1}}, {"node": {"oid": "045cd10a56de6d8ffb8515e75d8ee61d68baa945", "messageHeadline": "85 - add reverting override for balanceOfBatch", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 16, "deletions": 0}}, {"node": {"oid": "fafcfdf046c0369c1f9e077eacd94a328f9d7af0", "messageHeadline": "Trust Audit Mitigation Review Changes", "author": {"name": "Spencer Graham", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 325, "deletions": 313}}, {"node": {"oid": "7ec196d029fa6e6a38d368cadd53acee8a7d0ac0", "messageHeadline": "fix README formatting", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 27, "deletions": 27}}, {"node": {"oid": "3bcca59c140b0eef7a6f2c949adb8cba71ceff08", "messageHeadline": "update README", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 7, "deletions": 6}}, {"node": {"oid": "87cc3af538baa1b0cd13dbfaa58e55325e978849", "messageHeadline": "add Trust Security audit", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 6, "deletions": 0}}, {"node": {"oid": "615ca4d8ce7ca125af61c511bb1bcca4a87fbd99", "messageHeadline": "camel-ize TopHat variable names", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 24, "deletions": 24}}, {"node": {"oid": "949ddb13324b748913907c2552a8252eb45b9c44", "messageHeadline": "named return variables and interface cleanup", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 208, "deletions": 206}}, {"node": {"oid": "eed3fc4154709af367f98f1f9fe117ff84d1014c", "messageHeadline": "hard code balance adjustments in transferHat", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 2, "deletions": 7}}, {"node": {"oid": "49b6854c7f56e65873a2712e540815568941c954", "messageHeadline": "use calldata instead of memory where possible", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 49, "deletions": 48}}, {"node": {"oid": "98483f091cdaccf61178554a9a09c029acf2b266", "messageHeadline": "use hat storage pointers instead of hat memory objects", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 113, "deletions": 114}}, {"node": {"oid": "899b51c6db471dc7241c41a3df324de67fafcb5c", "messageHeadline": "TRST-L-4 fix local tophat hole in isAdminOfHat", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 12, "deletions": 4}}, {"node": {"oid": "37fa2d2f3468ca6959da8e1bc17e7fcc3bb07961", "messageHeadline": "Mitigation of issues found in Trust Security's audit (#96)", "author": {"name": "Spencer Graham", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 688, "deletions": 223}}, {"node": {"oid": "60f07df0679ba52d4ad818b1bb3700d2f4f5a63a", "messageHeadline": "Merge pull request #87 from Hats-Protocol/develop", "author": {"name": "Spencer Graham", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 2314, "deletions": 2718}}, {"node": {"oid": "36f558b5d218a6b068d8af1f0ed6bcf6ace500c2", "messageHeadline": "deploy v1-beta1 to goerli", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 19, "deletions": 19}}, {"node": {"oid": "510c606f084b54765038e8626c63836cbbdc71a5", "messageHeadline": "Merge pull request #86 from Hats-Protocol/feat/limited-tophat-mutability", "author": {"name": "Spencer Graham", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 671, "deletions": 558}}, {"node": {"oid": "7cea2d09dbe5f1c16e117c9c4e0b85a6a223e8e9", "messageHeadline": "add revert test for non-tophat wearer", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 10, "deletions": 0}}, {"node": {"oid": "287481ca0e602142db61b6a5f783a2dfa8634c6d", "messageHeadline": "Merge pull request #83 from Hats-Protocol/cleanup-v1", "author": {"name": "Spencer Graham", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 576, "deletions": 1835}}, {"node": {"oid": "994c3c2d9849c524726f8866d6e3e4f0b622c3c7", "messageHeadline": "gitignore broadcast (deploys viewable in Releases)", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 2, "deletions": 937}}, {"node": {"oid": "901bf961cb50dd96a3afaf66f389a5b06ff589a3", "messageHeadline": "small natspec changes based on @nintynick review", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 3, "deletions": 3}}, {"node": {"oid": "161142af03210cd0fee2b048a942802b11952748", "messageHeadline": "update snapshot and coverage trackers", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 602, "deletions": 551}}, {"node": {"oid": "a840a8833da234da04ee6ea9f84e4977c26ca912", "messageHeadline": "update README", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 7, "deletions": 1}}, {"node": {"oid": "5a2f710ac9a213567b0294e13e75ab30b2233125", "messageHeadline": "allow tophats to change own details & imageURI", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 52, "deletions": 6}}, {"node": {"oid": "1fc0e04053c8b59236d45cb43903f92fe5aa33a6", "messageHeadline": "additional config for auto-generated docs", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 24, "deletions": 1}}, {"node": {"oid": "b9557991991e9af5748148dc198d111e59d49872", "messageHeadline": "add deploy workflow for docs", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 62, "deletions": 4}}, {"node": {"oid": "6ab2ce5a14491b5c98f9625e1107e8192b0f6a06", "messageHeadline": "add `forge fmt` to ci & reformat accordingly", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 334, "deletions": 829}}, {"node": {"oid": "d155e613a77d30f437227035feff58ec1478c11b", "messageHeadline": "move all interfaces to /Interfaces", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 3, "deletions": 3}}, {"node": {"oid": "4b100ef825b8ee7b79b130a6971841d83bd2915a", "messageHeadline": "close more natspec holes and re-organize functions", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 71, "deletions": 46}}, {"node": {"oid": "26c1fb233fd76682373115884d71c3d98a68301d", "messageHeadline": "add CONTRIBUTING.md", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 80, "deletions": 19}}, {"node": {"oid": "3cb84ea84ff56d54c1433ecaff8b93390912aa1d", "messageHeadline": "fill in natspec holes", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 8, "deletions": 4}}, {"node": {"oid": "00423a15935c569c3140b221370f32c3e24cc8ac", "messageHeadline": "Merge pull request #85 from Hats-Protocol/feat/consentful-tree-linking", "author": {"name": "Spencer Graham", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 948, "deletions": 388}}, {"node": {"oid": "eb471362f0aa8071ce07a9d90062d5b8f85123e9", "messageHeadline": "fix admin check for last level hats", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 139, "deletions": 6}}, {"node": {"oid": "7e569a3ef69eed29d092b73869f579c391b98b75", "messageHeadline": "add new link functions to IHats & IHatsIdUtilities", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 17, "deletions": 0}}, {"node": {"oid": "6d9e00111807b5d8ead53e5d7414626b84fbc6c4", "messageHeadline": "address test compile warnings", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 4, "deletions": 6}}, {"node": {"oid": "986b9a0f782eac0b6b2a6bf22614c67b443a142e", "messageHeadline": "clean up linking names and comments", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 20, "deletions": 20}}, {"node": {"oid": "ce23f682ded1a8265b0bc97bb5c5703859fafc1e", "messageHeadline": "prevent cross-tree linking", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 113, "deletions": 10}}, {"node": {"oid": "a765ceaee6048fc0bbc4798231d7ce467a0ed0c2", "messageHeadline": "allow newAdminId wearers to approve tree links", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 36, "deletions": 11}}, {"node": {"oid": "c756baaacd25ec9e9ab34344b256e313845d295b", "messageHeadline": "Merge pull request #84 from Hats-Protocol/optimize-v1", "author": {"name": "Spencer Graham", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 574, "deletions": 535}}, {"node": {"oid": "8b36c284e5f184ac09f15c80fce83e406fdd6c54", "messageHeadline": "update coverage and gas tracking", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 359, "deletions": 339}}, {"node": {"oid": "0d72aa72be13aa6bf32cf07cfd88bf85f4257914", "messageHeadline": "move circular link check to `_linkTopHatToTree`", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 29, "deletions": 3}}, {"node": {"oid": "96db51951d51db828eb582f7e3cc97577cab35c7", "messageHeadline": "add relinking ability", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 133, "deletions": 22}}, {"node": {"oid": "1699ff472377eff68ac12b89b652703c958452af", "messageHeadline": "add request and approval flow for tophat links", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 156, "deletions": 29}}, {"node": {"oid": "e24b01524f152eebf21b6c61ffc80081ba058920", "messageHeadline": "update snapshot and coverage trackers", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 477, "deletions": 469}}, {"node": {"oid": "6e8f9c474682de484e1db710532e9c44b6df0f69", "messageHeadline": "simplify internal mint and burn methods", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 28, "deletions": 36}}, {"node": {"oid": "6742d6f420be4b9c3385a65e33d45dcd72f608ba", "messageHeadline": "move hatSupply to Hat struct", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 17, "deletions": 10}}, {"node": {"oid": "9cf9961c4494bcc5cecb73f84a0516d6b0b6d138", "messageHeadline": "rebase `optimize-v1` to 'develop' a1472d7", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 2, "deletions": 2}}, {"node": {"oid": "a1472d7a05960d0c6f8a49510434acf0cb165998", "messageHeadline": "Merge pull request #82 from Hats-Protocol/cleanup-v1", "author": {"name": "Spencer Graham", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 712, "deletions": 853}}, {"node": {"oid": "82879cb90924f288cb0e193cd428a898aece2b1c", "messageHeadline": "fix typo & complete natspec, per @nintynick review", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 2, "deletions": 2}}, {"node": {"oid": "90d303e1a3621c45977a1f402a8056de81946f40", "messageHeadline": "simple gas optimizations", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 57, "deletions": 25}}, {"node": {"oid": "a17c2f4f87f26b6776e0636f425e14142a1d4130", "messageHeadline": "update snapshot and coverage reports", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 527, "deletions": 460}}, {"node": {"oid": "957b42e6d85cfd76196acef8cd4206c63af67694", "messageHeadline": "remove old example module contracts", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 0, "deletions": 209}}, {"node": {"oid": "dc6fb5d2bf7a0aaab0d11a969ef98b605ac1dc89", "messageHeadline": "clean up ci", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 4, "deletions": 10}}, {"node": {"oid": "f5d994f04466522010d5634ca218780a499d6883", "messageHeadline": "fix readme markdown", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 0, "deletions": 1}}, {"node": {"oid": "af3cd513eb21040ea39397b65956f73eb6ffcef3", "messageHeadline": "clean up readme", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 26, "deletions": 40}}, {"node": {"oid": "d4cbd6df96c26c9629aed55967d0997727781174", "messageHeadline": "update copyright entity", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 8, "deletions": 8}}, {"node": {"oid": "df1a92a691967f889d84937c9dc1593264542dfb", "messageHeadline": "clean up comments and natspec", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 120, "deletions": 105}}, {"node": {"oid": "f84c33f4b48f1c414b334a2721f77bdf8c0aa350", "messageHeadline": "bump (c) year", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 8, "deletions": 8}}, {"node": {"oid": "fc88b7e4227ba9fb1fd1cf6996f5d57fa3cdb394", "messageHeadline": "address compiler warnings", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 27, "deletions": 20}}, {"node": {"oid": "14776eddc54dde7ba48041d213baab80948a0494", "messageHeadline": "Merge pull request #81 from Hats-Protocol/feat/eligibility-event", "author": {"name": "Spencer Graham", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 79, "deletions": 41}}, {"node": {"oid": "0e7b4b7c3cd461087d89841288d5347d9ad6d03a", "messageHeadline": "Merge pull request #79 from Hats-Protocol/feat/linkable-trees", "author": {"name": "Spencer Graham", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 203, "deletions": 17}}, {"node": {"oid": "a803093578fdfe32ded57c4ef20dff6ffc14d7f3", "messageHeadline": "Add TopHatLinked Event", "author": {"name": "Kevin Siegler", "email": "17910833+topocount@users.noreply.github.com", "user": {"login": "topocount"}}, "additions": 12, "deletions": 0}}, {"node": {"oid": "ee5ae76391fe8d0d58f6e405a79abe7a72277458", "messageHeadline": "Add docstring comments for unlink and link functions", "author": {"name": "Kevin Siegler", "email": "17910833+topocount@users.noreply.github.com", "user": {"login": "topocount"}}, "additions": 7, "deletions": 0}}, {"node": {"oid": "c2cae6f51eee75da29f2cd6aa5847402bd47c0b7", "messageHeadline": "Hardcode Levels Constant", "author": {"name": "Kevin Siegler", "email": "17910833+topocount@users.noreply.github.com", "user": {"login": "topocount"}}, "additions": 1, "deletions": 2}}, {"node": {"oid": "4be63c849adb2e21295207b572396afd6135aef2", "messageHeadline": "Utilize Errors instead of require error strings", "author": {"name": "Kevin Siegler", "email": "17910833+topocount@users.noreply.github.com", "user": {"login": "topocount"}}, "additions": 10, "deletions": 9}}, {"node": {"oid": "bc515c7e4cde74c16c70739f9619eb2a7b88f83a", "messageHeadline": "Add test to prevent re-linking before unlinking", "author": {"name": "Kevin Siegler", "email": "17910833+topocount@users.noreply.github.com", "user": {"login": "topocount"}}, "additions": 4, "deletions": 0}}, {"node": {"oid": "f2ade3b331d6cf60f9a72feebedcddce567462ce", "messageHeadline": "Add error messages to checks", "author": {"name": "Kevin Siegler", "email": "17910833+topocount@users.noreply.github.com", "user": {"login": "topocount"}}, "additions": 15, "deletions": 4}}, {"node": {"oid": "ed7eb839b38f511fc6336716b6ce79091c558d78", "messageHeadline": "Disallow linking if already linked", "author": {"name": "Kevin Siegler", "email": "17910833+topocount@users.noreply.github.com", "user": {"login": "topocount"}}, "additions": 1, "deletions": 0}}, {"node": {"oid": "750c3fc04c93bb66809c5899d603b6444cd9f626", "messageHeadline": "Add extra circular linking test and hardcode bitshifts", "author": {"name": "Kevin Siegler", "email": "17910833+topocount@users.noreply.github.com", "user": {"login": "topocount"}}, "additions": 13, "deletions": 9}}, {"node": {"oid": "040b226452f0c7b49f1b91df8111ca9fc10b2780", "messageHeadline": "Implement Circular Linkage Check", "author": {"name": "Kevin Siegler", "email": "17910833+topocount@users.noreply.github.com", "user": {"login": "topocount"}}, "additions": 30, "deletions": 7}}, {"node": {"oid": "0eff38be674bbf6e4fe01a4830b23f10c8716358", "messageHeadline": "Updated Comments and cleaned up some details", "author": {"name": "Kevin Siegler", "email": "17910833+topocount@users.noreply.github.com", "user": {"login": "topocount"}}, "additions": 11, "deletions": 4}}, {"node": {"oid": "cda3d9873db69db5ea25d6ebd3214898751225d0", "messageHeadline": "Add Top Level Linking Tests", "author": {"name": "Kevin Siegler", "email": "17910833+topocount@users.noreply.github.com", "user": {"login": "topocount"}}, "additions": 40, "deletions": 11}}, {"node": {"oid": "a29290a913bda2ede4aa38dade90c9857255fadc", "messageHeadline": "fmt Test Contract", "author": {"name": "Kevin Siegler", "email": "17910833+topocount@users.noreply.github.com", "user": {"login": "topocount"}}, "additions": 27, "deletions": 26}}, {"node": {"oid": "96195a7be85b16a74e22bd64180297d60eb1e349", "messageHeadline": "Review Comments from @slgraham", "author": {"name": "Kevin Siegler", "email": "17910833+topocount@users.noreply.github.com", "user": {"login": "topocount"}}, "additions": 3, "deletions": 3}}, {"node": {"oid": "11fd945d716ea6d6f94767d100c3fed466fe9089", "messageHeadline": "feat: Allow trees to be linked from the TopHat", "author": {"name": "Kevin Siegler", "email": "17910833+topocount@users.noreply.github.com", "user": {"login": "topocount"}}, "additions": 98, "deletions": 11}}, {"node": {"oid": "4f509e38edd7bab14164fde130e300522efeaa87", "messageHeadline": "Merge pull request #78 from Hats-Protocol/feat/16x14", "author": {"name": "Spencer Graham", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 659, "deletions": 653}}, {"node": {"oid": "26baca2c609925eff9f36b80e30817495a1d3ec1", "messageHeadline": "tests for set/check wearer back in good standing", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 53, "deletions": 0}}, {"node": {"oid": "523e47d60d72c6aa11a0595274af147547b06549", "messageHeadline": "check for hat balance in _processHatWearerStatus", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 19, "deletions": 33}}, {"node": {"oid": "586d1c734acbfe35d4dce1881a20c1d7e1e9298f", "messageHeadline": "add WearerStandingChanged event", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 7, "deletions": 8}}, {"node": {"oid": "d45c8bdb2f56bd4dc2eaa6e654e394252862eb5d", "messageHeadline": "Merge pull request #80 from Hats-Protocol/feat/immutable-nontransfera\u2026", "author": {"name": "Spencer Graham", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 361, "deletions": 370}}, {"node": {"oid": "19b814229df0bda385a4a76ea47f655537a70bf6", "messageHeadline": "Merge branch 'feat/16x14' into feat/immutable-nontransferability", "author": {"name": "Spencer Graham", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 35, "deletions": 133}}, {"node": {"oid": "978cc9da2f69c1c791bb021ca839a41053778ad4", "messageHeadline": "try update ci to run snapshot and coverage reports", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 10, "deletions": 1}}, {"node": {"oid": "a52d83946f77c33ba35c554183f1c0d83be0ca7b", "messageHeadline": "update coverage and snapshot tracking", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 179, "deletions": 184}}, {"node": {"oid": "bce9ee691e7266b565e04ba64172ecdedd26e0a7", "messageHeadline": "reduce optimizer_runs to 10k to \u2b07\ufe0f contract size", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 1, "deletions": 1}}, {"node": {"oid": "be7bf44ca161c732d7df147d26a2e630a139c500", "messageHeadline": "get 14x16 tests passing", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 9, "deletions": 38}}, {"node": {"oid": "60dd6f66657761e79a75078a0543e0464e6408b4", "messageHeadline": "switch to 14 levels with 16 bits each", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 9, "deletions": 10}}, {"node": {"oid": "51fae8eeed6d9de244cf21c5ce23fafc7e1b7c28", "messageHeadline": "update snapshot and coverage trackers", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 285, "deletions": 273}}, {"node": {"oid": "8c068dd02ca0a78840b6feef216487af8f1126b9", "messageHeadline": "prevent transfer of immutable hats", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 73, "deletions": 22}}, {"node": {"oid": "e25f93418aa80d0090db310c0df17e6e43e1c9af", "messageHeadline": "update readme", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 7, "deletions": 3}}, {"node": {"oid": "e6fc6f4b5752a1d9cbc9fdb3cc1677e092202dd5", "messageHeadline": "add check and error for invalid child hat", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 172, "deletions": 136}}, {"node": {"oid": "dff61c07d6f32a6055722068d7a1ba715f183595", "messageHeadline": "update gas snapshot and coverage records", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 584, "deletions": 584}}, {"node": {"oid": "1fb73d9c6d8a971518d65d05511ee6db12bbf386", "messageHeadline": "tests are passing", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 17, "deletions": 17}}, {"node": {"oid": "022fe728547b6f73341fdc07a993338f9879f2bd", "messageHeadline": "re-shape hat tree to 14 bits per level (compiling)", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 18, "deletions": 17}}, {"node": {"oid": "9c36a0e0de3e921ffc6d19f5f06ec5bc8a5d4b1c", "messageHeadline": "Merge pull request #77 from Hats-Protocol/fix/transfer-to-balance-check", "author": {"name": "Spencer Graham", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 25, "deletions": 2}}, {"node": {"oid": "14d3aa8fdf40783470fd8f99eee217d0a988b461", "messageHeadline": "clean up comments", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 0, "deletions": 3}}, {"node": {"oid": "0804e993358b16e6ae9138f95a59d8357c56eb81", "messageHeadline": "check if transfer recipient has hat token balance", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 28, "deletions": 2}}, {"node": {"oid": "68d7dcde58423e5772a9b09e9d63eaa9e6295d3e", "messageHeadline": "Merge pull request #76 from davehrlichman/patch-3", "author": {"name": "Spencer Graham", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 2, "deletions": 16}}, {"node": {"oid": "e3c6f2ca1f22e7b0f1b905cdce1d390fc95cfa59", "messageHeadline": "Update README", "author": {"name": "David Ehrlichman", "email": "110009869+davehrlichman@users.noreply.github.com", "user": {"login": "davehrlichman"}}, "additions": 2, "deletions": 16}}, {"node": {"oid": "fae3e36dad9a0d6a194e460aa164f17999eda7d8", "messageHeadline": "Merge pull request #75 from Hats-Protocol/fix/transfer-balance-check", "author": {"name": "Spencer Graham", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 17, "deletions": 2}}, {"node": {"oid": "887a940a2614ea1579e9338fdd26b8e499bffc11", "messageHeadline": "check if transfer recipient already wears hat", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 17, "deletions": 2}}, {"node": {"oid": "798341886f02c4304ae485c4809853a03528a963", "messageHeadline": "Merge pull request #74 from Hats-Protocol/develop", "author": {"name": "nintynick", "email": "nicholas.naraghi@gmail.com", "user": {"login": "nintynick"}}, "additions": 2, "deletions": 2}}, {"node": {"oid": "270b1d096c4083d2e8e10e284981e5912ecac93a", "messageHeadline": "remove test placeholder values in uri", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 2, "deletions": 2}}, {"node": {"oid": "49e3ab7c6c0e1926903c3b58e47a37d7cdf9457a", "messageHeadline": "Merge pull request #73 from Hats-Protocol/develop", "author": {"name": "nintynick", "email": "nicholas.naraghi@gmail.com", "user": {"login": "nintynick"}}, "additions": 39, "deletions": 39}}, {"node": {"oid": "d518a80efbe609a4aef108215a9cf2d3492864cb", "messageHeadline": "update readme to refer to Releases", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 6, "deletions": 18}}, {"node": {"oid": "d94f1df941b057f80d92b7e41426276f9b30a6aa", "messageHeadline": "apply ci to develop branch", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 1, "deletions": 1}}, {"node": {"oid": "2b4067433172f8994c25bd57356f99cb73acb8bd", "messageHeadline": "remove `isActive` & `isMutable` for contract size", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 32, "deletions": 20}}, {"node": {"oid": "4e2435044890f822e355b8f7a8b3ccf76d46f0e8", "messageHeadline": "Merge beta into main", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 3397, "deletions": 881}}, {"node": {"oid": "a4a876f3960acfb0bd6a816fc61e97fae6f76aad", "messageHeadline": "fixing SampleHatter merge conflict", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 0, "deletions": 0}}, {"node": {"oid": "a2165aad20ef5003aed03859f15d40a4368effea", "messageHeadline": "pre-emptively avoiding merge conflicts from beta", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 0, "deletions": 330}}, {"node": {"oid": "966cc08fe88dc50fa758d56b060c6e05964b3ba3", "messageHeadline": "Merge pull request #71 from Hats-Protocol/feat/tophat-details", "author": {"name": "nintynick", "email": "nicholas.naraghi@gmail.com", "user": {"login": "nintynick"}}, "additions": 118, "deletions": 68}}, {"node": {"oid": "99b9ada8204f40ecf0c5198461eb6bd80f2f1f29", "messageHeadline": "compiling and tests passing", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 118, "deletions": 68}}, {"node": {"oid": "17347b18ff60008fbd98244d2b9405db1635e7f3", "messageHeadline": "AGPL v3", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 897, "deletions": 190}}, {"node": {"oid": "141cbe929db451919d729f66e299c79977c2326f", "messageHeadline": "AGPL v3", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 757, "deletions": 153}}, {"node": {"oid": "98dca535fbd922aaca1ba39e69dce32dec7c51df", "messageHeadline": "Merge pull request #69 from Hats-Protocol/readme/mutability", "author": {"name": "Spencer Graham", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 34, "deletions": 1}}, {"node": {"oid": "1175684ec7a4a9cb9aa6fa89cfe97bc9e010e4ba", "messageHeadline": "add imageURI stuff to readme", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 31, "deletions": 16}}, {"node": {"oid": "a83c1bb6c729f9f6dd53b3116ef42647ad003989", "messageHeadline": "add mutability to readme", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 18, "deletions": 0}}, {"node": {"oid": "7d40def921943d2176a8ce6a8eeb3da58062b5ac", "messageHeadline": "Merge pull request #68 from topocount/id-util-coverage", "author": {"name": "Spencer Graham", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 50, "deletions": 0}}, {"node": {"oid": "08e6c87e1d5b3dbf7f1d5b73b1924b60511a2515", "messageHeadline": "Implement initial semantic coverage for hat id utils", "author": {"name": "Kevin Siegler", "email": "17910833+topocount@users.noreply.github.com", "user": {"login": "topocount"}}, "additions": 50, "deletions": 0}}, {"node": {"oid": "74d50c2d7e84fbfe38f605e2dc4fdd87157918ec", "messageHeadline": "Merge pull request #67 from Hats-Protocol/fix/contract-size", "author": {"name": "Spencer Graham", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 114, "deletions": 116}}, {"node": {"oid": "9f4d5c08cfb04a8ea9b3c064140eec150aed55d0", "messageHeadline": "fix solbase install", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 2, "deletions": 1}}, {"node": {"oid": "f1ef5609fe71c22a80db3e8f5ebd1758c6345a59", "messageHeadline": "Merge pull request #66 from Hats-Protocol/feat/simple-mutability", "author": {"name": "Spencer Graham", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 550, "deletions": 127}}, {"node": {"oid": "49569e59d4f98816765ac578c89c724ce69aa83a", "messageHeadline": "consolidate errors", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 25, "deletions": 27}}, {"node": {"oid": "a45ec4db0df0763f29b3ad31790752531d3f5714", "messageHeadline": "remove `createTopHatAndHat` convenience function", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 42, "deletions": 42}}, {"node": {"oid": "3077f01e2b9eb709eb23708d238072b360628e0d", "messageHeadline": "replace oz utils with solbase utils", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 45, "deletions": 46}}, {"node": {"oid": "583e792d4ada4b858c411e8e541ad13d54ecb430", "messageHeadline": "add change hat property functions", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 301, "deletions": 50}}, {"node": {"oid": "e940ba954d017161e008f6063952883a79b5222d", "messageHeadline": "another small contract size reduction", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 7, "deletions": 6}}, {"node": {"oid": "f6ed1f5885af39fc6a2e256d42478bdbfae345b1", "messageHeadline": "small contract size reductions", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 16, "deletions": 35}}, {"node": {"oid": "2b8441994af62f61d4b830af7a96acd35a128c26", "messageHeadline": "add makeImmutable", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 104, "deletions": 0}}, {"node": {"oid": "0f6748118382dcc361192dcc4f308884adbc906f", "messageHeadline": "tests passing for create mutable hat", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 27, "deletions": 10}}, {"node": {"oid": "96cf25a787c6ec74af4557fbeafa55556070b6ea", "messageHeadline": "add mutable option in createHat", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 153, "deletions": 84}}, {"node": {"oid": "0b8e5b64be6b10b30da18a1705155fb03f3af292", "messageHeadline": "bump to solc 0.8.17", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 1, "deletions": 1}}, {"node": {"oid": "5b18b54824831edaeaea25d0942839618ecaeae6", "messageHeadline": "Merge pull request #65 from Hats-Protocol/feat/config", "author": {"name": "Spencer Graham", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 30, "deletions": 13}}, {"node": {"oid": "bc92b2c49ae9d413ab99649bd2e1fd7be7496c7b", "messageHeadline": "Merge pull request #64 from Hats-Protocol/fix/interface", "author": {"name": "Spencer Graham", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 238, "deletions": 195}}, {"node": {"oid": "afea3ed89dd6ac481c7d4e950ca452844d9bb2be", "messageHeadline": "refactor and complete IHats", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 238, "deletions": 195}}, {"node": {"oid": "19f2170a820a25ba1df173ed6cefa5064a6a61aa", "messageHeadline": "bump oz dep", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 1, "deletions": 1}}, {"node": {"oid": "40f12b576af6368c3bf235d6866d9e7f104e088e", "messageHeadline": "add config and move hat.active to first config bit", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 29, "deletions": 12}}, {"node": {"oid": "10378a806bac278190054be0072bb654a4dad6f3", "messageHeadline": "Merge pull request #63 from Hats-Protocol/fix/image", "author": {"name": "Spencer Graham", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 119, "deletions": 48}}, {"node": {"oid": "3b3e77da67a662da21fcaf28cbb47cbbe5b57301", "messageHeadline": "fix json formatting bug", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 44, "deletions": 6}}, {"node": {"oid": "8fb11e3b288e35f358d770dee889d1ae2f71d07f", "messageHeadline": "simplify imageURI tree logic", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 42, "deletions": 17}}, {"node": {"oid": "4cf2d08cb1a78e626438817088b1ed3f682c6c27", "messageHeadline": "getting closer, but still not there", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 37, "deletions": 29}}, {"node": {"oid": "4144dcc069e4986cc7c3ed9f5f87b3bc6dedb9a4", "messageHeadline": "add gas snapshot", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 56, "deletions": 0}}, {"node": {"oid": "f2c8272a26d0a1b806313def014ce8e03f3d44d0", "messageHeadline": "RIP rinkeby", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 2, "deletions": 2}}, {"node": {"oid": "e292d6e7efe1df87a6ec64951aefb3c8f712df05", "messageHeadline": "deploy beta 4 to goerli", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 76, "deletions": 19}}, {"node": {"oid": "f8e1d31cc58308ca505e8671d14e9f4170b8e527", "messageHeadline": "deploy beta 4 to gnosis chain", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 69, "deletions": 16}}, {"node": {"oid": "ce433f44862bb0c4c17674d11507f8b1aa8e544c", "messageHeadline": "deploy beta 4 to polygon", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 141, "deletions": 7}}, {"node": {"oid": "d9680e94f139900eba2474baeb3fb41e9310c151", "messageHeadline": "prep for new deployments", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 30, "deletions": 8}}, {"node": {"oid": "9294a33d447fccae371213241726c3f00ce4d3b5", "messageHeadline": "Merge pull request #61 from Hats-Protocol/feat/batchCreate", "author": {"name": "Spencer Graham", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 305, "deletions": 33}}, {"node": {"oid": "0d0d207da5c69adda5ad01125f54fb340326e95c", "messageHeadline": "add create batch hats function", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 288, "deletions": 22}}, {"node": {"oid": "f7be74812fc930c47aaad8bb722994de61b6f612", "messageHeadline": "fix getHatLevel bug", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 7, "deletions": 4}}, {"node": {"oid": "a0ba9b3e48347b42b6b1b15731b26bbc39ec26c6", "messageHeadline": "enable admins to create grandchildren hats", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 7, "deletions": 4}}, {"node": {"oid": "af9cd9b840983fba5a059e36cafd36aa5a640849", "messageHeadline": "bump to solc 0.8.16", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 1, "deletions": 1}}, {"node": {"oid": "6871f514957af4a95677c1d709b8d3031f96da6f", "messageHeadline": "update forge-std and oz deps", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 2, "deletions": 2}}, {"node": {"oid": "8dd4d497ff65960edd5fbba0167da542ebf7e7e9", "messageHeadline": "Merge pull request #60 from Hats-Protocol/eligibility-cleanup", "author": {"name": "Spencer Graham", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 171, "deletions": 66}}, {"node": {"oid": "fedcb4ae0a5ab00ab371df09e043b9ea031537a0", "messageHeadline": "fix test comment", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 1, "deletions": 1}}, {"node": {"oid": "88fb30ceea38889df4b637557232ac48d95b94c4", "messageHeadline": "fix natspec", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 6, "deletions": 5}}, {"node": {"oid": "a3e67724487946809c7b738996a30823f0ae81da", "messageHeadline": "fix setHatWearerStatus arg name", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 2, "deletions": 2}}, {"node": {"oid": "a436b18afe9cd71262aaa8d30350b9050d2599f0", "messageHeadline": "use isEligible instead of isInGoodStanding", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 165, "deletions": 61}}, {"node": {"oid": "9ece9dc1feb5b9c9331898661f98f3437e70cfe8", "messageHeadline": "Merge pull request #59 from Hats-Protocol/big-push-readme-updates", "author": {"name": "Spencer Graham", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 105, "deletions": 64}}, {"node": {"oid": "601645737588b1e5a2e2368ea71654dac202cd5b", "messageHeadline": "readme updates", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 44, "deletions": 25}}, {"node": {"oid": "534bc3e95995e2155afe6a157d126d5cfef7bda6", "messageHeadline": "Merge pull request #58 from Hats-Protocol/refactor-id-funcs", "author": {"name": "nintynick", "email": "nicholas.naraghi@gmail.com", "user": {"login": "nintynick"}}, "additions": 112, "deletions": 157}}, {"node": {"oid": "669d79616d0caac09907cdaf53aac06c00f0d219", "messageHeadline": "update README based on feedback from spengrah", "author": {"name": "nintynick", "email": "nicholas.naraghi@gmail.com", "user": {"login": "nintynick"}}, "additions": 3, "deletions": 2}}, {"node": {"oid": "07e83e392dcadf1359d2af0e4fececc6db3f41d8", "messageHeadline": "update HatsIdUtilities natspec", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 2, "deletions": 1}}, {"node": {"oid": "44f7b00355d1fa58de3043cb8a6761dd4ab98e02", "messageHeadline": "factor out tophat utility functions", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 15, "deletions": 27}}, {"node": {"oid": "53bb0f19372c39c648a8e65d24e10ab94af59e40", "messageHeadline": "add natspec and clarify labels", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 66, "deletions": 22}}, {"node": {"oid": "c56889dd91fced398570e717c84d1e586e2a1e23", "messageHeadline": "another update for linter", "author": {"name": "nintynick", "email": "nicholas.naraghi@gmail.com", "user": {"login": "nintynick"}}, "additions": 2, "deletions": 0}}, {"node": {"oid": "7c749f8e37f2599a21ff5299cc83d79a3d369e41", "messageHeadline": "more updates for linter", "author": {"name": "nintynick", "email": "nicholas.naraghi@gmail.com", "user": {"login": "nintynick"}}, "additions": 1, "deletions": 32}}, {"node": {"oid": "9d3c7af1b0e29a3781e1f025f6d8efb89d2b5484", "messageHeadline": "updates for linter", "author": {"name": "nintynick", "email": "nicholas.naraghi@gmail.com", "user": {"login": "nintynick"}}, "additions": 7, "deletions": 5}}, {"node": {"oid": "1f2308b3355acd5130b6614f8adc46a1cbeb0518", "messageHeadline": "add formatting to documentation in README", "author": {"name": "nintynick", "email": "nicholas.naraghi@gmail.com", "user": {"login": "nintynick"}}, "additions": 77, "deletions": 29}}, {"node": {"oid": "c8cb397e057a55814532af881e7858a94f2039af", "messageHeadline": "Update README.md", "author": {"name": "nintynick", "email": "nicholas.naraghi@gmail.com", "user": {"login": "nintynick"}}, "additions": 159, "deletions": 27}}, {"node": {"oid": "e3f1a3dd78af41bc1326ec49eb7ccf02e562a17c", "messageHeadline": "Merge branch 'beta' into refactor-id-funcs", "author": {"name": "Spencer Graham", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 35, "deletions": 34}}, {"node": {"oid": "f1c5f2f0d0ea9f26b34275e85b300a79c0e65737", "messageHeadline": "Merge pull request #57 from Hats-Protocol/relabeling", "author": {"name": "nintynick", "email": "nicholas.naraghi@gmail.com", "user": {"login": "nintynick"}}, "additions": 189, "deletions": 190}}, {"node": {"oid": "98614016133c84c05f8e7438af8f3b2e33107b2d", "messageHeadline": "Update Hats.sol", "author": {"name": "nintynick", "email": "nicholas.naraghi@gmail.com", "user": {"login": "nintynick"}}, "additions": 12, "deletions": 12}}, {"node": {"oid": "b08c1e5a27473a884733b7f095d83da3232c1624", "messageHeadline": "Update Hats.t.sol", "author": {"name": "nintynick", "email": "nicholas.naraghi@gmail.com", "user": {"login": "nintynick"}}, "additions": 20, "deletions": 20}}, {"node": {"oid": "0a2be497b2ffb8e43a84984e1a3c073d35f5f1f7", "messageHeadline": "Update SampleHatter.sol", "author": {"name": "nintynick", "email": "nicholas.naraghi@gmail.com", "user": {"login": "nintynick"}}, "additions": 2, "deletions": 2}}, {"node": {"oid": "59deb3a3297c680ae203257f365752634f47b893", "messageHeadline": "replace hat id component sizes with constants", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 7, "deletions": 3}}, {"node": {"oid": "4d5a6d4c593a10f953559a07b81395ba7a6fd9d3", "messageHeadline": "shorten and factor id utility funcs", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 51, "deletions": 134}}, {"node": {"oid": "2102011042ff840a690b0156e130b6f29ae5debb", "messageHeadline": "admin", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 133, "deletions": 135}}, {"node": {"oid": "6370463d2c0f8f0c4a1d781960eb01ef4bc70c24", "messageHeadline": "toggle", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 71, "deletions": 83}}, {"node": {"oid": "40b9b1d5f40918dc5bf73a29235fef48d52dc6bd", "messageHeadline": "eligibility", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 70, "deletions": 78}}, {"node": {"oid": "eb7cf6fb8ff889e075d01c3b3b7d0f592e3ef543", "messageHeadline": "convert admin to parent", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 154, "deletions": 152}}, {"node": {"oid": "331cb77c28ea70067fe08657b7d743634ed12243", "messageHeadline": "convert get*Status to check*Status", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 15, "deletions": 15}}, {"node": {"oid": "0603de3f6aa46e4d044f3e1e2af87623d19331de", "messageHeadline": "convert from conditions to statusController", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 126, "deletions": 129}}, {"node": {"oid": "6dea5b85ce7334c33332781317cf5934e1fc5536", "messageHeadline": "convert from oracle to wearerCriteria", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 76, "deletions": 54}}, {"node": {"oid": "da54916630eeb4bc93a8fe10ceec00a3dd1b7255", "messageHeadline": "Merge pull request #56 from Hats-Protocol/feat/batch-mint", "author": {"name": "nintynick", "email": "nicholas.naraghi@gmail.com", "user": {"login": "nintynick"}}, "additions": 139, "deletions": 38}}, {"node": {"oid": "a603758566956ccabb8b40d675c7ef0434d26980", "messageHeadline": "remove batch transfer section from README", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 0, "deletions": 6}}, {"node": {"oid": "4fee3a4b4cec94a0804728b72f409b386af3fab1", "messageHeadline": "add batch minting tests", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 106, "deletions": 28}}, {"node": {"oid": "5b8ac9dedd902a1465ad156fe6afe12579c96553", "messageHeadline": "fix bug preventing transfer of revoked hats", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 1, "deletions": 1}}, {"node": {"oid": "a657f0b23382e2c299ef336a9c8129a869f8fb4c", "messageHeadline": "enable batched hat minting", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 19, "deletions": 2}}, {"node": {"oid": "7455d43572336b249557f7dafc21df8ac8ec64e7", "messageHeadline": "add check for hat existence on `mintHat`", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 15, "deletions": 3}}, {"node": {"oid": "4e5e6889ce597a2d25e61a2c685b9b020e6f7c18", "messageHeadline": "deploy `Beta 3` to gnosis chain", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 64, "deletions": 19}}, {"node": {"oid": "b582dc9cbfc02843a5b7c3bd88a42d3ea273d7c7", "messageHeadline": "enable tophats to be transfered by wearer", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 21, "deletions": 12}}, {"node": {"oid": "2381c26f354d9ec8c83502b1f82896001c22c2d8", "messageHeadline": "deploy beta to gnosis chain", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 181, "deletions": 4}}, {"node": {"oid": "f8a22ee9c24c20d77d9d0186715aecef3a98d85f", "messageHeadline": "Merge pull request #55 from Hats-Protocol/feat/image-uri", "author": {"name": "Spencer Graham", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 248, "deletions": 46}}, {"node": {"oid": "799c7bc929bfb685fb166279dd93b3debb112331", "messageHeadline": "add support for imageURIs", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 10, "deletions": 4}}, {"node": {"oid": "4939a2d729918599116d0cd63d15319a64ae59ee", "messageHeadline": "fix merge conflicts with `beta` branch", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 2, "deletions": 4}}, {"node": {"oid": "3d8156407a2c11dbdede515bb73b2da382e74693", "messageHeadline": "update imageURI functions for gc deployment", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 6, "deletions": 17}}, {"node": {"oid": "69b1cb3663f1200eaf687600f6aa922b7d18de82", "messageHeadline": "prep changeHatImageURI", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 19, "deletions": 0}}, {"node": {"oid": "76e751ac5764d28cba8f8fe53410ad6d40bb0049", "messageHeadline": "update readme", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 19, "deletions": 2}}, {"node": {"oid": "daad0b8ac17d3168b8c808d8e1def64474a703ac", "messageHeadline": "add support for imageURIs", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 216, "deletions": 43}}, {"node": {"oid": "b1dfb33a8f744af33190456bec77642b5637ee3d", "messageHeadline": "Merge branch 'beta' into feat/image-uri", "author": {"name": "nintynick", "email": "nicholas.naraghi@gmail.com", "user": {"login": "nintynick"}}, "additions": 643, "deletions": 482}}, {"node": {"oid": "2a3f7ec3339d6d237d6e767dd692281d56fade0b", "messageHeadline": "fix merge conflicts with `beta` branch", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 12, "deletions": 4}}, {"node": {"oid": "dda5a1afd023cd3159ef7a13b8b09aa6555489bd", "messageHeadline": "update imageURI functions for gc deployment", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 15, "deletions": 22}}, {"node": {"oid": "5945013cc2b8163778d5ee436f9d4ff95662391c", "messageHeadline": "deploy to rinkeby", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 220, "deletions": 1}}, {"node": {"oid": "ed431d7e19b67cffa52e4045d417fa3921a75dff", "messageHeadline": "update dependencies", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 2, "deletions": 2}}, {"node": {"oid": "fe2016198b191f4424bb6c337fbd625215073445", "messageHeadline": "fix ci", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 1, "deletions": 1}}, {"node": {"oid": "1dec413f0405d73649987e1f7e63accaadc10feb", "messageHeadline": "update base65 and strings utils to oz", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 11, "deletions": 203}}, {"node": {"oid": "608b40e70a630a241b4a728b063a97382b8e637b", "messageHeadline": "update IHats", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 5, "deletions": 0}}, {"node": {"oid": "681e0864251a3f5d0f040c32a9b01cf0bb9987de", "messageHeadline": "add `name` public variable", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 22, "deletions": 8}}, {"node": {"oid": "98fa792713bb7c21e70b5a561d586df7ea3b1555", "messageHeadline": "ci", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 14, "deletions": 22}}, {"node": {"oid": "d631688b289cb958cd0ec78f68bce490ce58ba4d", "messageHeadline": "ci cleanup", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 0, "deletions": 2}}, {"node": {"oid": "3de83de39654107244d79d6bc2d90ceeb4b7049a", "messageHeadline": "update coverage", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 385, "deletions": 254}}, {"node": {"oid": "abaf8e08fa90487f314e240efff9a902cdb6f6c1", "messageHeadline": "Merge pull request #48 from Hats-Protocol/mvp", "author": {"name": "nintynick", "email": "nicholas.naraghi@gmail.com", "user": {"login": "nintynick"}}, "additions": 3177, "deletions": 515}}, {"node": {"oid": "6fb224e00f9a20422c7bc0144c0c244fccb7684b", "messageHeadline": "prep changeHatImageURI", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 19, "deletions": 0}}, {"node": {"oid": "6b428b16a841a645e64c0e3b6fe478c6f4999a6c", "messageHeadline": "update readme", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 19, "deletions": 2}}, {"node": {"oid": "5668c98a7aab390fb5f0541b0616befe08214a33", "messageHeadline": "add support for imageURIs", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 219, "deletions": 48}}, {"node": {"oid": "e23abebfbf1fd8eae30499b515d73b393da48562", "messageHeadline": "replace solmate submodule with select contracts", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 343, "deletions": 8}}, {"node": {"oid": "200f342974e2b84e3a8feb45da390b94b6412860", "messageHeadline": "Merge pull request #43 from davehrlichman/patch-2", "author": {"name": "Spencer Graham", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 0, "deletions": 11}}, {"node": {"oid": "7d57cb15c501e9188f31f4bd3817715713404389", "messageHeadline": "Merge pull request #42 from davehrlichman/patch-1", "author": {"name": "Spencer Graham", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 7, "deletions": 7}}, {"node": {"oid": "0e8e09f3d8c3baea9b0e82c471dd9fb04cb6318d", "messageHeadline": "Remove Hat Struct Variable Packing section", "author": {"name": "davehrlichman", "email": "110009869+davehrlichman@users.noreply.github.com", "user": {"login": "davehrlichman"}}, "additions": 0, "deletions": 11}}, {"node": {"oid": "cfd245796bcc893baaea914970b2c68d71963a07", "messageHeadline": "ci: try fix solmate", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 1, "deletions": 1}}, {"node": {"oid": "73ecfbef2ae196143517840661249160814cf2bc", "messageHeadline": "ci: fix forge", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 3, "deletions": 3}}, {"node": {"oid": "51203cf6fe1705bad6bc1411015b27c39dc8fb76", "messageHeadline": "ci: try to fix forge action", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 3, "deletions": 3}}, {"node": {"oid": "c239a0e9cdbd4207c1cb79b07ef70187e63c8dbe", "messageHeadline": "update forge-std", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 1, "deletions": 1}}, {"node": {"oid": "98579b4d92fe9a5157c37e1ae20ef0f8504de826", "messageHeadline": "update forge-std", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 1, "deletions": 1}}, {"node": {"oid": "b7c1eefa837304fd3c494478f5ec1a72a733ed99", "messageHeadline": "update solmate", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 1, "deletions": 1}}, {"node": {"oid": "49a14c6b9c5dfa0ca1363421f8d8c945e6ca813f", "messageHeadline": "configure foundry to use solc 0.8.15", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 2, "deletions": 0}}, {"node": {"oid": "44d9f81a8a7839041cc79c0da7afecbbdf8fe4f6", "messageHeadline": "enable `forge coverage`", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 461, "deletions": 10}}, {"node": {"oid": "38d40e7cbc52d97cceab348b4ef654e431381195", "messageHeadline": "Update README.md", "author": {"name": "davehrlichman", "email": "110009869+davehrlichman@users.noreply.github.com", "user": {"login": "davehrlichman"}}, "additions": 7, "deletions": 7}}, {"node": {"oid": "2c32ea1b6f0a9dd55a784a6b24198a57d04a49df", "messageHeadline": "Merge pull request #41 from Hats-Protocol/chore/setup-ci", "author": {"name": "Spencer Graham", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 138, "deletions": 15}}, {"node": {"oid": "9738f2a8988f1a362348e35ec29e0630f8c3e714", "messageHeadline": "again try fix linting action", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 1, "deletions": 2}}, {"node": {"oid": "0773fa1920e1109fa21acb03f2c4a3162ca6cc33", "messageHeadline": "again try to fix linting action", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 1, "deletions": 1}}, {"node": {"oid": "6cbc9a4a3fb05d28a1f55bb8fab4b293d0b4dc53", "messageHeadline": "try to fix linting action", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 3, "deletions": 5}}, {"node": {"oid": "c82a4202c86d491ab026bf79703170d691a6f681", "messageHeadline": "try to fix linting action", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 2, "deletions": 2}}, {"node": {"oid": "cba7398a651266cf7045ccef3b4e030997a54fdb", "messageHeadline": "rename CI action to Testing", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 1, "deletions": 32}}, {"node": {"oid": "7193194a93dfd4d9aaf42ae01666b6aa4484b4ba", "messageHeadline": "add markdown linting", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 73, "deletions": 15}}, {"node": {"oid": "15793ed3cab55a76de26afc427990f983d672309", "messageHeadline": "correcting location of github workflows yml file", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 30, "deletions": 0}}, {"node": {"oid": "31d3a481f1a0346397a79a28874cb3fc09291a54", "messageHeadline": "another test", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 2, "deletions": 46}}, {"node": {"oid": "922715c4b935c318585835e50956503bbf16d712", "messageHeadline": "Merge branch 'chore/setup-ci' of https://github.com/Hats-Protocol/hat\u2026", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 84, "deletions": 2}}, {"node": {"oid": "108ef947205d0fcf216fb09c04d3a4fcf2e02443", "messageHeadline": "test the new ci", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 1, "deletions": 0}}, {"node": {"oid": "b3813cfa798c5e1d3d47460907cd21ff206e8308", "messageHeadline": "Merge pull request #39 from Hats-Protocol/feat/pretty-ids", "author": {"name": "Spencer Graham", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 84, "deletions": 2}}, {"node": {"oid": "c0ce3aa9c53b474b51f1c658ea0bccc361ad6a64", "messageHeadline": "try to get CI working on feat/pretty-ids branch", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 1, "deletions": 0}}, {"node": {"oid": "97a99902990ba99375ee3e33f00a08b469a1a25b", "messageHeadline": "try to get CI working on mvp branch", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 1, "deletions": 0}}, {"node": {"oid": "9d48f0cf25bcfe9caefb89401c56d32a2cf95fcb", "messageHeadline": "add `foundry test` github action", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 28, "deletions": 0}}, {"node": {"oid": "1dede81b62e136b17d2de924f05ab1b2b14066c1", "messageHeadline": "small cleanup", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 0, "deletions": 1}}, {"node": {"oid": "25a46ac989b61d75bfe20bcc316184f4424659fa", "messageHeadline": "add natspec for toPrettyHatId", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 13, "deletions": 4}}, {"node": {"oid": "4a4cdc2957d2a4fbcb2b92baddea31c2a57d9268", "messageHeadline": "hat ids can now be pretty \u2728", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 76, "deletions": 2}}, {"node": {"oid": "519f65ece023d22985dfaf6afb79555e4317899f", "messageHeadline": "+ contribution & addressable id content to readme", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 32, "deletions": 2}}, {"node": {"oid": "fe7c2784e579efd7545aa3d328ff1c6fbd2147c6", "messageHeadline": "alpha deployment", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 126, "deletions": 15}}, {"node": {"oid": "bef57a73f77edb98079da684e4b69847fbaf6406", "messageHeadline": "enable gas reporting", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 1, "deletions": 0}}, {"node": {"oid": "6826cbb7aeb5a5f466ea8db1f092c3f8a480e28f", "messageHeadline": "fix uri", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 112, "deletions": 17}}, {"node": {"oid": "303b9820b46684e68e306f8c47a305d0349065c5", "messageHeadline": "Merge pull request #34 from Hats-Protocol/begin-testing", "author": {"name": "Spencer Graham", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 1172, "deletions": 187}}, {"node": {"oid": "9760b2008df4a5382c547c11062e59e46ce73e3e", "messageHeadline": "replace hardcoded selectors", "author": {"name": "nintynick", "email": "nicholas.naraghi@gmail.com", "user": {"login": "nintynick"}}, "additions": 12, "deletions": 7}}, {"node": {"oid": "4884a8a43c83d32cd465be638786c4d12449d282", "messageHeadline": "make hats mapping and _isInGoodStanding internal", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 16, "deletions": 19}}, {"node": {"oid": "127577168529cf297b830a41df61e589859ae649", "messageHeadline": "fix double-increment topHatId", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 0, "deletions": 1}}, {"node": {"oid": "163cb334b8cfff07a11c36ba049ea717ec061f94", "messageHeadline": "deploy to goerli", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 176, "deletions": 0}}, {"node": {"oid": "c70121216c0f32f96606dcf1fc9acf503101e347", "messageHeadline": "remove batch fns and clean up comments & logs", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 38, "deletions": 147}}, {"node": {"oid": "9912ea28a35397a4e860c4f6ec02fd628b195382", "messageHeadline": "add test for minting inactive hat", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 19, "deletions": 0}}, {"node": {"oid": "fa174f1f0aa83cbd80ef4718a1cccfcbd8413d48", "messageHeadline": "add _process functions and manual try catch for oracle and conditions", "author": {"name": "nintynick", "email": "nicholas.naraghi@gmail.com", "user": {"login": "nintynick"}}, "additions": 113, "deletions": 77}}, {"node": {"oid": "882ca452c83da42ff45d04141559b8396c5385d7", "messageHeadline": "add remaining mint tests", "author": {"name": "nintynick", "email": "nicholas.naraghi@gmail.com", "user": {"login": "nintynick"}}, "additions": 41, "deletions": 14}}, {"node": {"oid": "ef8478774b60d27913163aee51f8da548351927d", "messageHeadline": "specific expectReverts to error tests", "author": {"name": "nintynick", "email": "nicholas.naraghi@gmail.com", "user": {"login": "nintynick"}}, "additions": 31, "deletions": 27}}, {"node": {"oid": "fad25104c5219b345d7f2225067c9fe75fcde081", "messageHeadline": "update _constructURI for topHats and add tests", "author": {"name": "nintynick", "email": "nicholas.naraghi@gmail.com", "user": {"login": "nintynick"}}, "additions": 29, "deletions": 2}}, {"node": {"oid": "bcfc02be80a5286943ab58c0ad36553f8702e561", "messageHeadline": "add tests for errors from overriden functions", "author": {"name": "nintynick", "email": "nicholas.naraghi@gmail.com", "user": {"login": "nintynick"}}, "additions": 11, "deletions": 0}}, {"node": {"oid": "3f92a2c4c3f6e509de256c8accd18c0040a18a66", "messageHeadline": "add test for viewHat and other public view functions", "author": {"name": "nintynick", "email": "nicholas.naraghi@gmail.com", "user": {"login": "nintynick"}}, "additions": 69, "deletions": 0}}, {"node": {"oid": "038e9f3ee81ccc974b826dcd226e9f3c4f351bc6", "messageHeadline": "add tests for transferHat", "author": {"name": "nintynick", "email": "nicholas.naraghi@gmail.com", "user": {"login": "nintynick"}}, "additions": 24, "deletions": 0}}, {"node": {"oid": "9d46daae7a2ba7fbdb40ce0b38479263ff264b01", "messageHeadline": "refactor test setup and tests for readability", "author": {"name": "nintynick", "email": "nicholas.naraghi@gmail.com", "user": {"login": "nintynick"}}, "additions": 36, "deletions": 64}}, {"node": {"oid": "847df0fa5253856ef7692fe1d3d2eea2301a82ec", "messageHeadline": "add getHatWearerStatus tests with mockCall Oracle", "author": {"name": "nintynick", "email": "nicholas.naraghi@gmail.com", "user": {"login": "nintynick"}}, "additions": 84, "deletions": 13}}, {"node": {"oid": "f48b7683adaf9a72ddb916c217c3b29c17e40bd4", "messageHeadline": "add getHatStatus tests using mockCall Conditions", "author": {"name": "nintynick", "email": "nicholas.naraghi@gmail.com", "user": {"login": "nintynick"}}, "additions": 43, "deletions": 8}}, {"node": {"oid": "e9b88d802d3a6be51f095d990fd5b917507d502a", "messageHeadline": "disallow multiple wearings of the same hat", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 4, "deletions": 0}}, {"node": {"oid": "0a4cfd38148b2389c482eb5a2b3aec561954e65e", "messageHeadline": "fix `isAdmin` underflow error and more tests pass", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 78, "deletions": 9}}, {"node": {"oid": "1a5c3385a911f7e2c1e4c5a8be372c04383bc005", "messageHeadline": "refactor tests", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 256, "deletions": 254}}, {"node": {"oid": "ec0b8d79cb5581c7699857f62fb50b70b148b73e", "messageHeadline": "bump forge-std lib", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 1, "deletions": 1}}, {"node": {"oid": "a4c408073f6a0c8815df4e0ccb06a58d84fd9428", "messageHeadline": "add NotHatOracle test case", "author": {"name": "nintynick", "email": "nicholas.naraghi@gmail.com", "user": {"login": "nintynick"}}, "additions": 13, "deletions": 5}}, {"node": {"oid": "f56a5c210b01096e1dc13f5700832f487a5d7572", "messageHeadline": "add more Oracle tests and TODOs, all passing", "author": {"name": "nintynick", "email": "nicholas.naraghi@gmail.com", "user": {"login": "nintynick"}}, "additions": 80, "deletions": 6}}, {"node": {"oid": "1aa15d4d1ffcfae48878b2850836b089b97ae844", "messageHeadline": "add initial setHatWearerStatus tests and update _revokeHat", "author": {"name": "nintynick", "email": "nicholas.naraghi@gmail.com", "user": {"login": "nintynick"}}, "additions": 43, "deletions": 8}}, {"node": {"oid": "f967ac71bd3b004b21e571c910f3851634c49acf", "messageHeadline": "abstract setUp function into helper contract", "author": {"name": "nintynick", "email": "nicholas.naraghi@gmail.com", "user": {"login": "nintynick"}}, "additions": 38, "deletions": 70}}, {"node": {"oid": "3e368e3962ba448d065df998b6b8a7f90459af91", "messageHeadline": "add renounceHat tests and update _burn", "author": {"name": "nintynick", "email": "nicholas.naraghi@gmail.com", "user": {"login": "nintynick"}}, "additions": 59, "deletions": 3}}, {"node": {"oid": "3c04740b727a97babcb63e18bb9380ab9763fc42", "messageHeadline": "add tests for setHatStatus", "author": {"name": "nintynick", "email": "nicholas.naraghi@gmail.com", "user": {"login": "nintynick"}}, "additions": 103, "deletions": 0}}, {"node": {"oid": "3cc07d820a967d30a6e2fcb92412bb0e42260505", "messageHeadline": "mint single hat test now passing", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 134, "deletions": 29}}, {"node": {"oid": "302b1d61d749f0b4a2db7e2129275f64cfd833d6", "messageHeadline": "add lastHatId to `viewHat`", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 3, "deletions": 0}}, {"node": {"oid": "09f42736deb01839bf420c8e125e9b7f5689cebe", "messageHeadline": "fix `createHat` and more test progress", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 91, "deletions": 144}}, {"node": {"oid": "420f1b1aedf6beaebc1de69fc193dd025ef5dd18", "messageHeadline": "fix `getAdminAtLevel` and `getHatLevel`", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 98, "deletions": 66}}, {"node": {"oid": "cc3968b5f8823ff390ce061599d901ff1221fb0a", "messageHeadline": "test to create & mint 3 hats partially passing", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 76, "deletions": 36}}, {"node": {"oid": "db49d39760080bcfb313fd55c8f21ca58b52cecd", "messageHeadline": "Merge pull request #33 from Hats-Protocol/feat/generalized-oracle", "author": {"name": "Spencer Graham", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 340, "deletions": 266}}, {"node": {"oid": "decd4e35b94cd43b7e7b43579297d9226442b16a", "messageHeadline": "add initial test coverage, breaking on _isActive", "author": {"name": "nintynick", "email": "nicholas.naraghi@gmail.com", "user": {"login": "nintynick"}}, "additions": 224, "deletions": 48}}, {"node": {"oid": "3aaae888a3c0775e6a902a27aa686c78b3334d8b", "messageHeadline": "Merge pull request #32 from Hats-Protocol/small-fixes", "author": {"name": "nintynick", "email": "nicholas.naraghi@gmail.com", "user": {"login": "nintynick"}}, "additions": 32, "deletions": 31}}, {"node": {"oid": "ce8e0c562b581630b423708e40e1f9156e30adc9", "messageHeadline": "remove (comment out) `createHatsTree`", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 28, "deletions": 27}}, {"node": {"oid": "8f124b688e6ee14edac96832be41dcc70159523f", "messageHeadline": "fix balnce adjustment in `_mint` and `transferHat`", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 4, "deletions": 4}}, {"node": {"oid": "336b7db1bff083d745d2b0e02bb68ec37372f348", "messageHeadline": "Merge pull request #30 from Hats-Protocol/feat/example-hatters", "author": {"name": "nintynick", "email": "nicholas.naraghi@gmail.com", "user": {"login": "nintynick"}}, "additions": 130, "deletions": 12}}, {"node": {"oid": "9a4493839900e9433113cee72733b1372d4bff9a", "messageHeadline": "add some hatter contract examples", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 61, "deletions": 0}}, {"node": {"oid": "c8d1e9bbec0aed589d9d307ac97e695540436200", "messageHeadline": "flesh out IHats.sol", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 69, "deletions": 9}}, {"node": {"oid": "80e15043eadbc3861fe7cd0cb5aaddc17c35d442", "messageHeadline": "Merge branch 'feat/example-hatters' of https://github.com/Hats-Protoc\u2026", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 0, "deletions": 0}}, {"node": {"oid": "fe2ec35181370fc67418178010ead84789249f19", "messageHeadline": "remove id from viewHat return objects", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 0, "deletions": 3}}, {"node": {"oid": "684ccd32ecdd11aa3258e932fe086f512fd8f4ed", "messageHeadline": "remove id from viewHat return objects", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 0, "deletions": 2}}, {"node": {"oid": "ecda913feb89c81fa07708ec6fccf39370884801", "messageHeadline": "update sample Conditions and Oracle contracts with new naming convention", "author": {"name": "nintynick", "email": "nicholas.naraghi@gmail.com", "user": {"login": "nintynick"}}, "additions": 31, "deletions": 82}}, {"node": {"oid": "a9055608835f171b4a5fb6b8882063c6b5357103", "messageHeadline": "align conditions with new oracle's nomenclature", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 6, "deletions": 8}}, {"node": {"oid": "49cc1ffd95d34d6a958d02354d3b82fb99a10600", "messageHeadline": "oracle can report 2 dimensions (revoke, standing)", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 155, "deletions": 147}}, {"node": {"oid": "7fc6ca59e4237fdce18400d76c27f5ad433084d3", "messageHeadline": "Merge pull request #19 from topocount/addressable-ids", "author": {"name": "Spencer Graham", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 256, "deletions": 160}}, {"node": {"oid": "c9f623768b7bff5ab1447a37743ed34d59ed04db", "messageHeadline": "Resolve Spencer's increment comment", "author": {"name": "Kevin Siegler", "email": "17910833+topocount@users.noreply.github.com", "user": {"login": "topocount"}}, "additions": 2, "deletions": 2}}, {"node": {"oid": "4aa2f768943dc4166df71fff62bda4441bd97a4e", "messageHeadline": "Get Examples compiling", "author": {"name": "Kevin Siegler", "email": "17910833+topocount@users.noreply.github.com", "user": {"login": "topocount"}}, "additions": 17, "deletions": 15}}, {"node": {"oid": "a1c1dfbc889786b89b0dbe32a90042da0677d652", "messageHeadline": "Convert Hat Ids to uint256 accross the board", "author": {"name": "Kevin Siegler", "email": "17910833+topocount@users.noreply.github.com", "user": {"login": "topocount"}}, "additions": 157, "deletions": 76}}, {"node": {"oid": "bf60c9412df32bb9beeb1ac36397aa395550ef9b", "messageHeadline": "Refactor to Addressable Ids", "author": {"name": "Kevin Siegler", "email": "17910833+topocount@users.noreply.github.com", "user": {"login": "topocount"}}, "additions": 113, "deletions": 101}}, {"node": {"oid": "c1c6f52483e4b7f5c2b3ff6fec37475aec6c8eb4", "messageHeadline": "Get compiling", "author": {"name": "Kevin Siegler", "email": "17910833+topocount@users.noreply.github.com", "user": {"login": "topocount"}}, "additions": 6, "deletions": 5}}, {"node": {"oid": "dbc91d22fc61ce4b1bcfaf680ded1d346ad6cf5c", "messageHeadline": "add example Hats Oracles", "author": {"name": "nintynick", "email": "nicholas.naraghi@gmail.com", "user": {"login": "nintynick"}}, "additions": 87, "deletions": 0}}, {"node": {"oid": "b6dea0bd3ff93cf3964c73a5290341b1126bae3a", "messageHeadline": "add sample HatsConditions contracts - #27", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 70, "deletions": 1}}, {"node": {"oid": "dfff531d57de46cff0358f06a3da8a7226fc1477", "messageHeadline": "add try-catch logic to oracle & conditions methods", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 38, "deletions": 32}}, {"node": {"oid": "2548f7d76b685a33c58281675bbdbbfbaa5b2471", "messageHeadline": "change `_balanceOf` to internal", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 1, "deletions": 1}}, {"node": {"oid": "fcb52da9fc6a4672acbf13837c1f2d23bfd6a5d7", "messageHeadline": "readme updates", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 152, "deletions": 0}}, {"node": {"oid": "5b28e2f91b121c0061b7051e3fc7cb75afaa5d93", "messageHeadline": "add HatRevoked event", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 5, "deletions": 1}}, {"node": {"oid": "9eaf721c9d310945ed0f6ab50374a6242d8b0a72", "messageHeadline": "generalize `deactivateHat` to `toggleHatStatus`", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 13, "deletions": 8}}, {"node": {"oid": "83437b2ca0049eedd51090e17ad2d47f2a132fec", "messageHeadline": "refactor mint and transfer functions", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 85, "deletions": 121}}, {"node": {"oid": "8f40b1edf3f2ebdc1ca7c347dba6af8bc8961b2d", "messageHeadline": "add createHatTree and batchMintHat", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 124, "deletions": 6}}, {"node": {"oid": "7bdc49746797499647a3e297c7eb0634e8e9c320", "messageHeadline": "several changes", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 110, "deletions": 60}}, {"node": {"oid": "617d8cfc0370b39b571a6c136dd0d686a9c6ad49", "messageHeadline": "forked solmate erc1155.sol w/ virtual balanceOf()", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 3, "deletions": 2}}, {"node": {"oid": "73fc1574343e4d9b6152e07acdbffd7032201e7b", "messageHeadline": "natspec for all Hats.sol except transfer functions", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 163, "deletions": 27}}, {"node": {"oid": "dffad0b46a4d5c07e02289605348dc116b343d1e", "messageHeadline": "implement requestConditions and requestOracleRuling", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 70, "deletions": 57}}, {"node": {"oid": "827e9d9f75b332487000d7a15e96407f6053b6db", "messageHeadline": "Hat struct packing", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 43, "deletions": 38}}, {"node": {"oid": "dc68e547b25c1ee44c2aabf4af306704d714d2f9", "messageHeadline": "enforce topHat for everything", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 53, "deletions": 42}}, {"node": {"oid": "1c27243d61df957a06a7d459be0463562e366043", "messageHeadline": "recursive isAdminOfHat and a couple other adjustments", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 62, "deletions": 32}}, {"node": {"oid": "832a3c1815c0de3aeab4265cd9c66f904ccfbc0e", "messageHeadline": "implement top hat", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 60, "deletions": 71}}, {"node": {"oid": "badb7171c2291970a04692e3641f585036f6f2ee", "messageHeadline": "add mint hat function", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 16, "deletions": 7}}, {"node": {"oid": "5687b4a99748ee99c067f87711493a75f66d2042", "messageHeadline": "remove eligibility and offer logic", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 3, "deletions": 282}}, {"node": {"oid": "a7005042d8632aaf0feb9bbfe55d5b5a80f4f521", "messageHeadline": "Merge pull request #15 from Hats-Protocol/recursive", "author": {"name": "Spencer Graham", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 262, "deletions": 80}}, {"node": {"oid": "1b0927c1fd5bd4bfe2f17a5419e86cf768c0ceb0", "messageHeadline": "recursive checkpoint (not complete)", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 258, "deletions": 77}}, {"node": {"oid": "107a3faca800b1344a360c26e4549d3e729fa2e8", "messageHeadline": "fix uri json", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 3, "deletions": 3}}, {"node": {"oid": "ff2974b1b0751800b09e79a3620ffcfc445e4f8a", "messageHeadline": "foundry config changes", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 1, "deletions": 0}}, {"node": {"oid": "6eccc13437744de95ee43ba2aa2ba101e89fc403", "messageHeadline": "clean up import refs", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 4, "deletions": 6}}, {"node": {"oid": "db6ef4454e424aa95e1bdc5510db7bdf5c106f66", "messageHeadline": "partial contracts are compiling", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 471, "deletions": 127}}, {"node": {"oid": "311a02374a2ff898caf4d8e0719366567294de5f", "messageHeadline": "add gitignore", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 2, "deletions": 0}}, {"node": {"oid": "29a6da5a600d6604081bd812ab74fd24eaeb1631", "messageHeadline": "Merge pull request #1 from Hats-Protocol/foundry", "author": {"name": "Spencer Graham", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 363, "deletions": 0}}, {"node": {"oid": "904da41a6767b952dbb57818f394471013e087c3", "messageHeadline": "clean up contracts for foundry", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 349, "deletions": 0}}, {"node": {"oid": "2c8c2c1740f1ea183b5c8df30b8ad57053658805", "messageHeadline": "init foundry", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 6, "deletions": 325}}, {"node": {"oid": "9feec3941339ccafde20a861225f9924b3c8138d", "messageHeadline": "forge install: solmate", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 4, "deletions": 0}}, {"node": {"oid": "ef2628553678c585d3858a7017ce47da581a9930", "messageHeadline": "forge install: forge-std", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 4, "deletions": 0}}, {"node": {"oid": "e7b077e1ff16b9af581f9164a21b54967986d360", "messageHeadline": "partial contracts checkpoint", "author": {"name": "spengrah", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 325, "deletions": 0}}, {"node": {"oid": "13ee015b960a3a9b85245b0bfcbc8f1ac47172e8", "messageHeadline": "Initial commit", "author": {"name": "Spencer Graham", "email": "code@spengrah.xyz", "user": {"login": "spengrah"}}, "additions": 123, "deletions": 0}}]