CryptoHelvetia Logo
Torna alla raccolta

Scegli il titolo e lo slug canonici

Normalizza titolo e slug di ogni voce scegliendo tra le varianti morfologiche quella che diventa la forma ufficiale.

File

skills/titolo-slug-canonici.md

Scarica .md

Prompt

source-command-title-normalization

Use this skill when the user asks to run the migrated source command title-normalization.

Command Template

CryptoGlossario — Title Normalization

Owns title and slug only.

Goal: save the canonical lemma and a matching slug.

What to do

  • Keep the title in the original technical form used by the domain.
  • Use canonical casing: DeFi, dAPI, SegWit, Zk-EVM.
  • For stable acronyms with a standard expansion, use ACRONYM (Expanded Form).
  • Do not expand tickers, standards, product codes, or protocol IDs when expansion is not normal usage.

Choosing between morphological variants

When the same concept appears in two competing word-forms — typically a base/deverbal noun vs an -ing gerund (Token Burn vs Token Burning, Fork vs Forking, Stake vs Staking) — pick the lemma in this order:

  1. Most attested form first. Use web research (per AGENTS.md "Web research standard": domain matching, currency, authority) to find which form dominates real domain usage (project docs, standards, reputable glossaries). The more frequent, lexicalized form is the lemma. This mirrors dictionary practice, which is descriptive and usage-based, not rule-based.
  2. Semantic tie-breaker, only when attestation is not clear-cut. If neither form clearly dominates:
  • gerund (-ing) for ongoing processes or activities: Token Burning, Sharding, Staking;
  • base / deverbal form for discrete objects, events, or results: Fork, Airdrop, Mint.

The form you reject is a synonym, not a throwaway. A learner must be able to see that the two are equivalent, so hand the rejected variant off downstream:

  • name the rejected variant in the reason field of the batch, flagged as the alternative form;
  • it must end up in searchAliases (owned by grammar-inflection) so the term is findable under either spelling;
  • the definition (owned by content-definition) names it as a synonym ("anche detto …").

Title-normalization does not write those two fields; it only decides the lemma and records the variant so the later skills pick it up.

Uniqueness rule

  • title must be globally unique in the DB.
  • slug must be globally unique in the DB.
  • If the canonical lemma collides with an existing title, disambiguate the title by appending the shortest stable domain label in square brackets.
  • Round parentheses stay reserved for acronym expansions, as in ACRONYM (Expanded Form). Do not use round parentheses for domain disambiguation in new titles.
  • The slug must mirror the full disambiguated title.

Examples:

  • Benchmark [AI] -> benchmark-ai
  • Benchmark [Computing] -> benchmark-computing

Use a short domain label only when needed to break a real collision. If a stable disambiguator is not obvious, stop and flag the case.

Batch Format

``json [ { "slug": "current-slug", "reason": "Why this title/slug is canonical. If a morphological variant was rejected, name it here as the alternative form (e.g. 'Token Burning' is the attested lemma; 'Token Burn' is the synonym -> searchAliases + definition).", "updates": { "title": "EVM (Ethereum Virtual Machine)", "slug": "evm-ethereum-virtual-machine" } } ] ``

``bash bun scripts/apply-title-normalization-batch.ts /tmp/cg_title_batch.json bun scripts/apply-title-normalization-batch.ts /tmp/cg_title_batch.json --apply ``