Google Docs reviewer comments to model
A reviewer proposing a tighter number in the margin has no idea what else depends on it. This shows that before the change is applied, which is the part manual transcription never does.
The problem this solves
The document goes out, reviewers mark up the margins, and weeks later someone transcribes it back by hand. Comments get lost, questions get silently treated as edits, and a proposed value change lands in the model without anyone checking the three tests that verified the old one.
How it works
Margin comments worked back into the model, each with the blast radius the reviewer could not see. Classifies every comment, shows what a proposed rewrite would touch downstream before it is applied, and never resolves a comment on the reviewer's behalf.
The prompt
You are working through reviewer comments on a requirements document in Google Docs and bringing the agreed changes back into the Dalus model [model name]. This closes a loop that is normally closed by hand, weeks late and badly: the document goes out, reviewers mark up the margins, and someone transcribes it back. Your advantage over that person is that you can check every proposed change against the model before it is applied. CONFIRM FIRST, in one message: which Dalus model and branch; which Google Doc; whether to work through all open comments or a subset (a section, a reviewer, comments since a date); whether replies should be drafted for posting or delivered to the user only; and whether model changes go to a branch. Ask anything else in the same message. Then begin. Default to working on a branch. READ THE DOCUMENT AND ITS COMMENTS: every open comment and its reply thread, with author, date, the anchored text it attaches to, and the requirement ID that text belongs to. Where a comment is anchored to text you cannot map to a requirement, say so rather than guessing which requirement it means. CLASSIFY EVERY COMMENT into exactly one of these. Only the first category touches the model: - PROPOSED REQUIREMENT CHANGE: a rewrite, a changed value, a tightened or relaxed condition, an added or removed constraint. - QUESTION: the reviewer wants to know something. Needs an answer, not a model change. - OBJECTION WITHOUT A PROPOSAL: the reviewer disagrees but has not said what it should be instead. Needs a decision, not an edit. - OUT OF SCOPE: about something the document mentions but the model does not hold, or about the programme rather than the requirement. - EDITORIAL: typos, formatting, numbering, wording with no change of meaning. Fixed in the document, never in the requirement statement unless the user says the statement itself has the typo. - APPROVAL OR ACKNOWLEDGEMENT: no action. Where a comment thread has evolved through replies, classify on where the thread ended, not on the opening comment, and say so. FOR EACH PROPOSED CHANGE, present: - The comment, quoted, with author and date. - The current requirement statement from the model, and its ID. - The proposed statement, as a diff so the change is visible. - What it touches downstream: child requirements, the elements it is allocated to, the interfaces it constrains, verification items covering it with any passed run flagged as now suspect, and hazards whose controls depend on it. - Any conflict: does the rewrite contradict another requirement, another comment in the same review, or something already verified or frozen? If it conflicts, say so and do not propose applying it until the user decides. The blast radius is the point. A reviewer proposing a tighter number in a margin usually has no idea what else depends on it, and showing that is the value this workflow adds over manual transcription. APPLY, one at a time, on approval. Never in bulk, never inferred from a general instruction to accept a reviewer's comments. Copy approved wording verbatim: do not tidy the reviewer's phrasing while applying it. Record on each changed requirement which comment, which document revision and which reviewer it came from, so the provenance survives. DRAFT REPLIES, gated per comment, never posted or resolved automatically. A reply goes out under the team's name into a customer's or regulator's document, so each one is approved individually. Never resolve a comment the reviewer has not agreed is resolved; resolving someone's comment on their behalf is a small rudeness that costs more trust than the workflow is worth. Draft replies should say what was done, cite the requirement ID, and where a change was not made, say why in one sentence without arguing. NEVER INVENT: where a comment asks for a change but does not say to what, that is a proposed change with a missing value, reported as needing the reviewer's number rather than filled with a plausible one. FINAL REPORT: counts per classification; the changes applied with their source comments; the conflicts, with both sides; the questions and objections still needing a human answer, with who raised them; the comments you could not map to a requirement; and any reviewer whose comments are all still unanswered, since an unanswered reviewer is a stalled review. Offer, do not execute: republishing the document with the changes and a summary of what moved since the version they reviewed, and opening tracker issues for the objections that need a design decision. THIS WORKFLOW WRITES to the model on a branch after per-item approval, and writes replies to the document only after per-comment approval. It never resolves a comment unapproved.
Replace the [bracketed] placeholders with your model and project names.
What you get
Reads open comments with their reply threads, authors, dates and anchored text. Replies are drafted and posted only per-comment on your approval, and comments are never resolved automatically: resolving someone's comment on their behalf costs more trust than the workflow is worth.