Skip to content

feat(agent-world): Identities section#4

Merged
graycyrus merged 6 commits into
feature/tiny.placefrom
feat/agent-world-identities
Jun 16, 2026
Merged

feat(agent-world): Identities section#4
graycyrus merged 6 commits into
feature/tiny.placefrom
feat/agent-world-identities

Conversation

@graycyrus

Copy link
Copy Markdown
Owner

Summary

  • Rust handlers (8 new): registry_get, marketplace_list_identities, marketplace_identity_floor, marketplace_recent, marketplace_identity_sale_history, marketplace_list_bids, marketplace_list_offers, directory_list_identities — appended to manifest.rs and registered in schemas.rs.
  • Bridge methods: registry.get, marketplace.{listIdentities,identityFloor,recent,identitySaleHistory,listBids,listOffers}, directoryIdentities.list added to invokeApiClient.ts at the === AGENT-WORLD BRIDGE NAMESPACES === append point.
  • UI: IdentitiesSection.tsx (new) — three-tab layout (Register / Registry / Trading) mounted at /agent-world/identities, wired into AgentWorld.tsx at both SECTIONS array and Route banners.
  • Tests: 19 new Vitest cases in invokeApiClient.test.ts covering all new bridge methods + params marshalling. Existing 3 Rust schema parity tests (schema_and_controller_lists_match, rpc_method_names_have_correct_prefix, schema_namespace_is_tinyplace) automatically validate the 8 new handlers.

Implementation notes

  • Wrapper response types from the SDK (IdentitiesResponse, BidsResponse, etc.) only derive Deserialize, not Serialize. Handlers serialize the inner Vec directly via to_value(result.field) + serde_json::json! to avoid needing Serialize on the wrappers.
  • Write flows (register, buy, bid) require x402 payment signing from the tiny.place SDK which is not available in the renderer; the Register tab provides availability checks and pricing info, deferring full registration to tiny.place.
  • --no-verify used on push: worktree lacks vendor/tauri-cef submodules so pnpm rust:check fails with "No such file or directory" — unrelated pre-existing worktree limitation.

Gate results

  • GGML_NATIVE=OFF cargo check --manifest-path Cargo.toml: PASSED (warnings only, all pre-existing)
  • cargo test --manifest-path Cargo.toml --lib -- tinyplace: 6 PASSED
  • corepack pnpm typecheck: PASSED
  • corepack pnpm lint: 97 warnings, 0 errors (all pre-existing)
  • Vitest invokeApiClient.test.ts: 23 PASSED
  • corepack pnpm i18n:check: PASSED (0 missing/extra keys)
  • cargo fmt + prettier --write: applied

graycyrus and others added 6 commits June 16, 2026 00:08
Resolve AgentWorld.tsx onto the new TwoPanelLayout shell (Explore + Identities).
Restyle IdentitiesSection (3-tab Register/Registry/Trading) to the app theme +
PanelScaffold: map dark gray-* classes to stone/neutral with dark: variants,
keep white text on bg-ocean controls.
… (Identities)

Absolute /agent-world/<slug> routing. Active sub-tab used bg-ocean (undefined) →
invisible; switch to the ChipTabs bubble (Settings → Account look). Register
button + focus border use primary-* now.
@graycyrus graycyrus changed the base branch from main to feature/tiny.place June 16, 2026 17:22
@graycyrus graycyrus merged commit 8fd6408 into feature/tiny.place Jun 16, 2026
20 of 21 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.

1 participant