575 Commits

Author SHA1 Message Date
benbierens
4e19384a86 Restores tests for proof sampler utils 2024-01-16 19:42:27 -06:00
benbierens
d80ddd41df Fixes issue where sampler takes proof from dataset/verify tree for slot proof. 2024-01-16 19:42:27 -06:00
benbierens
622239ffbd Cleanup 2024-01-16 19:42:27 -06:00
benbierens
5f70232597 Fixes tests 2024-01-16 19:42:27 -06:00
benbierens
4afec65d00 Applies result-type to onProve callback. 2024-01-16 19:42:27 -06:00
benbierens
2ba0977214 Fixes log scope compilation 2024-01-16 19:42:27 -06:00
benbierens
70541921c4 Fix: ProofInputSample data is cell bytes instead of block bytes 2024-01-16 19:42:27 -06:00
benbierens
901d816f56 Fix: slotIdx used as nSamples 2024-01-16 19:42:27 -06:00
Dmitriy Ryajov
f7861df6c7
move tests around 2024-01-15 21:48:54 -06:00
Dmitriy Ryajov
a169e7fe24
misc 2024-01-15 21:47:50 -06:00
Dmitriy Ryajov
b88f767f08
wip sampler integration 2024-01-15 21:47:40 -06:00
Dmitriy Ryajov
98181a72b0
don't use upraises 2024-01-15 21:47:21 -06:00
Dmitriy Ryajov
e8fbb6d755
wip sampler implementation 2024-01-15 21:47:06 -06:00
Dmitriy Ryajov
cfc4632efc
various changes to add support for the sampler 2024-01-15 21:46:48 -06:00
Dmitriy Ryajov
8665af1df3
fix paths 2024-01-15 14:06:06 -06:00
Dmitriy Ryajov
76181407e9
move sampler to own dir 2024-01-15 13:59:55 -06:00
Dmitriy Ryajov
877e19cfcf
move builder to own dir 2024-01-15 13:59:24 -06:00
benbierens
b4654ff938
Updates proof checking test to match new format 2024-01-15 10:50:40 -06:00
benbierens
a4cafa6317
Updates expected samples 2024-01-15 10:50:40 -06:00
benbierens
24be5b2788
setting up 2024-01-15 10:50:40 -06:00
benbierens
03c0f9914e
Lining up output type with updated reference code. 2024-01-15 10:50:40 -06:00
benbierens
54b0fe6f42
Cleanup 2024-01-15 10:50:40 -06:00
benbierens
84993e8984
Refactoring to object-oriented 2024-01-15 10:50:39 -06:00
benbierens
0b54ef7777
Fixes test. Implementation is now functional 2024-01-15 10:50:39 -06:00
benbierens
26f238409c
almost there 2024-01-15 10:50:39 -06:00
benbierens
0cc4563eba
splits up indexing 2024-01-15 10:50:39 -06:00
benbierens
e52a191dac
It's running 2024-01-15 10:50:39 -06:00
benbierens
4642174c6d
Adds method to get dataset block index from slot block index 2024-01-15 10:50:39 -06:00
benbierens
97350cd890
Implements building a minitree for block cells 2024-01-15 10:50:39 -06:00
benbierens
07ed066b1e
Implements selecting a cell sample from a block 2024-01-15 10:50:38 -06:00
benbierens
b031fb9e4a
Sets up getting sample from block 2024-01-15 10:50:38 -06:00
benbierens
742f84a24d
cleanup 2024-01-15 10:50:38 -06:00
benbierens
975d4ce65f
Implements out-of-range check for slot index 2024-01-15 10:50:38 -06:00
benbierens
b17202c8a7
implements getting slot blocks by index 2024-01-15 10:50:38 -06:00
benbierens
f767d2b4d0
Implements getting treeCID from slot 2024-01-15 10:50:38 -06:00
benbierens
7a47fb6e5d
setting up slot blocks module 2024-01-15 10:50:38 -06:00
benbierens
d395328ed4
Implements cell index collection 2024-01-15 10:50:37 -06:00
benbierens
c320dd2e7d
Sets up tests for bitwise modulo 2024-01-15 10:50:37 -06:00
benbierens
fc6ce6491c
Sets up calculating number of cells in a slot 2024-01-15 10:50:37 -06:00
benbierens
57f678bbf3
Setting up testfixture for proof datasampler 2024-01-15 10:50:37 -06:00
Dmitriy Ryajov
2fc7c75fd2
Contracts handler (#672)
* get rid of unneeded files

* don't reuse batch callback

* move out storage contract handlers

* wip

* add storage handler, to handle storage contracts interactions

* split out node tests

* a bit more cleanup

* remove storage handler, move back into node

* add missing raises:

* wip: add support for rebuilding slot

* split out tests

* wip

* rework indexing strategy to return an iterator

* convert to seq

* minor api change (meh, might revert)

* steping strategy should not die

* allow fetching batches for manifests and indicies

* restored expiry update

* restored expiry update functionality

* avoid closing datastores twice

* correct wrong rename

* fixes sigsegv
2024-01-15 08:45:04 -08:00
Afri
9b9cf9c450
docs: update api for two client test (#675)
Signed-off-by: Afri <58883403+q9f@users.noreply.github.com>
2024-01-15 12:35:55 +01:00
Dmitriy Ryajov
8b12934fe2
Build slots (#668)
Wiring in slots builder functionality into `requestStorage`
2024-01-11 08:45:23 -08:00
markspanbroek
469d594463
Update questionable to version 0.10.13 (#669) 2024-01-10 10:38:35 +01:00
Eric
b186afbc4f
bump ethers, remove upraises from callbacks (#664) 2024-01-09 15:51:34 +11:00
Dmitriy Ryajov
fffb674bba
Integrate slot builder (#666)
* rework merkle tree support

* rename merkletree -> codexmerkletree

* treed and proof encoding/decoding

* style

* adding codex merkle and coders tests

* use default hash codec

* proof size changed

* add from nodes test

* shorte file names

* wip poseidon tree

* shorten file names

* root returns a result

* import poseidon tests

* fix merge issues and cleanup a few warnings

* setting up slot builder

* Getting cids in slot

* ensures blocks are devisable by number of slots

* wip

* Implements indexing strategies

* Swaps in indexing strategy into erasure.

* wires slot and indexing tests up

* Fixes issue where indexing strategy stepped gives wrong values for smallest of ranges

* debugs indexing strategies

* Can select slot blocks

* finding number of pad cells

* Implements building slot tree

* finishes implementing slot builder

* Adds check that block size is a multiple of cell size

* Cleanup slotbuilder

* Review comments by Tomasz

* Fixes issue where ecK was used as numberOfSlots.

* rework merkle tree support

* deps

* rename merkletree -> codexmerkletree

* treed and proof encoding/decoding

* style

* adding codex merkle and coders tests

* remove new codecs for now

* proof size changed

* add from nodes test

* shorte file names

* wip poseidon tree

* shorten file names

* fix bad `elements` iter

* bump

* bump

* wip

* reworking slotbuilder

* move out of manifest

* expose getCidAndProof

* import index strat...

* remove getMHash

* remove unused artifacts

* alias zero

* add digest for multihash

* merge issues

* remove unused hashes

* add option to result converter

* misc

* fix tests

* add helper to derive EC block count

* rename method

* misc

* bump

* extract slot root building into own proc

* revert to manifest to accessor

---------

Co-authored-by: benbierens <thatbenbierens@gmail.com>
2024-01-08 14:52:46 -08:00
Dmitriy Ryajov
b8ee2ac71e
Update multicodecs (#665)
* rework merkle tree support

* rename merkletree -> codexmerkletree

* treed and proof encoding/decoding

* style

* adding codex merkle and coders tests

* use default hash codec

* proof size changed

* add from nodes test

* shorte file names

* wip poseidon tree

* shorten file names

* root returns a result

* import poseidon tests

* update multicodecs

* consolidating codex types and adding new codecs

* update codec

* remove temp codecs constants

* move codecs related stuff out

* updating codecs

* misc

* updating sizes since block size was adjusted to 64kb

* fix merge issues and cleanup a few warnings
2023-12-22 13:04:01 +01:00
Dmitriy Ryajov
52c5578c46
Rework merkle tree (#654)
* rework merkle tree support

* deps

* rename merkletree -> codexmerkletree

* treed and proof encoding/decoding

* small change to invoke proof verification

* rename merkletree to codexmerkletree

* style

* adding codex merkle and coders tests

* fixup imports

* remove new codecs for now

* bump deps

* adding trace statement

* properly serde of manifest block codecs

* use default hash codec

* add more trace logging to aid debugging

* misc

* remove double import

* revert un-needded change

* proof size changed

* bump poseidon2

* add from nodes test

* shorte file names

* remove upraises

* wip poseidon tree

* adjust file names

* misc

* shorten file names

* fix bad `elements` iter

* don't do asserts

* add fromNodes and converters

* root and getProof now return result

* add poseidon2 tree tests

* root now returns result

* misc

* had to make merkletree a ref, because nim blows up otherwise

* root returns a result

* root returns a result

* import poseidon tests

* bump

* merkle poseidon2 digest

* misc

* add merkle digest tests

* bump

* don't use checksuite

* Update tests/codex/merkletree/generictreetests.nim

Co-authored-by: markspanbroek <mark@spanbroek.net>
Signed-off-by: Dmitriy Ryajov <dryajov@gmail.com>

* Update codex/merkletree/merkletree.nim

Co-authored-by: markspanbroek <mark@spanbroek.net>
Signed-off-by: Dmitriy Ryajov <dryajov@gmail.com>

* Update codex/merkletree/merkletree.nim

Co-authored-by: markspanbroek <mark@spanbroek.net>
Signed-off-by: Dmitriy Ryajov <dryajov@gmail.com>

* Update tests/codex/merkletree/generictreetests.nim

Co-authored-by: markspanbroek <mark@spanbroek.net>
Signed-off-by: Dmitriy Ryajov <dryajov@gmail.com>

* missing return

* make toBool private (it's still needed otherwise comparison won't work)

* added `digestTree` that returns a tree and `digest` for root

* test against both poseidon trees - codex and poseidon2

* shorten merkle tree names

* don't compare trees - it's going to be too slow

* move comparison to mekrle helper

* remove merkle utils

---------

Signed-off-by: Dmitriy Ryajov <dryajov@gmail.com>
Co-authored-by: markspanbroek <mark@spanbroek.net>
2023-12-21 06:41:43 +00:00
Eric
954c8edf76
comment out, instead of skipping, intermittently failing test (#661)
`skip` seems to working only sometimes. It intermittently fails on Windows in CI. The reason for skipping the test in the first place was to prevent intermittent failures of the test itself, so adding `skip` did not improve the situation, unfortunately.
2023-12-20 22:12:24 +00:00
Eric
f293082ae9
Reverts logging-proxy, commit 27f585eb6f380a6de2fbbef721fdf1a16bd5f600 (#660) 2023-12-20 13:24:40 +11:00