Skip to content

Conversation

@m-005
Copy link
Member

@m-005 m-005 commented Jan 24, 2026

Part 3 of the Foundation stage for objects-node daemon.

Changes

Adds state type definitions for persistent node state:

  • NodeState - Persistent state with node keypair and optional identity
    • Uses SecretKey from objects-transport (Iroh Ed25519 key)
    • Optional IdentityInfo for registered OBJECTS identities
  • IdentityInfo - RFC-001 identity linking:
    • Identity ID (obj_ + base58 hash)
    • Registered handle
    • 8-byte nonce for ID derivation
    • Signer type (Passkey or Wallet)

Security

Comprehensive documentation on security requirements:

  • State files must use 600 permissions (owner read/write only)
  • Node key must be kept secure and never committed to version control
  • Supports anonymous mode (no identity) for nodes that don't publish assets

Testing

  • Serialization round-trip tests
  • Identity persistence tests
  • Both Passkey and Wallet signer types validated

Part of the Foundation stage (3/4). Builds on: #49. Next: State Persistence (#37).

@claude
Copy link

claude bot commented Jan 24, 2026

Code review

No issues found. Checked for bugs and CLAUDE.md compliance.

@m-005 m-005 changed the base branch from spr/m-005/config-loading-toml-file-io-and-env-overrides to main January 24, 2026 17:33
@m-005 m-005 force-pushed the spr/m-005/state-types-nodestate-struct-definitions branch from 2376222 to 03c96f1 Compare January 24, 2026 21:20
@m-005 m-005 force-pushed the spr/m-005/state-types-nodestate-struct-definitions branch from 03c96f1 to b5896a6 Compare January 28, 2026 02:16
m-005 added 2 commits January 27, 2026 21:17
- Use IdentityId and Handle from objects-identity instead of String
- Make IdentityInfo fields private with public getters
- Add IdentityInfo::new() constructor
- Update documentation to reference actual implementations (not RFCs)
- Format code with rustfmt
Add objects-test-utils to dev-dependencies to use identity test utilities
@m-005 m-005 force-pushed the spr/m-005/state-types-nodestate-struct-definitions branch from b5896a6 to 9857c26 Compare January 28, 2026 02:17
@m-005 m-005 merged commit 8e60028 into main Jan 28, 2026
5 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.

2 participants