PoolParty™ Open workspace
Build log

PoolParty development and verification history

Every claim on this site traces to a document written when the thing was proven, not afterwards. There are more than a hundred of them. This is the arc through them — dated, in order, and including the parts that went badly.

  1. Day one

    Enrollment, updates, and scheduling across three operating systems

    • Sixty-odd evidence records in a single day: enrollment, admission, activation, pause, resume, retirement and removal — written separately for macOS, Windows and Linux rather than once and assumed to port.
    • Signed packages and rollback on every platform. Update staging, package removal that fails closed, and a separated-key release mechanism.
    • The scheduler’s failure matrix, node-assignment exclusivity and queue aging — written before there was a queue worth aging.
    • Directory sign-in and operator credential rotation. The enterprise foundations date from day one; the product around them does not exist yet.
  2. Days two and three

    Job execution, computer pairing, and batch workloads

    • The contribution daemon executing real assignments, gated hardware sensing, and supervised child processes.
    • The local network plane for moving data between machines, and one-click join for a personal pool.
    • WASM batch workloads and job-group fan-out — the first shape of many machines working on one thing.
  3. Day four

    AI model serving and Windows enrollment

    • LLM serving, then token streaming, then queued runs and the formation loop (ADR 0100, 0101).
    • The first Windows enrollment, end to end — and the join confirmed the same day (ADR 0102).
    • The admitted-peer allowlist for the blob store (ADR 0099): who is allowed to hold your data is a list, not a vibe.
  4. Day five

    App controls and encrypted storage

    • Sealed storage in two slices: encrypt, split and scatter, then the 2-of-3 recovery rung with device-to-device key approval and reconstruction (ADR 0113, 0114).
    • The app’s panels executed one by one — machine specs, model fit and streaming chat, network, work, storage, join and consent (ADR 0106 through 0111).
    • Economy foundations: the catalog served and installed from, the OpenAI-shaped surface answered by the live pool, and the first credits attributed (ADR 0115).
  5. Day six

    macOS signing and verified jobs across two computers

    • Developer ID signing and notarization, with the keychain custody verified rather than assumed (ADR 0118).
    • The identifier family renamed to PoolParty before signing, because renaming after signing is how you invalidate everything (ADR 0117).
    • W1e: the Windows machine joined the live pool, sensed itself truthfully, and executed verified workloads. The first cross-machine pool (ADR 0112).
    • A guided walkthrough of the whole app, run with the owner at the keyboard against the live signed pool — including the debts it exposed.
  6. Day seven

    Storage recovery, Windows test fixes, and VPN connectivity

    • A live holder frozen past twice its heartbeat repaired its own sealed placements on the next beat, in the same process, with no restart (ADR 0121).
    • The Windows continuous-integration leg ran on the pool’s own PC. It queued for four hours and seven minutes, then found five defects in a row — four of them ours (ADR 0116).
    • VPN coexistence, first slice: the pool stopped advertising a path it cannot use, said so in words a person can act on, and stopped throwing away accepted work on one failed poll (ADR 0120).
  7. Day eight

    MCP integration and encrypted relay connections

    • The local consume gateway and a Model Context Protocol server. A real Claude Code session registered it with one command and got an answer from the pool’s own model, with no account and no token (ADR 0123).
    • The hub relayed sealed ciphertext it cannot open, as a last resort only, time-limited and budgeted (ADR 0122) — closing the connectivity work started the day before.
  8. Day nine

    Remote API, native GPU jobs, and app permissions

    • The hosted consume surface, WAN-shaped but not deployed — the gateway built, the deployment itself deliberately left to a decision (ADR 0126).
    • The native accelerated workload tier: GPU-tagged jobs placed on machines with the right card, run as digest-pinned programs behind their own separate consent (ADR 0124).
    • The third-party app surface — “Runs on PoolParty” — a versioned local door for other applications, with consent asked per app (ADR 0125).
  9. Day ten

    Download staging and optional account support

    • A hosted download front door, staged rather than live (ADR 0128).
    • An optional owner account — passkey only, a name over an existing node rather than a gate in front of it (ADR 0127).
    • The credits referral engine, built as the honest half: the part that can be true before a marketplace exists.
  10. Day eleven

    Model selection, remote connectivity, and inference research

    • The model-picker contract: any LLM command-line tool can point at the pool and choose per request, from lists that carry availability, an honest price or an honest blank, and advisory fit labels (ADR 0131).
    • The pool mesh — enrolled devices connecting from anywhere, proven on one machine, with the legs that cross networks recorded as staged rather than claimed (ADR 0130).
    • Mixture-of-experts placement as a research tier, whose own record opens by saying nothing in it is a performance claim, nothing is cross-machine, and no reach is proven (ADR 0129).
How to read this

This is a selection, not the whole file — there are over a hundred evidence records and a directory listing is not a story. Nothing here is reconstructed from memory: each line comes from a document with a date on it, written when the work was proven, and the numbers in parentheses are the architecture decisions behind them.

The bad days are in on purpose. A build log with no failures in it is marketing wearing a timestamp.

Machine names, file paths and node identifiers have been removed. Nothing else has been changed.