tegwick ed64f0c57d Normalize agent instructions and workplan frontmatter (STATE-WP-0067)
- Align agent files with on-disk workplan prefixes (infer from workplan ids)
- Set workplan domain to registered domain_slug; add topic_slug where applicable
- Repair frontmatter delimiter formatting; migrate legacy task status literals
- Regenerate AGENTS.md, CLAUDE.md, and .claude/rules from State Hub templates
2026-06-22 23:16:24 +02:00
2026-05-24 13:33:51 +00:00

citation-engine

Core domain model and engine services for the citation-evidence ecosystem.

This package provides the shared vocabulary (Document, Selector, Annotation, EvidenceItem, EvidenceLink, EvidenceSet, state enums, branded IDs, canonical text normalization) together with in-memory repositories, orchestration services, the event bus, and citation card renderers.

Published as @citation-evidence/engine.

Layout

src/
  shared/   # types, enums, pure helpers
  engine/   # services, repositories, rendering, persistence
wiki/
  SharedContracts.md   # conformance copy (authoritative: citation-evidence)

Installing

Local development (sibling checkout)

Repos are expected as siblings:

~/citation-evidence/
~/citation-engine/
~/evidence-anchor/
...

In the consumer's package.json:

{
  "dependencies": {
    "@citation-evidence/engine": "link:../citation-engine"
  }
}

Then pnpm install. TypeScript path aliases in consumers typically map @shared/* and @engine/* to ../citation-engine/src/shared/* and ../citation-engine/src/engine/* (see CE-WP-0009 in citation-evidence).

Registry install (when published)

pnpm add @citation-evidence/engine

Registry host TBD. See Publishing checklist below.

evidence-anchor (placeholder)

When evidence-anchor extracts, it will depend on engine types only:

{
  "dependencies": {
    "@citation-evidence/engine": "link:../citation-engine"
  }
}

Import shared types via @shared/* path aliases or @citation-evidence/engine/shared.

Development

pnpm install
pnpm test
pnpm typecheck
pnpm lint

Contract sync

See wiki/README.md. Changes to shared contracts land in citation-evidence/wiki/SharedContracts.md first, then sync here.

Extraction status

Code lives in src/shared/ and src/engine/, extracted from the umbrella MVP per workplans/CENG-WP-0001-intent-placeholder.md. The umbrella consumes this package via link: per CE-WP-0009.

Publishing checklist

Use when a package registry is configured (ADR-0002: independent repos + publish).

  • Set private: false (or scoped private per org policy)
  • Confirm files in package.json includes src/, wiki/, README.md, LICENSE
  • Decide: TypeScript sources via exports (current) vs tsc emit to dist/
  • Bump semver: patch for fixes, minor for additive contracts, major for breaks
  • Run pnpm test && pnpm typecheck && pnpm lint before publish
  • Update consumers from link: to registry version
  • Document registry URL and auth in org runbook (not in this repo)

No publish CI step is configured yet — credentials and registry choice are out of scope until an external consumer requires it.

Description
Domain model and tooling for citations.
Readme MIT-0 180 KiB
Languages
TypeScript 99.1%
JavaScript 0.9%