- Home
- Skills
- Willoscar
- Research Units Pipeline Skills
- Citation Anchoring
citation-anchoring_skill
- Python
109
GitHub Stars
1
Bundled Files
2 months ago
Catalog Refreshed
4 months ago
First Indexed
Readme & install
Copy the install command, review bundled files from the catalogue, and read any extended description pulled from the listing source.
Installation
Preview and clipboard use veilstrat where the catalogue uses aiagentskills.
npx veilstrat add skill willoscar/research-units-pipeline-skills --skill citation-anchoring- SKILL.md2.2 KB
Overview
This skill detects regression in citation anchoring to ensure citation markers remain inside the same H3 subsection after polishing. It compares a saved baseline of per-subsection citation sets to the current draft and produces a concise PASS/FAIL report with examples of any drift. The skill is analysis-only and never modifies content.
How this skill works
The auditor loads the baseline anchors file produced by the initial draft-polisher run and parses the current output/DRAFT.md into its ### subsections. For each subsection it extracts citation keys and compares the current sets to the baseline to find added, removed, or migrated keys. The skill writes output/CITATION_ANCHORING_REPORT.md summarizing status and including a short diff and representative examples when failures occur.
When to use it
- After editing or polishing a draft to confirm citations did not move between ### subsections
- Before finalizing a draft to preserve claim→evidence alignment
- As a regression check when running automated polishing pipelines
- When multiple contributors edit the same document and you need citation stability
- When you maintain long documents with strict subsection evidence mapping
Best practices
- Keep an explicit baseline: run draft-polisher once to generate output/citation_anchors.prepolish.jsonl before future checks
- Run citation anchoring after any rewrite or automated polishing step but before publication
- If you intentionally restructure subsections, delete the baseline and regenerate it to avoid false positives
- Treat the auditor as read-only: address reported issues by editing the draft or regenerating the baseline, not by changing the report
- Include representative citation examples in the report to speed triage
Example use cases
- CI job that runs after automated polishing to block merges if citations drift across subsections
- Manual QA step for research papers to confirm claims retain their original evidence
- Post-edit audit when multiple passes of copyediting risk moving inline citations
- Batch checking of multiple drafts to detect systemic polish-induced citation migrations
FAQ
Run draft-polisher once to generate output/citation_anchors.prepolish.jsonl, then rerun the citation anchoring check.
I intentionally restructured subsections; how do I avoid a fail?
Delete output/citation_anchors.prepolish.jsonl and regenerate a new baseline with draft-polisher, then treat that as the new anchor for future regression checks.