Skip to content

Add envelope sign/verify IPC commands and pilotctl front-ends#350

Merged
TeoSlayer merged 4 commits into
mainfrom
feat/envelope-ipc
Jul 3, 2026
Merged

Add envelope sign/verify IPC commands and pilotctl front-ends#350
TeoSlayer merged 4 commits into
mainfrom
feat/envelope-ipc

Conversation

@TeoSlayer

Copy link
Copy Markdown
Collaborator

Summary

  • CmdSignEnvelope (0x33): the daemon constructs and signs pilot-req-v1 envelopes itself — no code path signs caller-supplied bytes. The IPC socket admits any same-UID process, so this restriction is the security boundary.
  • CmdVerifyEnvelope (0x35): local-first key resolution via the key-exchange peer cache (registry fallback on miss), optional standing check (online/last_seen_unix/key_generation/network_member, tolerant of older registries)
  • pilotctl sign-request / verify-request
  • docs/SIGNATURE-VERIFICATION.md: the full three-surface spec (registry HTTPS oracle, daemon IPC, offline verdicts)

Depends on pilot-protocol/common#34 (reqsig + driver methods). Pin bump follows on this branch.

Testing

10 handler tests / 23 subtests (sign→verify round trip, refusal tables, cache-vs-registry paths, standing tolerance) + 6 pilotctl subprocess tests asserting the raw body never reaches the daemon.

🤖 Generated with Claude Code

- CmdSignEnvelope (0x33): the daemon constructs and signs pilot-req-v1
  envelopes itself; no code path signs caller-supplied bytes (the IPC
  socket admits any same-UID process, so this is the security boundary)
- CmdVerifyEnvelope (0x35): local-first key resolution via the
  key-exchange peer cache, registry fallback, optional standing check
- pilotctl sign-request / verify-request
- docs/SIGNATURE-VERIFICATION.md: full three-surface spec
Comment thread cmd/pilotctl/sign_request.go Fixed
Comment thread cmd/pilotctl/sign_request.go Fixed
Comment thread cmd/pilotctl/sign_request.go Fixed
teovl added 2 commits July 4, 2026 00:16
- bound --max-skew to 0-86400 before the uint32 conversion
- annotate the operator-supplied --body-file read (G304)
- ignore best-effort cleanup errors explicitly in IPCServer.Start
- regenerate docs/cli-reference.md for sign-request/verify-request
@TeoSlayer TeoSlayer merged commit e8e09f2 into main Jul 3, 2026
15 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants