Glossary
Terms you will meet across this portal and in the platform’s own responses.
| Term | Meaning |
|---|---|
| Contract | The central unit of work: one niche + one brand + one destination site, with its own configuration and research corpus. Formally a salescontracts entity. |
| Instance | One deployed destination site (a static site built by the publishing hub), linked to a contract. |
| Ontology | The contract’s declared topic space — the entities and themes its content is about; used to rank source candidates and align drafts. |
| Corpus / research fact | The contract’s accumulated base of source-attributed facts. Generation grounds its numbers and claims here rather than inventing them. |
| RAG / grounding | Retrieval-augmented generation: drafting against retrieved corpus facts and live sources. “Grounded” means a claim can point at its source. |
| Carve | Creating a new immutable pipeline version: copy the previous version’s directory, apply the change, register it in the catalog. Existing versions are never edited. |
| Pin | An explicit pipeline-version selection (per contract, or for the nightly run) that overrides the catalog’s latest pointer. |
| Daily run | The nightly scheduled batch that drives Collect → Generate → publish across all active contracts. |
| Dedup defer | The topic-deduplication gate’s verdict for a too-similar article: publication is postponed (the topic may free up), not discarded. |
| Quarantine | A holding state for content or corpus facts that failed a gate — excluded from use until reviewed. |
| Grounding gate | The publish-path check that verifies numerical/normative claims against sources and blocks ungrounded ones. |
| Brand defense | The mechanisms that keep an article promoting the contract’s own brand instead of a competitor: declared competitor lists, demotion, and detector signals. |
Lifecycle (lcid/lcstep) | The metamodel’s state machine for a business entity; “active contract” is a lifecycle step, not a flag. |
| Run / run step | The recorded execution of a pipeline and its per-step progress — the platform’s ground truth for “what happened”. |
| Proof-of-publication | A publication is only counted after the live URL has been fetched and verified reachable. |
| Agent token | A scoped JWT for LLM agents: read access to the platform with secrets redacted, write access only to an explicitly granted pool of contracts. |
SPEC / spec_ref | An opaque identifier of an internal specification record (SPEC-…) that a task or ticket may point at; the public contract shows the shape only (SPEC-NNN) — the records themselves are not published. |
| Grant pool | The per-agent set of contracts (with capabilities) that its token may write to. Re-issuing a token replaces the pool. |
| Topic yield | The topic feedback loop’s headline metric: impressions earned per article of a topic, over a maturity-filtered window. |
| Explore floor | The protected minimum share of nightly selection reserved for new and under-sampled topics — exploitation can never consume the whole batch. |
| Health score | The daily composite per-site SEO score with boolean flags (canonicalization, crawler silence, 404 spikes…), computed by one shared function. |
| Fail-loud | The platform’s error philosophy: missing required input or a broken invariant stops the run and is recorded, instead of a silent default. |
| Projector | The single component that reads the run event stream and writes run/step state to the database — the platform’s only DB writer for run state, so ordering and idempotency live in one place. |
| Reaper | The maintenance loop that kills stuck database transactions and stale runs so a hung step cannot hold locks or slots forever. |
| Watchdog / dead-man’s switch | External liveness checks that expect a heartbeat; silence itself is the alarm (“zero is a failure”). |
| Hub | The publishing service that builds and deploys the static destination sites and verifies live URLs. |
| Native worker | The in-process pipeline executor (as opposed to the earlier subprocess runner) that runs pipeline steps under the run engine’s concurrency control. |
| Seam | A point where one shared mechanism is invoked from two paths (e.g. the topic-dedup comparator on both the Collect and the publish side) — one core, two seams. |
| Charter | The per-step contract of the writing framework: one concern, one owner, declared inputs and outputs. |
| Contour | An environment: dev (local integration stack) or prod (the production host). |
| Donor | An existing site or version whose configuration/content seeds a new one (a new instance is cloned from a donor). |
| Site chrome | Everything on a published page that is not the article: navigation, footer, author box, legal pages. |
| Stamp | A deterministic signal or score written onto an article record as telemetry (not a gate verdict). |
| Signal battery | A set of deterministic detectors run together on an article (brand-safety, language consistency, structural checks). |
| BOLA | Broken Object Level Authorization — the class of bug where a caller reaches an object it does not own; the agent grant pool is the layer that prevents it. |
| AIMD | Additive-increase / multiplicative-decrease — the adaptive concurrency rule the run engine uses against provider rate limits. |
| E-E-A-T | Experience, Expertise, Authoritativeness, Trust — the search-quality frame the authorship model is built around. |
| IndexNow | A push protocol for telling search engines about new or changed URLs (implemented; not yet enabled). |
One thing, several names
Section titled “One thing, several names”The REST API, the MCP tools and the database grew at different times and kept their own words. The mapping:
| Concept | REST API | MCP tools | Database / other |
|---|---|---|---|
| Contract | contracts, contract_guid | contract, sc_id in payloads | salescontracts table, SalesContract entity |
| Ticket | tickets (kind: defect or improvement) | entherium_report_defect, entherium_propose_improvement, entherium_list_defects | ticket |
| Task | tasks | entherium_create_task, entherium_list_tasks, … | task |
| Identifier | guid | task_id, defect_id | primary key guid |
| Assignee | assignee_id (integer user id) | assignee (a person’s display name, resolved server-side) | users.guid |