Skip to content

History

Revisions

  • Merge the SOCKS proxy pages into master The wiki gains a user page on the SOCKS5 proxy of the socks-proxy branch and two developer pages on its implementation and its chains, with two figures. Pages the branch makes stale note where it differs.

    @adam-waldenberg adam-waldenberg committed Oct 20, 2026
    aaa0d53
  • Note what the socks-proxy branch changes on existing pages The branch adds the communication spork under the id 1040, offers other protocol identifiers and opens a proxy port when one is given. The pages keep the facts of the release and point to the SOCKS proxy page where the branch differs.

    @adam-waldenberg adam-waldenberg committed Oct 20, 2026
    de551f1
  • List the SOCKS proxy pages in the sidebar The SOCKS proxy and its two developer pages sit under Upcoming, after the S3 pages and before the ledger.

    @adam-waldenberg adam-waldenberg committed Oct 20, 2026
    23e1979
  • Describe the chains that carry SOCKS proxy traffic Chains are append-only logs in memory that the members of a shard group host for their clients. The page covers entries and their bytes, admission, the chain packets, joins, refusals, reconcile and the budgets each stream gets.

    @adam-waldenberg adam-waldenberg committed Oct 20, 2026
    9274878
  • Describe the implementation of the SOCKS proxy The page covers the proxy module and its glue in the daemon, the SOCKS5 front end, shard groups and exits, the keys and sealing of a session, the exit side and the full destination policy. A figure shows the messages of a CONNECT session.

    @adam-waldenberg adam-waldenberg committed Oct 20, 2026
    43ff7af
  • Add a page on the SOCKS proxy of the socks-proxy branch Users and operators get one page on the SOCKS5 proxy: turning it on, the communication spork that switches it on for the network, using it from curl or a browser, its replies and what it does not protect. A figure shows the path of one session through a shard group.

    @adam-waldenberg adam-waldenberg committed Oct 20, 2026
    d070894
  • Merge the S3 endpoint pages into master The wiki gains a user page on the S3 endpoint of the s3 branch and four developer pages on its server, namespace index, blob layer and features, with three figures. Pages the branch makes stale note where it differs.

    @adam-waldenberg adam-waldenberg committed Oct 20, 2026
    b6952fb
  • Note the faster pings and idle timeout of the s3 branch On the s3 branch peers ping every 20 seconds and drop an idle connection after 1 minute, and a HELLO from a known peer replaces the connection it made before. A restarted peer is thus noticed within about a minute rather than after 15.

    @adam-waldenberg adam-waldenberg committed Oct 20, 2026
    761b0b0
  • Note where the s3 branch replaces the REST object store The s3 branch drops the S3-style buckets of the REST interface, the --restmaxupload option and the s3data directory in favour of the S3 endpoint on port 52885. The pages keep the facts of the release and point to the endpoint where the branch differs.

    @adam-waldenberg adam-waldenberg committed Oct 20, 2026
    9cb8195
  • List the S3 pages in the sidebar under upcoming work The S3 endpoint and its implementation pages sit under Upcoming, between network storage and the ledger, laid out as the ledger pages are.

    @adam-waldenberg adam-waldenberg committed Oct 20, 2026
    56b32b3
  • Describe the S3 features the endpoint implements Checksums, preconditions, ranges, versioning, Object Lock, lifecycle rules, CORS, tagging and name rules each get their behaviour and limits, so a client author knows where the endpoint matches Amazon S3.

    @adam-waldenberg adam-waldenberg committed Oct 20, 2026
    6b5cba9
  • Describe how S3 objects map to blobs and the cache Objects are lists of slices over immutable blobs in network storage, shared by copies and multipart uploads. The page also covers the memory-mapped cache in front of network storage and how it chooses what to evict.

    @adam-waldenberg adam-waldenberg committed Oct 20, 2026
    ebde9e1
  • Describe the namespace index of the S3 endpoint The index is a log-structured merge tree whose runs and manifests live in network storage, so its byte layouts, the flush order and what a crash leaves behind decide whether a namespace survives. Two figures show the tree and the flush sequence.

    @adam-waldenberg adam-waldenberg committed Oct 20, 2026
    3a43f75
  • Describe the S3 server and its authentication The page covers the Netty pipeline in front of Jersey, the flow control of request and response bodies, routing, the error codes and Signature Version 4 with its payload modes, presigned URLs and form uploads. A figure shows the path of a request through the pipeline.

    @adam-waldenberg adam-waldenberg committed Oct 20, 2026
    9bcc62b
  • Add an overview of the S3 module for developers The page maps the packages of the hedgehog-s3 module to the pages that cover them, lists the interfaces the module uses towards the node and describes how the daemon starts, retries and stops the gateway.

    @adam-waldenberg adam-waldenberg committed Oct 20, 2026
    5342c8c
  • Add a page on the S3 endpoint of the s3 branch Operators and users get one page on the S3 endpoint: its port, TLS, options, access keys, client setup for aws, rclone and restic, what is supported and how a namespace is recovered from its root id. It carries the banner of upcoming work, as the endpoint is not part of a release.

    @adam-waldenberg adam-waldenberg committed Oct 20, 2026
    c473b74
  • Say that the REST token is checked before a body is read

    @adam-waldenberg adam-waldenberg committed Oct 18, 2026
    21f70cb
  • Describe the limits on the body of a REST request

    @adam-waldenberg adam-waldenberg committed Oct 18, 2026
    7ef2865
  • Show what the ledger commands write when they sign

    @adam-waldenberg adam-waldenberg committed Oct 18, 2026
    fa9d60f
  • Drop a sentence of the home page that adds nothing

    @adam-waldenberg adam-waldenberg committed Oct 18, 2026
    0abb095
  • Call the two parts of a claim runs of the command The claim is made by running the command twice, with the legacy wallet in between. Name the runs plainly in the text of the command line page.

    @adam-waldenberg adam-waldenberg committed Oct 18, 2026
    7e12f2c
  • Say how a node without a running ledger answers a sync A node that offers the ledger protocol but has no ledger running answers a request for blocks with an empty batch at once, so a peer that syncs moves on to another node instead of waiting for its timeout.

    @adam-waldenberg adam-waldenberg committed Oct 18, 2026
    59a9958
  • Say what the mint storage commands refuse up front The REST interface answers 400 for an entry that no node can mint, and the command refuses a past time for an account unless --allow-past is given, since a date written in digits is easily taken for seconds.

    @adam-waldenberg adam-waldenberg committed Oct 18, 2026
    bb1ab86
  • Say that the authority keeps the decoded mint entries The authority decodes the entries of the mint spork once for each version of the spork and finds a mint by its reference, since the ledger asks about every due mint at every tick. The pages said that nothing was cached and that every entry was decoded on every call.

    @adam-waldenberg adam-waldenberg committed Oct 18, 2026
    b5592d1
  • Say that waiting transactions survive a promotion A node that replaces another in the same process, as a signing node replaces the observer it started as, takes over the transactions that waited for a block. Before, a promotion dropped what the node had taken in. A restart of the process still loses them, which the pages now say in those words.

    @adam-waldenberg adam-waldenberg committed Oct 18, 2026
    8b81439
  • Describe the send queue that puts votes ahead of bulk Each peer has a queue of two lanes. Ballots, heartbeats and statuses are written before proposals, decisions and transactions, so a big block that fills the stream no longer holds up the votes. Each lane is bounded in bytes. The old text said that a message the stream could not take was dropped quietly.

    @adam-waldenberg adam-waldenberg committed Oct 18, 2026
    68259ab
  • Describe how spork checks and amounts are bounded Signature checks of sporks that arrive are given out in turns per spork type and sending peer, so a flood of forged sporks cannot use up the work of the node. Amounts in sporks are read with a bound on decimals, digits and length, since a few bytes of exponent could otherwise write out as gigabytes when signed. Also correct the path of SporkRecipients.

    @adam-waldenberg adam-waldenberg committed Oct 18, 2026
    be51e27
  • Say that the node proposing a spork waits on it too The node a spork is proposed on records the proposal at once, as every other node does when it receives it, and answers no for what the spork governs until it is co-signed or lapses. A blacklist therefore takes effect quickly and claims are held back meanwhile, at the price of a short lockout. A renewal holds all four ledger sporks the same way.

    @adam-waldenberg adam-waldenberg committed Oct 18, 2026
    d9dbc66
  • Describe the cap on what a spork mints to one address A node refuses a spork mint once the mints made to its address would pass the sum that the mint spork grants that address. This keeps a later version of the spork from paying an address twice by giving the same grant a new number. The total is derived from the blocks and a claimed legacy address keeps counting under its own address.

    @adam-waldenberg adam-waldenberg committed Oct 18, 2026
    f3e0bd6
  • Name the folder of each chain in the ledger pages The block log and the sign state of a chain sit in a folder of their own below ledger, named by the start of the chain id, and the node logs that folder at start. A node given another genesis opens another folder and leaves the old ones. The pages said the folder was the same for every genesis and had to be moved away by hand.

    @adam-waldenberg adam-waldenberg committed Oct 18, 2026
    b04efdf