Skip to content

Agent-side device unbind / factory-reset + re-pair (method-A lifecycle) #156

@hanwencheng

Description

@hanwencheng

Split out of the method-A pairing-adoption PR (agent-initiated pairing: agent submits a request → master claims by scanning the code) to keep that PR focused on the pairing-direction flip. This issue is the device lifecycle half: unbind / factory-reset → re-pair to a (possibly new) owner.

Feature

agentkeys device unbind (and/or a daemon --unbind one-shot) = wipe the device's K10 + session + sidecar state locally. On the next --request-pairing the device mints a fresh key and shows a new pairing code; a (new) master claims it. The old on-chain binding orphans — inert, because the old key is destroyed and can never sign/mint again.

This is the IoT factory-reset → resell / re-onboard lifecycle that motivated method A in the first place (a no-input device the new owner re-pairs by scanning a fresh QR).

Scope

  • Daemon: --unbind (wipe K10/session/sidecar; idempotent).
  • CLI: agentkeys device unbind surface + confirmation.
  • Harness: an unbind → re-pair test (asserts a fresh device_key_hash + a real registerAgentDevice, distinct from the prior binding).
  • docs/operator-runbook-wire.md: a factory-reset / re-pair section.

Relation to #155

References

Metadata

Metadata

Assignees

No one assigned

    Labels

    area/cliagentkeys CLI, operator workstationarea/daemonagentkeys-daemon (sidecar) workarea/identityHDKD actor tree, K-key inventory, identity ceremonyenhancementNew feature or request

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions