Use this file to classify the request before editing code.
Trigger:
guardian.proto- HTTP JSON fields
- endpoint semantics
- status enums
- auth metadata requirements
Likely surfaces:
crates/server/proto/guardian.protocrates/server/src/api/http.rscrates/server/src/api/grpc.rscrates/server/src/services/*crates/client/src/client.rspackages/guardian-client/src/server-types.tspackages/guardian-client/src/conversion.ts- both multisig SDKs if proposal or state shapes change
Validation:
cargo test -p guardian-servercargo test -p guardian-clientcd packages && npm ci && npm test -w @openzeppelin/guardian-client- one upstream smoke when user-visible behavior changes
Trigger:
- pending, candidate, canonical, discarded behavior
- nonce or commitment convergence
get_delta_since- canonicalization worker or storage rules
Likely surfaces:
crates/server/src/jobs/canonicalization/*crates/server/src/services/get_delta_since.rscrates/server/src/services/push_delta.rscrates/server/src/services/push_delta_proposal.rscrates/server/src/storage/*crates/server/src/metadata/*- multisig sync and example canaries if client-observable
Validation:
cargo test -p guardian-server- integration or e2e server tests when transport semantics changed
- at least one Rust or TS multisig smoke if convergence behavior is visible upstream
Trigger:
- request signing
x-pubkey,x-signature,x-timestamp- Falcon or ECDSA behavior
- ack key, ack signature, ack scheme, ack pubkey
- keystore or signature encoding
Likely surfaces:
crates/server/src/ack/*crates/server/src/metadata/auth/*crates/client/src/auth/*crates/client/src/keystore/*packages/guardian-client/src/auth-request.ts- multisig execution or signature utility modules
Validation:
- both Rust and TS client tests where relevant
- both Falcon and ECDSA targeted coverage
- manual smoke if proposal execution or browser signers are affected
Trigger:
- raw client request or response shapes
- conversion rules
- error shapes
- HTTP or gRPC client semantics
Likely surfaces:
crates/client/src/*packages/guardian-client/src/*
Validation:
cargo test -p guardian-clientcd packages && npm ci && npm test -w @openzeppelin/guardian-client
Trigger:
- create, list, sign, execute
- threshold counting
- export, import, offline sign
- proposal metadata mapping
SwitchGuardian
Likely surfaces:
crates/miden-multisig-client/src/client/*crates/miden-multisig-client/src/proposal.rscrates/miden-multisig-client/src/execution.rspackages/miden-multisig-client/src/multisig/*packages/miden-multisig-client/src/proposal/*packages/miden-multisig-client/src/transaction/*
Validation:
- Rust and TS multisig package tests
- example smoke in
examples/demoorexamples/smoke-web
Trigger:
- Miden Wallet integration
- browser-only workflows
- shared example adapters
Likely surfaces:
examples/_shared/multisig-browser/src/*examples/smoke-web/src/*examples/web/src/*- TS multisig signers and client wrappers
Validation:
cd examples/smoke-web && npm run typecheck && npm run buildcd examples/web && npm run build- browser smoke with isolated profiles when signer behavior changed
Trigger:
- ECS, Terraform, AWS auth, prod rollout
- SDK version bump or publish
- benchmark execution or reporting
Use the existing specialized skills instead of expanding this one:
deploy-guardian-awsrelease-guardian-sdk-packagesrun-guardian-prod-benchmarks