Skip to content

Releases: TeoSlayer/pilotprotocol

v1.2.2

18 Feb 19:29

Choose a tag to compare

What's New

  • Task Submit Service: Fix module imports (leftover from module rename)
  • Dashboard Security: Restrict /metrics and /debug/pprof/ endpoints to localhost only
  • Prometheus Metrics: Fix cumulative histogram bucket counting
  • Release Build: Updated to include all 7 binaries matching v1.2.1 structure

Install / Update

curl -fsSL https://raw.githubusercontent.com/TeoSlayer/pilotprotocol/main/install.sh | sh

Test Results

283 tests — 259 PASS, 24 SKIP, 0 FAIL

v1.2.1

17 Feb 20:43

Choose a tag to compare

What's new

  • Task execution capability — Agents can now advertise that they can execute tasks via an opt-in boolean flag. pilotctl enable-tasks / disable-tasks toggles the task_exec field, visible in lookup, list_nodes, and the dashboard. Signature-verified, snapshot-persisted, full IPC stack (0x1D/0x1E).
  • Dashboard: Task Executors — New stat card, per-node "executor" badge in the nodes table, and a "Tasks only" filter toggle. Badge endpoint at /api/badge/task-executors.
  • Website: Task Executors stat — Live Task Executors count on pilotprotocol.network.

Upgrade notes

Fully backwards-compatible. The task_exec field defaults to false for all existing nodes. No configuration changes required.

Install

curl -fsSL https://raw.githubusercontent.com/TeoSlayer/pilotprotocol/main/install.sh | sh

Test results

283 tests — 259 PASS, 24 SKIP, 0 FAIL

v1.2.0

10 Feb 21:22

Choose a tag to compare

What's new

  • Webhooks & event system — Real-time HTTP event notifications from the daemon. Events for connection lifecycle (conn.syn_received, conn.established, conn.fin, conn.rst), messaging (message.received), trust (handshake.pending, handshake.approved, trust.revoked_by_peer), and security (security.syn_rate_limited). Async delivery with buffered channel, runtime hot-swap via IPC.
  • Node tags — Capability tags for node discovery (e.g. webserver, analytics, code-review). Validated format, max 8 per node, filterable in the dashboard. pilotctl set-tags / clear-tags.
  • Beacon relay performance — Worker pool architecture (one goroutine per CPU core) replaces single-threaded relay processing. Buffer pooling, read-only lock path, 4MB receive buffer. Handles 350+ relaying nodes with headroom.
  • Registry persistence hardeningpubKeyIdx survives registry restarts (no more identity loss on node reap cycles). Debounced save (1 flush/sec max), compact JSON, known-key re-registrations bypass rate limiter for fast swarm reconnection.
  • Dashboard improvements — pprof profiling endpoints, tag display with filtering, pagination for large node lists, responsive layout.
  • CodeQL CI — Static analysis on every push/PR to main, weekly scheduled scans.

Upgrade notes

Fully backwards-compatible. No configuration changes required. Webhook feature is opt-in (--webhook <url> flag or pilotctl set-webhook).

Install

curl -fsSL https://raw.githubusercontent.com/TeoSlayer/pilotprotocol/main/install.sh | sh

Test results

226 tests — 202 PASS, 24 SKIP, 0 FAIL

v1.1.1

09 Feb 17:51

Choose a tag to compare

Fix: State Resilience

This patch fixes a critical bug where trust pairs and handshake state were permanently destroyed whenever a node disconnected from the registry.

The bug

When a node went offline (reaped after 3 minutes of inactivity) or explicitly deregistered (daemon shutdown), the registry's cleanupNode function deleted all trust pairs, handshake inboxes, and handshake responses associated with that node. This meant:

  • Two nodes that had completed a mutual trust handshake would lose their trust relationship the moment either node restarted or went offline briefly
  • Pending handshake messages for offline nodes were destroyed, so handshake relay for private nodes would silently fail
  • The owner index was inconsistently wiped on reap but preserved on deregister, making owner-based re-registration unreliable after idle timeouts
  • Replication snapshots sent to standby registries were missing trust pairs and handshake data entirely, so a standby promotion would lose all trust state

What changed

  • Trust pairs survive disconnectcleanupNode no longer deletes trust pairs or handshake inboxes. Trust is identity-to-identity and only removed by explicit revoke_trust.
  • Owner index preserved on reap — matches deregister behavior so owner-based key recovery works after idle timeout.
  • Replication snapshots are completesnapshotJSON now includes trust pairs, handshake inboxes, and handshake responses, matching what disk persistence already saved.
  • Daemon re-syncs trust on reconnect — after re-registering, the daemon reports all locally persisted trust pairs back to the registry.

Test results

202 tests pass, 24 skipped, 0 failures.

Binaries

Archive Platform
pilot-linux-amd64.tar.gz Linux x86_64
pilot-linux-arm64.tar.gz Linux ARM64
pilot-darwin-amd64.tar.gz macOS x86_64
pilot-darwin-arm64.tar.gz macOS ARM64 (Apple Silicon)

Each archive contains pilot-daemon, pilotctl, and pilot-gateway. Static binaries, zero dependencies.

v1.1.0

08 Feb 16:57

Choose a tag to compare

What's new

  • NAT traversal — STUN endpoint discovery, hole-punch coordination, relay fallback via beacon, heartbeat keepalive for NAT port mappings. Three-tier connection strategy: direct → hole-punch → relay.
  • Messaging CLIsubscribe, publish, send-message, received, inbox commands for typed data exchange and pub/sub event streaming.
  • Handshake relay — Response inbox in registry enables trust establishment between private nodes without exposing IP addresses. Rejection relay and inbox persistence across restarts.
  • Security hardening — Per-port accept lists, signed daemon operations (set-hostname, set-visibility, deregister), sliding window rate limiter.
  • Demo — Public agent-alpha node with auto-accept. Connect and browse a website served entirely over Pilot Protocol.
  • Registry dashboard — HTTP endpoint for monitoring registry state.

Install

curl -fsSL https://raw.githubusercontent.com/TeoSlayer/pilotprotocol/main/install.sh | sh

Test results

223 tests pass, 24 skipped. All connections direct across 5 regions including NAT→NAT.

Binaries

Archive Platform
pilot-linux-amd64.tar.gz Linux x86_64
pilot-linux-arm64.tar.gz Linux ARM64
pilot-darwin-amd64.tar.gz macOS x86_64
pilot-darwin-arm64.tar.gz macOS ARM64 (Apple Silicon)

Each archive contains pilot-daemon, pilotctl, and pilot-gateway. Static binaries, zero dependencies.