GIP-0090: Community Allocation of 0.1% of issuance to The Night's Watch

Abstract

This proposes allocating 0.1% of protocol issuance, 0.12073 GRT per block, to The Night’s Watch through the same mechanism GIP-0089 used for the Innovation Allocation: a new instance of the audited DirectAllocation contract, added as an allocator-minting target on the Issuance Allocator. It funds work that is already running on zero budget and will keep running either way: Lodestar, the community’s research and engineering against the Catalyst roadmap, daily indexer and subgraph developer support through graph-support and the Discord, and the nuthatch and Graph integration. The allocation is time-boxed to twelve months, reported quarterly on this forum, and removable by governance in one transaction. At 2025’s block count it is about 315,000 GRT a year. At today’s price that is under eight thousand dollars. It is a symbolic amount, and the point of it is the symbol: the network paying, for the first time, for community infrastructure it already depends on.

Motivation

GIP-0089 went live on 1 September and was explicit about its policy: the Innovation Allocation “replaces broad, open-ended grants to external teams with directed funding tied to the protocol’s strategic priorities.” We agree with the direction. The difficulty is that the community work most aligned with those priorities is now outside every funding path the protocol has. It is not a core dev, it is not on the Foundation’s payroll, and grants are no longer the model.

Concretely, over the last six weeks:

  • graph-support took 43 issues from indexers and subgraph developers, found the root cause on 36 of them, and turned three into upstream graph-node and docs pull requests and three more into upstream issues. The 16 September outage, where one CRLF manifest stopped every version of the network subgraph and took the gateway down for three hours, was diagnosed and written up there before any official post existed.
  • Lodestar stopped reading any Graph subgraph on 7 September and now serves the whole dashboard from self-hosted nuthatch nests and one Rust process. An indexer asked for an omni search at 11:42 and it was live at 13:42 the same day.
  • The Catalyst tracker maps all eight roadmap items to public repos with a measured score against each, currently between 42% and 74%, and records what only the Foundation can move: the external audits and the second gateway operator.

All of that is public, permissively licensed, and paid for out of one person’s pocket. The 28 August post “On the Catalyst roadmap” offered it to the incoming team and asked for a conversation, not money. It has 52 views and no replies. This proposal asks the network directly instead.

Prior Art

GIP-0076 introduced the Issuance Allocator and DirectAllocation. GIP-0088 deployed the allocator and reserved a 5% target for DIPS. GIP-0089 added the Innovation Allocation at 20%, operated by a Foundation multisig, with no new contract code. This proposal is the same shape at one two-hundredth of the size, with two things GIP-0089 does not have: a sunset and a quarterly report.

High-Level Description

No new smart contract code. One new deployment of the existing, audited DirectAllocation contract, with a Night’s Watch multisig as operator, added as an allocator-minting target at 0.12073 GRT per block. The Rewards Manager’s allocation is reduced by the same amount. Total issuance stays at 120.73 GRT per block.

Detailed Specification

1. Community Allocation management

A DirectAllocation instance is deployed with a 2-of-3 multisig on Arbitrum One as operator. Signers are published in this thread before any Council vote. The Issuance Allocator mints to the contract; the operator withdraws as needed. Governance retains the allocator’s target list and can remove the target at any time.

2. Allocation configuration

Read from the Issuance Allocator on Arbitrum One on 23 September 2026, and the proposed change:

Target Type Now (GRT per block) Proposed Share
Rewards Manager Self-minting 96.584 96.46327 79.9%
Innovation DirectAllocation Allocator-minting 24.146 24.146 20%
Community DirectAllocation (this proposal) Allocator-minting 0 0.12073 0.1%
Total 120.73 120.73 100%

When the GIP-0088 Phase 3 split to the Recurring Agreement Manager activates, the 6 GRT per block comes from the Rewards Manager as already approved and this allocation is unaffected.

For reference, there were 2,610,162 blocks in 2025. At 0.12073 GRT per block the allocation is approximately 315,000 GRT a year.

3. What it funds

In priority order, and all of it already running:

  1. Lodestar. Kept live, free, and independent of any Graph subgraph or gateway. Hosting, RPC and data bills are the first call on the funds.
  2. Catalyst research and engineering. The tracker stays public and is updated at least quarterly. The workstreams we can still move alone (gateway operator tooling, the multi-product Studio surface, the audit layer) keep moving. Where an item is gated on the Foundation, the tracker says so rather than pretending.
  3. Support. graph-support keeps its 48 hour human reply and its rule that no issue closes without a stated root cause. The Discord stays open with no application and no fee. Fixes that belong upstream go upstream as pull requests.
  4. nuthatch and The Graph. The public Network Subgraph endpoint, the Graph protocol nests, hosted nests for hackathon teams, and the subgraphs Studio cannot yet take.
  5. New data services. Reference implementations any indexer can run, in the open, with the traps documented.

At this size nothing goes to salaries. If a quarter’s spend is below the quarter’s allocation, the remainder is carried and reported, not distributed.

4. Governance and monitoring

  • The Graph Council approves the allocation.
  • The Night’s Watch posts a report on this forum every quarter: what was delivered, what was spent, every withdrawal by transaction hash.
  • The allocation expires twelve months after activation unless the Council renews it. A missed quarterly report is grounds for immediate removal, and removal is one governance transaction on the allocator.

Implementation

  1. Deploy a DirectAllocation instance with the Night’s Watch multisig as operator.
  2. Governance adds it as an allocator-minting target and sets the split: Rewards Manager 96.46327, Community Allocation 0.12073, Innovation Allocation unchanged at 24.146.
  3. Verify that the targets sum to 120.73 GRT per block and that the first distribution mints to the new contract.

Backward Compatibility

No changes to existing contracts. Indexing rewards fall by 0.125% of their current level. A Council that preferred to leave indexers untouched could source the 0.12073 GRT per block from the Innovation Allocation instead, which would reduce it by half of one percent; the allocator arithmetic is identical and we would accept either.

Risks and Security Considerations

  1. Smart contract risk. None new. Same audited DirectAllocation, new instance.
  2. Economic impact. Negligible by construction. The amount is one two-hundredth of the allocation approved three weeks ago.
  3. Governance risk. The allocation is to a small community group with a single active maintainer. That is mitigated by the multisig, the sunset, the quarterly report with hashes, and the fact that governance can stop it in one transaction. It is also, frankly, the risk the proposal exists to test: whether the protocol can fund community infrastructure at all without a grant programme.
2 Likes

The original post was written to the shape of GIP-0089 and kept short on purpose, which means it undersold what this covers. so here is the fuller list, grouped by who gets what. every line is a public repo under Night's Watch · GitHub or a live url, and the pledge is the same for all of it: it stays maintained, free and open for the twelve months, and the quarterly report says which of these moved and which did not.

for indexers

graph-support: 43 issues in six weeks, root cause found on 36, and the fixes that belonged upstream went upstream as pull requests. the 16 september network subgraph outage was diagnosed there while it was still happening.

gib, gateway in a box: a self-hostable tap v2 gateway for arbitrum one in one compose file that runs on a 2 GB vps, with a smoke test that proves the payment path without asking anyone’s permission. a second gateway operator is the one catalyst item nobody can do alone, so this is the workstream we keep pushing hardest.

a free public network subgraph endpoint at network.thenightswatch.dev/graphql for indexer-agent and indexer-service. no key, no quota.

horizon-doctor, reo-doctor, sik, indexer-gateway-auth, tap-query, weaver for dips agreements, foghorn: small read-only tools that catch the traps before they cost an allocation. the runbook for becoming a data service provider documents the ones we hit ourselves, including the thawing cap that refuses 30 days with an unnamed error.

while doing that we found every uups data service in this stack, ours and others’, had an empty _authorizeUpgrade that lets an upgrade silently repoint the collector. fixed where it could be tested, written up so the rest can copy it.

for subgraph developers

redstart: a typed language that compiles to assemblyscript graph build accepts unmodified, store-diffed against a hand-written subgraph with zero differences. nullable arithmetic and a forgotten save() stop being runtime surprises. graphite does the same job for people who want rust.

the graph academy at learn-thegraph.com, rebuilt at the end of august. every protocol parameter carries the date it was last checked against chain, and the symptom index at /diagnose is fed by every closed graph-support issue. it found three places where the official docs contradict each other and says so.

nuthatch for the chains studio cannot take yet. a uniswap v4 subgraph for robinhood chain would not deploy to studio last week and indexed on a free endpoint in minutes. hackathon teams get a hosted nest the same day.

for delegators and curators

lodestar, which since 7 september reads no graph subgraph at all and serves everything from self-hosted nests and one rust process. when we found the p&l panel misstated 54 of 58 indexers we published the correction rather than quietly fixing it.

the lodestar oracle, grc-009: an independent qos oracle that pays indexers directly for probes and publishes on chain, because the official one served july data as current for a month while reporting itself healthy.

subsidised hosted nests for hackathon participants - We will host your hackathon nest. Free, the same day. - Nuthatch

for the protocol

the catalyst tracker scores all eight roadmap items against public repos and says plainly which parts only the foundation can move.

seven grcs this year. dispatch, seahorn, sdsce, mainline and the nuthatch data service are deployed on arbitrum one as reference implementations any provider can run. we stopped operating them ourselves in july and said why.

upstream, six merged pull requests into graph-node, networks-registry and the reo dashboard this year, five more open, and the graph-node and indexer-rs bugs filed from support cases in the last fortnight.

what i am not claiming

that any of this is finished, that it has many users yet, or that 315,000 GRT a year changes what gets built. it covers some hosting and data bills and makes the network a participant in its own community tooling instead of a bystander. the work continues either way. I still will be at a net loss, but I am doing it for the network.

The part I would most like pushback on is the source of the 0.12073 GRT per block. Taking it from the rewards manager follows every precedent. Taking it from the innovation allocation costs indexers nothing. which would the council rather see?

a few people asked what this actually costs to run, so here is the bill, because the honest answer changes how the 0.1% should be read.

what we pay every month for the graph work, from the invoices, september 2026:

item what it runs per month
two hetzner boxes, 4 vcpu / 7.7 GB each helsinki: the nuthatch nests behind lodestar, the public network subgraph endpoint, backups. nuremberg: lodestar postgres and redis, foghorn, the qos probes about $40
alchemy rpc for the nests and the probes wherever the public endpoints refuse getLogs $183 in august, $284 so far in september. it was $39 in june
pinax token api on lodestar, firehose $49
vercel pro lodestar, the academy, nuthatch-indexer.com, redstart-lang.com, thenightswatch.dev $20
claude code max most of the engineering hours behind every repo above $200
codex the second reader on everything before it ships $100
eight domains about $8, paid yearly
the thinkpad at home, 32 cores / 62 GB ollama, the ephemeris nodes, every backfill before it ships to helsinki, the hackathon nests bought outright, electricity only

call it $600 to $700 a month depending on what alchemy does, and alchemy is the line going up. the allocation at today’s price is about $665 a month. so it covers the bills, just, and if grt drops from here it stops covering them.

what it does not touch is the part that actually costs something. graph-support is 43 issues in six weeks, most of them reproduced on a local graph-node before the write-up. lodestar is 1,344 commits since march. nuthatch is 1,663 since july. none of that is billed to anyone, and none of it will be under this proposal. 0.1% is not a salary and was never going to be.

so the point of the number is not that it funds the watch. it is that the network’s own community infrastructure has been running on a private card since march and the protocol has had no way to put a single GRT towards it. 0.1% is the smallest amount that changes that, and we would rather ask for the smallest amount and account for it every quarter than ask for a real one and be told the grants era is over.

the invoices go in the first quarterly report regardless. if anyone on the council wants them before the vote, say so and they go up here.

Ask seems reasonable. Would it have to be token issuance? Maybe could work out some sort of x dollar amount if there is funds allocated for this available?

Thanks! Yes, 600-700 usd a month