Status: prompt + sidecar contract implementation Date: 2026-05-28 Issue: #258 Scope: Extend the v3.9.4 M5 version-family stub from institutional documents to academic citation chains such as arXiv preprint -> proceedings -> journal extension.
This patch is a faithfulness extension, not an autonomous correction layer.
literature_corpus_entry.schema.json remains unchanged. It is adapter-owned and additionalProperties: false.bibliography_agent.md remains unchanged. Version discovery is owned by timeline_extraction_agent.version_records.yaml records candidate evidence and user-confirmed choices. It does not auto-standardize the reference list.formatter_agent and draft_writer_agent surface VERSION_INCONSISTENT_CITATION as an advisory, not a hard refusal.phase2_investigation/version_records.yaml is validated by
shared/contracts/passport/version_records.schema.json.
Minimal shape:
schema_version: "1.0"
version_records:
- version_family_id: attention-transformer-family
canonical_slug: vaswani2017
primary_version_key: attention-neurips-2017
discovery_status: user_confirmed
reconciliation_note: "Scholar selected proceedings as the primary citation."
known_versions:
- version_key: attention-arxiv-v1
citation_key: vaswani2017-arxiv-v1
kind: arxiv_preprint
title: "Attention Is All You Need"
year: 2017
venue: "arXiv"
doi: null
arxiv_id: "1706.03762v1"
url: "https://arxiv.org/abs/1706.03762v1"
publication_date: {value: "2017-06", precision: month}
metadata_provenance: arxiv_api
source_locator: "arxiv:1706.03762v1"
claim_scope_note: "Use only for claims verified against v1 text."
- version_key: attention-neurips-2017
citation_key: vaswani2017-neurips
kind: proceedings
title: "Attention Is All You Need"
year: 2017
venue: "NeurIPS 2017"
doi: null
arxiv_id: null
url: "https://papers.nips.cc/paper/7181-attention-is-all-you-need"
publication_date: {value: "2017", precision: year}
metadata_provenance: user_override
source_locator: "papers.nips.cc:7181"
claim_scope_note: "Use for proceedings metadata and final citable record."
timeline_extraction_agent writes candidate records from DOI/arXiv/title evidence:
v1, v2, etc.).version_family_id families only when evidence indicates the same work, not merely similar topic.candidate or needs_review until the scholar selects primary_version_key.discovery_status: user_confirmed.When a cited slug joins a version family, draft_writer_agent and formatter_agent verify that all version-bound fields in the emitted claim are from the same known_versions[] entry:
yearIf the fields mix versions, emit:
VERSION_INCONSISTENT_CITATION: citation metadata, locator, or quoted claim mixes multiple records in version_family_id=<id>. Select one version or explicitly separate the claims.
This warning is advisory. The scholar decides whether to cite the preprint, proceedings, journal extension, or multiple versions explicitly.
venue_type, and terminal blocking when a reference is unmatched across indexes. #258 is narrower: it assumes the work exists and asks whether the metadata and quoted claim come from the same concrete version. Do not merge the two concerns: