Skip to content

Add semantic report clusters#31

Merged
marlian merged 3 commits into
mainfrom
feat/semantic-report-clusters
May 20, 2026
Merged

Add semantic report clusters#31
marlian merged 3 commits into
mainfrom
feat/semantic-report-clusters

Conversation

@marlian

@marlian marlian commented May 20, 2026

Copy link
Copy Markdown
Owner

Summary

  • Group semantic report candidate pairs into same-entity observation clusters with max/average similarity, top pairs, and manual decision checkboxes.
  • Document provider-neutral, privacy-aware optional LLM review guidance without adding any LLM call or semantic apply path.
  • Keep semantic report mode report-only/cache-write-only and preserve same-entity candidate boundaries.

Validation

  • go test ./internal/reconcile ./internal/semantic ./cmd/workmem
  • go test ./...
  • git diff --check
  • Local correctness/architecture review rerun: no Blocker/Risk

Group semantic candidates into same-entity review clusters so low-threshold reports become human cleanup specs without adding an LLM or apply path.
Copilot AI review requested due to automatic review settings May 20, 2026 05:14

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds review scaffolding to semantic reconcile report mode by grouping same-entity semantic candidate pairs into connected observation clusters, and updates documentation to describe clusters plus optional (human-only) model-assisted proposal review—without introducing any semantic apply/mutation path.

Changes:

  • Render candidate clusters (summary table + per-cluster top pairs + manual decision checkboxes) ahead of the existing pairwise candidate table.
  • Add unit tests covering cluster rendering/escaping and entity-id-based clustering across entity-type snapshots.
  • Update README/API contract/architecture/implementation docs to reflect cluster scaffolding and clarify optional LLM review is out-of-band and non-executable.

Reviewed changes

Copilot reviewed 6 out of 6 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
README.md Documents cluster output in semantic reports and adds optional (human-only) model-assisted cleanup guidance.
internal/reconcile/report.go Builds connected-component clusters from semantic candidates and renders cluster summaries/details in the report.
internal/reconcile/report_test.go Extends semantic report rendering assertions and adds a focused cluster-building test.
IMPLEMENTATION.md Records the new “semantic report review scaffolding” step gate and constraints.
ARCHITECTURE.md Updates semantic report boundary to include clusters/checkboxes and clarifies model-assisted proposals are outside the executable architecture.
API_CONTRACT.md Extends semantic report contract language to include clusters/checkboxes and the “no LLM calls / no apply” constraint.

Comment thread internal/reconcile/report.go
Compare observation ID slices directly so semantic cluster sorting stays deterministic without rebuilding joined strings inside the comparator.

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 6 out of 6 changed files in this pull request and generated 1 comment.

Comment thread internal/reconcile/report.go Outdated
Trim fallback entity name and type keys so synthetic or zero-ID semantic candidates bucket consistently with the displayed cluster identity.

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 6 out of 6 changed files in this pull request and generated no new comments.

@marlian
marlian merged commit 03de512 into main May 20, 2026
15 checks passed
@marlian
marlian deleted the feat/semantic-report-clusters branch May 20, 2026 11:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants