diff --git a/Program.cs b/Program.cs
index ead70b0..352265f 100644
--- a/Program.cs
+++ b/Program.cs
@@ -26,7 +26,7 @@ string GetRequired(string key) =>
// Overridable via user-secrets/env vars; these defaults match the original behaviour.
string modelName = config["MODEL_NAME"] ?? "gpt-5-mini";
int maxOutputTokens = int.TryParse(config["MAX_OUTPUT_TOKENS"], out int configuredMaxOutputTokens) ? configuredMaxOutputTokens : 4096;
-long maxTotalTokens = long.TryParse(config["MAX_TOTAL_TOKENS"], out long configuredMaxTotalTokens) ? configuredMaxTotalTokens : 20000;
+long maxTotalTokens = long.TryParse(config["MAX_TOTAL_TOKENS"], out long configuredMaxTotalTokens) ? configuredMaxTotalTokens : 40000;
if (!Uri.TryCreate(openAiApiBase, UriKind.Absolute, out var uri))
{
Console.WriteLine($"Invalid URI: '{openAiApiBase}'");
diff --git a/Prompts.cs b/Prompts.cs
index 6250a28..837b876 100644
--- a/Prompts.cs
+++ b/Prompts.cs
@@ -63,7 +63,7 @@ You are a professional blogger.
- If there is a current draft and review notes, revise the draft to address all feedback
- Use a professional tone
-- Aim for 500 to 1000 words.
+- Aim for 1000 to 2000 words.
Write the complete post.
""";
@@ -83,7 +83,7 @@ 2. Clarity – Is the message easy to understand?
3. Value – Does the post offer real insights or lessons?
4. Structure – Are paragraphs short?
5. Tone – Is it authentic and professional?
-6. Size – Is the post between 500 and 1000 words?
+6. Size – Is the post between 1000 and 2000 words?
Respond with one of:
diff --git a/ResearchState.cs b/ResearchState.cs
index c2a1812..a56072f 100644
--- a/ResearchState.cs
+++ b/ResearchState.cs
@@ -4,7 +4,7 @@ namespace BlogWriter;
public class ResearchState
{
/// Hard upper bound on author/review revision cycles. Guarantees the workflow terminates.
- public const int MaxRevisions = 4;
+ public const int MaxRevisions = 2;
/// The single source-of-truth marker written to on approval.
public const string ApprovedMarker = "APPROVED";