From 0647131b6f9aa9ba2005f9544cbb86783b6e6ffb Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Mon, 17 Aug 2026 22:46:36 +0900 Subject: [PATCH] feat: name Event Lineage after landed cited evidence (v2.9.0) Opening Public post from Demo Corp members now names Event Lineage after Linked post evidence is current. Home list opens do not add that copy. --- .../2.9.0-name-evidence-lineage-after-cited.md | 5 +++++ CHANGELOG.md | 10 ++++++++++ frontend/package.json | 2 +- frontend/src/App.test.tsx | 14 ++++++++++++++ frontend/src/App.tsx | 9 +++++++++ lineageweave/__init__.py | 2 +- pyproject.toml | 2 +- uv.lock | 2 +- 8 files changed, 42 insertions(+), 4 deletions(-) create mode 100644 CHANGELOG.d/2.9.0-name-evidence-lineage-after-cited.md diff --git a/CHANGELOG.d/2.9.0-name-evidence-lineage-after-cited.md b/CHANGELOG.d/2.9.0-name-evidence-lineage-after-cited.md new file mode 100644 index 000000000..c41af2d62 --- /dev/null +++ b/CHANGELOG.d/2.9.0-name-evidence-lineage-after-cited.md @@ -0,0 +1,5 @@ +# 2.9.0 Name Event Lineage after landed cited evidence + +Open Public post from the landed Demo Corp members and the popup names +Event Lineage after Linked post evidence is current. Home list opens +do not. diff --git a/CHANGELOG.md b/CHANGELOG.md index a8bb0771a..b6cc075de 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,16 @@ All notable changes to this project are documented here. Format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/); versioning follows [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [2.9.0] - 2026-08-17 + +### Added + +- Opening Public post from the landed Demo Corp members now names the + next action after landed cited evidence: Linked post evidence is + current, then read Event Lineage on that post. Home list opens do + not add that copy. No TEPP theta is invented. No cutoff body is + invented (ADR 0016). + ## [2.8.0] - 2026-08-17 ### Added diff --git a/frontend/package.json b/frontend/package.json index 641d14d81..c15e3db5c 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -1,7 +1,7 @@ { "name": "frontend", "private": true, - "version": "2.8.0", + "version": "2.9.0", "type": "module", "scripts": { "dev": "vite", diff --git a/frontend/src/App.test.tsx b/frontend/src/App.test.tsx index 16891e3bb..ca589cdfc 100644 --- a/frontend/src/App.test.tsx +++ b/frontend/src/App.test.tsx @@ -1504,6 +1504,7 @@ describe("App, authenticated", () => { expect(screen.queryByRole("status", { name: "Ask next action" })).not.toBeInTheDocument(); expect(screen.queryByRole("status", { name: "Ask seed next action" })).not.toBeInTheDocument(); expect(screen.queryByRole("status", { name: "Ask citation next action" })).not.toBeInTheDocument(); + expect(screen.queryByRole("status", { name: "Evidence next action" })).not.toBeInTheDocument(); expect(screen.queryByRole("complementary", { name: "Evidence" })).not.toBeInTheDocument(); expect(screen.queryByText("Related to Ada West")).not.toBeInTheDocument(); expect(screen.queryByText("Related to Priya Nair")).not.toBeInTheDocument(); @@ -2478,6 +2479,16 @@ describe("App, authenticated", () => { expect( citedEvidence.compareDocumentPosition(askInput) & Node.DOCUMENT_POSITION_FOLLOWING, ).not.toBe(0); + const evidenceNext = await screen.findByRole("status", { name: "Evidence next action" }); + expect(evidenceNext).toHaveTextContent( + "Linked post evidence is current. Read Event Lineage on that post next.", + ); + expect( + citedEvidence.compareDocumentPosition(evidenceNext) & Node.DOCUMENT_POSITION_FOLLOWING, + ).not.toBe(0); + expect(evidenceNext.compareDocumentPosition(askInput) & Node.DOCUMENT_POSITION_FOLLOWING).not.toBe( + 0, + ); await waitFor(() => expect(document.getElementById("post-ask")).toHaveFocus()); } finally { HTMLElement.prototype.scrollIntoView = originalScrollIntoView; @@ -2850,6 +2861,9 @@ describe("App, authenticated", () => { expect( citedEvidence.compareDocumentPosition(affiliate) & Node.DOCUMENT_POSITION_FOLLOWING, ).not.toBe(0); + expect(await screen.findByRole("status", { name: "Evidence next action" })).toHaveTextContent( + "Linked post evidence is current. Read Event Lineage on that post next.", + ); await waitFor(() => expect(document.getElementById("post-ask")).toHaveFocus()); }); diff --git a/frontend/src/App.tsx b/frontend/src/App.tsx index 55d27c59f..afb493fd1 100644 --- a/frontend/src/App.tsx +++ b/frontend/src/App.tsx @@ -262,6 +262,11 @@ function ChatPanel({ } /> ) : null} + {nameFirstAsk && firstCitedTitle && landedEvidencePostId ? ( +

+ {landedEvidenceNextAction(firstCitedTitle)} +

+ ) : null} {!seededOnly && (