Repository navigation
docs: gateway operator updates for Release 85 - #187
Merged
Merged
Conversation
From Release 85, peers announce to a publisher's tracker at https://<gateway>/ar-io/indexes/announce, and Envoy forwards it to the sidecar's second listener on 6970. Port 6969 needs opening only for direct announces. Document the --public-url flag, the new tracker proxy settings, the Envoy upgrade it needs, and the fleet pin to Envoy :3000. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01VtHwB55wzxPvWPD64D3pEx
Observers on the Release 85 image check that a sampled share of gateways serve /chunk/<offset> with a valid proof, and fail them by default. Say what the check is, list its failureCategory values, and how to fix a failure. Document the three pass/fail tests and the 2-of-3 majority, the new chunk and offset settings, and the OBSERVER_IMAGE_TAG pin. Remove the AO-era network contract and CU entries, and name the observer's real reference gateways. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01VtHwB55wzxPvWPD64D3pEx
Release 85 fills a gateway's L1 history from installed parquet-l1 bands while it runs (L1_BAND_IMPORT_ENABLED, index-l1-import --fill), and index-swarm-setup --subscribe <wallet> --l1 sets it up. Make that the main path. The stopped import is now only the fast path for a new core.db, since it refuses one a gateway has run on. Add the four L1_BAND_IMPORT_* settings and a pointer from the quick start. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01VtHwB55wzxPvWPD64D3pEx
Release 85 ships, so word its requirement callouts as "requires Release 85 or later" and drop the pre-release notes. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01VtHwB55wzxPvWPD64D3pEx
Release 85 serves an RSS feed of each index's torrents at /ar-io/indexes/feed/<index>.xml, listed in /ar-io/info indexes.feeds, and names the gateway as a WebSeed in each served .torrent. Show how to follow a publisher in qBittorrent, what the WebSeed costs a publisher and how to turn it off, and add INDEXES_PUBLIC_URL and INDEXES_TORRENT_WEBSEED. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01VtHwB55wzxPvWPD64D3pEx
With CLICKHOUSE_IMPORT_SKIP_UNCHANGED=true, the Release 85 default, a re-import skips unchanged rows and does not refresh expires_at. Point to the mutation the Parquet and ClickHouse guide describes instead. Add CLICKHOUSE_IMPORT_SKIP_UNCHANGED and CLICKHOUSE_AUTO_IMPORT_DEBUG_RETRY_WINDOW_S to the auto-import table, and correct the height interval default to 10000. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01VtHwB55wzxPvWPD64D3pEx
Upgrade Envoy with core for the tracker route, bring the sidecars up with the same -f files and profiles so they move to the new core image, update a pinned OBSERVER_IMAGE_TAG, purge gzip bodies an NGINX cache stored before the fix, and stop trusting gateways older than #964. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01VtHwB55wzxPvWPD64D3pEx
Release 85 ships tools/ar-io-node, which runs in the core image and prints one JSON value on stdout. Say what it is, list its commands in a line each, and link the full reference. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01VtHwB55wzxPvWPD64D3pEx
From Release 85, /ar-io/offsets also answers from CDB64 indexes on local disk (offsets_lookup_total), and the bare root of a sandbox subdomain answers 451 when blocked and 404 otherwise. Link the full list of environment variables in the gateway repository. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01VtHwB55wzxPvWPD64D3pEx
Reflow a callout, drop a stray character from a diagram label, say that the observer's 3 checks and 2-of-3 majority are defaults, and smooth the gzip upgrade notes. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01VtHwB55wzxPvWPD64D3pEx
Every claim was checked against the gateway's code. Fixed: - The torrent engine runs qBittorrent's image, not the core image; only its setup step, the sidecar and index-export run core (index-export honours INDEX_EXPORT_IMAGE_TAG). - The tracker origin is --public-url, then INDEXES_PUBLIC_URL, then ARNS_ROOT_HOST; the direct-port fallback needs a public host, uses INDEX_SWARM_TRACKER_PORT, and without one the script writes no tracker. An existing INDEX_SWARM_TRACKERS is kept, so Release 84 publishers get an upgrade step to move announces to the gateway route. - The announce check now uses the setup script's own test (`?info_hash=x` answers a bencoded failure reason); a bare 503 is not success. - On a new gateway, run setup without --restart before the first start; --restart would start core and the sidecar alone. - Observer: `unverifiable` never counts as a pass (only an all-unverifiable check is inconclusive), and the report lists the best observation's samples. - index-l1-verify proves the bands form one consistent chain; tying it to the chain needs --anchor-from, and replaced folders must go first. - The publication doesn't sign a .torrent; a gateway with HTTPSIG signs its response. qBittorrent's queue defaults were not provable; dropped. - CLICKHOUSE_AUTO_IMPORT_MAX_ROWS_PER_FILE defaults to 1000000. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01VtHwB55wzxPvWPD64D3pEx
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Brings docs.ar.io up to date with ar-io-node Release 85. Merge once Release 85 is released. The pages say "Release 85 or later" and describe features that ship in it, including ar-io/ar-io-node#1032, #1033 and #1034.
Every gap was first confirmed against the gateway's code, and every fact here is sourced from ar-io-node's own docs or code.
Index Sharing
/ar-io/indexes/announce, which Envoy forwards to the sidecar on 6970. Publishers no longer open 6969 unless peers announce to it directly.--public-url), the fleet steps and the NGINX note are all updated.INDEX_SWARM_TRACKER_PROXY_*./ar-io/infoindexes.feeds, and following a publisher in qBittorrent;.torrentnames, andINDEXES_TORRENT_WEBSEED;INDEXES_PUBLIC_URL.--l1andL1_BAND_IMPORT_ENABLEDfill a gateway's L1 history while it runs; a new gateway follows the chain tip from the start. The stopped import is the fast path for a newcore.dbonly. Quick start points at it.Observer and chunks
failureCategory;/chunk/<offset>, warm-up after a restart, and removetip-5.OFFSET_*,ARWEAVE_PEER_CHUNK_GET_MAX_PEER_ATTEMPT_COUNT,PREFERRED_CHUNK_*_NODE_URLS.OBSERVER_IMAGE_TAGpinned in.envoverrides the new compose default.Other
-ffiles and--profileflags;ar-io-nodeCLI.CLICKHOUSE_IMPORT_SKIP_UNCHANGED(the default), an unchanged re-import no longer reapplies TTL rules. Also addedCLICKHOUSE_AUTO_IMPORT_DEBUG_RETRY_WINDOW_S, and correctedCLICKHOUSE_AUTO_IMPORT_HEIGHT_INTERVALfrom 1000 to 10000./ar-io/offsetsanswers from local CDB64.Checks:
npm run check-linksreports 0 errors;npm run lintandnpm run buildpass, the build with the same warnings asmain.Left as is: the torrent magnet examples still show
:6969tracker URLs, as they were when written. I couldn't confirm turbo's current tracker list.🤖 Generated with Claude Code
https://claude.ai/code/session_01VtHwB55wzxPvWPD64D3pEx