Gemini drafts something in Canvas. You read it, disagree with a paragraph, and rewrite it in place. Then you fix a heading, delete a bullet, tighten the conclusion.
Export the result and you have a clean document. What you do not have — anywhere — is a record of which sentences were yours.
That is not a gap in the export. The document itself does not carry it.
Canvas is an editor, not a panel
This is the distinction that matters and it is easy to miss, because visually it looks like any other side panel.
A read-only panel holds output. Whatever is in it came from the model, so the provenance question never arises — the container answers it.
Canvas hands you a cursor. The moment you use it, the panel holds a document with two authors and no way to distinguish them. Your paragraph and the model's paragraph are the same kind of node in the same tree, styled identically, because in the editor's model they are the same kind of thing. It is a text editor. Text is text.
The transcript does not save you
The intuitive fix is that the chat records what the model produced, so you could diff.
You cannot, for two reasons.
The transcript records the model's turns, not the document's states. Gemini says "I've tightened the introduction" — that sentence is in the stream; the introduction it produced is in the panel, which has since been overwritten by the next revision.
And your edits leave no turn at all. You typed into a text box. Nothing was sent, nothing was logged, nothing appears in the conversation. From the transcript's point of view, your edits did not happen.
So the two records drift apart from the first keystroke. The transcript is a partial account of one author's contributions; the document is the merged result of two.
Why anyone should care
Disclosure. Plenty of contexts now ask you to declare AI assistance — coursework, journals, some workplaces. Try answering "which parts" honestly a week after a Canvas session. The truthful answer is usually "I no longer know", which is uncomfortable when the question was asked in good faith.
Review. A reviewer's attention is finite and should go where it is needed. Model-drafted passages want checking for confident wrongness; your own want checking for the things you always get wrong. A document that hides the seam gets uniform, thinner attention.
Your own memory. This is the one that bites soonest. Six months on, you cannot remember whether a claim was something you knew or something you accepted. Those are different epistemic states and the file records neither.
What actually helps
Edit outside the Canvas. Export first, then revise in your own editor. Now the export is a clean record of what the model produced, and your changes live in a file with a history.
If you must edit in place, do it in one pass at the end. Export before you start. Two artifacts, in order, and the diff between them is your contribution.
Say what you did, not what you used. "Drafted by Gemini, restructured and fact-checked by me" carries more than a checkbox, and you can write it honestly at the time — which is the only time you still know.
Disclosure
I build an export tool, so weigh this accordingly.
Chat Exporter for Gemini puts an export button in the Canvas toolbar, so the Canvas document exports on its own with headings, lists and code intact, separately from the surrounding chat. It also handles Gems, carries grounded sources across, and turns Gemini's KaTeX maths into a real equation object. Free tier, paid for unlimited.
It cannot tell you who wrote what, and neither can anything else that reads the page. That information was never recorded. What it can do is make the export-first workflow above cheap enough that you actually do it — which is the only version of this problem that has a solution.
The general point
Read-only output has provenance by construction. Editable output does not, and the interfaces are converging on editable.
Any surface where you can revise the model's work in place has this property, and none of them are tracking authorship at the span level. Until one does, the only reliable record of what you contributed is the one you make yourself, at the moment you make the change.
Genuinely curious whether anyone has solved this rather than worked around it. Span-level attribution in a collaborative editor is not a new problem — Google Docs has had suggestion mode for years — so the absence feels like a choice.

Top comments (2)
Some comments may only be visible to logged-in visitors. Sign in to view all comments.