{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":656553624,"defaultBranch":"master","name":"tikan","ownerLogin":"tsujp","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2023-06-21T07:17:37.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/4571498?v=4","public":true,"private":false,"isOrgOwned":false},"refInfo":{"name":"","listCacheKey":"v0:1716192560.0","currentOid":""},"activityList":{"items":[{"before":"4e6798034a577cd95434ee86c3fde76430a18443","after":"554e157c735befc455a05855b85b10108db7c8c4","ref":"refs/heads/master","pushedAt":"2024-05-20T08:07:09.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"tsujp","name":"Jordan Ellis Coppard","path":"/tsujp","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4571498?s=80&v=4"},"commit":{"message":"add verbatimModuleSyntax to tsconfig","shortMessageHtmlLink":"add verbatimModuleSyntax to tsconfig"}},{"before":"11459a01209b5009fdd89443845a5c67a55c370e","after":"4e6798034a577cd95434ee86c3fde76430a18443","ref":"refs/heads/master","pushedAt":"2024-05-13T15:39:36.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"tsujp","name":"Jordan Ellis Coppard","path":"/tsujp","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4571498?s=80&v=4"},"commit":{"message":"add circuit failure test matcher; factor getMatch; add start_board tests","shortMessageHtmlLink":"add circuit failure test matcher; factor getMatch; add start_board tests"}},{"before":"b388fdd50fd47458071972cb902729b48bd1ac3d","after":"11459a01209b5009fdd89443845a5c67a55c370e","ref":"refs/heads/master","pushedAt":"2024-05-12T16:51:30.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"tsujp","name":"Jordan Ellis Coppard","path":"/tsujp","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4571498?s=80&v=4"},"commit":{"message":"add argument pass-through to `bun test` via `output.ts`","shortMessageHtmlLink":"add argument pass-through to bun test via output.ts"}},{"before":"c1e73e8562ef39b3c54eb3d37ea53db539880c7e","after":"b388fdd50fd47458071972cb902729b48bd1ac3d","ref":"refs/heads/master","pushedAt":"2024-05-12T14:26:16.000Z","pushType":"push","commitsCount":6,"pusher":{"login":"tsujp","name":"Jordan Ellis Coppard","path":"/tsujp","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4571498?s=80&v=4"},"commit":{"message":"organise test harness files; apply js code formatting","shortMessageHtmlLink":"organise test harness files; apply js code formatting"}},{"before":"6cecae29224293d09c6a219dea166643bade3d65","after":"c1e73e8562ef39b3c54eb3d37ea53db539880c7e","ref":"refs/heads/master","pushedAt":"2024-04-17T11:04:29.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"tsujp","name":"Jordan Ellis Coppard","path":"/tsujp","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4571498?s=80&v=4"},"commit":{"message":"apply formatting and small cleanup to changes","shortMessageHtmlLink":"apply formatting and small cleanup to changes"}},{"before":"82c1fb7f99e9b718a47f22f7d0fa4c25f1fd1ba5","after":"6cecae29224293d09c6a219dea166643bade3d65","ref":"refs/heads/master","pushedAt":"2024-04-17T10:43:58.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"tsujp","name":"Jordan Ellis Coppard","path":"/tsujp","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4571498?s=80&v=4"},"commit":{"message":"fix incorrect callback invocation in test harness\n\n- Now reply payload is actually available.\n- Lots of ugly code here, some work still to clean it up.","shortMessageHtmlLink":"fix incorrect callback invocation in test harness"}},{"before":"04e160416028caabfb0cb8940d4626369dac46d2","after":"82c1fb7f99e9b718a47f22f7d0fa4c25f1fd1ba5","ref":"refs/heads/master","pushedAt":"2024-04-17T10:04:36.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"tsujp","name":"Jordan Ellis Coppard","path":"/tsujp","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4571498?s=80&v=4"},"commit":{"message":"add round-trip messaging to test harness","shortMessageHtmlLink":"add round-trip messaging to test harness"}},{"before":"57f37b8d152a2f4b8f53253659bfc11e6e82c9ee","after":"04e160416028caabfb0cb8940d4626369dac46d2","ref":"refs/heads/master","pushedAt":"2024-04-16T07:49:04.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"tsujp","name":"Jordan Ellis Coppard","path":"/tsujp","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4571498?s=80&v=4"},"commit":{"message":"update test harness for recursive circuit testing\n\n- Each player backend is in it's own Bun process so WASM memory limits are not\n hit when using multiple backends (to simulate two players). Before this commit\n the WASM memory limit was being hit easily even without recursive aggregation\n due to instantiating two backends with a single JS runtime and said backends\n probably sharing the same WASM instance(?).\n\n File `ipc_player.ts` is the spawned process in question.\n\n Note: this could be reworked from a Bun process per player to a Web Worker to\n better simulate production but is fine for now due to multiple WASM\n instances(?) being created and thus memory limits not being reached.\n\n- Game class is intended to be a slice of player interactions; there is no need\n to re-create a player when testing different game scenarios or dishonest\n actors (save for a specific kind of dishonest behaviour) as for 99% of\n interactions dishonesty can be simulated with bogus inputs/outputs or\n intentional mis-sequencing of messages. So think of a match between players as\n a timeline of moves, a `Game` is a slice (view read-only region) of that\n timeline and multiple matches and scenarios can be simulated within one\n contiguous timeline. One `Game` (match) for each scenario.\n\n The one exception to simulating dishonesty is a player intentionally\n executing a different circuit (say one with some `assert` statements commented\n out) and sharing their proof as if it were from the real FoW chess circuit.\n\n Since that's a specific scenario it can be handled individually in the test\n files.\n\n Note: perhaps rename `Game` to `Match`.\n\n- Player class instruments Noir and circuit backend to execute moves, create\n proofs etc.\n\n Note: rename `good_player.ts` to `player.ts` when cleaning up later.\n\n- Cleaned up various helpers from their earlier implementations like getting\n circuit artifacts (`circuits.ts`) and lots of _stuff_ in `misc.ts`.\n\n- Add class-method performance decorator to time circuit/backend operations\n without repeated boilerplate `performance_decorator.ts`.\n\n- Add a kind of 'proxied-curry' which creates properties on a target class such\n that said chain of properties end in methods that a given source class has\n so calling conventions can look more natural. As a concrete example this means\n asking the white players' process to create a move proof can be specified as\n `game.white.playTurn(/* typed args */)` instead of\n `game('white', 'playTurn', /* un-typed args */)` which makes writing tests\n less brittle. Compile-time checking means we don't have to waste minutes of\n time each test run (during development) only for the test to fail due to a\n typo.\n\n- Update `foo.test.ts` to use new test harness but only in proof-of-concept as\n of this commit.\n\nLots of cleanup to do so committing now has some mess in files but preserves\nwhat is, really, a working implementation of the harness.","shortMessageHtmlLink":"update test harness for recursive circuit testing"}},{"before":"c7dd508827b68ffe5281e8852004bb0ccc1fea75","after":"57f37b8d152a2f4b8f53253659bfc11e6e82c9ee","ref":"refs/heads/master","pushedAt":"2024-04-14T16:58:35.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"tsujp","name":"Jordan Ellis Coppard","path":"/tsujp","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4571498?s=80&v=4"},"commit":{"message":"change test precheck to be less verbose\n\n- Also convert import paths to use test harness alias","shortMessageHtmlLink":"change test precheck to be less verbose"}},{"before":"593909cf51fcc89cdec7116e15e6236865ff2bec","after":"c7dd508827b68ffe5281e8852004bb0ccc1fea75","ref":"refs/heads/master","pushedAt":"2024-04-02T11:23:16.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"tsujp","name":"Jordan Ellis Coppard","path":"/tsujp","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4571498?s=80&v=4"},"commit":{"message":"add working IVC\n\n- Need to clean things up, but comitting this RIGHT NOW because\n it works; so let's not break it.","shortMessageHtmlLink":"add working IVC"}},{"before":"b8473367a178874c127f5139f55ea156d7ccae99","after":"593909cf51fcc89cdec7116e15e6236865ff2bec","ref":"refs/heads/master","pushedAt":"2024-04-01T17:59:43.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"tsujp","name":"Jordan Ellis Coppard","path":"/tsujp","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4571498?s=80&v=4"},"commit":{"message":"cleanup obsolete code","shortMessageHtmlLink":"cleanup obsolete code"}},{"before":"cfed2820fc80212a24a6c269f5562140a875cd74","after":"b8473367a178874c127f5139f55ea156d7ccae99","ref":"refs/heads/master","pushedAt":"2024-04-01T17:53:43.000Z","pushType":"push","commitsCount":4,"pusher":{"login":"tsujp","name":"Jordan Ellis Coppard","path":"/tsujp","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4571498?s=80&v=4"},"commit":{"message":"add lib tests, fix piece and board serialisation, add char/field conversion util","shortMessageHtmlLink":"add lib tests, fix piece and board serialisation, add char/field conv…"}},{"before":"f148a9b25ae738057d0039e1c968393738888254","after":"cfed2820fc80212a24a6c269f5562140a875cd74","ref":"refs/heads/master","pushedAt":"2024-03-31T20:06:25.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"tsujp","name":"Jordan Ellis Coppard","path":"/tsujp","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4571498?s=80&v=4"},"commit":{"message":"add basic board and move (de)serialisation\n\n- Need to reduce the public inputs to the aggregation circuit so\n it falls under 2^19 gates and can be run within WASMs 4GB\n memory limit.","shortMessageHtmlLink":"add basic board and move (de)serialisation"}},{"before":"ab73ffdc55a6f9a8ea0e756213e000084b6a890b","after":"f148a9b25ae738057d0039e1c968393738888254","ref":"refs/heads/master","pushedAt":"2024-03-29T15:53:38.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"tsujp","name":"Jordan Ellis Coppard","path":"/tsujp","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4571498?s=80&v=4"},"commit":{"message":"rename xx_commitment to xx_util","shortMessageHtmlLink":"rename xx_commitment to xx_util"}},{"before":"1beca5164ce58eaff70ce7cccca3b196851786b8","after":"ab73ffdc55a6f9a8ea0e756213e000084b6a890b","ref":"refs/heads/master","pushedAt":"2024-03-28T11:42:38.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"tsujp","name":"Jordan Ellis Coppard","path":"/tsujp","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4571498?s=80&v=4"},"commit":{"message":"add noir syntax highlighting\n\n- Syntax doesn't completely match Rust's but good enough for now.","shortMessageHtmlLink":"add noir syntax highlighting"}},{"before":"d541632d8de2c635cc2d57cf88dda542461571d7","after":"1beca5164ce58eaff70ce7cccca3b196851786b8","ref":"refs/heads/master","pushedAt":"2024-03-28T11:39:45.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"tsujp","name":"Jordan Ellis Coppard","path":"/tsujp","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4571498?s=80&v=4"},"commit":{"message":"add basic stubbed recursion test harness","shortMessageHtmlLink":"add basic stubbed recursion test harness"}},{"before":"4e508802a52b4a0da2d52dfa225198e40f10518e","after":"d541632d8de2c635cc2d57cf88dda542461571d7","ref":"refs/heads/master","pushedAt":"2024-03-28T11:31:43.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"tsujp","name":"Jordan Ellis Coppard","path":"/tsujp","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4571498?s=80&v=4"},"commit":{"message":"add simple recursion game circuits","shortMessageHtmlLink":"add simple recursion game circuits"}},{"before":"3238a31cb6d3bdbfde2a0b498c814d3f14ba81bd","after":"4e508802a52b4a0da2d52dfa225198e40f10518e","ref":"refs/heads/master","pushedAt":"2024-03-28T11:27:46.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"tsujp","name":"Jordan Ellis Coppard","path":"/tsujp","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4571498?s=80&v=4"},"commit":{"message":"add simple recursion game circuits","shortMessageHtmlLink":"add simple recursion game circuits"}},{"before":"5d9f5e53b10bf2963902d2f8e8c7840dbe7ea4f1","after":"3238a31cb6d3bdbfde2a0b498c814d3f14ba81bd","ref":"refs/heads/master","pushedAt":"2024-03-28T11:19:38.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"tsujp","name":"Jordan Ellis Coppard","path":"/tsujp","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4571498?s=80&v=4"},"commit":{"message":"update nargo to 0.25.0+3f67605","shortMessageHtmlLink":"update nargo to 0.25.0+3f67605"}},{"before":null,"after":"5d9f5e53b10bf2963902d2f8e8c7840dbe7ea4f1","ref":"refs/heads/another_save","pushedAt":"2024-03-28T11:19:07.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"tsujp","name":"Jordan Ellis Coppard","path":"/tsujp","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4571498?s=80&v=4"},"commit":{"message":"crap","shortMessageHtmlLink":"crap"}},{"before":"9352075bd77bea461eb03398e16fc6cea1762fe7","after":"5d9f5e53b10bf2963902d2f8e8c7840dbe7ea4f1","ref":"refs/heads/master","pushedAt":"2024-03-28T11:18:28.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"tsujp","name":"Jordan Ellis Coppard","path":"/tsujp","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4571498?s=80&v=4"},"commit":{"message":"crap","shortMessageHtmlLink":"crap"}},{"before":"0d5a19256b24a1fd1170fd4a7e978c289ab59bf5","after":"9352075bd77bea461eb03398e16fc6cea1762fe7","ref":"refs/heads/master","pushedAt":"2024-03-28T11:11:24.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"tsujp","name":"Jordan Ellis Coppard","path":"/tsujp","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4571498?s=80&v=4"},"commit":{"message":"update nargo to 0.25.0+3f67605","shortMessageHtmlLink":"update nargo to 0.25.0+3f67605"}},{"before":"c25e12e84db0095d71dccb227b45a6216dd51c8a","after":"0d5a19256b24a1fd1170fd4a7e978c289ab59bf5","ref":"refs/heads/master","pushedAt":"2024-03-28T10:58:36.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"tsujp","name":"Jordan Ellis Coppard","path":"/tsujp","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4571498?s=80&v=4"},"commit":{"message":"update nargo to 0.25.0+3f67605","shortMessageHtmlLink":"update nargo to 0.25.0+3f67605"}},{"before":"bd1f1b95170851ba6f6dbc1b5282900bf9c9aaf8","after":"c25e12e84db0095d71dccb227b45a6216dd51c8a","ref":"refs/heads/master","pushedAt":"2024-03-28T10:28:25.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"tsujp","name":"Jordan Ellis Coppard","path":"/tsujp","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4571498?s=80&v=4"},"commit":{"message":"update nargo to 0.25.0+3f67605","shortMessageHtmlLink":"update nargo to 0.25.0+3f67605"}},{"before":null,"after":"bd1f1b95170851ba6f6dbc1b5282900bf9c9aaf8","ref":"refs/heads/messy_experimental","pushedAt":"2024-03-28T09:19:28.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"tsujp","name":"Jordan Ellis Coppard","path":"/tsujp","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4571498?s=80&v=4"},"commit":{"message":"old and irrelevant","shortMessageHtmlLink":"old and irrelevant"}},{"before":"0e194afe380c0e22230312807af6d2c93716e44f","after":"bd1f1b95170851ba6f6dbc1b5282900bf9c9aaf8","ref":"refs/heads/master","pushedAt":"2024-03-28T09:19:16.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"tsujp","name":"Jordan Ellis Coppard","path":"/tsujp","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4571498?s=80&v=4"},"commit":{"message":"old and irrelevant","shortMessageHtmlLink":"old and irrelevant"}},{"before":"2461daebcf4cbee5618c5c37075d39dd01d2475b","after":"0e194afe380c0e22230312807af6d2c93716e44f","ref":"refs/heads/master","pushedAt":"2024-02-28T07:27:40.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"tsujp","name":"Jordan Ellis Coppard","path":"/tsujp","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4571498?s=80&v=4"},"commit":{"message":".9","shortMessageHtmlLink":".9"}},{"before":"810652bf74ec1652c825e7aa6ea4bb0a91c3e155","after":"2461daebcf4cbee5618c5c37075d39dd01d2475b","ref":"refs/heads/master","pushedAt":"2024-02-17T00:39:40.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"tsujp","name":"Jordan Ellis Coppard","path":"/tsujp","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4571498?s=80&v=4"},"commit":{"message":".8","shortMessageHtmlLink":".8"}},{"before":"e45414d374a24ba162bafd8b38ec34ec806dd1f8","after":"810652bf74ec1652c825e7aa6ea4bb0a91c3e155","ref":"refs/heads/master","pushedAt":"2024-02-12T02:43:15.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"tsujp","name":"Jordan Ellis Coppard","path":"/tsujp","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4571498?s=80&v=4"},"commit":{"message":".7","shortMessageHtmlLink":".7"}},{"before":"da87929fe662bdbc11e27adc9f396fd40feea14a","after":"e45414d374a24ba162bafd8b38ec34ec806dd1f8","ref":"refs/heads/master","pushedAt":"2024-02-11T01:31:13.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"tsujp","name":"Jordan Ellis Coppard","path":"/tsujp","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4571498?s=80&v=4"},"commit":{"message":".6","shortMessageHtmlLink":".6"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAETo0PmQA","startCursor":null,"endCursor":null}},"title":"Activity · tsujp/tikan"}