<commit_before>The Bertha protocol
===================

The Bertha server stores blobs of data.
Blobs of data are accessed by their SHA-256 hashes: 
the __key__ of a blob of data is its SHA-256 hash.

Commands
--------

After the TCP connection is established, the client sends a
single octet.  This is the __command byte__ and is one of
       
- __0__ for __LIST__, lists the keys of the blobs
- __1__ for __PUT__, adds a blob
- __2__ for __GET__, retrieves a blob by its key
- __3__ for __QUIT__, quits the server
- __4__ for __SPUT__, adds a blob and give a hint of its size
- __5__ for __SGET__, retrieves a blob and its size by its key
- __6__ for __SIZE__, retreives the size of a blob by its key

### LIST
Used to list all the keys.

1.  The server sends the keys of all blobs in a unspecified order.
    The keys are send as 32 byte binary words.<commit_msg>PROTOCOL.md: add a note on the type of sizes<commit_after>The Bertha protocol
===================

The Bertha server stores blobs of data.
Blobs of data are accessed by their SHA-256 hashes: 
the __key__ of a blob of data is its SHA-256 hash.
All sizes send and received are 64 bit little endian unsigned integers.

Commands
--------

After the TCP connection is established, the client sends a
single octet.  This is the __command byte__ and is one of
       
- __0__ for __LIST__, lists the keys of the blobs
- __1__ for __PUT__, adds a blob
- __2__ for __GET__, retrieves a blob by its key
- __3__ for __QUIT__, quits the server
- __4__ for __SPUT__, adds a blob and give a hint of its size
- __5__ for __SGET__, retrieves a blob and its size by its key
- __6__ for __SIZE__, retreives the size of a blob by its key

### LIST
Used to list all the keys.

1.  The server sends the keys of all blobs in a unspecified order.
    The keys are send as 32 byte binary words.
{'fraction_non_alphanumeric': 0.06477953184540011, 'fraction_numerical': 0.018508437670114317, 'mean_word_length': 3.324705882352941, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1813605', 'n_tokens_mistral': 564, 'n_tokens_neox': 545, 'n_words': 315}