Patriot University Glossary Editor
Patriot University (patriot.university) runs a native Echo Knowledge Base glossary: a curated set of civic, legal, and constitutional concepts whose first occurrence in any KB article is auto-highlighted with a hover tooltip, and whose tooltip links to a document-network graph of every article that uses the term. This skill governs how editors research, write, and vet those entries. It composes with — and never overrides — patriot-editorial-framework (institutional voice, source-separation) and the patriot-private-citizen-inclusion-gate.
When to Use
- Writing a new glossary definition, or editing an existing one.
- Reviewing candidate terms produced by the extraction pipeline (
pu_glossary.py extract) before publishing. - Deciding whether a phrase belongs in the glossary at all (inclusion/exclusion calls).
- Deciding whether to suppress a term (block it from ever being proposed/published).
When NOT to Use
- Writing article body prose — that is
patriot-editorial-framework. - Building an accountability profile of a person — that is
accountability-profile-builder. People are never glossary terms.
What the Glossary Is For
The glossary defines the reusable civic/legal vocabulary a skeptical, time-pressed, news-literate reader needs to verify and act on our reporting: doctrines (due process, prior restraint), statutes (Insurrection Act, Alien Enemies Act), procedures (cloture, class certification), and structural concepts (federalism, separation of powers). It is a reference layer, not commentary. A good entry lets a reader who hits an unfamiliar term get a neutral, grounded definition in one hover — then, if they want, see which other documents engage the concept.
Hard Constraints (enforced by the pipeline — do not fight them)
| Constraint | Rule |
|---|---|
| Definition length | Plain text, ≤ 500 characters. No markdown, no HTML, no links, no quotation marks used for emphasis. EKB stores and truncates plain text. |
| Term name | ≤ 100 characters; the natural form a reader sees in article text (lowercase common-noun concepts, Title Case named statutes/amendments). |
| One meaning | EKB has no multi-meaning support. If a term is genuinely ambiguous, pick the single most civically relevant sense. |
| No stored per-doc links | Highlighting is computed at render time. Publishing a term auto-highlights it everywhere; deleting it removes the highlights everywhere. There is nothing to wire per-article. |
Definition Craft
- Concept-first, self-contained. The first sentence is a stable, neutral definition of the
concept that reads correctly out of context. Never open with “This document…”, a case caption, a date, or a person’s name.
- Grounded, not invented. Base the definition on how PU’s own knowledgebase uses the term
(RAG over the source docs), not free-form model knowledge. Never invent statutory citations, case names, or holdings — verify any citation appears in the KB.
- Attribute the contested part. When a definition includes applied or contested context
(how the concept has recently been used or challenged), attribute it — “Patriot University’s materials note…”, “courts have applied it to…” — rather than stating a contested claim as flat fact. Lead neutral; attribute the edge.
- Charged terms, neutral framing. Politically charged phrases (e.g. “big lie”, “enemy of the
people”) may be defined only as the rhetorical/political phenomenon they are, in neutral, educational language. If you cannot write it neutrally, defer it.
- Tone. Encyclopedic and civic-educational — the institutional CAF register, not opinion voice.
No editorializing, no adjectives that take sides.
Exclusion Guardrails (the inclusion gate for terms)
Reject a candidate — do not publish it — if it is any of these:
- A person. Never. Individuals belong in accountability profiles, never the glossary. (This is
the patriot-private-citizen-inclusion-gate applied to terms: a person’s name auto-defined in a 500-char tooltip bypasses every editorial guardrail and is a defamation/tone hazard.)
- An organization / named entity / proper noun. Agencies, offices, companies, PACs, named
commissions, outlets, tools, products, databases, or programs by name (ICE, the FCC, a specific bill or task force). The concept may qualify (“oversight”), the named body does not. Classic trap: “election integrity” is a concept and a fine term; “Election Integrity Network” is an organization and must be suppressed.
- A one-off case, bill, or statute-by-citation that is not itself a durable, recognizable
concept. (Named foundational statutes that recur civically — Insurrection Act, NVRA — can qualify; a specific U.S.C. section or a single lawsuit does not.)
- Generic or vague. “policy”, “process”, “reform”, “government”, “framework”, “system”,
“best practices” — not glossary-worthy.
- A near-duplicate of a term already live or already selected this round (check the live list;
the pipeline dedups exact names but you must catch conceptual near-dups — e.g. “whistleblowing” vs “whistleblower”, three “subpoena” variants).
When in doubt on volume: a tight, high-signal glossary beats a sprawling one. Over-inclusion makes nearly every paragraph a highlighted term and destroys the feature’s value.
How an Entry Becomes Live (pipeline)
terms.json is the source of truth. The tooling lives in scripts/pu_glossary.py (+ make targets):
- Extract —
pu_glossary.py extract --category X(or--slug,--docs,--new) scans docs
with Claude and proposes net-new candidates, deduped against the live glossary and the suppression blocklist, into a review file. It never auto-publishes.
- Curate (this skill) — apply the craft + exclusion rules above; keep the strongest concepts.
- Log & suppress — record dropped terms in
curation-log.json; add true never-terms (orgs,
proper nouns) to suppression.json via pu_glossary.py suppress ".
- Merge & publish —
pu_glossary.py mergeintoterms.json, theninject --apply(idempotent
upsert; auto-rebuilds and redeploys the document-network graph and purges cache).
- Remove —
pu_glossary.py suppress "deletes a live term end-to-end (removes" --delete
from terms.json, deletes the live taxonomy term, rebuilds manifest + graph, purges) and blocks it from returning.
Editor’s Pre-Publish Checklist
- [ ] Concept, doctrine, statute, or procedure — NOT a person or a named organization.
- [ ] Definition ≤ 500 chars, plain text, concept-first, reads correctly out of context.
- [ ] Grounded in the KB; any citation actually appears there; nothing invented.
- [ ] Contested/applied context is attributed, not asserted as fact; neutral tone.
- [ ] Not a near-duplicate of a live or just-selected term.
- [ ] If borderline-charged, the framing is strictly neutral/educational — else defer.
