```json
{
  "technical-01": "**Final rewrite**\n\nCall fetchPage() until nextCursor is null. A 200 response does not prove the export is complete, because a request can succeed while records are still missing. If the job times out, resume from the last cursor you stored.\n\n**Changes**\n- \"A request can succeed even when the export is incomplete, so a 200 response alone does not establish that you have every record.\" → \"A 200 response does not prove the export is complete, because a request can succeed while records are still missing.\" Tightened wording; the incomplete-results warning and its meaning are kept. Code identifiers are unchanged.\n\n**Verification**\n- **Editing passes:** 1 used (up to 2 allowed).\n- **Checks:** Model-only. The detector, marks normalizer, and preservation validator did not run. The source has no curly quotes, and the output uses none. The marks pass was applied manually and is not mechanically verified.\n- **Residuals:** None. No AI-ism findings remain in the paragraph.\n- **Stop reason:** No further justified in-scope edit.",

  "technical-02": "**Final rewrite**\n\nThe worker probably retries this twice, but I haven't confirmed whether the initial attempt is counted. In the logs we checked, most failures were followed by a successful attempt within a minute.\n\n**Changes**\n- \"most failures was followed\" → \"most failures were followed\". Subject-verb agreement fix; the hedges and the confidence level are unchanged.\n\n**Verification**\n- **Editing passes:** 1 used (up to 2 allowed).\n- **Checks:** Model-only. The detector, marks normalizer, and preservation validator did not run. The output uses straight apostrophes, matching the source. The marks pass was applied manually and is not mechanically verified.\n- **Residuals:** None. The hedge \"probably\" and the uncertainty about the initial attempt are intentional and kept.\n- **Stop reason:** No further justified in-scope edit.",

  "technical-03": "**Final rewrite**\n\nThe cache key includes the account ID. If a user switches accounts before an earlier request's response arrives (which can happen on a slow connection), store that response under the account that started the request. The active account is not necessarily the right one.\n\n**Changes**\n- Second sentence: \"When a user switches accounts before the response to the earlier request arrives, which can happen on a slow connection, that response should be stored under the account that started the request.\" → \"If a user switches accounts before an earlier request's response arrives (which can happen on a slow connection), store that response under the account that started the request.\" The condition, the slow-connection note, and the storage rule are preserved. The rest of the paragraph is untouched, as requested.\n\n**Verification**\n- **Editing passes:** 1 used (up to 2 allowed).\n- **Checks:** Model-only. The detector, marks normalizer, and preservation validator did not run. The marks pass was applied manually and is not mechanically verified.\n- **Residuals:** None.\n- **Stop reason:** No further justified in-scope edit.",

  "personal-01": "**Final rewrite**\n\nI remember my father waiting by the gate, although my sister says he met us inside. What I know is that he had brought oranges. Their smell is the part of that afternoon I can still reach without trying.\n\n**Verification**\n- **Editing passes:** 0 used (up to 2 allowed). No justified in-scope edit was found; the text is already plain and human, and the memory/knowledge distinction is already clear. The source is returned unchanged.\n- **Checks:** Model-only. The detector, marks normalizer, and preservation validator did not run. The text contains no curly quotes, so no marks pass was needed.\n- **Residuals:** None.\n- **Stop reason:** No justified in-scope edit remains.",

  "personal-02": "**Final rewrite**\n\nI kept the job because it was steady and because I feared being without something steady. Every Sunday I told myself I would start looking the next week. I don't think those years were wasted, but I still wish I had left sooner.\n\n**Changes**\n- \"because I was afraid of not having something steady\" → \"because I feared being without something steady\". Removes the repeated \"because … steady\" clause structure while keeping the same fear. The ending is unchanged and is not made more uplifting.\n\n**Verification**\n- **Editing passes:** 1 used (up to 2 allowed).\n- **Checks:** Model-only. The detector, marks normalizer, and preservation validator did not run. The output uses straight apostrophes, matching the source. The marks pass was applied manually and is not mechanically verified.\n- **Residuals:** The deliberate repetition of \"steady\" is kept on purpose because it carries the meaning of the sentence. The final sentence's mixed regret is intentional and kept.\n- **Stop reason:** No further justified in-scope edit.",

  "personal-03": "**Final rewrite**\n\nThe apartment was smaller than I remembered, but the light was the same: a narrow stripe across the kitchen floor. I stood there for a minute. Then I gave the keys back.\n\n**Verification**\n- **Editing passes:** 0 used (up to 2 allowed). The punctuation is already correct; the colon introduces the stripe of light, and the sentences are complete. The source is returned unchanged.\n- **Checks:** Model-only. The detector, marks normalizer, and preservation validator did not run. The text contains no curly quotes, so no marks pass was needed.\n- **Residuals:** None.\n- **Stop reason:** No justified in-scope edit remains.",

  "casual-01": "**Final rewrite**\n\nHey, I might swing by after lunch if the repair person gets here early enough. If not, maybe tomorrow? No need to wait around for me either way.\n\n**Changes**\n- \"If not maybe tomorrow?\" → \"If not, maybe tomorrow?\". Added the missing comma so the fallback reads clearly. The tentative plan stays tentative; \"might\" and \"maybe\" are unchanged.\n\n**Verification**\n- **Editing passes:** 1 used (up to 2 allowed).\n- **Checks:** Model-only. The detector, marks normalizer, and preservation validator did not run. The output uses no curly quotes, matching the source. The marks pass was applied manually and is not mechanically verified.\n- **Residuals:** None.\n- **Stop reason:** No further justified in-scope edit.",

  "casual-02": "**Final rewrite**\n\nI put the spare key in the blue tin on the shelf. The lid sticks, so lift it from the back. Please leave the key there when you're done.\n\n**Verification**\n- **Editing passes:** 0 used (up to 2 allowed). No awkward wording or justified finding was found. The message is brief and already clear, and no apology was added. The source is returned unchanged.\n- **Checks:** Model-only. The detector, marks normalizer, and preservation validator did not run. The text contains no curly quotes, so no marks pass was needed.\n- **Residuals:** None.\n- **Stop reason:** No justified in-scope edit remains.",

  "casual-03": "**Final rewrite**\n\nI get why you liked the ending, and the acting was great, but for me the twist made the earlier scenes feel kind of pointless. Maybe I missed something in the middle. I still don't think it earned that last speech.\n\n**Verification**\n- **Editing passes:** 0 used (up to 2 allowed). The message is already casual and direct, and the disagreement is stated clearly. No AI-ism findings apply, so the source is returned unchanged.\n- **Checks:** Model-only. The detector, marks normalizer, and preservation validator did not run. The text contains no curly quotes, so no marks pass was needed.\n- **Residuals:** None.\n- **Stop reason:** No justified in-scope edit remains.",

  "product-01": "**Final rewrite**\n\nThe new search feels faster to me, though I only tried it on a small workspace. The product team says the index refreshes every minute. That would help, but the missing filters still make it harder to use than the old version for my work.\n\n**Verification**\n- **Editing passes:** 0 used (up to 2 allowed). The text is already clear and not promotional. The speed claim stays attributed to you, and the product team's claim stays attributed to them. No justified edit was found, so the source is returned unchanged.\n- **Checks:** Model-only. The detector, marks normalizer, and preservation validator did not run. The text contains no curly quotes, so no marks pass was needed.\n- **Residuals:** None.\n- **Stop reason:** No justified in-scope edit remains.",

  "product-02": "**Final rewrite**\n\nThe headphones fit well and I liked the sound, especially for voices. But the connection dropped three times during my commute. That could have been my phone, which has been acting up lately, so I wouldn't call it a confirmed headphone problem yet.\n\n**Changes**\n- \"since it has been acting up lately, so I wouldn't call it a confirmed problem with the headphones yet\" → \"which has been acting up lately, so I wouldn't call it a confirmed headphone problem yet\". Shortened slightly. The criticism (three drops) and the uncertainty about the cause (possibly the phone) are both kept.\n\n**Verification**\n- **Editing passes:** 1 used (up to 2 allowed).\n- **Checks:** Model-only. The detector, marks normalizer, and preservation validator did not run. The output uses straight apostrophes, matching the source. The marks pass was applied manually and is not mechanically verified.\n- **Residuals:** None. The hedge about the cause is intentional and kept.\n- **Stop reason:** No further justified in-scope edit.",

  "product-03": "**Final rewrite**\n\nFor a shared shopping list, this app does enough. Changes appear quickly, and neither of us has accidentally deleted the whole list. I would use something else for project planning; there is no useful way to track dependencies.\n\n**Verification**\n- **Editing passes:** 0 used (up to 2 allowed). The wording is already plain, and the recommendation stays limited to the shopping-list use described. No justified edit was found, so the source is returned unchanged.\n- **Checks:** Model-only. The detector, marks normalizer, and preservation validator did not run. The text contains no curly quotes, so no marks pass was needed.\n- **Residuals:** None.\n- **Stop reason:** No justified in-scope edit remains.",

  "ec-supported-contrast-edit": "**Final rewrite**\n\nThe dashboard is a foundation for trust. It shows queue depth.\n\n**Changes**\n- \"It is not just a dashboard, it is a foundation for trust.\" → \"The dashboard is a foundation for trust.\" Removed the negated contrast frame. The trust claim is kept as the writer's claim.\n\n**Verification**\n- **Editing passes:** 1 used (up to 2 allowed).\n- **Checks:** Model-only. The detector, marks normalizer, and preservation validator did not run. The text contains no curly quotes, so the marks pass made no changes; it was applied manually and is not mechanically verified.\n- **Residuals:** The claim that the dashboard is a foundation for trust is not supported by the source. It is retained as the writer's claim. Please add support for it or confirm it.\n- **Stop reason:** No further justified in-scope edit.",

  "ec-grounded-reaction-edit": "**Final rewrite**\n\nThe most interesting part: the export has 31 rows.\n\n**Verification**\n- **Editing passes:** 0 used (up to 2 allowed). The opener \"The most interesting part:\" states a ranking judgment supplied by the writer, which is kept. Removing it would drop meaning, so no edit was made. The source is returned unchanged.\n- **Checks:** Model-only. The detector, marks normalizer, and preservation validator did not run. The text contains no curly quotes, so no marks pass was needed.\n- **Residuals:** The reason the part is interesting is not given in the source. It is not added, so the ranking is left as written.\n- **Stop reason:** No justified in-scope edit remains.",

  "ec-meaningful-concession-edit": "**Final rewrite**\n\nThe platform is impressive and still has challenges. It exports CSV but cannot export PDF.\n\n**Changes**\n- \"While the platform is impressive, challenges remain.\" → \"The platform is impressive and still has challenges.\" Removed the empty balancing frame. Both the positive assessment and the unresolved limitation are kept, and neither side is chosen for the writer.\n\n**Verification**\n- **Editing passes:** 1 used (up to 2 allowed).\n- **Checks:** Model-only. The detector, marks normalizer, and preservation validator did not run. The text contains no curly quotes; the marks pass was applied manually and is not mechanically verified.\n- **Residuals:** The source does not say which challenges are meant. The PDF limitation may be one of them, but this is not confirmed, so the vague \"challenges\" is kept and its scope is unclear. Please name the challenges if they are known.\n- **Stop reason:** No further justified in-scope edit.",

  "ec-earned-reversal-edit": "**Final rewrite**\n\nWe planned for every failure mode except the one that happened. We tested every path except the path that failed.\n\n**Changes**\n- \"We planned for every failure mode. Except the one that happened.\" → \"We planned for every failure mode except the one that happened.\" Folded the reversal into one sentence; the claimed breadth of preparation is kept.\n- \"We tested every path. Except the path that failed.\" → \"We tested every path except the path that failed.\" Same treatment; the claimed coverage is kept.\n\n**Verification**\n- **Editing passes:** 1 used (up to 2 allowed).\n- **Checks:** Model-only. The detector, marks normalizer, and preservation validator did not run. The text contains no curly quotes; the marks pass was applied manually and is not mechanically verified.\n- **Residuals:** The failure mode and the failing path are not named in the source. They are not invented. Please name them if you want the sentence to be more specific.\n- **Stop reason:** No further justified in-scope edit."
}
```