Skip to content

Remove the 5 advisor plugins (Reasoning, Workflow, Quality Gate, Code Review, Branch Lens)#2

Merged
dovvnloading merged 2 commits into
mainfrom
remove-advisor-plugins
Jul 8, 2026
Merged

Remove the 5 advisor plugins (Reasoning, Workflow, Quality Gate, Code Review, Branch Lens)#2
dovvnloading merged 2 commits into
mainfrom
remove-advisor-plugins

Conversation

@dovvnloading

Copy link
Copy Markdown
Owner

Summary

Removes the five "advisor" plugins — Graphlink-Reasoning, Workflow Architect, Quality Gate, Code Review Agent, and Branch Lens (GraphDiff). They presented more rigor than they had: thin LLM-prompt-plus-JSON wrappers dressed up as "agents"/"gates"/"reviews", with "deterministic scoring" that was really keyword-regex heuristics producing authoritative-looking numbers. They were also the worst offenders for the plugin system's over-coupling, each hand-wired into scene/window/navigation/session across ~7 core files via isinstance chains and per-type node lists. Net change is −8,554 lines across 34 files.

What Changed

  • Deleted 8 plugin modules + 3 package dirs: graphite_plugin_reasoning.py + reasoning/, graphite_plugin_workflow.py, graphite_plugin_quality_gate.py + quality_gate/, graphite_plugin_code_review.py + code_review/, graphite_plugin_graph_diff.py.
  • Prerequisite (first commit): extracted the shared popup combo box that Gitlink borrowed from Code Review into a plugin-neutral graphite_plugins/common/combo.py (PopupComboBox/ComboPopup) and repointed Gitlink, so removing Code Review is a clean deletion. No behavior change.
  • De-wired the 5 from every core file: graphite_plugin_portal.py (registry specs, _register_plugin calls, factory methods, valid-parent tuples), graphite_scene.py (node/connection lists, isinstance chains, GraphDiff deletion helpers), graphite_window.py, graphite_window_actions.py (execute/stop/note handlers), graphite_window_navigation.py (commands + command-availability tuples), graphite_session/{serializers,deserializers,scene_index}.py, graphite_canvas/graphite_canvas_base.py, and the discovery gallery in graphite_ui_dialogs/graphite_system_dialogs.py.
  • Tests: deleted 7 now-dead test modules, trimmed removed-plugin cases from 5 others, updated test_plugin_registry.py (registry is now 8 entries).

Why

  • The advisor plugins were shallow relative to their framing, and their scoring "rigor" was theater.
  • Kept the plugins that do concrete work (Gitlink, Execution Sandbox, Py-Coder, Artifact, Web) and the core primitives (System Prompt, Conversation, HTML Renderer).

Validation

  • App launches — not run (GUI/splash-audio app); import chain, portal wiring, and serialization round-trip exercised headlessly instead
  • Relevant workflow was exercised manually — headless: live portal surfaces exactly the 8 remaining plugins (none removed), picker flyout clean, deserializer gracefully skips removed node types from old sessions
  • python -m compileall -q graphite_app passes

Full test suite: 148 passed.

UI Notes

  • No screenshots needed (removal only; the 5 plugins no longer appear in the plugin flyout or discovery gallery)

Additional Context

  • Back-compat: old saved sessions still load; nodes of the removed types (reasoning/workflow/quality_gate/code_review/graph_diff) are silently skipped by the deserializer (verified) rather than crashing — accepted as a conscious tradeoff (silent drop of those nodes).
  • Scoped intentionally to the 5 advisors; Gitlink/Sandbox/Py-Coder/Artifact/Web and the core node types are untouched.

dovvnloading and others added 2 commits July 8, 2026 10:16
Gitlink reused CodeReviewPopupComboBox (and its CodeReviewComboPopup) from
graphite_plugin_code_review.py. Move those two Qt-only widget classes into a
plugin-neutral module (renamed PopupComboBox/ComboPopup) and repoint Gitlink to it,
so the upcoming removal of the Code Review plugin is a clean deletion with no keeper
left depending on it. No behavior change.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
… Review, Branch Lens)

These plugins presented more rigor than they had: they were thin LLM-prompt-plus-JSON
wrappers dressed up as "agents"/"gates"/"reviews", and their "deterministic scoring"
was keyword-regex heuristics producing authoritative-looking numbers. They were also
the worst offenders for the plugin system's over-coupling, each wired by hand into
scene/window/navigation/session across ~7 core files via isinstance chains and per-type
node lists.

Removed:
- Graphlink-Reasoning (graphite_plugin_reasoning.py + reasoning/)
- Workflow Architect (graphite_plugin_workflow.py)
- Quality Gate (graphite_plugin_quality_gate.py + quality_gate/)
- Code Review Agent (graphite_plugin_code_review.py + code_review/)
- Branch Lens / GraphDiff (graphite_plugin_graph_diff.py)

Kept plugins that do concrete work (Gitlink, Execution Sandbox, Py-Coder, Artifact,
Web) and the core primitives (System Prompt, Conversation, HTML Renderer). The shared
popup combo box was already extracted to graphite_plugins/common/combo.py in the prior
commit so this is a clean deletion.

Back-compat: old saved sessions still load; nodes of these removed types are silently
skipped by the deserializer (verified) rather than crashing.

Tests: deleted 7 now-dead test modules, trimmed removed-plugin cases from 5 others.
Full suite: 148 passed. Registry now surfaces 8 plugins.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@dovvnloading dovvnloading merged commit 291e64a into main Jul 8, 2026
2 checks passed
@dovvnloading dovvnloading deleted the remove-advisor-plugins branch July 8, 2026 14:48
dovvnloading added a commit that referenced this pull request Jul 8, 2026
Reasoning, Workflow Architect, Quality Gate, Code Review Agent, and Branch Lens
were removed from the codebase (see previous commit / PR #2). Bring the README's
Plugin Ecosystem section, highlights, usage guide, and GitHub-integration notes in
line with the current 8-plugin registry - the "Validation & Delivery" category is
gone entirely since it had no members left. Also fixed two dead file names in the
"Compatibility Facades" dev note that referenced files deleted in this same cleanup.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
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.

1 participant