# GraphOps Update January 2024

**URL:** <https://forum.thegraph.com/t/graphops-update-january-2024/5104>\
**Category:** Core Team Updates\
**Tags:** graphops\
**Created:** [January 8, 2024, 12:00pm UTC](https://forum.thegraph.com/t/graphops-update-january-2024/5104 "2024-01-08T12:00:18Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![chris](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.thegraph.com/chris/32/657_2.png) [@chris](https://forum.thegraph.com/u/chris)\
**Post date:** [January 8, 2024, 12:00pm UTC](https://forum.thegraph.com/t/graphops-update-january-2024/5104/1 "2024-01-08T12:00:18Z")

</div>

## 🧑‍🚀 Executive Summary

The GraphOps team is excited to share our updates and achievements this month!

We launched the [Subgraph Radio Stable Release 1.0.0](https://x.com/graphopsxyz/status/1737165249369735574?s=20) 🎉 featuring improved state persistence, enhanced Indexer address validation, updated Slack notification logic, and improved end-to-end tests.

The [File Hosting Service](https://github.com/graphops/file-hosting-service) repository is now public! This means the community can now track all developments on File Hosting Service —a decentralized, peer-to-peer data sharing platform optimized for efficient and secure file transfers. Our recent efforts focus on enabling file sharing, client-side file discovery, adding a server cost endpoint, and improving server-side local file system methods.

Moving onto Graphcast SDK, we rolled out the [version 0.6.0](https://github.com/graphops/graphcast-sdk/pull/313). This release include updated nonce types, reintroduced discovery ENR and refactored the Slack bot for seamless notifications setup.

Within Launchpad, we deprecated [Arbitrum Goerli](https://github.com/graphops/launchpad-namespaces/commit/188fa134171fa77d386f377c24fde72a46217388) and [Graph Goerli](https://github.com/graphops/launchpad-namespaces/commit/074b5df81ec8db80f78d6abc5cc427cbe40e3359) namespaces. We also updated [Arbitrum namespace](https://github.com/graphops/launchpad-namespaces/commit/651a0909adb5964959d8ea64c1956c408a8b115d), [Lighthouse](https://github.com/graphops/launchpad-charts/releases/tag/lighthouse-0.5.0) chart and [graph-toolbox](https://github.com/graphops/docker-builds/commit/ff61731ac08f32ffe9b76b2e073126f2e0224ff9) image build. Additionally, we upgraded various dependencies to bolster reliability. Our team also hosted another [Launchpad Office Hours](https://youtu.be/9Y-fWbtza94?feature=shared) session to recap 2023 progress and outline Launchpad’s roadmap for 2024.

Happy 2024 everyone ✨

## 🎉 Looking Back (what was delivered)

### Subgraph Radio ([Documentation](https://docs.graphops.xyz/graphcast/radios/subgraph-radio), [Docker Image](https://github.com/graphops/poi-radio/pkgs/container/subgraph-radio), [Radio Crate](https://crates.io/crates/subgraph-radio), [Radio Source](https://github.com/graphops/subgraph-radio))

- [Subgraph Radio Stable Release 1.0.0](https://x.com/graphopsxyz/status/1737165249369735574?s=20)
  - We hosted a live demo and Q&A session on Indexer Office Hours #138
  - Upgraded state persistence to use a SQLite database, instead of a JSON file
  - Improved Indexer address validation logic
  - Removed Waku discovery ENR since it’s now handled by SDK
  - Updated Slack notification logic. Slack bot now utilizes webhook.
  - Updated e2e tests:
    - Added new scenarios
    - Improved performance of existing tests (test sender instances are sending messages less frequently, which leads to reduce network load)

> **Subgraph Radio Development Activity**
>
> - [Subgraph Radio](https://github.com/graphops/subgraph-radio) pull requests merged:
> - [PR #117](https://github.com/graphops/subgraph-radio/pull/117): Switched to SQLite for state persistence
> - [PR #119](https://github.com/graphops/subgraph-radio/pull/119): Added validation for indexer address config variable
> - [PR #120](https://github.com/graphops/subgraph-radio/pull/120): Removed Waku discovery enr from Radio
> - [PR #121](https://github.com/graphops/subgraph-radio/pull/121): Switched Slack bot to use webhook instead of bot token
> - [PR #126](https://github.com/graphops/subgraph-radio/pull/126): Updated e2e tests

### Graphcast SDK ([Documentation](https://docs.graphops.xyz/graphcast/intro), [SDK Crate](https://crates.io/crates/graphcast-sdk), [SDK Source](https://github.com/graphops/graphcast-sdk))

- Updated type of `nonce` field on `GraphcastMessage`
- Added Waku ENR back to SDK, now all Radios will connect to it by default
- Refactor SlackBot to use webhook, making Slack notifications setup easier
- Released Graphcast SDK 0.6.0
- Updated nonce type in the SDK
- Reintroduced discovery ENR back to the SDK
- Slack bot has been refactored to use webhook instead of bot token

> **Graphcast SDK Development Activity**
>
> - [Graphcast SDK](https://github.com/graphops/graphcast-sdk) pull requests merged:
> - [PR #310](https://github.com/graphops/graphcast-sdk/pull/310): Updated nonce type in the SDK
> - [PR #311](https://github.com/graphops/graphcast-sdk/pull/311): Added discovery enr back to the SDK
> - [PR #312](https://github.com/graphops/graphcast-sdk/pull/312): Refactored Slack bot to use webhook instead of bot token
> - [PR #313](https://github.com/graphops/graphcast-sdk/pull/313): Release 0.6.0

### Launchpad ([Documentation](https://docs.graphops.xyz/launchpad/intro), [Starter](https://github.com/graphops/launchpad-starter), [Charts](https://github.com/graphops/launchpad-charts), [Namespaces](https://github.com/graphops/launchpad-namespaces))

- Deprecated [Arbitrum Goerli](https://github.com/graphops/launchpad-namespaces/commit/188fa134171fa77d386f377c24fde72a46217388) namespace
- Deprecated [Graph Goerli](https://github.com/graphops/launchpad-namespaces/commit/074b5df81ec8db80f78d6abc5cc427cbe40e3359) namespace
- Updated [Arbitrum](https://github.com/graphops/launchpad-namespaces/commit/651a0909adb5964959d8ea64c1956c408a8b115d) namespace to address `Network Subgraph is not Fresh` error
- Updated and released new versions of Launchpad Charts and Launchpad Namespaces as per latest upstream dependencies
- Updated [Lighthouse](https://github.com/graphops/launchpad-charts/releases/tag/lighthouse-0.5.0) chart to use hostPort instead of nodePort for working P2P connectivity on mainnet
- Updated [graph-toolbox](https://github.com/graphops/docker-builds/commit/ff61731ac08f32ffe9b76b2e073126f2e0224ff9) image build to fix integration issues with graph cli and graphman
- Launchpad Charts and Launchpad Namespaces saw updates to dependencies improving reliability
- Introduced a Launchpad Charts [Contributor Guide](https://github.com/graphops/launchpad-charts/blob/main/CONTRIBUTING.md)
- Adjustments to nodePort and hostPort configurations
- [Launchpad Office Hours #9](https://www.youtube.com/watch?v=9Y-fWbtza94): We reviewed all the progress that Launchpad had during 2024 and delved into an open discussion of the road ahead

> **Launchpad Development Activity**
>
> - [Launchpad Charts](https://github.com/graphops/launchpad-charts) pull requests merged:
> - [PR #203](https://github.com/graphops/launchpad-charts/pull/203): Sets replicas for indexer-service in graph-networks-indexer
> - [PR #204](https://github.com/graphops/launchpad-charts/pull/204): Adds a contributing guide to the documentation
> - [PR #205](https://github.com/graphops/launchpad-charts/pull/205): Updates lighthouse to use hostPort instead of nodePort
> - [PR #208](https://github.com/graphops/launchpad-charts/pull/208): Updates proxyd dependencies
> - [PR #209](https://github.com/graphops/launchpad-charts/pull/209), [PR #210](https://github.com/graphops/launchpad-charts/pull/210): Updates subgraphradio and arbitrum dependencies
> - [PR #211](https://github.com/graphops/launchpad-charts/pull/211): Upgrades a missed config flag for arb-nitro
> - [PR #212](https://github.com/graphops/launchpad-charts/pull/212): Updates storage environment for the 1.0.0 release of subgraph-radio
> 
> - [Launchpad Namespaces](https://github.com/graphops/launchpad-namespaces) pull requests merged:
> - [PR #269](https://github.com/graphops/launchpad-namespaces/pull/269), [PR #270](https://github.com/graphops/launchpad-namespaces/pull/270): Updated monitoring dependencies
> - [PR #271](https://github.com/graphops/launchpad-namespaces/pull/271), [PR #274](https://github.com/graphops/launchpad-namespaces/pull/274): Updated Gnosis dependencies
> - [PR #272](https://github.com/graphops/launchpad-namespaces/pull/272): Updated Graph dependencies
> - [PR #273](https://github.com/graphops/launchpad-namespaces/pull/273): Changed nodePort to hostPort in Lighthouse
> - [PR #275](https://github.com/graphops/launchpad-namespaces/pull/275): Fixed network subgraph errors in Arbitrum
> - [PR #276](https://github.com/graphops/launchpad-namespaces/pull/276), [PR #277](https://github.com/graphops/launchpad-namespaces/pull/277): Updated monitoring dependencies

### Indexer Components ([Indexer Components](https://github.com/graphprotocol/indexer), [Indexer Service Rewrite](https://github.com/graphprotocol/indexer-rs), [Allocation Optimizer](https://github.com/graphprotocol/allocation-optimizer))

- [File Hosting Service repository](https://github.com/graphops/file-hosting-service) is now public
- File sharing:
  - Basic client-side file discovery
  - client-side failure mode handling - track missing receipts in cache
  - Custom errors, added unit and integration tests, added benchmarks
  - Added server cost endpoint and management
  - Updated server side local file system access methods
  - Added documentation and user guides

- Indexer Agent:
  - TAP redemption PR open for review - database migration, redeem cycle, TAP contracts

> **Indexer Components Development Activity**
>

### Ecosystem Relations

- [Recordings](https://www.youtube.com/channel/UCQ7G_cCufIVUdUUUf-jdoVA) and [agendas](https://graphops.notion.site/Indexer-Office-Hours-952e0b50a65144768aab922e2c9d102a) for Indexer Office Hours are available. Follow updates on Twitter [@TheGraphIOH](https://twitter.com/TheGraphIOH).
- [Recordings](https://www.youtube.com/playlist?list=PLpbkfkwg_V6Ceidcn06VSP9BoU0g14voq) and [agendas](https://graphops.notion.site/GraphOps-Launchpad-Office-Hours-0684bf7798df48bc9047cb2fc7d4572a) for Launchpad Office Hours are available.

## 🚀 Looking Ahead (upcoming priorities)

- **Subgraph Radio**
  - Enrich Prometheus metrics
  - Serve more data on the graphql endpoint
  - Work on a dedicated frontend view/interface

- **Graphcast SDK**
  - Export functions and other items in a way that graphcast-js can easily import and use

- **Launchpad**
  - Adding Firehose and Substreams support
  - Make schemas available (as previously demo-ed in LOH)
  - Adding back Celo and Polygon, and bring in Optimism support
  - Improve documentation, FCOS guides
  - Better secrets management
  - Improve the observability layer (dashboards, alert rules)
  - Bring in some data backup / moving capabilities

- **Indexer Components**
  - File Sharing Data Service:
    - Add on-chain components to interact with network contracts
    - Support generic storage methods for File Sharing server
    - Work with first key users for early feedback
    - Port file sharing server to indexer-service framework
    - Support work on TAP receipt integration into indexer-agent, participate in scoping allocation optimizer for query fees

- **Ecosystem Relations**
  - Please join the community for Indexer Office Hours on Tuesday every week at 6pm UTC in the [Graph Protocol Discord](https://thegraph.com/discord)
  - Please join the community for Launchpad Office Hours on Wednesday every second week at 5pm UTC in the [Graph Protocol Discord](https://thegraph.com/discord)
