document-centered evidence workspace for capturing, managing, presenting, and re-opening citations
Find a file
codex c58d096cbd
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
fix(workplans): terminate frontmatter that ran into the document
A missing newline fused the closing delimiter onto the last frontmatter value,
or fused a value onto the following key. Either way the frontmatter never
terminates and the whole body is swallowed.

Because workplan files are selected by 'type: workplan', such a file is not
invalid but invisible: it appears in no projection, raises no error, and is
reported as neither a workplan nor a problem. A forge-derived reset would read
its correct hub record as no longer deriving and propose retiring live work.

Only the missing newline is inserted; no value is altered.

Refs STATE-WP-0083-T08

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 2583210@bnt-lap001
Assistant-Session: f2bff2d5-e9b2-4338-92ca-10282a927006
2026-08-26 08:29:24 +02:00
.claude/rules docs: workplan-first agent guidance prose (CUST-WP-0055 T04 batch 4) 2026-07-08 17:22:22 +02:00
.forgejo/workflows Add Forgejo CI smoke workflow (enablement template) 2026-07-08 12:29:50 +02:00
docs Implement CE-WP-0012 attribute types; freeze accepted catalog defaults. 2026-07-30 21:05:44 +02:00
fixtures/pdfs Implement CE-WP-0002 T03-T09: ingest, anchor resolution, engine, UI, persistence, e2e 2026-05-25 10:58:11 +02:00
history CE-WP-0006/0007: Capture view polish, workplans, and UX refinements 2026-06-08 00:37:34 +02:00
registry Draft capability entry (reuse-surface REUSE-WP-0017-T04, cohort 1) 2026-07-06 19:03:42 +02:00
scripts Add make check-install for umbrella layout consistency 2026-06-22 20:10:38 +02:00
src Implement CE-WP-0012 attribute types; freeze accepted catalog defaults. 2026-07-30 21:05:44 +02:00
tests/integration Implement CE-WP-0012 attribute types; freeze accepted catalog defaults. 2026-07-30 21:05:44 +02:00
wiki Implement CE-WP-0012 attribute types; freeze accepted catalog defaults. 2026-07-30 21:05:44 +02:00
workplans fix(workplans): terminate frontmatter that ran into the document 2026-08-26 08:29:24 +02:00
.custodian-brief.md chore(consistency): sync task status from DB [auto] 2026-07-30 19:42:22 +02:00
.gitignore Implement CE-WP-0001 Foundations: TS scaffold, lint boundaries, normalize v1, fixtures 2026-05-25 00:13:03 +02:00
.nvmrc Implement CE-WP-0001 Foundations: TS scaffold, lint boundaries, normalize v1, fixtures 2026-05-25 00:13:03 +02:00
.repo-classification.yaml Human-review .repo-classification.yaml (CUST-WP-0050 follow-up) 2026-06-22 17:56:16 +02:00
AGENTS.md docs(agents): repoint remote State Hub URL to the in-cluster address 2026-08-25 00:20:45 +02:00
CLAUDE.md Normalize agent instructions and workplan frontmatter (STATE-WP-0067) 2026-06-22 23:16:24 +02:00
eslint.config.js Implement CE-WP-0009: wire umbrella to @citation-evidence/engine 2026-06-22 19:45:11 +02:00
index.html Implement CE-WP-0002 T03-T09: ingest, anchor resolution, engine, UI, persistence, e2e 2026-05-25 10:58:11 +02:00
INTENT.md Establish shared-contracts home, dependency map, MVP workplans, and umbrella-first strategy 2026-05-24 16:42:25 +02:00
LICENSE Adopt Target Revenue Source License V1C1 (org-wide preliminary rollout) 2026-07-29 23:58:13 +02:00
Makefile Add make check-install for umbrella layout consistency 2026-06-22 20:10:38 +02:00
package.json refactor: consume @citation-evidence/work for review mode (CWORK-WP-0001 cutover) 2026-07-09 01:49:36 +02:00
pnpm-lock.yaml refactor: consume @citation-evidence/work for review mode (CWORK-WP-0001 cutover) 2026-07-09 01:49:36 +02:00
README.md Add make check-install for umbrella layout consistency 2026-06-22 20:10:38 +02:00
SCOPE.md docs(scope): fill in SCOPE.md — resolves C-30 staleness 2026-07-08 21:02:54 +02:00
tsconfig.json refactor: consume @citation-evidence/work for review mode (CWORK-WP-0001 cutover) 2026-07-09 01:49:36 +02:00
vite.config.ts fix pdf.js worker dual-instance when uploading via evidence-source. 2026-07-30 19:33:19 +02:00
vitest.config.ts Implement CE-WP-0002 T03-T09: ingest, anchor resolution, engine, UI, persistence, e2e 2026-05-25 10:58:11 +02:00
WORK-RECORDS.md Added workplan and work records 2026-08-19 21:24:03 +02:00

citation-evidence

A document-centered evidence workspace for capturing, managing, presenting, and re-opening citations. The umbrella over the six-package design described in INTENT.md and wiki/ArchitectureOverview.md.

Shared types and engine services live in the extracted @citation-evidence/engine package (link:../citation-engine). Remaining partitions stay under src/ until each subsystem extracts.

Documentation

Where What
INTENT.md Project intent, scope, the umbrella-first decision
wiki/ PRD, Architecture, SharedContracts, DependencyMap
docs/decisions/ ADRs (architecturally significant decisions)
workplans/ Ralph-driven workplans that implement the MVP slice
history/ Time-stamped assessments and post-mortems

The canonical contracts are in wiki/SharedContracts.md; the partition boundaries are in wiki/DependencyMap.md. Both are referenced from every workplan and from each sister repo's INTENT.md.

Repository layout

Requires sibling checkout: ../citation-engine (see package.json link: dep).

src/
  anchor/   # selector creation/resolution, viewer adapter contract → becomes evidence-anchor
  source/   # ingest, fingerprint, extraction, recovery → becomes evidence-source
  binder/   # evidence-to-target binding, visual guide → becomes evidence-binder
  work/     # review UI (sidebar, viewer shell)    → becomes citation-work
  app/      # the reference workspace shell        → stays in citation-evidence

The dependency-edge rules between partitions are enforced by ESLint via eslint-plugin-boundaries (see eslint.config.js). Extraction to a sister repo is intended to be a git mv plus a package.json cut — nothing more.

Sister repos

Peers under ~/:

Dev workflow

Requirements: Node 20 LTS (see .nvmrc) and pnpm 9.

# citation-engine must be checked out next to this repo (../citation-engine)
make check-install   # diagnose layout problems before install
pnpm install
pnpm dev        # vite dev server (once src/app/ has a real entry)
pnpm test       # vitest one-shot
pnpm test:watch
pnpm lint       # eslint with boundary rules
pnpm typecheck  # tsc --noEmit
pnpm build      # production bundle

Workplans (Ralph)

Workplans drive incremental implementation through the ralph loop. The harness lives in ~/ralph-workplan/; see docs/mvp-workplans-index.md for the active list and ordering.

/ralph-workplan workplans/CE-WP-0001-foundations.md

The loop self-retires when every task in the file has status: done and the workplan's frontmatter status: done.