Cover-Letter Issue Schema
Simplified, field-compatible variant of paper-audit/references/ISSUE_SCHEMA.md. A cover-letter finding can be ingested by paper-audit's deep-review consolidation later by adding the dropped fields with default values.
Canonical record
json
{
"title": "short issue title",
"quote": "exact quote from the cover letter",
"explanation": "why this matters and what remains problematic",
"comment_type": "claim_accuracy|journal_fit|declaration_missing|presentation|tone|disclosure_consistency",
"severity": "major|moderate|minor",
"source_kind": "script|llm",
"confidence": "high|medium|low|unverified",
"source_section": "header|opening|body|contributions|fit|declarations|closing",
"char_offset": 128,
"manuscript_section_anchor": "abstract|introduction|results|conclusion|none",
"evidence_anchor": [
{
"type": "citation|figure_or_table|metric|section|analysis_artifact|missing",
"text": "visible anchor in manuscript"
}
],
"claim_strength": "unsupported|observed|supported|strong",
"missing_evidence": ["specific support that is absent or unverified"],
"allowed_wording": "bounded wording that stays within the evidence",
"forbidden_wording": [
"unbounded wording that would require stronger evidence"
],
"quote_verified": true
}Required fields
titlequoteexplanationcomment_typeseveritysource_kind
Optional fields
confidence— high / medium / low / unverified; demote tounverifiedwhen the cover-letter quote cannot be located.source_section— which logical section of the letter the issue lives in; deterministic claim mapping emitsheader,opening,body, orclosing, while semantic lanes may usecontributions,fit, ordeclarations.char_offset— zero-based character offset of the claim in the analyzed letter text;-1when the sentence cannot be located.manuscript_section_anchor— which section of the manuscript the claim should be supported by;nonewhen the issue is about the letter itself (e.g. tone) and not a claim-vs-manuscript alignment.evidence_anchor/claim_strength/missing_evidence/allowed_wording/forbidden_wording— added when the issue is about claim accuracy. Follows theCLAIM_EVIDENCE_CONTRACT.mdcontract.quote_verified— populated byverify_letter_against_manuscript.py.
Dropped vs. paper-audit canonical
These fields are intentionally absent in v1; add them with default values when ingesting into paper-audit:
| Dropped field | Default for ingestion |
|---|---|
review_lane | "presubmission_readiness" |
root_cause_key | derive from comment_type + source_section + quote hash |
gate_blocker | false (cover-letter does not have a gate mode in v1) |
related_sections | use manuscript_section_anchor instead |
Comment-type semantics
claim_accuracy— letter claim is unsupported or overclaims relative to manuscript evidence.journal_fit— pitch is mismatched with the target venue's scope or tier.declaration_missing— required declaration absent (see template'srequired_declarations).presentation— length, paragraph shape, citation tilde, or other surface form.tone— AI-tone words, forbidden phrases, marketing language, or structural AI-trace signals (parallel openings, uniform sentence length, diverse promotional vocabulary).disclosure_consistency— the cover letter and the manuscript disagree on generative-AI disclosure (one discloses and the other is silent, or the two contradict on polarity). Emitted byalign_check.py, which reads both documents.
Severity guidance
major— declaration_missing for a template'srequireditems; overt overclaim where claim_strength isunsupported; length exceeding the template's hard ceiling by ≥20%; journal_fit verdict of LOW.moderate— overclaim that isobservedbut pushed beyond observed scope; missing optional but recommended declaration when manuscript needs it; journal_fit verdict of MEDIUM on the most-loaded sub-axis; an AI-disclosure inconsistency between the letter and the manuscript (disclosure_consistency).minor— paragraph length warnings; AI-tone term frequency; weak topic starters; non-required journal-specific phrasings.