10000 [SPEC] Blueprint Quality of Service (QoS) · Issue #911 · tangle-network/blueprint · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

[SPEC] Blueprint Quality of Service (QoS) #911

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

Open
11 tasks
Tjemmmic opened this issue Apr 22, 2025 · 2 comments · May be fixed by #968
Open
11 tasks

[SPEC] Blueprint Quality of Service (QoS) #911

Tjemmmic opened this issue Apr 22, 2025 · 2 comments · May be fixed by #968
Assignees

Comments

@Tjemmmic
Copy link
Contributor
Tjemmmic commented Apr 22, 2025

Overview

Services need Quality of Service for relay information on a running blueprint back to it's User. There can be varying levels of information in these Quality of Services:

What is being built?

Quality of Service crate/library that is used for sending heartbeats and metrics on running Blueprints. Additionally, a UI for viewing the metrics and data on running Blueprints.

Motivation

Users need a way to receive information on running blueprint instances, verify uptime of the services they are paying for, and ensure operators who are not maintaining their instances are slashed for their unreliability.

Deliverable

The deliverable, in its simplest form, is a system that sends info/messages from a running blueprint to the user/chain. A heartbeat is the most basic level of information that would be sent, but it should allow any level of configuration for blueprints that need more data to be sent to the user.

Checklist

Blueprint

  • QOS crate/client that runs in the Blueprint Runner
  • Custom Heartbeat logic defined per-blueprint (defined when building the runner)
  • Interface for displaying metrics with Grafana and Loki, up-time, etc.

Tangle

  • Retrieves expected heartbeat interval from Blueprint
  • Gets a blueprint's missed Heartbeat threshold for slashing
  • Heartbeat processing/validation logic in Services pallet
  • Heartbeat information in storage

tnt-core

  • Heartbeat hook
  • Logic for handling metrics collected in heartbeat
  • Setting heartbeat interval
  • Setting slashing threshold for missed heartbeats

Examples

If a service entails running a website, it might be "up" but it might not be accessible due to a cloudflare issue or a DNS problem. A QoS update might include actual website connectivity latency from different regions.

If a service is running a data indexer, it might include metrics about how far behind the data indexer is from the chain tip, or the state of the database.

References

Coder: https://coder.com/docs/user-guides

@github-project-automation github-project-automation bot moved this to Not Started 🕧 in Tangle Universe Apr 29, 2025
@drewstone drewstone changed the title [TASK] Blueprint Quality of Service (QoS) [SPEC] Blueprint Quality of Service (QoS) Apr 29, 2025
@drewstone drewstone moved this from Not Started 🕧 to Planning 🗺️ in Tangle Universe May 5, 2025
@Tjemmmic Tjemmmic linked a pull request May 8, 2025 that will close this issue
@Tjemmmic
Copy link
Contributor Author
Tjemmmic commented May 9, 2025

Image

@Tjemmmic
Copy link
Contributor Author
Tjemmmic commented May 9, 2025

Image

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

Successfully merging a pull request may close this issue.

1 participant
0