Commit graph

20 commits

Author SHA1 Message Date
902bec3dfe Sync State Hub task IDs for EANCH-WP-0004 (fix-consistency writeback)
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 2s
2026-07-09 09:59:07 +02:00
bbeba96173 EANCH-WP-0004: HtmlViewer scroll parity and viewer-shell workplan
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 2s
Export HtmlViewerAdapter from package root, add scrollRequestKey parity,
register finished workplan, update SCOPE.
2026-07-09 09:58:41 +02:00
113358c13c Post WP-0002/0003 hygiene: update docs and archive finished workplans
Some checks are pending
CI Smoke / host-smoke (push) Waiting to run
CI Smoke / container-smoke (push) Waiting to run
Refresh README and SCOPE to reflect stale/fuzzy/DOM capabilities. Move
EANCH-WP-0001 through EANCH-WP-0003 to workplans/archived/260709-*.
2026-07-09 09:29:50 +02:00
a1af0c6a45 Implement EANCH-WP-0002 and EANCH-WP-0003 anchor hardening and DOM selectors
All checks were successful
CI Smoke / host-smoke (push) Successful in 4s
CI Smoke / container-smoke (push) Successful in 31s
WP-0002: stale vs unresolved resolution, orphaned flag/helper, bounded
fuzzy quote recovery, and PdfViewerAdapter promotion with resolveSelectors
integration. WP-0003: DomSelectionCapture, DOM create/resolve ladder,
HtmlViewerAdapter under evidence-anchor/dom, and finished workplans.

Verification: 42 anchor tests, citation-evidence typecheck + 51 tests green.
2026-07-09 09:18:42 +02:00
e4582b52fa chore(consistency): register follow-on workplans + retire ralph loop state
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 2s
fix-consistency C-06 wrote state_hub_workstream_id/state_hub_task_id back into
EANCH-WP-0002 and EANCH-WP-0003. Remove the completed ralph loop state file.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-09 01:37:11 +02:00
8d0c2532c4 EANCH-WP-0001 T07: verify end-to-end and retire workplan
Some checks are pending
CI Smoke / host-smoke (push) Waiting to run
CI Smoke / container-smoke (push) Waiting to run
Both repos green: evidence-anchor (30 tests, typecheck, lint); citation-evidence
post-cutover (typecheck, 95 tests, build) at d145148. Workplan frontmatter set
to finished; all seven tasks done. Follow-on gaps registered as EANCH-WP-0002
and EANCH-WP-0003.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-09 01:35:19 +02:00
0871f79d2d EANCH-WP-0001 T06: register post-extraction gaps as follow-on workplans
Draft two proposed workplans instead of expanding this slice:
- EANCH-WP-0002 anchor-resolution-hardening (stale/orphan, fuzzy re-anchoring,
  promote PdfSpikeViewer to a production PDFViewerAdapter)
- EANCH-WP-0003 non-pdf-selectors (HTML/Markdown DomRange+Structural, non-PDF
  viewer adapter; starts with a citation-engine shared-type contract change)
Add an explicit gap map to WP-0001 T06. fix-consistency (C-06) will register
both in the hub during T07.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-08 21:11:24 +02:00
f32b500f44 EANCH-WP-0001 T05: umbrella cutover complete + pure subpath exports
Add ./selectors and ./types subpath exports so node-env consumers get a
pdfjs-free entry (the umbrella roundtrip test uses them). Update README status
to 'extracted; umbrella consumes this package'. Mark T05 done; record the
blocker as resolved. Umbrella verified green (typecheck, 95 tests, build) at
citation-evidence@d145148.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-08 21:09:02 +02:00
d5c5155df8 EANCH-WP-0001 T05 (prep): make root a full barrel for umbrella cutover
The umbrella's DOM tests vi.mock the single @anchor/index barrel (spreading
the original and overriding PdfSpikeViewer). To keep the cutover a mechanical
specifier swap and preserve those mocks, the evidence-anchor root re-exports
the full surface (pure core + PDF adapter), matching the prior @anchor/index.
evidence-anchor/pdf remains a focused viewer entry. Viewer code still lives
only under src/pdf/ (eslint-enforced). Repo stays green: 30 tests, tc, lint.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-08 21:02:06 +02:00
243cb41938 EANCH-WP-0001 T05: block on parallel evidence-source extraction in umbrella
T01-T04 extracted + verified green. T05 (umbrella cutover) not attempted:
citation-evidence main has another session's uncommitted evidence-source
extraction touching package.json and the shared anchor-source-roundtrip test.
Set T05 status=wait with a documented cutover plan; ralph loop deactivated
pending human coordination.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-08 20:48:25 +02:00
5b77dbd314 EANCH-WP-0001 T04: extract PDF adapter + scroll/highlight helpers
Move pdf-viewer-adapter-spike.tsx, scroll-job.ts (+test), highlight-styles.css
and debug-textlayer.css into src/pdf/ (the adapter boundary). Rewrite the
spike's @shared import to @citation-evidence/engine/shared and its ./types to
../types. Add src/css.d.ts so tsc accepts side-effect .css imports.

Decisions:
- adapter stays the explicitly-named PdfSpikeViewer spike; promotion to a
  production PDFViewerAdapter is registered as T06 follow-on work
- viewer libs (pdfjs-dist, react, react-pdf-highlighter-plus) confined to
  src/pdf/ and exposed only via the evidence-anchor/pdf subpath; the root
  entrypoint stays pure. Boundary enforced by eslint no-restricted-imports.
- ported unit suites (pdf-selector-math round-trip + scroll-job retry) serve
  as the inspectable harness for capture->selectors->resolve->scroll.

Verified: pnpm test (30 passed), typecheck, lint all green. README layout updated.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-08 20:44:52 +02:00
bd7f56c111 EANCH-WP-0001 T03: extract pure selector creation + resolution core
Move types.ts, selectors/{index,create,resolve}.ts, and pdf-selector-math.ts
out of citation-evidence/src/anchor/ into src/ (pdf math under src/pdf/).
Rewrite all @shared/* imports to @citation-evidence/engine/shared; wire the
public entrypoint (src/index.ts) and the ./pdf subpath. Port the three unit
suites. Confidence ladder and selector-redundancy rules preserved verbatim.

Verified: pnpm test (29 passed), typecheck, and lint all green.
Also adds Node/TS .gitignore entries and the pnpm lockfile.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-08 20:41:54 +02:00
0e93b68982 EANCH-WP-0001 T02: bootstrap standalone TS package + test harness
Add package.json (name evidence-anchor, exports . and ./pdf, scripts
test/typecheck/lint), tsconfig.json (mirrors engine, DOM+jsx), vitest.config.ts
(happy-dom + react plugin), eslint.config.js (confines viewer libs to src/pdf/),
.nvmrc, and placeholder src entrypoints. Depends on @citation-evidence/engine
via sibling-checkout link only; no citation-evidence internals.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-08 20:37:59 +02:00
08b3105454 EANCH-WP-0001 T01: codify repo boundary and package shape
Finish SCOPE.md (boundary, maturity, deps, non-goals + capability blocks),
rewrite README.md as an extraction-oriented package doc with the initial
src/ module layout (selectors/pdf/highlight) and public API surface.
Selector types stay in citation-engine; selector behavior + viewer
contract owned here (ADR-0006 / SharedContracts §8).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-08 20:34:41 +02:00
41adf77c82 CUST-WP-0055 T07: add archive workplan terminology grandfather note
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 3s
2026-07-08 20:26:35 +02:00
custodian-sync
9f95e9d34d chore(consistency): sync task status from DB [auto]
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
Updated by fix-consistency on 2026-07-08:
  - EANCH-WP-0001-T07: todo → wait
2026-07-08 20:24:34 +02:00
3530357998 docs: workplan-first agent guidance prose (CUST-WP-0055 T04 batch 5)
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
2026-07-08 19:51:20 +02:00
custodian-sync
d3aaccbb63 chore(consistency): renormalize lifecycle state [auto]
Updated by fix-consistency on 2026-07-08:
  - workplan status: ready → active
2026-07-08 19:50:16 +02:00
c93371f9ab 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
afb901321f chore(ADR-001): add INTENT placeholder workplan for umbrella-first MVP
Add EANCH-WP-0001-intent-placeholder.md so consistency sweeps pass C-01 while this repo remains
INTENT-only. Implementation stays in citation-evidence until extraction.
Hub workstream id is written in frontmatter from fix-consistency.
2026-06-22 01:30:17 +02:00