Skip to content

ADR 05: Phase 1 Scope (The Walking Skeleton)

Status: Accepted Date: 2026-04-09

To avoid drowning in boilerplate and to validate the core architecture early, Phase 1 focuses on building a "Walking Skeleton." This is the minimal set of adapters and domain logic required to prove the end-to-end flow of the system.

The Domain

The core logic that must be implemented first:

  • AT Proto did:plc resolution logic: The ability to resolve a handle to a DID document.
  • Swarm PSK generation logic: The SHA256(Substratum_Master_Secret + User_DID) function.
  • Passport Receipt validation logic: The ability to parse and verify the JSON schema and cryptographic signatures.

The Network Adapter (The "Swapped" IPFS)

The minimal libp2p configuration required to establish the private swarm:

  • A libp2p configuration that enforces the custom PSK.
  • A configuration that explicitly disables the public DHT and uses a static bootstrapper list.

The Sidecar Adapters

The minimal interfaces for the local agent:

  • Primary: A simple CLI Adapter (no GUI, no REST API yet). Just commands like substratum start, substratum add <file>, substratum get <cid>.
  • Secondary: A simple local disk Storage Adapter (e.g., a flat-file blockstore).

The SaaS/Gateway Adapters

The minimal interfaces for the cloud components:

  • Primary: A basic HTTP/REST Adapter that can verify an AT Proto JWT and return a block. (No complex React/Next.js dashboard yet, just the raw API).

By limiting the scope to this Walking Skeleton, we can quickly validate the modular monolith structure, the libp2p network behavior, and the Ports and Adapters design before investing in complex UIs or scalable databases.