Skip to content

Add glossary tooltips for protocol terms across the create wizard and detail pages #696

Description

@1nonlypiece

📌 Description

Terms like "penalty bps", "compliance score", "drawdown", "attestation", and
"early exit" appear throughout the create wizard and commitment detail components
with no inline explanation. New users must leave the flow to understand them.

This issue adds a reusable glossary tooltip keyed by term.

Goal: make protocol terminology self-explanatory in context.

🎯 Requirements and Context

  • A GlossaryTerm component renders an info affordance with an accessible
    tooltip/popover (built on the Dialog/popover primitives or a focusable
    tooltip).
  • Definitions live in a single src/lib/glossary.ts map so copy stays
    consistent.
  • Apply to key labels in CreateCommitmentStepConfigure.tsx,
    CommitmentDetailParameters, and CommitmentDetailAllocationConstraints.
  • Keyboard and screen-reader accessible (aria-describedby).

🛠️ Suggested Execution

1. Fork the repo and create a branch

git checkout -b feature/glossary-tooltips

2. Implement changes

  • New src/lib/glossary.ts and src/components/GlossaryTerm.tsx.
  • Apply to the configure step and detail parameter/constraint components.
  • Add src/components/__tests__/GlossaryTerm.test.tsx (RTL).
  • Add docs/GLOSSARY.md.

3. Test and commit

  • Run the repo test suite: pnpm test
  • Cover edge cases: unknown term fallback, open/close via keyboard, multiple
    tooltips on a page.

Example commit message

feat: glossary tooltips for protocol terms in create and detail views

✅ Guidelines

  • Minimum 95% test coverage on new/changed lines.
  • Clear, reviewer-friendly documentation.
  • Timeframe: 96 hours.

🏷️ Labels

type-feature · area-frontend · MAYBE REWARDED · GRANTFOX OSS ·
OFFICIAL CAMPAIGN

💬 Community & Support

  • Join the CommitLabs contributor Discord: https://discord.gg/WV7tdYkJk
  • Please introduce yourself before you start so we can avoid duplicate work.

Metadata

Metadata

Labels

No fields configured for Feature.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions