Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feat: Add documentation for HCS-8 and HCS-9 #20

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

may-hashpack
Copy link
Collaborator

No description provided.

@may-hashpack may-hashpack requested a review from kantorcodes March 6, 2025 01:24
@@ -19,7 +18,7 @@ Polls are a common method of community engagement in which a question is posed t

This framework provides a method to run a poll where poll activities are recorded on Hedera Hashgraph. Every poll is contained in a single HCS topic, allowing for retrieval of the history of the poll at any time.

This standard is issued alongside HCS-YY: Poll Metadata Standards, which presents a robust specification for poll metadata for broader use in the ecosystem.
This standard is issued alongside hcs9: Poll Metadata Standards, which presents a robust specification for poll metadata for broader use in the ecosystem.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

hcs-9


The Register operation must be the first message in the topic. Topics without a valid register operation as the first message are not considered valid HCS-8 polls.

The metadata for the register operation should be a JSON-formatted string. Poll metadata is recommended to follow hcs9: Poll Metadata Standard to allow for cross-platform compatibility.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

hcs-9

}
},
"options":{
"schema":"hcs9",
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

hcs-9


When the Register metadata exceeds the maximum length of a HCS message (1024 characters), follow up Register operations are posted, as many as needed to complete the JSON string.

Only the first message in the topic, or the first set of messages (as identified by the ‘sid’ field) are legal register operations. Any register operations that occur after this are invalid and ignored.
Copy link
Member

@kantorcodes kantorcodes Mar 8, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

optional (and probably out of scope for your work / timeline), but... consider storing full-json as an HCS-1 topic and referencing using t_id similar to other standards e.g.

https://github.com/hashgraph-online/hcs-improvement-proposals/pull/19/files#diff-9e49559cb51bc730827cc515a0c37eaede4cbce543f20ad4688acc2a00dc960fR192

reference to the standards-sdk for inscribing files: https://github.com/hashgraph-online/standards-sdk?tab=readme-ov-file#usage

sidebar_position: 2
---

#### [ hcs-8 - Poll Topic Standard ]
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we add a table of contents?


#### Topic Memo

Sets a short memo that is stored with the topic (100 bytes)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we have a formal memo standard similar to HCS-2 so its easy to find all HCS-8 topics? e.g.

hcs-8:poll-format...


```
{
"p": "HCS-8",
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

hcs-8 (lowercase)

If so, which features should be supported and how should we define it such that it is as simple to implement as possible?


### Should 'schema' be optional (defaults to "hcs9")?
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

hcs-9*

2. Module Schemas define the structure of each of the modules in the base schema.
3. The Vote Schema defines voting actions.

### Base hcs9 Schema Specification
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

hcs-9


**Authors:** May Chan

## Abstract
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could we have a section somewhere that explicitly states the memo format for an HCS-9 topic?

title: HCS-9 Standard - Poll Metadata Schema
---

#### [ hcs9 - Poll Metadata Schema ]
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

hcs-9

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants