docs(f6): any-file behavior + Ctrl+Alt+D wording (#19)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -132,26 +132,32 @@ record per the contract; git push/pull is the transport, no re-homing ever.
|
||||
|
||||
Design: `vscode-cowriting-plugin-content/specs/coauthoring-cross-rung-format.md`.
|
||||
|
||||
## F6 — Diff-view toggle (Feature #17)
|
||||
## F6 — Diff-view toggle (Feature #17, #19)
|
||||
|
||||
**Cmd/Ctrl-Alt-D** (or **Cowriting: Toggle Diff View**) flips a tracked
|
||||
document into a native `vscode.diff` against a **coauthoring baseline** — the
|
||||
readonly baseline on the left, your **live, editable** document on the right
|
||||
(so you keep writing inside the diff; toggling again closes it). The diff
|
||||
answers "what did *I* change?" in one keystroke instead of git archaeology.
|
||||
**`Ctrl+Alt+D`** (the same chord on macOS — not `Cmd`; or **Cowriting: Toggle
|
||||
Diff View**) flips the focused document into a native `vscode.diff` against a
|
||||
**coauthoring baseline** — the readonly baseline on the left, your **live,
|
||||
editable** document on the right (so you keep writing inside the diff; toggling
|
||||
again closes it). The diff answers "what did *I* change?" in one keystroke
|
||||
instead of git archaeology.
|
||||
|
||||
- **Works on any file (#19):** any document you can edit — a file inside or
|
||||
outside the workspace folder, or an **untitled** scratch buffer. Only a
|
||||
non-text-editor focus warns. (Untitled buffers diff in-memory; saving makes
|
||||
the baseline persist.)
|
||||
- **Machine-factored baseline (INV-18):** the baseline initializes when a doc
|
||||
is first tracked and **advances automatically at every machine landing**
|
||||
(every successful `applyAgentEdit` seam apply — INV-9). So text Claude landed
|
||||
never shows as a change; everything the diff shows is operator-authored by
|
||||
is first seen and **advances automatically at every machine landing** (every
|
||||
successful `applyAgentEdit` seam apply — INV-9). So text Claude landed never
|
||||
shows as a change; everything the diff shows is operator-authored by
|
||||
construction — no attribution filtering.
|
||||
- **Pin on demand:** **Cowriting: Pin Diff Baseline to Now** resets the
|
||||
baseline to the current buffer for a deliberate "review my next pass" epoch;
|
||||
the diff tab title names the epoch (`opened` / `Claude landed` / `pinned`).
|
||||
- **Pure view, repo-free (INV-19):** the baseline snapshot lives in VS Code
|
||||
workspace storage, **never** the repo — `.threads/`, the cross-rung contract
|
||||
(INV-14..17), and `SCHEMA_VERSION` are untouched. Storage-unavailable
|
||||
degrades to in-memory baselines + one warning.
|
||||
**global** extension storage, keyed by a hash of the document URI, **never**
|
||||
the repo — `.threads/`, the cross-rung contract (INV-14..17), and
|
||||
`SCHEMA_VERSION` are untouched. Storage-unavailable degrades to in-memory
|
||||
baselines + one warning.
|
||||
- **No LLM in CI:** host E2E (`test/e2e/suite/diffView.test.ts`) drives the same
|
||||
programmatic seam ingress (propose + accept) the F4 suite uses.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user