Closer/seed/questions/DAILY_PATCH_REVIEW_LOOP_POL...

117 lines
3.0 KiB
Markdown

# Daily Patch Review Loop Policy v1
This policy exists because a pack can pass schema checks and still be boring, weird, or too generated.
The daily pack must be fixed in patch mode unless a mass rewrite is explicitly justified.
## Core Rule
Review the full pack. Mark only questions that fail. Fix only the marked question IDs.
Do not rewrite passing questions just because a rewrite is happening.
Passing questions are frozen unless they later fail a specific rule.
## Required Inputs
Before editing daily questions, the writer must have:
* the current JSON file
* the current daily guide files
* the previous review findings, if any
* a marked fixes CSV or JSON from the review pass
## Required Review Pass
Each question must be checked for:
* schema validity
* weekday tag correctness
* prompt clarity
* option fit
* fun-first value
* therapy or wellness voice
* household admin drift
* awkward phrasing
* repeated opener or repeated mechanic
* too-random silliness
## Mark Before Fixing
Every failed question must be marked with:
* question ID
* weekday
* current prompt
* failure reason
* fix scope
* whether metadata may change
Use these fix scopes:
* `prompt_only`
* `options_only`
* `prompt_and_options`
* `metadata_only`
* `delete_or_replace`
## Fix Only What Failed
When patching:
* preserve the original ID unless the ID itself is wrong
* preserve `type` unless the type is wrong
* preserve `access` unless the count split is wrong
* preserve `depth` unless the import code or schema requires a change
* preserve weekday tags unless the tag is wrong
* preserve compatibility tags unless app code no longer needs them
* change only the prompt and options for normal content fixes
## Mass Rewrite Exception
A mass rewrite is allowed only when more than 60 percent of a weekday or pack fails for the same root reason.
The rewrite report must state:
* failure percentage
* shared root cause
* why patching individual IDs would be worse
* what will be preserved
* how the new pack will be reviewed
Without that report, mass rewriting is not allowed.
## Loop Stop Conditions
The loop stops only when:
* every marked question has been fixed
* every fixed question has been reviewed again
* remaining hard flags are 0
* duplicate checks pass
* option-answer checks pass
* two random samples per weekday pass cleanly
* the review findings file says `production_ready`
Do not call the pack production ready with known unresolved content flags.
## Fun But Grounded Rule
Fun does not mean random nonsense.
Reject prompts or options that feel like a carnival generator, such as too many fake awards, too many snack drafts, too many mascot jokes, or cute objects that do not actually fit the prompt.
A daily question should feel playful and usable by adults, not like a children's party game accidentally shipped inside a couples app.
## Required Outputs
Every daily patch must output:
* updated JSON
* validation report
* marked fixes file
* patched fixes file
* remaining flags file
* review findings file
* short apply instructions