Commit graph

75 commits

Author SHA1 Message Date
c58d096cbd fix(workplans): terminate frontmatter that ran into the document
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
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
40a876db99 fix(workplans): adopt ADR-007 derived identifiers for unregistered records
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
These workplans exist only in the retired local hub. Their random pre-ADR-007
identifiers are refused by C-06 as stale references, so they cannot be
registered. Deriving from the canonical record id takes no identity from
anything: central does not hold them and the old ids die with the cache.

Records central already holds were deliberately left untouched.

Refs CUST-WP-0068-T06

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 2583210@bnt-lap001
Assistant-Session: f2bff2d5-e9b2-4338-92ca-10282a927006
2026-08-25 20:07:52 +02:00
d90b0edd84 docs(agents): repoint remote State Hub URL to the in-cluster address
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
The remote row pointed at 127.0.0.1:18000, a reverse tunnel back to the
workstation. On railiance01 the State Hub runs in the cluster on that same
machine, so the request left the box and came back to reach a local service.

Refs CUST-WP-0067-T07

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 2583210@bnt-lap001
Assistant-Session: f2bff2d5-e9b2-4338-92ca-10282a927006
2026-08-25 00:20:45 +02:00
273658f3b4 Added workplan and work records
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
2026-08-19 21:24:03 +02:00
36d8d3a73f Implement CE-WP-0012 attribute types; freeze accepted catalog defaults.
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
Demo schema exercises amount and one-of; capture-state validates options;
proposal marked accepted; workplan finished.
2026-07-30 21:05:44 +02:00
d4327b6be6 Propose AttributeValueType catalog research and CE-WP-0012.
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
Document gap vs InfoTechCanon Data Model stubs; plan consumer types
time/datetime/amount/one-of/some-of aligned with a future ITC catalog.
2026-07-30 20:58:25 +02:00
154e48cdd2 CE-WP-0011: Attributes title migration, guide polish, Add attribute placement.
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
Migrate legacy Demo evidence-backed form titles on capture-state load; move
Add attribute below the list; track workplan CE-WP-0011 as finished.
2026-07-30 20:31:50 +02:00
1fb1841173 Rematch documents by content fingerprint on upload and session open.
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 2s
Re-uploading the same PDF attaches bytes to the existing document (keeping
evidence) instead of creating a twin. On restore, merge duplicate fingerprint
groups and migrate annotations onto the evidence-bearing primary.
2026-07-30 20:15:53 +02:00
a73d45bfac Fix Invalid PDF structure after reload for uploaded documents.
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 2s
Stop inventing /fixtures/pdfs/<title> URLs when blob bytes are missing;
rely on IndexedDB-hydrated byte store. Seeded tests set an explicit fixture
uri. Session metadata already survived; PDF bytes now survive too.
2026-07-30 20:05:26 +02:00
9dbe806487 chore: sync WORK-RECORDS after CE-WP-0010 finish.
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
2026-07-30 19:42:26 +02:00
custodian-sync
908039dae5 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 2s
Updated by fix-consistency on 2026-07-30:
  - update .custodian-brief.md for citation-evidence
2026-07-30 19:42:22 +02:00
e9f7676a1a Implement CE-WP-0010 Annotate & Attributes UX.
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 2s
Rename Review→Annotate; Capture keeps Evidence and adds Attributes column
(no bottom strip); evidence/attribute filters; card→citation connectors via
shared Overlay bridges; finish workplan T01–T07.
2026-07-30 19:41:42 +02:00
dc7d8f7ce8 fix pdf.js worker dual-instance when uploading via evidence-source.
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 2s
Alias and dedupe pdfjs-dist so GlobalWorkerOptions.workerSrc set in main.tsx
reaches getDocument in the linked evidence-source package; allow sibling fs roots.
2026-07-30 19:33:19 +02:00
6bc1650285 Sync CE-WP-0010 hub IDs after fix-consistency.
Write state_hub_workstream_id and task IDs from C-06 registration; regenerate WORK-RECORDS.md.
2026-07-30 19:21:37 +02:00
custodian-sync
8e7aed7125 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 2s
Updated by fix-consistency on 2026-07-30:
  - update .custodian-brief.md for citation-evidence
2026-07-30 19:21:12 +02:00
a65acc5bf8 Add CE-WP-0010 Annotate & Attributes UX workplan.
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 2s
Capture locked shell UX requirements from manual document review: Annotate
label, Attributes terminology, list filters, Capture four-column layout, and
evidence-to-citation connector lines.
2026-07-30 19:20:25 +02:00
67eeb8513e Adopt Target Revenue Source License V1C1 (org-wide preliminary rollout)
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
Maintainer decision, 2026-07-29: adopts TRSL V1C1 as this repo's
preliminary governing license, per target-revenue's
workplans/TREV-WP-0008-governance-and-pilot-rollout.md T05. Full
specialist legal review is deferred until out of beta (target-revenue
SCOPE.md §1). No Phase is yet declared for this repo.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-29 23:58:13 +02:00
10fc581a52 Re-export DOM viewer helpers from source facade
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 5s
Expose ingestHtmlFromFile, ingestMarkdownFromFile, and resolveDomViewerHtml
for citation-work ViewerShell wiring.
2026-07-09 09:58:41 +02:00
2b4500bc46 Add HTML/Markdown ingest-to-anchor round-trip integration test
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 3s
Verifies evidence-source ingest pairs with evidence-anchor DOM selector
create/resolve for non-paginated formats (EANCH-WP-0003).
2026-07-09 09:29:50 +02:00
e087949642 Sync SharedContracts with DomRange/Structural selector shapes
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 15s
Mirror citation-engine contract updates for non-PDF anchoring (EANCH-WP-0003).
2026-07-09 09:18:46 +02:00
57d64c6416 refactor: consume @citation-evidence/work for review mode (CWORK-WP-0001 cutover)
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 2s
Cut review mode over to the extracted citation-work package instead of a local
src/work/ implementation.

- Add @citation-evidence/work as a link: dependency
- Repoint the @work alias (tsconfig + vite) to ../citation-work/src/work and
  allow vite fs access to the sibling
- Remove the local src/work/ implementation (now owned by citation-work)

Typecheck, lint, and the full test suite (51 tests) pass.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-09 01:49:36 +02:00
7b33f5f35e Consume extracted evidence-binder; drop local src/binder (EBIND-WP-0001)
Cut over the binder subsystem to the extracted @citation-evidence/
evidence-binder repo. The @binder alias (tsconfig + vite) now points at
../evidence-binder/src, the duplicate src/binder/ tree is deleted, and
vite fs.allow is widened to serve the sibling checkout.

No app code changed — all imports were already via the @binder alias.
typecheck + lint green, 58 tests passing.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-09 01:36:42 +02:00
d14514891e refactor(anchor): consume extracted evidence-anchor package (EANCH-WP-0001-T05)
Replace the in-repo src/anchor/ slice with a dependency on the extracted
@citation-evidence/evidence-anchor package (link:../evidence-anchor).

- package.json: add the link dependency
- repoint all @anchor/{index,selectors,types} imports and vi.mock targets to
  the package barrel; the node-env anchor-source-roundtrip test uses the pure
  ./selectors and ./types subpaths (no pdfjs pulled into a node environment)
- drop the @anchor alias from tsconfig paths and vite resolve
- delete src/anchor/ (behavior now owned by evidence-anchor)

Verified green: pnpm typecheck, pnpm test (26 files / 95 tests), pnpm build.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-08 21:08:27 +02:00
cf57a9bb50 docs(scope): fill in SCOPE.md — resolves C-30 staleness
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 4s
Replace the unfilled template with the umbrella's actual boundary:
app/viewer/session + anchoring/evidence/binders in scope; headless
ingest (evidence-source) and contracts (citation-engine) out of scope.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-08 21:02:54 +02:00
custodian-sync
89e6236554 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 2s
Updated by fix-consistency on 2026-07-08:
  - update .custodian-brief.md for citation-evidence
2026-07-08 20:57:14 +02:00
4ede97983a refactor(source): consume extracted evidence-source package (ESRC-WP-0001-T06)
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 2s
Replace the local src/source PDF slice with the standalone
@citation-evidence/evidence-source package (link:../evidence-source).

- src/source/index.ts is now a thin façade re-exporting the ingest core
  and browser upload helpers from the package
- viewer-url stays local (viewer concern) but takes PdfByteStore from
  the package
- extracted ingest/extract/fingerprint/byte-store/upload files removed
- anchor-source round-trip integration test now exercises the package
  across the repo boundary

Full suite (125 tests), typecheck, and lint all green.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-08 20:55:43 +02:00
54b585197b docs: workplan-first agent guidance prose (CUST-WP-0055 T04 batch 4)
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
2026-07-08 17:22:22 +02:00
af22363272 Regenerate agent instructions from state-hub templates (CUST-WP-0055 T01)
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 4s
Sync AGENTS.md, CLAUDE.md, and .claude/rules from updated project_rules
templates: workplan-first session protocol, legacy terminology footnote,
and GET /workplans/ examples.
2026-07-08 14:50:18 +02:00
165f8beba6 Add Forgejo CI smoke workflow (enablement template)
All checks were successful
CI Smoke / host-smoke (push) Successful in 1s
CI Smoke / container-smoke (push) Successful in 1m5s
2026-07-08 12:29:50 +02:00
c292afff6d Draft capability entry (reuse-surface REUSE-WP-0017-T04, cohort 1)
Honest first-pass maturity vector grounded in README/docs/tests present
in this repo; no invented evidence. Flagged for human review before
publish. See reuse-surface history/2026-07-06-coverage-classification.md.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-06 19:03:42 +02:00
943eef490e 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
80b4284836 chore(state-hub): write back CE-WP-0009 workstream and task IDs
Sync workplan frontmatter with state-hub after fix-consistency.
2026-06-22 20:28:41 +02:00
3591554874 chore(consistency): sync task status from DB [auto]
Updated by fix-consistency on 2026-06-22:
  - update .custodian-brief.md for citation-evidence
2026-06-22 20:27:28 +02:00
85a562b2a1 Add make check-install for umbrella layout consistency
Verify sibling citation-engine checkout, link dependency resolution,
toolchain, and absence of stale in-repo engine copies. Prints actionable
fix hints when the installation layout is wrong.
2026-06-22 20:10:38 +02:00
dd2f2115bd Implement CE-WP-0009: wire umbrella to @citation-evidence/engine
Add link: dependency on citation-engine, retarget @shared/@engine aliases,
remove in-repo shared/engine copies. ADR-0002 accepted (option B).
172 tests, typecheck, and lint pass.
2026-06-22 19:45:11 +02:00
bb911eef37 Add CE-WP-0009 engine workspace wireup workplan
Wire umbrella to @citation-evidence/engine via link: dependency and
remove in-repo shared/engine copies. Index post-MVP extraction track.
2026-06-22 19:32:59 +02:00
6d2a12fcdb Human-review .repo-classification.yaml (CUST-WP-0050 follow-up) 2026-06-22 17:56:16 +02:00
ac35cbf476 Add .repo-classification.yaml (CUST-WP-0050 T11 agent first-pass) 2026-06-22 17:47:35 +02:00
6b97c0d693 Move MVP workplan index out of workplans/ for ADR-001 compliance.
workplans/*.md must be YAML-frontmatter workplan files. The human index
lives at docs/mvp-workplans-index.md instead.
2026-06-22 01:16:15 +02:00
7e1b9e5967 Add capability registry scaffold (REUSE-WP-0014-T03 B01)
Empty helix_forge registry layout for federation publishing.
2026-06-16 01:50:28 +02:00
b28feaad42 Persist capture data per session (field values, schema, links)
Capture mode state lived only in React memory and was lost when
reopening a session or remounting EngineProvider.

- Add per-session localStorage capture snapshot (schema, values, links)
- Restore on session mount; persist on field/schema/link changes
- Seed binder links from storage without spurious bus events
- Clean up capture key when session is deleted
- Integration test for reload persistence
2026-06-08 01:23:48 +02:00
ba34ba868f Fix viewport jumping back to top after evidence scroll
PdfLoader reloads the PDF when its document prop is a new object each
render. Memoize the loader config on pdfUrl only.

Also stabilize SpikeHighlightContainer via context (no remount on focus
change) and narrow scroll-effect deps to highlight id signature.
2026-06-08 01:17:41 +02:00
50c29da4b1 CE-WP-0008: add state-hub workstream and task IDs from fix-consistency 2026-06-08 01:08:16 +02:00
305a20d1d1 CE-WP-0008: fix capture field values and viewport scroll retry
- Wire fieldValues state in FormsApp so controlled inputs persist typed data
- Add runScrollToHighlightJob with rAF retries when utils/highlights not ready
- Re-trigger scroll when highlights update after PDF load
- Tests: scroll-job unit test, forms-field-values integration tests
- Workplan CE-WP-0008 marked done
2026-06-08 01:07:52 +02:00
fc6b91ccb0 chore(consistency): sync task status from DB [auto]
Updated by fix-consistency on 2026-06-08:
  - update .custodian-brief.md for citation-evidence
2026-06-08 00:46:50 +02:00
48a53df9fc CE-WP-0007 T10-T12: field add/edit dialog, pencil edit, integration tests
- FieldDefinitionForm shared component (label + text/textarea/date)
- Add field opens inline form; per-field pencil edit with stable ids
- forms-field-edit.dom.test.tsx covers add, edit, and link-to-new-field
- Workplan T10-T12 and README marked done
2026-06-08 00:46:06 +02:00
2fd085b65e CE-WP-0006/0007: Capture view polish, workplans, and UX refinements
- Blob URL stability, scroll centre, strip-only visual guide
- Focus-gated linking, unlink clears overlay, field badge tooltips
- Capture layout (viewer centre), grey guide lines, Add field button
- Workplans CE-WP-0006 (done) and CE-WP-0007 (T01-T09 done, T10-T12 todo)
- Integration tests and viewer-url helpers
2026-06-08 00:37:34 +02:00
d25b01f6d5 chore(consistency): sync task status from DB [auto]
Updated by fix-consistency on 2026-06-08:
  - update .custodian-brief.md for citation-evidence
2026-06-08 00:34:28 +02:00
3f5b0a1734 chore(consistency): sync task status from DB [auto]
Updated by fix-consistency on 2026-06-08:
  - update .custodian-brief.md for citation-evidence
2026-06-08 00:33:52 +02:00
9c77d104cf chore(consistency): sync task status from DB [auto]
Updated by fix-consistency on 2026-06-08:
  - update .custodian-brief.md for citation-evidence
2026-06-08 00:33:17 +02:00