diff --git a/CHANGELOG.d/1.4.0-current-event-lineage-node.md b/CHANGELOG.d/1.4.0-current-event-lineage-node.md new file mode 100644 index 000000000..a41cb4129 --- /dev/null +++ b/CHANGELOG.d/1.4.0-current-event-lineage-node.md @@ -0,0 +1,4 @@ +# 1.4.0 Current Event Lineage node + +Open Public post from the landed Demo Corp members and the popup Event +Lineage DAG marks that post current. The home DAG does not. diff --git a/CHANGELOG.md b/CHANGELOG.md index 5e98c688b..8a0f85648 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,15 @@ 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). +## [1.4.0] - 2026-08-17 + +### Added + +- Opening Public post from the landed Demo Corp members marks that + post current in the popup Event Lineage DAG, so the focused heading + has a you-are-here node. The home DAG stays unmarked. No TEPP theta + is invented. No cutoff body is invented (ADR 0016). + ## [1.3.0] - 2026-08-17 ### Added diff --git a/frontend/package.json b/frontend/package.json index 0361d7c2b..c29108ea1 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -1,7 +1,7 @@ { "name": "frontend", "private": true, - "version": "1.3.0", + "version": "1.4.0", "type": "module", "scripts": { "dev": "vite", diff --git a/frontend/src/App.css b/frontend/src/App.css index d43b5d75f..78fced0e0 100644 --- a/frontend/src/App.css +++ b/frontend/src/App.css @@ -283,6 +283,11 @@ stroke-width: 2.5; } +.lineage-dag-node[aria-current="true"] circle { + stroke-width: 3; + stroke: canvastext; +} + .keyman-list { list-style: none; padding: 0; diff --git a/frontend/src/App.test.tsx b/frontend/src/App.test.tsx index 5aa1b02dd..f96a80009 100644 --- a/frontend/src/App.test.tsx +++ b/frontend/src/App.test.tsx @@ -2266,6 +2266,16 @@ describe("App, authenticated", () => { screen.getAllByRole("heading", { name: "Event Lineage" }).length, ).toBeGreaterThanOrEqual(2); expect(document.getElementById("post-event-lineage")).toHaveFocus(); + const popup = document.querySelector(".popup-panel"); + expect(popup).not.toBeNull(); + expect(within(popup as HTMLElement).getByLabelText("Open post: Public post")).toHaveAttribute( + "aria-current", + "true", + ); + const homeNode = screen + .getAllByLabelText("Open post: Public post") + .find((node) => !popup?.contains(node)); + expect(homeNode).not.toHaveAttribute("aria-current"); } finally { HTMLElement.prototype.scrollIntoView = originalScrollIntoView; } diff --git a/frontend/src/App.tsx b/frontend/src/App.tsx index ce0f8a08a..81f2173b8 100644 --- a/frontend/src/App.tsx +++ b/frontend/src/App.tsx @@ -303,7 +303,7 @@ function EventLineageSection({ return ( <> {scoped.nodes.length > 0 && onSelectPost && ( - + )} {hasLinks && (