Scope the remaining Cytoscape deepening candidates (shrink interface, typed contract, sealed handle)
- Dominant language
- TypeScript
- Stars
- 481
- Forks
- 108
- Avg merge
- 8d 9h
- Merged PRs (30d)
- 7
Description
## Goal
Investigate the deepening candidates beyond the reconciler (B) that haven't been planned yet, and decide how to sequence them into their own Epics. The reconciler produces the internals these build on, so this spike should happen after or alongside it.
Open questions to resolve:
- **A — Shrink the interface.** What is the right small declarative interface (elements, stylesheet, layout, selection, handlers)? Which of the ~50 current props are genuinely needed by the Graph View and Schema View versus internal defaults? Which of the ~14 hooks stay as private seams?
- **C — Move the seam.** What does a typed element contract look like once the magic data-attributes (`__isGroupNode`, `__iconUrl`) and domain imports are removed from the generic layer? What must a second consumer satisfy?
- **D — Seal the raw-Cytoscape escape hatch.** What is the minimal typed command handle (zoom, fit, center, screenshot, run layout), and how do domain-specific actions (e.g. fit-to-vertex) map onto it?
- **Reuse.** What would it actually take to consume this module in another product — packaging, dependencies, the shape of the contract?
## Expected Outcome
A recommendation and rough sequencing for A/C/D — enough to spin up one or more follow-up Epics with their own PRDs. Not a full design; just enough scoping to plan. Kept intentionally loose until the reconciler lands and the internals settle.
## Related Issues
- Parent #1891
> [!IMPORTANT]
> Internal only — this issue is maintained by the core team and is not accepting external contributions.
Contributor guide
Research direction
Start by reading the reconciler work and the Graph View and Schema View entry points, then compare the current generic layer with the raw-Cytoscape boundary. Document recommendations and rough sequencing for A, C, and D, including reuse requirements, so the result can support follow-up Epic PRDs.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- react, typescript
- Domain
- data-visualization, frontend
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 15/100