Skip to content

[PPR Domain] Effect-TS: Layer 2 store + Layer 5 composable + Layer 7 tests #95

Description

@Soushi888

Summary

PPR (Private Participation Receipt) domain — the reputation layer. Wraps PPR-specific governance zome externs, provides a reactive store for private participation claims and reputation summaries, and a display composable for the reputation UI.

Scope

Layer 2 — Store

  • stores/ppr.store.svelte.tsmyPPRs: UIParticipationClaim[], myReputationSummary: UIReputationSummary | null, sharedReputations: Map<string, UIReputationSummary>
  • Fetches get_my_participation_claims, get_reputation_summary from zome_gouvernance

Layer 5 — Composable

  • composables/domain/ppr/usePPRDisplay.svelte.ts — derives reputation breakdown by category, performance averages, recent activity; surfaces selectively-shareable summary for agent-to-agent disclosure

Layer 7 — Tests

  • Store tests verifying PPR aggregation and category filtering
  • Composable tests for reputation summary derivation

Acceptance Criteria

  • pprStore.myReputationSummary correctly aggregates all 16 PPR claim categories
  • PPRs are never exposed via public DHT links (private-entry-only pattern)
  • bun run check, bun run test, bun run build pass

Depends on

#94 (Governance domain)

Part of

Epic #7

Metadata

Metadata

Assignees

No one assigned

    Labels

    frontendFrontend development - UI, SvelteKit, Effect-TS

    Type

    No type

    Projects

    Status
    Backlog

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions