Networker Agent Context

Repository

  • Path: /Users/levander/coding/networker
  • Branch: v2 (single commit b83d36b init v2)
  • Workspace: single package railway at packages/railway

Current Module Structure

packages/railway/src/
  lib.rs              -- module declarations
  bytestream.rs       -- ByteStreamSource/ByteStreamDestination traits (blanket impls over AsyncRead/Write)
  error.rs            -- PhaseError trait (blanket impl over std::error::Error)
  framing/
    mod.rs
    frame.rs          -- Frame<B,P> enum (Passthrough/Buffered), PassthroughFrame/BufferedFrame traits, SimplePassthroughFrame
    frame_producer.rs -- FrameProducer trait (extends tokio_util::codec::Decoder)
    frame_store.rs    -- BufferFrameStore trait (placeholder)

Key Types

  • Frame<B, P> — generic enum with Passthrough(P) and Buffered(B) variants
  • PassthroughFrame / BufferedFrame — marker traits for frame variants
  • SimplePassthroughFrame — has seq: usize
  • FrameProducer — extends Decoder, produces Frame<B, P> items
  • ByteStreamSource / ByteStreamDestination — thin wrappers over tokio async I/O
  • PhaseError — extends std::error::Error

Not Yet Implemented

  • Pipeline / Service trait
  • Routing (Turnout, DestinationRouter)
  • Buffering (Stabling)
  • Protocol codecs (HTTP)
  • TCP/Unix socket sources
  • Builder API (Conductor)
  • Forwarding (Coupler)
  • Tests