Skip to content

Commit

Permalink
[#227] *: Regenerate docs
Browse files Browse the repository at this point in the history
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
  • Loading branch information
carpawell committed Jun 21, 2022
1 parent 2f52216 commit 1bc50fc
Show file tree
Hide file tree
Showing 13 changed files with 214 additions and 141 deletions.
8 changes: 4 additions & 4 deletions proto-docs/accounting.md
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ Accounting service provides methods for interaction with NeoFS sidechain via
other NeoFS nodes to get information about the account balance. Deposit and
Withdraw operations can't be implemented here, as they require Mainnet NeoFS
smart contract invocation. Transfer operations between internal NeoFS
accounts are possible, if both use the same token type.
accounts are possible if both use the same token type.

```
rpc Balance(BalanceRequest) returns (BalanceResponse);
Expand Down Expand Up @@ -77,7 +77,7 @@ BalanceRequest message
<a name="neo.fs.v2.accounting.BalanceRequest.Body"></a>

### Message BalanceRequest.Body
To indicate the account for which the balance is requested, it's identifier
To indicate the account for which the balance is requested, its identifier
is used. It can be any existing account in NeoFS sidechain `Balance` smart
contract. If omitted, client implementation MUST set it to the request's
signer `OwnerID`.
Expand Down Expand Up @@ -105,7 +105,7 @@ BalanceResponse message

### Message BalanceResponse.Body
The amount of funds in GAS token for the `OwnerID`'s account requested.
Balance is `Decimal` format to avoid precision issues with rounding.
Balance is given in the `Decimal` format to avoid precision issues with rounding.


| Field | Type | Label | Description |
Expand Down Expand Up @@ -141,7 +141,7 @@ description.

| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| value | [int64](#int64) | | Number in smallest Token fractions. |
| value | [int64](#int64) | | Number in the smallest Token fractions. |
| precision | [uint32](#uint32) | | Precision value indicating how many smallest fractions can be in one integer. |

<!-- end messages -->
Expand Down
26 changes: 13 additions & 13 deletions proto-docs/acl.md
Original file line number Diff line number Diff line change
Expand Up @@ -38,8 +38,8 @@ like [JWT](https://jwt.io), it has a limited lifetime and scope, hence can be
used in the similar use cases, like providing authorisation to externally
authenticated party.

BearerToken can be issued only by container's owner and must be signed using
the key associated with container's `OwnerID`.
BearerToken can be issued only by the container's owner and must be signed using
the key associated with the container's `OwnerID`.


| Field | Type | Label | Description |
Expand All @@ -51,14 +51,14 @@ the key associated with container's `OwnerID`.
<a name="neo.fs.v2.acl.BearerToken.Body"></a>

### Message BearerToken.Body
Bearer Token body structure contains Extended ACL table issued by container
owner with additional information preventing token's abuse.
Bearer Token body structure contains Extended ACL table issued by the container
owner with additional information preventing token abuse.


| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| eacl_table | [EACLTable](#neo.fs.v2.acl.EACLTable) | | Table of Extended ACL rules to use instead of the ones attached to the container |
| owner_id | [neo.fs.v2.refs.OwnerID](#neo.fs.v2.refs.OwnerID) | | `OwnerID` to whom the token was issued. Must match the request originator's `OwnerID`. If empty, any token bearer will be accepted. |
| eacl_table | [EACLTable](#neo.fs.v2.acl.EACLTable) | | Table of Extended ACL rules to use instead of the ones attached to the container. If it contains `container_id` field, bearer token is only valid for this specific container. Otherwise, any container of the same owner is allowed. |
| owner_id | [neo.fs.v2.refs.OwnerID](#neo.fs.v2.refs.OwnerID) | | `OwnerID` defines to whom the token was issued. It must match the request originator's `OwnerID`. If empty, any token bearer will be accepted. |
| lifetime | [BearerToken.Body.TokenLifetime](#neo.fs.v2.acl.BearerToken.Body.TokenLifetime) | | Token expiration and valid time period parameters |


Expand Down Expand Up @@ -93,7 +93,7 @@ Describes a single eACL rule.
<a name="neo.fs.v2.acl.EACLRecord.Filter"></a>

### Message EACLRecord.Filter
Filter to check particular properties of the request or object.
Filter to check particular properties of the request or the object.

By default `key` field refers to the corresponding object's `Attribute`.
Some Object's header fields can also be accessed by adding `$Object:`
Expand Down Expand Up @@ -149,15 +149,15 @@ keys to match.
<a name="neo.fs.v2.acl.EACLTable"></a>

### Message EACLTable
Extended ACL rules table. Defined a list of ACL rules additionally to Basic
ACL. Extended ACL rules can be attached to the container and can be updated
Extended ACL rules table. A list of ACL rules defined additionally to Basic
ACL. Extended ACL rules can be attached to a container and can be updated
or may be defined in `BearerToken` structure. Please see the corresponding
NeoFS Technical Specification's section for detailed description.
NeoFS Technical Specification section for detailed description.


| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| version | [neo.fs.v2.refs.Version](#neo.fs.v2.refs.Version) | | eACL format version. Effectively the version of API library used to create eACL Table. |
| version | [neo.fs.v2.refs.Version](#neo.fs.v2.refs.Version) | | eACL format version. Effectively, the version of API library used to create eACL Table. |
| container_id | [neo.fs.v2.refs.ContainerID](#neo.fs.v2.refs.ContainerID) | | Identifier of the container that should use given access control rules |
| records | [EACLRecord](#neo.fs.v2.acl.EACLRecord) | repeated | List of Extended ACL rules |

Expand Down Expand Up @@ -233,8 +233,8 @@ Target role of the access control rule in access control list.
| ---- | ------ | ----------- |
| ROLE_UNSPECIFIED | 0 | Unspecified role, default value |
| USER | 1 | User target rule is applied if sender is the owner of the container |
| SYSTEM | 2 | System target rule is applied if sender is the storage node within the container or inner ring node |
| OTHERS | 3 | Others target rule is applied if sender is not user nor system target |
| SYSTEM | 2 | System target rule is applied if sender is a storage node within the container or an inner ring node |
| OTHERS | 3 | Others target rule is applied if sender is neither a user nor a system target |


<!-- end enums -->
Expand Down
8 changes: 4 additions & 4 deletions proto-docs/audit.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ generated separately.

| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| version | [neo.fs.v2.refs.Version](#neo.fs.v2.refs.Version) | | Data Audit Result format version. Effectively the version of API library used to report DataAuditResult structure. |
| version | [neo.fs.v2.refs.Version](#neo.fs.v2.refs.Version) | | Data Audit Result format version. Effectively, the version of API library used to report DataAuditResult structure. |
| audit_epoch | [fixed64](#fixed64) | | Epoch number when the Data Audit was conducted |
| container_id | [neo.fs.v2.refs.ContainerID](#neo.fs.v2.refs.ContainerID) | | Container under audit |
| public_key | [bytes](#bytes) | | Public key of the auditing InnerRing node in a binary format |
Expand All @@ -40,9 +40,9 @@ generated separately.
| retries | [uint32](#uint32) | | Number of retries done at PoR stage |
| pass_sg | [neo.fs.v2.refs.ObjectID](#neo.fs.v2.refs.ObjectID) | repeated | List of Storage Groups that passed audit PoR stage |
| fail_sg | [neo.fs.v2.refs.ObjectID](#neo.fs.v2.refs.ObjectID) | repeated | List of Storage Groups that failed audit PoR stage |
| hit | [uint32](#uint32) | | Number of sampled objects under audit placed in an optimal way according to the containers placement policy when checking PoP |
| miss | [uint32](#uint32) | | Number of sampled objects under audit placed in suboptimal way according to the containers placement policy, but still at a satisfactory level when checking PoP |
| fail | [uint32](#uint32) | | Number of sampled objects under audit stored in a way not confirming placement policy or not found at all when checking PoP |
| hit | [uint32](#uint32) | | Number of sampled objects under the audit placed in an optimal way according to the containers placement policy when checking PoP |
| miss | [uint32](#uint32) | | Number of sampled objects under the audit placed in suboptimal way according to the containers placement policy, but still at a satisfactory level when checking PoP |
| fail | [uint32](#uint32) | | Number of sampled objects under the audit stored inconsistently with the placement policy or not found at all when checking PoP |
| pass_nodes | [bytes](#bytes) | repeated | List of storage node public keys that passed at least one PDP |
| fail_nodes | [bytes](#bytes) | repeated | List of storage node public keys that failed at least one PDP |

Expand Down
62 changes: 34 additions & 28 deletions proto-docs/container.md
Original file line number Diff line number Diff line change
Expand Up @@ -81,7 +81,7 @@ rpc AnnounceUsedSpace(AnnounceUsedSpaceRequest) returns (AnnounceUsedSpaceRespon

`Put` invokes `Container` smart contract's `Put` method and returns
response immediately. After a new block is issued in sidechain, request is
verified by Inner Ring nodes. After one more block in sidechain, container
verified by Inner Ring nodes. After one more block in sidechain, the container
is added into smart contract storage.

Statuses:
Expand All @@ -96,7 +96,7 @@ Statuses:

`Delete` invokes `Container` smart contract's `Delete` method and returns
response immediately. After a new block is issued in sidechain, request is
verified by Inner Ring nodes. After one more block in sidechain, container
verified by Inner Ring nodes. After one more block in sidechain, the container
is added into smart contract storage.

Statuses:
Expand Down Expand Up @@ -136,7 +136,7 @@ Statuses:
#### Method SetExtendedACL

Invokes 'SetEACL' method of 'Container` smart contract and returns response
immediately. After one more block in sidechain, Extended ACL changes are
immediately. After one more block in sidechain, changes in an Extended ACL are
added into smart contract storage.

Statuses:
Expand Down Expand Up @@ -164,7 +164,7 @@ Statuses:
| GetExtendedACL | [GetExtendedACLRequest](#neo.fs.v2.container.GetExtendedACLRequest) | [GetExtendedACLResponse](#neo.fs.v2.container.GetExtendedACLResponse) |
#### Method AnnounceUsedSpace

Announce container used space values for P2P synchronization.
Announces the space values used by the container for P2P synchronization.

Statuses:
- **OK** (0, SECTION_SUCCESS): \
Expand Down Expand Up @@ -198,20 +198,20 @@ Container used space announcement body.

| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| announcements | [AnnounceUsedSpaceRequest.Body.Announcement](#neo.fs.v2.container.AnnounceUsedSpaceRequest.Body.Announcement) | repeated | List of announcements. If nodes share several containers, then announcements transferred in a batch. |
| announcements | [AnnounceUsedSpaceRequest.Body.Announcement](#neo.fs.v2.container.AnnounceUsedSpaceRequest.Body.Announcement) | repeated | List of announcements. If nodes share several containers, announcements are transferred in a batch. |


<a name="neo.fs.v2.container.AnnounceUsedSpaceRequest.Body.Announcement"></a>

### Message AnnounceUsedSpaceRequest.Body.Announcement
Announcement contains used space information about single container.
Announcement contains used space information for a single container.


| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| epoch | [uint64](#uint64) | | Epoch number for which container size estimation was produced. |
| epoch | [uint64](#uint64) | | Epoch number for which the container size estimation was produced. |
| container_id | [neo.fs.v2.refs.ContainerID](#neo.fs.v2.refs.ContainerID) | | Identifier of the container. |
| used_space | [uint64](#uint64) | | Used space is a sum of object payload sizes of specified container, stored in the node. It must not include inhumed objects. |
| used_space | [uint64](#uint64) | | Used space is a sum of object payload sizes of a specified container, stored in the node. It must not include inhumed objects. |


<a name="neo.fs.v2.container.AnnounceUsedSpaceResponse"></a>
Expand Down Expand Up @@ -251,8 +251,8 @@ Container removal request
<a name="neo.fs.v2.container.DeleteRequest.Body"></a>

### Message DeleteRequest.Body
Container removal request body has a signed `ContainerID` as a proof of
container owner's intent. The signature will be verified by `Container`
Container removal request body has signed `ContainerID` as a proof of
the container owner's intent. The signature will be verified by `Container`
smart contract, so signing algorithm must be supported by NeoVM.


Expand Down Expand Up @@ -324,9 +324,9 @@ Get Extended ACL
<a name="neo.fs.v2.container.GetExtendedACLResponse.Body"></a>

### Message GetExtendedACLResponse.Body
Get Extended ACL Response body can be empty if the requested container did
not have Extended ACL Table attached or Extended ACL was not allowed at
container creation.
Get Extended ACL Response body can be empty if the requested container does
not have Extended ACL Table attached or Extended ACL has not been allowed at
the time of container creation.


| Field | Type | Label | Description |
Expand Down Expand Up @@ -377,14 +377,14 @@ Get container structure

### Message GetResponse.Body
Get container response body does not have container structure signature. It
was already verified on container creation.
has been already verified upon container creation.


| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| container | [Container](#neo.fs.v2.container.Container) | | Requested container structure |
| signature | [neo.fs.v2.refs.SignatureRFC6979](#neo.fs.v2.refs.SignatureRFC6979) | | Signature of a stable-marshalled container according to RFC-6979. |
| session_token | [neo.fs.v2.session.SessionToken](#neo.fs.v2.session.SessionToken) | | Session token if the container was created within a session |
| session_token | [neo.fs.v2.session.SessionToken](#neo.fs.v2.session.SessionToken) | | Session token if the container has been created within the session |


<a name="neo.fs.v2.container.ListRequest"></a>
Expand Down Expand Up @@ -483,7 +483,7 @@ New NeoFS Container creation response
Container put response body contains information about the newly registered
container as seen by `Container` smart contract. `ContainerID` can be
calculated beforehand from the container structure and compared to the one
returned here to make sure everything was done as expected.
returned here to make sure everything has been done as expected.


| Field | Type | Label | Description |
Expand Down Expand Up @@ -513,7 +513,7 @@ reference. It will be taken from `EACLTable.container_id` field.

| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| eacl | [neo.fs.v2.acl.EACLTable](#neo.fs.v2.acl.EACLTable) | | Extended ACL table to set for container |
| eacl | [neo.fs.v2.acl.EACLTable](#neo.fs.v2.acl.EACLTable) | | Extended ACL table to set for the container |
| signature | [neo.fs.v2.refs.SignatureRFC6979](#neo.fs.v2.refs.SignatureRFC6979) | | Signature of stable-marshalled Extended ACL table according to RFC-6979. |


Expand All @@ -534,7 +534,7 @@ Set Extended ACL

### Message SetExtendedACLResponse.Body
`SetExtendedACLResponse` has an empty body because the operation is
asynchronous and update should be reflected in `Container` smart contract's
asynchronous and the update should be reflected in `Container` smart contract's
storage after next block is issued in sidechain.


Expand All @@ -558,16 +558,16 @@ storage after next block is issued in sidechain.
### Message Container
Container is a structure that defines object placement behaviour. Objects can
be stored only within containers. They define placement rule, attributes and
access control information. ID of the container is a 32 byte long SHA256 hash
access control information. An ID of a container is a 32 byte long SHA256 hash
of stable-marshalled container message.


| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| version | [neo.fs.v2.refs.Version](#neo.fs.v2.refs.Version) | | Container format version. Effectively the version of API library used to create container. |
| version | [neo.fs.v2.refs.Version](#neo.fs.v2.refs.Version) | | Container format version. Effectively, the version of API library used to create the container. |
| owner_id | [neo.fs.v2.refs.OwnerID](#neo.fs.v2.refs.OwnerID) | | Identifier of the container owner |
| nonce | [bytes](#bytes) | | Nonce is a 16 byte UUIDv4, used to avoid collisions of `ContainerID`s |
| basic_acl | [uint32](#uint32) | | `BasicACL` contains access control rules for owner, system, others groups and permission bits for `BearerToken` and `Extended ACL` |
| basic_acl | [uint32](#uint32) | | `BasicACL` contains access control rules for the owner, system and others groups, as well as permission bits for `BearerToken` and `Extended ACL` |
| attributes | [Container.Attribute](#neo.fs.v2.container.Container.Attribute) | repeated | Attributes represent immutable container's meta data |
| placement_policy | [neo.fs.v2.netmap.PlacementPolicy](#neo.fs.v2.netmap.PlacementPolicy) | | Placement policy for the object inside the container |

Expand All @@ -576,8 +576,8 @@ of stable-marshalled container message.

### Message Container.Attribute
`Attribute` is a user-defined Key-Value metadata pair attached to the
container. Container attributes are immutable. They are set at container
creation and can never be added or updated.
container. Container attributes are immutable. They are set at the moment of
container creation and can never be added or updated.

Key name must be a container-unique valid UTF-8 string. Value can't be
empty. Containers with duplicated attribute names or attributes with empty
Expand All @@ -586,14 +586,20 @@ values will be considered invalid.
There are some "well-known" attributes affecting system behaviour:

* __NEOFS__SUBNET \
String ID of container's storage subnet. Container can be attached to
only one subnet.
String ID of a container's storage subnet. Any container can be attached to
one subnet only.
* __NEOFS__NAME \
String of human-friendly container name registered as the domain in
String of a human-friendly container name registered as a domain in
NNS contract.
* __NEOFS__ZONE \
String of zone for `__NEOFS__NAME`. Used as TLD of domain name in NNS
contract. If zone is not specified, use default zone: `container`.
String of a zone for `__NEOFS__NAME`. Used as a TLD of a domain name in NNS
contract. If no zone is specified, use default zone: `container`.
* __NEOFS__DISABLE_HOMOMORPHIC_HASHING \
Disables homomorphic hashing for the container if the value equals "true" string.
Any other values are interpreted as missing attribute. Container could be
accepted in a NeoFS network only if the global network hashing configuration
value corresponds with that attribute's value. After container inclusion, network
setting is ignored.

And some well-known attributes used by applications only:

Expand Down
5 changes: 3 additions & 2 deletions proto-docs/lock.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,9 +25,10 @@
<a name="neo.fs.v2.lock.Lock"></a>

### Message Lock
Lock objects protects a list of objects from being deleted. Lifetime of the
Lock objects protects a list of objects from being deleted. The lifetime of a
lock object is limited similar to regular objects in
`__NEOFS__EXPIRATION_EPOCH` attribute.
`__NEOFS__EXPIRATION_EPOCH` attribute. Lock object MUST have expiration epoch.
It is impossible to delete a lock object via ObjectService.Delete RPC call.


| Field | Type | Label | Description |
Expand Down
Loading

0 comments on commit 1bc50fc

Please sign in to comment.