Skip to content

Docs: MCP citation write surface — agent proposes, human confirms (add path blocked on PRD-0012/ADR-0003 insertion)#106

Draft
tieguy wants to merge 2 commits into
mainfrom
citation-write-surface
Draft

Docs: MCP citation write surface — agent proposes, human confirms (add path blocked on PRD-0012/ADR-0003 insertion)#106
tieguy wants to merge 2 commits into
mainfrom
citation-write-surface

Conversation

@tieguy

@tieguy tieguy commented Jul 1, 2026

Copy link
Copy Markdown
Collaborator

Design docs (no code) for letting an external Wikipedia-editing agent apply a citation fix over MCP, with a human confirming the exact change before it lands. Today an agent can review citations over MCP and verify a candidate source, but the loop dead-ends — there's no MCP path to actually apply the fix. This closes that loop: propose (read-only) → human confirms/declines via elicitation → apply as a real, attributed edit under the operator's own account, guarded by anti-drift + baserevid.

Blockers (add path). The replace/repair path reuses the existing bare-URL-repair apply flow and is unblocked. The add path (inserting a <ref> on an unsourced claim) is blocked on two Draft artifacts landing first — it has no edit machinery without them:

  • PRD-0012 (citation insertion) — owns the propose→confirm→insert flow this delivers over MCP.
  • The ADR-0003 insertion extension it spawns — node-anchored editing does replace/modify only today; insertion is the planned extension.

Both paths are in scope and land end-to-end; they're staged (replace first, add once the blockers clear), not scoped apart.

Documents

  • docs/domains/references/prd/0013-citation-write-surface.md — the write surface + auth model + scope/blockers.
  • docs/platform/adr/0018-wikimedia-oauth-token-seam.md — a sp42-platform WikimediaTokenSource seam so non-server shells can hold a Wikimedia OAuth token; returns a bearer client, not the raw token, so the edit path structurally can't leak or forward it. Extends ADR-0014 (doesn't supersede it).
  • docs/design-plans/2026-07-01-citation-write-surface.md — architecture, the guarded-edit pipeline, and 7 implementation phases.

Draft for review — opening it to discuss the design before any implementation.

🤖 Generated with Claude Code

tieguy and others added 2 commits July 1, 2026 16:43
… plan

Draft the MCP citation write surface: propose -> human-confirm -> apply over
elicitation, with replace and add both landing (add staged behind PRD-0009 +
ADR-0003 insertion), guarded by anti-drift/baserevid. ADR-0015 defines the
sp42-platform WikimediaTokenSource seam (returns a client, not a token) for
non-server shells.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018ge3js4ukPTvs9hBBtnoGj
PRD-0011 is claimed by the Wikidata target PRD (#105) and ADR-0015 by the
fetch-edge ADR already on main; the citation-insertion draft this PRD
depends on becomes PRD-0012.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@tieguy tieguy changed the title Docs: MCP citation write surface — agent proposes, human confirms (add path blocked on PRD-0009/ADR-0003 insertion) Docs: MCP citation write surface — agent proposes, human confirms (add path blocked on PRD-0012/ADR-0003 insertion) Jul 2, 2026
tieguy pushed a commit that referenced this pull request Jul 9, 2026
PRD-0012 (citation insertion) and PRD-0014 (citation repair browser
surface) are claimed on the citation-repair-browser-surface branch (PR
#109), and PRD-0013 (citation write surface) on citation-write-surface
(PR #106). 0015 is the first number free across all remote branches.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01ATEQwdt8J9mVb94EcgRFY3
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant