Skip to content

Owner review 19, lane B: clearance of Mano (마노), Ballo (발로) and Hanpan (한판) (2026-10-13) ​

Status: Draft · Date: 2026-10-13 · A knock-out search, not legal advice and not a full clearance. Classes 9, 35, 41, 42. Method follows review 15 trademarks and review 15 meaning.

Owner, review 19. Korean words that sound like Latin roots, with meanings tied to group sports, gathering or physical activity. The lead's three picks are cleared here.

1. Verdicts ​

WordVerdictDeciding facts
Hanpan 한판BlockedA live Hanpan app already runs sports clubs ("한판 - 동호인 스포츠 클럽 운영앱", the same job). Identical 한판 filed in class 41 (games, leisure sport) on 2026-09-10 and in class 35 on 2025-10-12. Weak for sport services: KIPO refused 탁구 한판 24 and 요가한판, and 운동한판 is only pending. hanpan.app, hanpan.com, hanpan.kr, hanpan.co.kr taken.
Mano 마노Risky (close to Blocked)Identical live marks in class 35 in Korea (마노, Latin MANO) and in the EU/WO (MANO and Mano Club, Colibri SAS, which runs the ManoMano marketplace; class 41 too). US MANO in class 41 (events, DJ) and class 9 (headphones, suspended). Every domain and both handles taken. Crowded app names. Meaning is a clean sound, with Portuguese slang "bro".
Ballo 발로Usable with conditionsNo identical live mark in KR, US or EU in our classes. getballo.com and ballo.kr free, balloapp free on YouTube and TikTok. Conditions: 발로 is Korean shorthand for the game Valorant (all Korean store results for 발로 are Valorant tools); 발로소득 (Hecto Innovation, a walking-health app) is registered in classes 9/35/41/42 and is a sound-near neighbour; an app called Ballo exists on Google Play; the "with the feet" and slang readings need a native speaker.

Honest ranking: Ballo is the only one of the three that survives the usable tests, and it survives with real baggage. Hanpan is out. Mano is out in practice because no address and no handle are left, even though no single mark kills it outright.

2. Services and limits ​

ServiceResultQuery (re-runnable)
KIPRIS (KIPO)Worked, no refusal, 8 s apart. Read 21 pages for 한판 (619 hits, all read) and 8 pages for 마노 (9,440 hits, top 240 read) and 발로 (174,632 hits, top 240 read).GET https://www.kipris.or.kr/khome/search/searchResult.do?tab=trademark with a cookie jar, then POST https://www.kipris.or.kr/kdtj/grrt1000a.do?method=searchTM with queryText=<hangul>&expression=<hangul>&sortField=RANK&sortState=Desc&currentPage=<n>&numPerPage=30.
USPTOWorked. alive:true, size 100. mano 93 hits, ballo 6, hanpan 0.POST https://tmsearch.uspto.gov/prod-stage-v1-0-0/tmsearch, body {"query":{"bool":{"must":[{"match":{"wordmark":{"query":"<latin>"}}}],"filter":[{"term":{"alive":true}}]}},"size":100}.
TMviewWorked, HTTP 200 for all three, 8 s apart. Capped at 100 rows: mano has 15,548 hits and ballo 2,738, so only the first 100 were read. hanpan has 32 hits, all read.POST https://www.tmdn.org/tmview/api/search/results, browser User-Agent, Origin: https://www.tmdn.org, Referer: https://www.tmdn.org/tmview/, body {"page":"1","pageSize":"100","criteria":"C","basicSearch":"<latin>","fNiceClass":["9","35","41","42"],"fTMStatus":["Registered","Filed"]}.
iTunesUS, KR, JP, 3 s apart, six terms (three Latin, three Hangul).`curl -s "https://itunes.apple.com/search?entity=software&limit=50&country=<us
Google PlayReadable (HTTP 200). Titles parsed from the result cards, hl=en&gl=US and hl=ko&gl=KR, 8 s apart. Detail pages did not parse, so download counts are not known.curl -s -A "<browser UA>" "https://play.google.com/store/search?q=<term>&c=apps&hl=en&gl=US"
Domainsrdap.org, rdap.kisa.or.kr, and port 43 whois at whois.nic.io and whois.registry.co. 3 s apart.curl -sL https://rdap.org/domain/<d>; curl -sL https://rdap.kisa.or.kr/domain/<d>; printf "<d>\r\n" | nc whois.nic.io 43. 200 = taken, 404 or "not found" = free.
YouTube, TikTok8 s apart. YouTube https://www.youtube.com/@<h>: 200 taken, 404 free (control zzqxkwv1 gave 404). TikTok https://www.tiktok.com/@<h>, read "statusCode": 0 taken, 10222 private or banned (taken), 10221 free (control zzqxkwv1 gave 10221).See left.

Limits that apply to every verdict:

  • Sound-alike (칭호) is only partly tested. KIPRIS and USPTO match the spelling; TMview fuzzily on the Latin. A 변리사 must run the phonetic search before any filing.
  • KIPRIS ranks loose matches. 마노 and 발로 hit thousands of rows (any title containing the syllables), so only the top 240 by rank were read. A live exact mark ranked lower could exist. 한판 was read in full.
  • Goods were read from the first 60 to 90 characters of the KIPRIS goods text. "Same class" is not "same goods".
  • TMview is capped at 100 rows for mano and ballo, so the EU view is partial. Colibri's ManoMano filings appear in it; a full EUIPO search was not run.
  • X was not checked (weak signal in earlier rounds). Handles below cover YouTube and TikTok only, as the brief asked.
  • Naver, Namu and 우리말샘 slang pages are not readable by curl. Slang rests on the 표준국어대사전, Wiktionary and Urban Dictionary.

3. Hanpan 한판: Blocked ​

3.1 Trademarks ​

KIPRIS, Hangul, live marks (all 619 rows read).

MarkStatusClassOwnerFiledGoodsMeaning for us
한판 (4020260190463)filed41주식회사 디에스엠2026-09-10ticket booking for entertainment and sports events, amusement parks, game facilities, game services, mobile online games, theme parks, leisure sportsIdentical, our class, overlapping services (sports events, games). Pending, so it can still be refused.
한판 (4020250187724)filed35김우식2025-10-12restaurant franchise advice, processed food retailIdentical, class 35, food trade. Low overlap.
한판 최저가 한 개만 판다 (4020250109666)filed9, 35진승현2025-06-24search and data softwareCompound slogan.
한판 한국판촉물제조협동조합 (4020210018996)registered35한국판촉물제조협동조합2021promo goods advertisingCompound, 한판 is a 판촉 abbreviation here.
라이언과 눈싸움 한판 (4020160111649)registered41주식회사 카카오2016live shows, entertainmentCompound, Kakao.
운동한판 (4020260192668 class 41; 4020260186584 class 35; PINFIT 4020260186226 class 35/41)filed35, 41김장현2026-09fitness and exercise club services, sports event running, sports information websites한판-ending compound in our exact trade, three weeks old. A senior filer in sports services.
한판승부 (4020250042495 class 41; 4020250042491 class 35)registered35, 41(재)씨비에스2025-03-17news, TV, advertisingCompound.
한판면접 (4020200016420 class 41; 4020200016355 class 9)registered9, 41윤소윤2020education software, interview trainingCompound.
한판회, 한판족, 한판댁, 한판의원, 한판붕어빵, 한판하이소, 한판떼기, 솥한판, 두레한판, 양한판, 뒤집기한판, 계란한판filed or registered35 (some 43, 44, 29, 16/41)various2013 to 2026restaurants, food retail, a clinic, an exam-prep publisherCompounds in food and unrelated trades.
인지한판 (4020260191298)filed16, 28, 41박종신2026-09-10board games, memory games, game educationCompound, games.
목포항구축제 신명나는 항구의 한판! (classes 35 and 41)registered35, 41목포시2015festival servicesSlogan.

Refused, abandoned or lapsed marks that show how KIPO treats the word. 탁구 한판 24 무인 (4020240211746, class 41, table-tennis lessons, sports clubs and facilities, 2024) is 거절 (refused). 요가한판 (class 9 refused; classes 35 and 41 abandoned, 2023). 한판 (HANPAN) class 9 software (2003) refused. 한판 class 35 (tea and health food, 2017), class 29 (Homeplus, 2020) and class 43 (2004) refused; 한판 class 43 (2015) abandoned. Registered identical 한판 exist only in classes 1/5 (agrochemicals), 3 (cosmetics) and lapsed 7/9/11 (Samsung, 소멸). I did not read the refusal grounds, so whether KIPO refused them for descriptiveness or for a prior mark is not established.

TMview and USPTO (Latin). TMview: KR 한판 (35, 김우식, filed) and the KR compounds above; CN HANPANDA (9, 35, 41, 42, unrelated). No EU or US Hanpan. USPTO: 0 live hits for hanpan.

Distinctiveness. 한판 is an everyday noun for "one round, one game" (Wiktionary: "single round, one game"; also the ippon of judo). For a sports-club or match service it is descriptive or at best suggestive, and the refusals of 탁구 한판 24 and 요가한판 fit that pattern (reason not read). Stronger in Latin (Hanpan means nothing outside Korean) but the Hangul form is the one Koreans see. Verdict on distinctiveness: weak for sport services in Korea.

3.2 App stores ​

StoreHits
iTunes US한판 - 동호인 스포츠 클럽 운영 (SUNGHO JANG, Sports, 0 ratings); 한판 (JaeHyeok Yeo, Sports, 0); HANPAN (Changsoo You, Sports, 0); 한판맞고 (Games, 246 ratings); 큐알교육학 한판노트 (Education).
iTunes KRThe same, plus 한판 - 격투기 원데이클래스 (Sports), 한판 - 즐거운 우리동네 쇼핑의 시작, 한판 - 폰으로 하는 파티게임, 한판맞고 (347 ratings), and about ten more 한판 titles.
iTunes JP한판 - 동호인 스포츠 클럽 운영, 한판 (Sports), 한판 - 격투기 원데이클래스, 한판맞고.
Google Play한판 - 동호인 스포츠 클럽 운영앱 (JerryJang, KR and US), 한판 - 격투 스포츠 플랫폼 (YOUZANG), 한판 - 똑똑한 AI매장, hanpan (직장인브라더스), and about fifteen game titles.

The exact job we would do, running a recreational sports club, is already taken under the exact name in Hangul on both stores. Under the rule in the brief this is a block (same name, related category), not a condition.

3.3 Domains and handles ​

AddressResult
hanpan.comTaken (created 1999); homepage returns HTTP 436, no content.
hanpan.appTaken (created 2026-05-17); live site titled "Hanpan" with Korean fonts and a splash screen, so a Korean product is already there.
hanpan.io, hanpan.coFree (whois "Domain not found" and "DOMAIN NOT FOUND").
gethanpan.comFree.
hanpan.kr, hanpan.co.krTaken.
YouTube @hanpan / @hanpanappTaken both (HanPan; Hanpan App).
TikTok @hanpan / @hanpanapphanpan taken (statusCode 0); hanpanapp free (10221).

Domain and handle tests pass on paper (.io, .co, get free) but they do not matter beside the app-store and trademark blocks.

3.4 Meaning ​

  • Wiktionary 한판: noun, "single round, one game" (sport, games) and, in judo, ippon ("one technique to end and win a match"); North Korean sense "the very middle". Source: https://en.wiktionary.org/w/index.php?title=%ED%95%9C%ED%8C%90&action=raw. The 표준국어대사전 search for 한판 returned one result.
  • Common in food and game names: confirmed by the KIPRIS rows (한판떼기, 한판붕어빵, 솥한판, 계란한판 meaning a tray of 30 eggs) and by about twenty game apps.
  • Japanese はんぱ (半端, "incomplete"): not tested in a source; Hangul 한판 is read hanpan, so a Japanese reader would hear はんぱん. No Wiktionary or store evidence of a harm. Treated as not a problem, not proven.
  • Greek pan-: not a meaning of the Korean word; irrelevant to the Korean reader. Urban Dictionary "hanpan" gives only personal-name noise.

4. Mano 마노: Risky ​

4.1 Trademarks ​

KIPRIS, Hangul (top 240 by rank of 9,440 hits), live marks.

MarkStatusClassOwnerGoodsMeaning for us
마노 (4020210025032)registered35주식회사 마노retail of car parts and child car seatsIdentical, our class 35, unrelated retail trade.
마노 (4020250136285)filed16최혜정children's activity booksIdentical, class 16, outside our classes.
마노 (MANO) (4020210095767)registered30(주)카페베네coffeeIdentical, class 30.
마노 (4020190160191)registered7마노코리아coffee machinesIdentical, class 7.
마노패밀리 (4020220091138 class 35; 4020220091145 class 41; 4020240006896 class 35)registered35, 41이형민, 이은지advertising, music recording, singer performance, cosmetics retail마노-led compound in class 41 entertainment.
마노마니, 마노루이, 마노한복, 마노앤디또, 마노네, 마노코, 마노슈가, 라마노, 르마노 (class 9), 별마노 (class 9, emoticons), 마노씨 감정잡화점 (class 35 and 41, pending)registered or filed9, 35, 41variousretail, apparel, educationCompounds and shops.
마노 와 무니, 마노 앤 마노 (cafe), 마노 델 아르떼registered21, 43, 3varioushousewares, bakeryOutside our classes.

There is no identical live 마노 in class 9, 41 or 42 in the rows read. TMview adds a Latin KR MANO (class 35, 주식회사 매노팜, registered 2019).

USPTO.

MarkClassStatusOwnerServices
MANO (99019154)41registeredTreated LLChosting social entertainment events, DJ services, live music
MANO (97384934 and 97384895)9suspendedMaono Technology Inc.headphones, microphones, smartwatches, audio interfaces
MANO COUNTY, MANO COUNTY ROLEPLAY41registeredWalk With Christ LLConline video games
MANO KIDS, MANO PERCUSSION9suspended or publishedJam Industrieskids' headphones
LA MANO 2141registeredMartha Maria Sanchez Quirozonline computer and board games
DE PRIMERA MANO38, 41new applicationGrupo Imagensports and cultural activities

TMview, EU and nearby (first 100 of 15,548 hits). WO and FR MANO (35, 36, 37, 38, 39, 41, 44) and EM Mano Club (35) belong to Colibri SAS, the owner of the ManoMano marketplace. EM MANO figurative (35, 41, 43, 3 Reyfood, 2025); EM MANO NERA (9, 41); DE MANO (30, 35, 43, filed 2026-07); GB MANO (9, 20, 28, Specialised Sports Equipment Limited, 2018). Identical word marks in class 35 and 41 by a large EU retailer weigh against the name even for a different trade; I did not read the Colibri goods lists.

Distinctiveness. Arbitrary in Korean (agate). In Spanish and Italian it means "hand", unrelated to tennis services, so a US examiner under the foreign-equivalents doctrine would not call it descriptive. "Mano a mano" would only be suggestive. Distinctive, but crowded.

4.2 App stores ​

StoreHits
iTunes USMANO: Food & Grocery Delivery (Shopping, MANO Group LTD, 275 ratings); Manobook (unrelated).
iTunes KRMANO: Food & Grocery Delivery (1 rating); Mano - Chat, Places & Moments (Social Networking, Amri Khalid, 1 rating); Mano EŽYS and Mano Telia (Telia Lietuva).
iTunes JPMANO: Food & Grocery Delivery (1 rating).
iTunes, Hangul마노샵 (Shopping, Yoonkyung Huh, 0 ratings), KR and JP.
Google PlayMANO food & products delivery and Mano Ops/Mano Partners (Mano group Ltd); Mano - Chat, Places & Moments (Amri K); MANO (Prof. Dr. C.M.Tom Manohar); Mano (JDK s.r.l.); Mano Kraujas (blood centre); 마노 정글 어드벤처 (arcade game, KR).

Exact-name apps exist but in unrelated categories. The one in a nearby field is the social "Chat, Places & Moments" app (1 rating): a condition, not a block, on the store rule.

4.3 Domains and handles ​

AddressResult
mano.comTaken (1998), live page.
mano.appTaken (2018), live page.
mano.ioTaken (2013).
mano.coTaken (2010).
getmano.comTaken.
mano.kr, mano.co.krTaken.
YouTube @mano / @manoappTaken both (wtfmano; ManoApp).
TikTok @mano / @manoappTaken both (statusCode 0).

No address and no handle is left. This alone fails the domain and handle tests.

4.4 Meaning ​

  • Korean 마노 (瑪瑙): agate. Confirmed by the 표준국어대사전 ("석영, 단백석, 옥수의 혼합물") and Wiktionary (ko "agate").
  • Spanish and Italian mano: "hand", and in games "round" or "hand" (Wiktionary). Mano a mano: English noun "a head-on conflict or direct competition" (Wiktionary mano a mano), which fits singles tennis.
  • Other languages (Wiktionary, mano): Portuguese informal "brother"; Tagalog the respect gesture of pressing an elder's hand to the forehead; Samoan "ten thousand"; Cebuano "a schoolyard pick". Urban Dictionary: short for hermano or irmão ("bro"). None is harmful.
  • Brand risk is the one the lead named: ManoMano (EU marketplace, Colibri SAS, confirmed in TMview), plus the delivery, social and DIY apps above.

5. Ballo 발로: Usable with conditions ​

5.1 Trademarks ​

KIPRIS, Hangul (top 240 by rank of 174,632 hits; the count is inflated by loose matching), live marks containing 발로.

MarkStatusClassOwnerGoodsMeaning for us
발로소득 (4020220110679 class 9; 110681 class 35; 110684 class 41; 110685 class 42)registered9, 35, 41, 42주식회사 헥토이노베이션step counter and smartwatch, health information, online games, diet education, health-information platformAll four of our classes. Not identical (발로소득 is one word, "income from walking"), but 발로 is its distinctive start and the field is mobile health and activity. This is the nearest sound-alike.
발로엔터테인먼트 (VALOR ENTERTAINMENT) (4020190036637)registered41김동혜entertainment servicesCompound, class 41.
발로가 (BALOGA) (4020210258461)registered41이현아beauty and massage educationCompound, class 41.
발로타 (BALROTA) (4020200145704)registered9원태연telescopes, speedometers, sports gogglesCompound, class 9, sports goods.
발로레 (4020250049965)published35임종상foot orthotics retailCompound, class 35.
발로르 델 띠엠포 (VALOR del TIEMPO)filed41류수지craft educationDifferent word.
발로101, 발로쓱, 버선발로 (class 35 and 41), 까발로registered3, 16, 35, 41variouscosmetics, tissue, towels, ceramicsCompounds and different words.

No identical live 발로 in KR in classes 9, 35, 41 or 42 in the rows read. The only identical-title marks were 발로 (Piace Ballo, class 9, 2000, 소멸 lapsed) and Ballo;발로 (class 35, 2020, 거절 refused).

TMview and USPTO (Latin). USPTO live: JULIUS BALLO and JUJU BALLO (class 41, 2021, an individual athlete's entertainment services, a personal name), IL BALLO DEL DOGE (class 41). TMview: no identical BALLO in KR or EM. EM Studio Ballo (35, 42, 45, a personal name, figurative, 2022). Outside our target markets: CN BALLO (41), TR ballo (41, 43), FI BALLO (35, 43). The 100 rows read include 13 Italian marks, all compounds in "ballo" the dance (Il Ballo del Doge, Ballo in Fiera and so on) in class 41. No Ballo in classes 9 or 42.

Distinctiveness. Arbitrary for tennis services. Italian ballo (dance, ball) is a real word, but a US examiner would not read "dance" as describing tennis-club software. In Hangul, 발로 is an adverbial phrase ("by foot") and the dictionary headwords are 發露 and the loanword ballo (dance). Not descriptive of a tennis app, but see 5.4.

5.2 App stores ​

StoreHits
iTunes US, KR, JP, Latin balloNo exact Ballo title (US: Rise Up! Protect the Balloon and other "ball" games; KR and JP: ball games).
iTunes KR, Hangul발로란트 tools (ValoStore, 고발, VP 발로란트 전략 및 라인업, 발로란트 조준선), 응 발로 키우기 (Games, 347 ratings), 발품 - 발로 하는 디톡스 (Health & Fitness, 0 ratings), 축구 발로 마스터 (Entertainment, 3). iTunes US has no Hangul hit; JP has ValoStore and 응 발로 키우기.
Google PlayBallo (Ballo Network LTD., US store); Ballo Up (hooded games); Ballo - Block Breaker; Jello Ballo; Balloo (personal finance). Korean store for 발로: only Valorant tools.

The Play listing named exactly Ballo (Ballo Network LTD.) is a condition: its category and download count could not be read (detail pages did not parse), so check it by hand before committing. The iOS stores show no exact Ballo.

5.3 Domains and handles ​

AddressResult
ballo.comTaken (2002), no content returned.
ballo.appTaken (2025-10-03), no content returned.
ballo.ioTaken (2026-04-08).
ballo.coTaken (2010).
getballo.comFree.
ballo.krFree.
ballo.co.krTaken.
YouTube @ballo / @balloappBoth free (404).
TikTok @ballo / @balloappballo statusCode 10222 (private or banned, treat as taken); balloapp free (10221).

Passes: getballo.com free (the brief's test 3), balloapp free on YouTube and TikTok (test 4; X not checked). The two addresses bought in 2025 and 2026 (ballo.app, ballo.io) may signal other interest in the same word.

5.4 Meaning ​

  • Italian ballo: "dance, ball" (Wiktionary: "# dance, ball"); Catalan form of ballar. In Italian a ballo is a dance or a ball (a social dance party), not a sports ball; "ball" is inside the English spelling only.
  • 표준국어대사전 lists 발로 2 (ballo): 「명사」 무용 또는 무용곡의 하나, and 발로 1 (發露): a thing hidden coming out. So Koreans who look it up find a dance loanword.
  • Valorant. Every Korean store result for 발로 is a Valorant tool (ValoStore - 발로란트 상점, 발로란트 전적, ValoPlant), which shows that 발로 is the common short form of 발로란트 among Korean players. This is the real risk and it was not on the lead's list. It will hit search, word of mouth and ad targeting. It is a gaming association, not a hostile one.
  • "With the feet, on foot" (발로, particle form of 발; 발로 뛰다, to hustle): grammatical, not a headword. The 우리말샘 search for 발로 뛰다 returned "not registered". So the "hustle" idiom is plausible but I could not source it from a dictionary.
  • "발로 했냐" as slang for sloppy work and 발로 차다 "to kick": not confirmed by any source I could fetch (the Naver search page returned only a result frame). The expressions follow from the grammar (발로 + verb) and fit native usage as I know it, but cite no dictionary. A native speaker should confirm before any decision rests on this.
  • Urban Dictionary "ballo": noise ("ballo-ballo" sex slang, one entry). Not a mainstream meaning.

6. What the owner should decide ​

  1. Drop Hanpan. The same-job app already holds the name, and the word is weak for sport.
  2. Drop Mano unless a purchase of mano.app or mano.com is feasible; even then the EU marketplace owns the sound.
  3. Keep Ballo only if the Valorant association and the 발로소득 sound-near mark are acceptable. Ask a 변리사 to run the 칭호 search for 발로 against 발로소득, and look at the Ballo Network app on Google Play by hand.

7. Commands run ​

All 2026-10-13 with curl, from this sandbox; working files in the session scratchpad. Pacing as stated in section 2.

bash
# KIPRIS: cookie jar first, then 30 rows per page
curl -s -c cj -A "<UA>" "https://www.kipris.or.kr/khome/search/searchResult.do?tab=trademark" -o /dev/null
curl -s -b cj -c cj -A "<UA>" -X POST "https://www.kipris.or.kr/kdtj/grrt1000a.do?method=searchTM" \
  --data-urlencode "queryText=한판" --data-urlencode "expression=한판" \
  -d "sortField=RANK&sortState=Desc&currentPage=1&numPerPage=30"      # pages 1-21 for 한판, 1-8 for 마노 and 발로
# USPTO and TMview: bodies in section 2
# iTunes
curl -s "https://itunes.apple.com/search?entity=software&limit=50&country=kr&term=%ED%95%9C%ED%8C%90"
# Domains
curl -sL https://rdap.org/domain/ballo.app ; curl -sL https://rdap.kisa.or.kr/domain/ballo.kr
printf "ballo.io\r\n" | nc -w 10 whois.nic.io 43 ; printf "ballo.co\r\n" | nc -w 10 whois.registry.co 43
# Handles
curl -sL -A "<UA>" https://www.youtube.com/@ballo ; curl -sL -A "<UA>" https://www.tiktok.com/@ballo   # read "statusCode"
# Meaning
curl -s -A "Mozilla/5.0 (research)" "https://en.wiktionary.org/w/index.php?title=mano&action=raw"
curl -s -A "Mozilla/5.0" "https://stdict.korean.go.kr/search/searchResult.do?pageSize=10&searchKeyword=%EB%B0%9C%EB%A1%9C"
curl -s "https://api.urbandictionary.com/v0/define?term=ballo"

Markdown remains the source of truth. Run yarn docs:check before handoff.