Closer/seed/questions/QUESTION_QUALITY_CHECKLIST.md

4.8 KiB

Closer Question Quality Checklist v6

See also: QUESTION_CONTENT_GUIDE.md | QUESTION_SCHEMA.md | QUESTION_REWRITE_PLAN.md

Purpose

This checklist prevents technically valid but boring questions from reaching the app.

Passing JSON validation is not enough.

Every question must also feel human, useful, fun, and worth answering.

Automatic Rejects

Reject any question that contains or strongly resembles:

  • Describe...
  • Reflect on...
  • Discuss...
  • Evaluate...
  • In what ways...
  • How satisfied are you...
  • What boundary around...
  • Explore your feelings...
  • Identify the ways...
  • Rate the effectiveness...
  • Communication style
  • Emotional processing
  • Conflict framework
  • Relationship dynamic

These are therapy worksheet patterns.

Daily Pack Hard Checks

For the daily single choice weekday pack, confirm before content review:

  • 500 total questions
  • 75 free questions
  • 425 premium questions
  • every question is single_choice
  • every question has a weekday tag
  • every question has 4 to 6 options
  • 4 options preferred
  • no duplicate IDs
  • no duplicate question text
  • no duplicate exact option lists

Daily Fun Gate

For daily questions, reject anything that is merely useful but not fun.

A daily question must feel like one of these:

  • a game moment
  • a tiny date choice
  • a sweet choice
  • a flirt
  • a silly prompt
  • a playful debate
  • a low-pressure couple moment

Reject daily questions with answer sets built around:

  • clean counters
  • dishes
  • laundry
  • bills
  • appointments
  • errands
  • bedtime planning
  • household maintenance
  • saved blankets
  • clinical reassurance phrasing

These can exist in the real relationship. They should not dominate the daily fun pack.

Bad:

Before phones win, what would make the night nicer?

Bad options:

  • A clean counter
  • A quick shoulder rub
  • A simple bedtime plan
  • The good blanket saved

Better:

Before phones win, what should we do for fun?

Better options:

  • Pick a ridiculous snack
  • Watch one guilty-pleasure clip
  • Trade dramatic compliments
  • Choose tomorrow's tiny date

Daily Pack Rejects

Reject daily prompts that feel like:

  • therapy homework
  • self-help content
  • HR wellness surveys
  • communication worksheets
  • abstract emotional processing
  • generic AI relationship advice
  • household admin
  • bedtime logistics
  • chore planning

Reject daily questions using these words or phrases:

  • reset
  • process
  • mental load
  • emotional load
  • autopilot
  • pressure
  • soft landing
  • relationship dynamic
  • name the mood
  • emotional processing
  • communication style
  • conflict framework

Daily Option Checks

Every daily option must:

  • answer the exact prompt
  • be a complete answer
  • sound natural
  • be similar in weight to the other options
  • be fun, sweet, playful, flirty, silly, date-like, or warmly specific

Reject options that are:

  • fragments
  • too abstract
  • weirdly specific
  • chore-heavy
  • clinical
  • not connected to the prompt
  • much better or worse than the other options

Bad fragment:

When I need reassurance

Better:

Tell me one thing you liked about today

Bad weird option:

The good blanket saved

Better:

Save me the best couch spot

Repetition Checks

Reject or rewrite if:

  • too many questions start the same way
  • the same option text appears too often
  • the same situation repeats with different nouns
  • the same answer pattern repeats
  • the weekday starts to feel like wallpaper

The pack can pass duplicate checks and still fail repetition review.

Daily Sample Gate

Before approving the full daily pack:

  1. Read 10 random questions from each weekday.
  2. Mark anything therapy-coded, boring, weird, logistical, or not fun.
  3. Fix the marked items.
  4. Run a second random sample from each weekday.
  5. Ship only when the second sample passes cleanly.

The sample must include no chore-heavy answer sets and no weird domestic options.

General Question Checks

Every question must pass:

  • Would a real couple answer this willingly?
  • Is it easy to understand on the first read?
  • Does it create a conversation, laugh, flirt, memory, plan, or useful preference?
  • Are the answer options balanced?
  • Is the wording natural out loud?
  • Would this feel premium in the app?

Marking Reasons

Use these reasons when marking weak questions:

  • therapy_voice
  • wellness_voice
  • household_admin
  • not_fun
  • abstract_prompt
  • awkward_split_phrase
  • repeated_stem
  • option_mismatch
  • fragment_options
  • too_generic
  • weird_option
  • weak_weekday_fit
  • filler_question
  • duplicate_text
  • duplicate_options
  • schema_issue

Final Verdict Labels

Use one of these labels when reviewing a pack:

  • production_ready
  • staging_only
  • needs_rewrite
  • reject

Do not call a pack production ready just because the JSON validates.