generated from coulomb/repo-seed
Refinement workplan for dependency exploration
This commit is contained in:
141
workplans/RREG-WP-0011-dependency-graph-exploration-polish.md
Normal file
141
workplans/RREG-WP-0011-dependency-graph-exploration-polish.md
Normal file
@@ -0,0 +1,141 @@
|
||||
---
|
||||
id: RREG-WP-0011
|
||||
type: workplan
|
||||
title: "Dependency Graph Exploration Polish"
|
||||
domain: capabilities
|
||||
repo: repo-scoping
|
||||
status: active
|
||||
owner: codex
|
||||
topic_slug: foerster-capabilities
|
||||
created: "2026-05-04"
|
||||
updated: "2026-05-04"
|
||||
state_hub_workstream_id: "b36e365e-e09f-4910-8d92-7d0ee7909db4"
|
||||
---
|
||||
|
||||
# Dependency Graph Exploration Polish
|
||||
|
||||
This workplan follows RREG-WP-0010 and tightens the dependency graph for daily
|
||||
curation use. The first visualization pass added layered metadata, display
|
||||
states, manual overrides, view profiles, and filtering. This follow-up focuses
|
||||
on graph legibility, saved-profile ergonomics, review-state filtering, hover
|
||||
inspection, and reducing redundant document-derived nodes.
|
||||
|
||||
## Review State Filtering
|
||||
|
||||
```task
|
||||
id: RREG-WP-0011-T01
|
||||
status: todo
|
||||
priority: high
|
||||
state_hub_task_id: "8cca41a1-ddf2-4136-9707-70c7b8481a48"
|
||||
```
|
||||
|
||||
Add filters for accepted versus candidate graph state.
|
||||
|
||||
Acceptance criteria:
|
||||
- Graph nodes and edges expose a stable review state where applicable, including
|
||||
at least `accepted` and `candidate`.
|
||||
- Filter rules can match review state for nodes and edges.
|
||||
- The UI exposes structured controls for accepted/candidate filtering without
|
||||
requiring raw JSON.
|
||||
- API tests cover review-state filtering and confirm existing approved graph
|
||||
behavior remains backward compatible.
|
||||
|
||||
## Blurred Node Edge Treatment
|
||||
|
||||
```task
|
||||
id: RREG-WP-0011-T02
|
||||
status: todo
|
||||
priority: medium
|
||||
state_hub_task_id: "3759013b-8a78-45fb-afa5-5ff1f6644070"
|
||||
```
|
||||
|
||||
Make edges connected to blurred nodes visually recede.
|
||||
|
||||
Acceptance criteria:
|
||||
- Edges connected to one or more blurred nodes receive a derived display hint or
|
||||
class.
|
||||
- The Cytoscape style renders those edges as very light gray with reduced
|
||||
opacity.
|
||||
- Selected or hovered blurred-context edges remain inspectable.
|
||||
- Tests or contract assertions cover the derived edge state.
|
||||
|
||||
## Confidence And Strength-Based Sizing
|
||||
|
||||
```task
|
||||
id: RREG-WP-0011-T03
|
||||
status: todo
|
||||
priority: medium
|
||||
state_hub_task_id: "087a550f-a9f7-403c-9853-a04f5847211d"
|
||||
```
|
||||
|
||||
Scale node size and edge width based on confidence or strength.
|
||||
|
||||
Acceptance criteria:
|
||||
- Nodes with confidence metadata derive a bounded visual size from confidence.
|
||||
- Edges derive width from strength while preserving same-layer and stale/change
|
||||
styling.
|
||||
- Missing confidence or unknown strength falls back to stable defaults.
|
||||
- The UI remains readable on dense graphs and mobile widths.
|
||||
|
||||
## Hover Detail Popups
|
||||
|
||||
```task
|
||||
id: RREG-WP-0011-T04
|
||||
status: todo
|
||||
priority: medium
|
||||
state_hub_task_id: "eac6ccd7-7c99-46f9-bf12-c3916b03f041"
|
||||
```
|
||||
|
||||
Show a compact detail popup when hovering over graph nodes or edges.
|
||||
|
||||
Acceptance criteria:
|
||||
- Hovering a node shows its kind, layer, name, display state, confidence,
|
||||
freshness, ownership, and primary source path when available.
|
||||
- Hovering an edge shows dependency type, strength, source, same-layer flag, and
|
||||
source/target names.
|
||||
- The popup follows or anchors near the hovered element without obscuring the
|
||||
cursor target.
|
||||
- Keyboard selection and the existing side panel remain available for full
|
||||
detail inspection.
|
||||
|
||||
## Last Saved Profile Default
|
||||
|
||||
```task
|
||||
id: RREG-WP-0011-T05
|
||||
status: todo
|
||||
priority: high
|
||||
state_hub_task_id: "d63489fc-5c08-486c-addc-53af84218028"
|
||||
```
|
||||
|
||||
Apply the most recently saved profile automatically when opening the dependency
|
||||
graph for a repository.
|
||||
|
||||
Acceptance criteria:
|
||||
- When no `profile_id` URL parameter is present, the graph endpoint and UI load
|
||||
the repository's most recently updated profile if one exists.
|
||||
- Explicit `profile_id` URL parameters continue to take precedence.
|
||||
- Users can still return to an unsaved full exploration state from the UI.
|
||||
- API and UI tests cover repositories with no profiles, one profile, multiple
|
||||
profiles, and explicit profile selection.
|
||||
|
||||
## Document Node De-Duplication
|
||||
|
||||
```task
|
||||
id: RREG-WP-0011-T06
|
||||
status: todo
|
||||
priority: high
|
||||
state_hub_task_id: "5477cfdd-7bd4-428f-a329-6255c4c58803"
|
||||
```
|
||||
|
||||
Remove or merge unnecessary duplicate document-derived nodes, especially
|
||||
`README.md` and `SCOPE.md` cases.
|
||||
|
||||
Acceptance criteria:
|
||||
- The graph builder identifies why duplicate README/SCOPE-like nodes are being
|
||||
emitted.
|
||||
- Derived `SCOPE.md` context is not shown as an independent fact node when it
|
||||
only restates generated scope.
|
||||
- README-derived facts are merged or represented once when they point to the
|
||||
same document-level evidence.
|
||||
- Regression tests cover repositories with README and SCOPE documents and assert
|
||||
no unnecessary duplicate document nodes appear.
|
||||
Reference in New Issue
Block a user