📌 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.
📌 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.
🎯 Requirements and Context
GlossaryTermcomponent renders an info affordance with an accessibletooltip/popover (built on the
Dialog/popover primitives or a focusabletooltip).
src/lib/glossary.tsmap so copy staysconsistent.
CreateCommitmentStepConfigure.tsx,CommitmentDetailParameters, andCommitmentDetailAllocationConstraints.aria-describedby).🛠️ Suggested Execution
1. Fork the repo and create a branch
2. Implement changes
src/lib/glossary.tsandsrc/components/GlossaryTerm.tsx.src/components/__tests__/GlossaryTerm.test.tsx(RTL).docs/GLOSSARY.md.3. Test and commit
pnpm testtooltips on a page.
Example commit message
✅ Guidelines
🏷️ Labels
type-feature·area-frontend·MAYBE REWARDED·GRANTFOX OSS·OFFICIAL CAMPAIGN💬 Community & Support