futurefin-metric-definitions

Keeps FutureFin metric help texts synchronized with the code that computes each KPI.

1|Updated May 2, 2026
One-click install
npx skills add https://github.com/maxlainz/FutureFin --skill futurefin-metric-definitions-maxlainz
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: futurefin-metric-definitions
Source: https://github.com/maxlainz/FutureFin/tree/main/.claude/skills/futurefin-metric-definitions
Command: npx skills add https://github.com/maxlainz/FutureFin --skill futurefin-metric-definitions-maxlainz

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? In FutureFin, every KPI shown to users has a prose description in apps/web/src/lib/helpTexts.ts explaining what it measures, its basis, and its window. When code changes silently alter a metric's meaning (its base, window, denominator, or exclusions), the help text drifts and users see contradictory numbers. This Skill enforces a merge gate so metric semantics and their catalog entries never diverge. ## Core Features & Use Cases - Merge gate for metric semantics: Any change to a metric's base, window, denominator, exclusions, mode dependency, or naming must end in an updated catalog entry, an added/removed entry, or a reasoned n/a in the commit body. - Entry authoring rules: Defines the <view>.<metric> id format, title and body length constraints, plain-Spanish style without implementation jargon, and the requirement to state what a metric is NOT when it resembles another. - Coverage test guidance: Explains the bidirectional test in helpTexts.test.ts that catches icons pointing to missing texts and orphaned texts without consumers. - Use Case: You change the savings card in Movements to use income_avg - expense_avg instead of summing savings-kind transactions. This Skill tells you to update expenses.savings, retire the old entries, and verify with the coverage test. ## Quick Start Ask the AI to review your metric change against the helpTexts catalog and update the affected entries before merging.

Frequently Asked Questions about futurefin-metric-definitions

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I add a new KPI to the FutureFin help texts catalog?▼

Add an entry to apps/web/src/lib/helpTexts.ts with an id in the form <view>.<metric>, a title under 40 characters matching the card label, and a body over 60 characters in plain Spanish stating the basis explicitly. Wire the helpId in the same view and run the coverage test.

What counts as a metric semantics change in FutureFin?▼

A semantics change includes altering the metric's base, window, denominator, exclusions, dependency on the savings_source mode, or renaming a visible metric. Pure refactors, format changes, and file moves qualify as reasoned n/a and must be stated in the commit body.

Why does the helpTexts coverage test fail after removing a metric?▼

The test checks both directions: no icon may point to a missing text and no text may remain orphaned without a consumer. When you retire a metric, remove its catalog entry in the same change, otherwise the orphaned-text half of the test catches it.

When should I not use the metric definitions skill?▼

Do not use it for popover component mechanics or CSS tokens, FIRE formula details, configuration axes, or generic merge gates. Those belong to the design-system doc, the fire-domain-reference skill, the config-and-flags skill, and the change-control skill respectively.

How do I verify helpTexts claims without compiling the project?▼

Use grep commands documented in the skill: count entries with grep -c '^ "' on helpTexts.ts, list consumers with grep -rn 'helpId=' on tsx files, and run npm test --workspace futurefin-web -- helpTexts for the bidirectional coverage check.