Files
nym/common
Yana Matrosova 50382553c2 NYM-1199: implement real Node Families IPC (Rust command layer + provider wiring)
Add the missing Tauri command layer for the node-families contract and switch
the wallet's real provider onto it (node-families-real-ipc groups 1-3, docs).

Rust command layer (src-tauri/src/operations/families/):
- execute.rs: 9 state-changing commands over NodeFamiliesSigningClient, auto/
  simulated gas; create_family attaches create_family_fee as base-denom funds.
  Returns TransactionExecuteResult (family_events omitted per D2 - the provider
  refreshAll()s reads after every execute).
- query.rs: 9 reads over NodeFamiliesQueryClient, normalised at the IPC boundary
  to the wallet shapes in src/types/families.ts: base Coin -> display DecCoin
  (paid_fee, create_family_fee), per-page contract envelopes -> { items,
  start_next_after }, cw_serde tagged FamilyInvitationStatus -> { kind, at }.
  get_family_config reads raw contract state at the "config" key (no smart query).
- Registered all 18 commands in main.rs; added the contract-common path dep.
- cargo build + cargo clippy clean.

Provider wiring:
- Replace the controlledNodeIds = [] stub in FamiliesContextProvider with a
  derivation from useBondingContext().bondedNode ([nodeId]/[mixId]/[]); wrap the
  /family route in BondingContextProvider (it is per-route, not global). D3.
- Fix the requests/families.ts execute bindings to pass camelCase arg keys
  (Tauri maps JS camelCase -> Rust snake_case params).

Types reconciliation + drift guard:
- Fix the generated FamilyInvitationStatus `at` field (bigint -> number) and
  export the 18 generated family types from the @nymproject/types barrel.
- Add src/types/families.contract-guard.ts: tsc-checked assertions locking the
  wallet families types against the ts-rs-generated contract types; IPC-normalised
  fields excluded with documented reasons.

Docs: real-IPC path + guarded sandbox write-flow procedure in e2e/README.md;
design D3 one-bonded-node-per-account note; parent change 9.4/9.5 cross-ref;
update_family arg shape confirmed against the contract (6.2).

Families Jest suites green; contract guard passes. Remaining sandbox read/write
smokes (3.3, groups 4-5) need a wired native build + sandbox + the funded test
account, tracked in tasks.md.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-10 16:51:46 +03:00
..
2023-10-24 11:16:06 +02:00
2026-04-17 09:23:55 +01:00
2026-05-19 10:36:20 +01:00
2026-04-17 09:23:55 +01:00
2026-05-22 15:30:24 +01:00
2026-04-17 09:23:55 +01:00
2026-04-17 09:23:55 +01:00
2026-04-17 09:23:55 +01:00
2026-04-17 09:23:55 +01:00
2026-01-19 13:19:45 +00:00
2026-04-17 09:23:55 +01:00
2026-04-17 09:23:55 +01:00
2026-04-17 09:23:55 +01:00
2026-04-17 09:23:55 +01:00
2026-05-22 15:30:24 +01:00
2026-04-17 09:23:55 +01:00
2026-05-22 09:43:20 +01:00
2026-05-19 10:36:20 +01:00
2026-05-28 15:57:10 +00:00
2026-04-17 09:23:55 +01:00
2026-05-22 15:30:24 +01:00
2026-05-22 15:30:24 +01:00
2026-05-22 15:30:24 +01:00
2026-04-17 09:23:55 +01:00
2026-04-17 09:23:55 +01:00
2026-04-17 09:23:55 +01:00
2026-04-17 09:23:55 +01:00
2026-04-17 09:23:55 +01:00
2026-06-08 12:23:00 +02:00
2026-05-19 14:21:12 +02:00
2026-05-28 15:57:10 +00:00
2026-04-17 09:23:55 +01:00