From 1cab04dc9c39052712682b8f55ea0ce9d0724248 Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Sun, 16 Aug 2026 20:44:07 +0900 Subject: [PATCH] feat: show related-node post chips as the title only (v0.74.0) Buyer gap: person chips say Our side / Counterparty and org chips say Company, but post chips still appended (Post). The related walk now shows the post title only. --- ARCHITECTURE.md | 1 + CHANGELOG.md | 8 ++++++++ frontend/package.json | 2 +- frontend/src/App.test.tsx | 3 +++ frontend/src/App.tsx | 3 +++ lineageweave/__init__.py | 2 +- pyproject.toml | 2 +- uv.lock | 2 +- 8 files changed, 19 insertions(+), 4 deletions(-) diff --git a/ARCHITECTURE.md b/ARCHITECTURE.md index 032659fcc..879e55537 100644 --- a/ARCHITECTURE.md +++ b/ARCHITECTURE.md @@ -324,6 +324,7 @@ codes when a label exists. Related-node person chips use the same side label (`Ada West (Our side)`), not the ontology class (`Ada West (Person)`). Related-node organization chips use the entity-level label (`Demo Corp (Company)`), not `Organization`. +Related-node post chips show the post title only, not `(Post)`. `GET /api/posts` and `GET /api/posts/{post_id}` include `voc_type_label` / `visibility_label` from `common_lookup_value` so diff --git a/CHANGELOG.md b/CHANGELOG.md index 9d23cbdff..070e28620 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,14 @@ 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). +## [0.74.0] - 2026-08-16 + +### Changed + +- Related-node post chips show the post title only, not + "Linked post (Post)". Person and org chips already use business + labels; the ontology class on a post title was noise. + ## [0.73.0] - 2026-08-16 ### Changed diff --git a/frontend/package.json b/frontend/package.json index 4bd6a4c6e..3c4d979ad 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -1,7 +1,7 @@ { "name": "frontend", "private": true, - "version": "0.73.0", + "version": "0.74.0", "type": "module", "scripts": { "dev": "vite", diff --git a/frontend/src/App.test.tsx b/frontend/src/App.test.tsx index 2816927e2..1b1a8fe39 100644 --- a/frontend/src/App.test.tsx +++ b/frontend/src/App.test.tsx @@ -983,6 +983,9 @@ describe("App, authenticated", () => { expect(screen.getByText("Related to Ada West").closest(".related-keymen")).not.toHaveTextContent( "Priya Nair (Person)", ); + const relatedPanel = screen.getByText("Related to Ada West").closest(".related-keymen"); + expect(relatedPanel).toHaveTextContent("Linked post"); + expect(relatedPanel).not.toHaveTextContent("Linked post (Post)"); await userEvent.click(screen.getByRole("button", { name: "Open related post: Linked post" })); await waitFor(() => expect(screen.getByText("The evidence panel should show exactly this text.")).toBeInTheDocument(), diff --git a/frontend/src/App.tsx b/frontend/src/App.tsx index 37316da51..58e085538 100644 --- a/frontend/src/App.tsx +++ b/frontend/src/App.tsx @@ -483,6 +483,9 @@ function relatedNodeCaption(node: RelatedNode): string { return `${name} (${level})`; } } + if (node.node_type_code === NODE_POST) { + return name; + } return `${name} (${node.ontology_label ?? node.node_type_code})`; } diff --git a/lineageweave/__init__.py b/lineageweave/__init__.py index a24d86838..9c249405a 100644 --- a/lineageweave/__init__.py +++ b/lineageweave/__init__.py @@ -35,4 +35,4 @@ "sentence_excerpts", ] -__version__ = "0.73.0" +__version__ = "0.74.0" diff --git a/pyproject.toml b/pyproject.toml index f8ae2a958..61e982c3a 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "lineageweave" -version = "0.73.0" +version = "0.74.0" description = "Reconstructs git-branch-style lineage DAGs from scattered short records using multi-channel score fusion and LLM adjudication." readme = "README.md" license = { text = "MIT" } diff --git a/uv.lock b/uv.lock index 0115d4243..3f4889126 100644 --- a/uv.lock +++ b/uv.lock @@ -355,7 +355,7 @@ wheels = [ [[package]] name = "lineageweave" -version = "0.73.0" +version = "0.74.0" source = { virtual = "." } dependencies = [ { name = "certifi" },