Good Essay Mode¶
good essay mode is a separate product lane from story blueprints.
It exists to enforce coherence under long-context pressure by validating a draft against explicit constraints instead of relying on free-form prompting.
Core idea¶
An essay workspace has:
EssayBlueprint: prompt + policy + rubricdraft_text: current draft body- deterministic evaluation output with explicit checks
Expected essay interface¶
EssayBlueprint contains:
prompt: assignment statementpolicy:thesis_statementaudiencetonemin_words/max_wordsrequired_sections(key,purpose,min_paragraphs,required_terms)banned_phrasesrequired_citationsrubric: optional quality criteria list
API routes¶
GET /api/v1/essaysPOST /api/v1/essaysGET /api/v1/essays/{essay_id}PUT /api/v1/essays/{essay_id}POST /api/v1/essays/{essay_id}/evaluate
Evaluation returns:
- pass/fail
- score (0-100)
- word and citation counts
- structured checks (
error/warning)
JSON blueprint example¶
{
"prompt": "Argue for a constraint-first drafting workflow.",
"policy": {
"thesis_statement": "Constraint-first drafting improves coherence.",
"audience": "technical readers",
"tone": "analytical",
"min_words": 300,
"max_words": 900,
"required_sections": [
{
"key": "introduction",
"purpose": "Frame claim",
"min_paragraphs": 1,
"required_terms": ["coherence"]
},
{
"key": "analysis",
"purpose": "Defend claim",
"min_paragraphs": 2,
"required_terms": ["evidence"]
},
{
"key": "conclusion",
"purpose": "Synthesize claim",
"min_paragraphs": 1,
"required_terms": []
}
],
"banned_phrases": ["as an ai language model"],
"required_citations": 1
},
"rubric": ["clear thesis", "evidence per claim", "logical flow"]
}