Skip to content

[DX/Headless] Client findings on 0.15.5: tonic feature gate, private note sync, and AuthSingleSig recovery #2464

Description

@agent-default

Testing a non-browser, headless daemon flow on testnet v0.15.5 (miden-client 0.15.5) surfaced three operational items for daemon/agent builders:

1. ClientBuilder::for_testnet() requires non-default tonic feature

ClientBuilder::for_testnet() is gated behind #[cfg(feature = "tonic")]. The standard getting-started docs show ClientBuilder::for_testnet(), but a fresh binary with miden-client = "0.15.5" fails compilation until features = ["tonic"] is added.

2. Private note discovery side-channel

Notes minted via private faucet (or external note creation) do not surface through sync_state. Ingesting a private note headlessly requires fetching note bytes manually (GET /get_note) and passing them to import_notes() before calling consume_notes(). This aligns with the note transport layer requirements outlined in #1796.

3. Local key rebind vs. AuthSingleSig authority

Wiping an account's primary keystore while retaining store.sqlite3 allows local state re-hydration using an isolated secondary Falcon key (AuthSecretKey::new_falcon512_poseidon2). However, because AuthSingleSig commits to the initial public key, on-chain execution under the rebound key will fail auth validation until multi-sig or Guardian account components are used for full key rotation.

Reference implementation: https://github.com/agent-default/miden-agent

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Fields

Priority

None yet

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions