Skip to content

coordination: move the carrier stack out of nightseam, per decisions 0007 to 0012. #47

Description

@jm9e

Current coordination — 2026-09-26

bitwire owns contracts, immutable protocol identities, carrier guarantees and independent conformance; bitruntime implements Go/TypeScript. Addressless Wire / full WireTree and symmetric Data / DataTree are delivered; AddressedWire explicitly preserves opaque carrier access. bitwire v0.3.0 and bitruntime v0.1.0/v0.2.0 are released.

Executable owner graph

  • #39: independent released-runtime acceptance and contract work index.
  • #53: immutable bitwire/1 publication.
  • #54: carrier close/refusal/framing decisions and vectors.
  • #55: interaction/profile ownership and received-context decisions.
  • #20 ↔ runtime #13: lifecycle integration.
  • #29 ↔ runtime #15: full-tree/carrier composition and historical-gap disposition.
  • #42: primitive/tree/service umbrella, linked without duplicating its generic-service acceptance.

First milestone versus later work

Runtime #1 has released v0.2.0 source/artifacts, but remains open until PR52's independent released Go/TS gate and bitsystem3 #7's actual migration pass. Candidate runs and source merges are not those final gates.

Later runtime modules have bounded packets in runtime #2; each consumes only its relevant accepted contract decisions. They do not automatically block the first existing-profile consumer. bitsystem3 #11 separately realizes full application-level tree mapping.

Every closure record names contract/protocol/suite/runtime release identities and a real consumer disposition; published bitwire packages remain runtime-independent. New paths follow component-first two-letter language directories.

Reciprocal coordinators: runtime #2, bitsystem3 #8, nightseam #725, bitstore #3, deixis-svc #1, family index.

This epic closes when its committed owner packets have their required evidence/dispositions; no optional future runtime-language expansion is implied.

Historical issue record (preserved; current execution instructions are above)

Purpose

This epic coordinates bitwire's side of moving the carrier stack out of
nightseam. It follows the user's direction that no one using bitwire should be
required to use nightseam
.

The effort began with that direction (decision 0007). bitsystem3's carrier-stack
research then amended 0007, and bitwire's research 0002 led to 0010. It is
recorded in these decisions:

  • 0007: using bitwire never requires nightseam.
  • 0008: a protocol revision has its own identity.
  • 0009: which carriers exist, and byte-stream framing.
  • 0010: bitwire holds the contract, and bitruntime implements it.

Where the pieces go (decision 0010)

  • bitwire keeps:

    • the Wire contract in eight languages, and its laws;
    • the protocol specification bitwire/1;
    • the carrier contract and byte-stream framing;
    • the independent conformance cases and their runner protocol.

    It ships no production implementation.

  • bitruntime implements the
    contract in Go and TypeScript: operators, transports, carriers, the protocol
    engine, the invocation lifecycle, dispatch, live references and tunnels.

  • nightseam is discontinued. Its recorded defects are fixed in its
    successors, not ported.

Issues in this repository

The sub-issues of this epic:

What changed on 26 September

  • bitwire decision 0012 is accepted and released as
    bitwire v0.3.0.
    • Wire is now the addressless primitive send(message), and
      WireTree = DeixisNode<Wire> is the full byte-keyed tree.
    • The old path-taking interface is renamed AddressedWire; Endpoint extends
      it, and a return address holds one.
    • bitwire/1 is unchanged, and there are no aliases.
    • It supersedes the draft 0011 (End, Bitdata), which was closed
      unmerged.
  • bitstore owns the symmetric pair Data and DataTree = DeixisNode<Data>,
    released as bitstore v0.2.0.
    It joins this coordination through
    bitstore#3.
  • bitruntime v0.1.0
    is released. It is the structural core over bitwire 0.3.0: tree construction,
    selection, decomposition, derived sending and an addressed-access adapter.
    Transports, the protocol engine, dispatch and the lifecycle remain planned
    under bitruntime#1, so consumers still run on nightseam v0.6.0.
  • bitruntime's migration kickoff is the working instruction for that milestone.
  • bitwire #42 continues as the delivery lane for addressless Wire and WireTree.

Coordinating epics elsewhere

Related, coordinated separately

This epic closes when its sub-issues close.

Independent optional distribution

Hackage #11 retains the account-owned uploader gate and exact-version decision; verified public Git source remains Haskell's selected route. It is independent of this runtime/carrier migration and does not block it.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions