Update manifest.md

This commit is contained in:
Jimmy Debe 2024-10-03 15:23:34 -04:00 committed by GitHub
parent 51fdd99a2e
commit c65e7cc198
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -12,12 +12,11 @@ contributors:
This specification describes the parameters used in the manifest for a Codex client application.
## Background
The manifest is used to encode datasets with the a Codex client.
## Manifest
The manifest is used to encode datasets with the a Codex client node.
The file contains key-value pairs.
## Manifest Parameters
### Parameters
```json
@ -42,81 +41,29 @@ The file contains key-value pairs.
}
```
The structured format used is JSON.
`treeCid`
- Root of the merkle root
- Hash based on CIDv1
`datasetSize`
- Total size of all blocks, after data is chunked
- it SHOULD be in bytes
`blockSize`
- Size of each contained block
`codec`
- Dataset codec
`hcodec`
- Multihash codec
`version`
- CID version
`protected`
- Protected datasets have erasure coded info
- Only if `true`
`ecK`
- Number of blocks to encode
`ecM`
- Number of resulting parity blocks
`originalTreeCid`
- The original root of the dataset being erasure coded
`originalDatasetSize`
- The size of the original dataset
`protectedStrategy`
- Indexing strategy used to build the slot roots
`verifiable`
- Verifiable datasets can be used to generate storage proofs
`verifyRoot`
- Root of the top level merkle tree built from slot roots
`slotRoots`
- Individual slot root built from the original dataset blocks
`cellSize`
- Size of each slot cell
`verifiableStrategy`
- Indexing strategy used to build the slot roots
| attribute | type | description |
|-----------|------|-------------|
| `treeCid` | string | A hash based on [CIDv1](https://github.com/multiformats/cid#cidv1). The root of the merkle tree |
| `datasetSize` | bytes | Total size of all blocks, after data is chunked. |
| `blockSize` | bytes | Size of each contained block. |
| `codec` | [MultiCodec](https://github.com/multiformats/multicodec) | A dataset codec. |
| `hcodec` | [MultiCodec](https://github.com/multiformats/multicodec) | A multihash codec. |
| `version` | string | The CID version |
| `protected` | bool | The protected datasets have erasure coded info, If true, `ecK`, `ecM`, `originalTreeCid`, `originalDatasetSize`, and `protectedStrategy` SHOULD be used.|
| `ecK` | int | The number of blocks to encode. |
| `ecM` | int | The number of resulting parity blocks. |
| `originalTreeCid` | string | The original root of the dataset being erasure coded. |
| `originalDatasetSize` | bytes | The size of the original dataset. |
| `protectedStrategy` | enum | An indexing strategy used to build the slot roots. |
| `verifiable` | bool | Verifiable datasets can be used to generate storage proofs. If true, `verifyRoot`, `slotRoots`, `cellSize`, and `verifiableStrategy` SHOULD be used. |
| `verifyRoot` | string | The root of the top level merkle tree built from slot roots. |
| `slotRoots` | array[string] | Individual slot root built from the original dataset blocks. |
| `cellSize` | bytes | The size of each slot cell. |
| `verifiableStrategy` | enum | Indexing strategy used to build the slot roots. |
## Copyright
@ -124,3 +71,6 @@ Copyright and related rights waived via [CC0](https://creativecommons.org/public
## References
- [MultiCodec](https://github.com/multiformats/multicodec)
- [CIDv1](https://github.com/multiformats/cid#cidv1)