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.
This commit is contained in:
tegwick 2026-07-30 19:41:42 +02:00
parent dc7d8f7ce8
commit e9f7676a1a
15 changed files with 241 additions and 437 deletions

View file

@ -57,9 +57,9 @@ describe("Capture session persistence", () => {
const user = userEvent.setup();
const first = await loadApp();
const summary = screen.getByLabelText("Summary of the matter");
const summary = screen.getByRole("textbox", { name: /Summary of the matter/ });
await user.type(summary, "Persisted summary text");
await user.click(screen.getByLabelText("Disputed amount"));
await user.click(screen.getByRole("textbox", { name: /Disputed amount/ }));
await waitFor(() => {
const stored = Object.values(globalThis.localStorage ?? {}).join("");
@ -70,7 +70,7 @@ describe("Capture session persistence", () => {
await loadApp();
const restored = screen.getByLabelText("Summary of the matter") as HTMLTextAreaElement;
const restored = screen.getByRole("textbox", { name: /Summary of the matter/ }) as HTMLTextAreaElement;
await waitFor(() => {
expect(restored.value).toBe("Persisted summary text");
});
@ -84,7 +84,7 @@ describe("Capture session persistence", () => {
const user = userEvent.setup();
await loadApp();
await user.type(screen.getByLabelText("Disputed amount"), "EUR 500");
await user.type(screen.getByRole("textbox", { name: /Disputed amount/ }), "EUR 500");
await waitFor(() => {
const keys = Object.keys(globalThis.localStorage ?? {});