Method · NFIP · Live vote n = 0
Native First-Impression Protocol
How verification with native speakers is supposed to work. The rubric is public now. The live panel is not: community voting is later, and we will not fake a score while n = 0. Until then, the automated first layer is the checker, documented in lib/engine/RULES.md — no LLM.
Output is a distribution
Raters do not average into a 94. A name can be “real personal name” for eight people and “foreign spelling” for two. That split is the result. A single number would hide the disagreement that actually matters.
Sample empty panel · n = 0
- Real personal name0
- Foreign spelling0
- Nickname0
- Not a name0
01
First glance
In one look, what is this?
- A real personal name
- A foreign spelling / transliteration
- A nickname
- Not a name
02
Apparent gender
Without being told, this reads as…
- Masculine
- Feminine
- Unmarked / either
- Cannot tell
03
Apparent era
When would you expect to meet this name?
- Contemporary
- A generation older
- Literary / historical
- Out of time / invented
04
Said fast
When spoken quickly, does it snag?
- Clean
- Funny
- Food / menu
- Slang
- Unlucky or dirty homophone
05
Would you put this on a classmate?
Could you introduce a colleague with this and not explain?
- Yes, without a footnote
- Only with a story
- No
Why five items, not a vibe
Natives clock a name in the time it takes to read a WeChat display. The protocol forces that glance into language: is it a person, a spelling, a pet name, or a caption? Does gender and era land? Does it turn into salad, slang, or bad luck when said fast? Would you put it on a classmate without explaining? Those are the tells teachers and generators skip because they are optimizing for sound.
The automated first layer
Before any rater panel, the Keep / Kill / Fix checker runs a deterministic heuristic: 百家姓 structure, classic transliterations, 间隔号, food collisions, captions, 娜/莉/丽. Source of truth for those rules: lib/engine/RULES.md in this repo. It does not call a model. Unsure is Fix, never Keep. That is a filter, not a native first impression. NFIP is the human layer we are publishing the shape of now.
What n = 0 means
It means we will not imply a live community, a follower count, or a stacked bar of invented percentages. When voting exists, the same five items will fill the distribution above. Until then, use the checker on a name you already have, or get a native name if you want the work done without a generator.