Repository navigation
fix(sidebar): an OmO DAG viewer pane adds no tab strip or row - #447
Conversation
|
Navigate logical layers of code changes, visualize relationships, and explore their blast radius. No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configuration
📒 Files selected for processing (4)
🚧 Files skipped from review as they are similar to previous changes (1)
Included review availability: This review used your included allowance. Your plan provides up to 10 included reviews per hour; 8 remain after this review. 📝 SummarySummary by CodeRabbit
WalkthroughThe change identifies DAG viewer panes and filters them from sidebar, tab-strip, and adjacent-pane navigation rosters when another non-DAG pane shares their tab. Selected viewers and viewers alone on their tab remain in the roster. ChangesDAG viewer pane roster
Priority: ⬇️ Low Estimated code review effort: 2 (Simple) | ~10 minutes Change: Bug fix · Severity of issue fixed: Low Merge Risk: ⚪ Minimal · up to The DAG viewer is omitted from the sidebar and tab controls beside its OmO pane without leaving an extra tab strip. No identified issue prevents merging after normal checks. Security Architecture ReviewSecurity architecture risk: 🔵 Low · up to A hidden active pane may no longer trigger the busy-agent confirmation, although closing its tab still affects it. This is a localized failure-containment concern requiring an existing tab-close action, not demonstrated access escalation. Retained concerns
Security review detailsSecurity Blast Radius
Trust Boundaries and Controls
Resilience and Maintainability Implications
Hardening Proposals
🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
Full details: Docstring CoverageExplanation Docstring coverage is 60.00% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 5 functions across 5 files. (1 skipped: 1 unsupported.)
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
# Conflicts: # CHANGELOG.md
…ver the viewer Maintainer follow-up to the review of devswha#447. - A pane left out of the roster also dropped out of the checks made on that list: a tab's close did not ask about it when it was working or waiting, and the workspace row's status did not count it. isDagViewerPane now refuses a pane that has an agent or that works or waits for input, so a hidden pane is never one of those, whatever it is called. - The label is matched as the plugin's prefix and the title as its exact words, not either in both fields. - Mod+Shift+Up/Down steps through the panes the sidebar lists, so it no longer lands on a viewer the sidebar leaves out.
|
Merged, thank you. One commit was added on the branch before the merge (
The two added tests fail with the matcher as it was and pass now. The changelog entry links this PR. |
Bumps package.json and herdr-plugin.toml to 0.3.50 and moves the Unreleased notes under [0.3.50] - 2026-10-06, with the compare link. Adds the PR link and credit the #471 entry was missing; every other entry already carries them. Raises the remote PC bundle to 17: #470 changes the prompt answer route on the bridge, so a remote PC on bundle 16 keeps the old behaviour until its bridge is updated. Push the `remote-v17` tag and let the bundle workflow publish before running release.yml. Known limits carried into the notes: Japanese and Chinese text uses the device's fonts beside Pretendard; #469 stays open for what #470 does not cover (answers after the first committing key, identical twin prompts, screens no reader knows). Carries #422 #423 #424 #425 #426 #435 #437 #439 #446 #447 #448 #452 #454 #455 #456 #457 #458 #459 #460 #461 #462 #463 #465 #466 #467 #468 #471 #473 #474 #475 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
Change
omo-herdr-dag splits a DAG viewer pane to the right of an OmO pane (labelled
DAG · <session>, its viewer titles itselfOmO DAG). In the web UI that pane made the OmO workspace look like a two-pane tab: a tab strip with a single tab ("Tab 1") and a pane picker appeared above the OmO pane, and the folder header counted the extra pane. The viewer draws the same workflow the OmO pane's background-task list already shows, so in the app it is only clutter.src/lib/dagPane.ts:isDagViewerPanetells the viewer the way the plugin finds its own panes (its controller'sisDagViewerPane: theDAG ·label or theOmO DAGtitle).rosterPanesleaves a viewer out while its tab has another pane.rosterPanes. An OmO workspace with its viewer now shows as one pane, as it does without one.Validation
src/lib/dagPane.test.ts: the viewer is told by its label or title only; it is left out beside its OmO pane, kept while open, kept when alone in its tab, and other panes are untouched.generate:types --check,typecheck,buildpass;test:unit1151 pass, 0 fail.herdr-web-ui-test-dagqa): one workspace with an OmO stand-in pane and, split beside it, a pane labelledDAG · 01a10998running the real omo-herdr-dag viewer (titleOmO DAG). Same session served byupstream/mainand by this branch:[Tab 1]with a pane picker over the OmO pane;~,omo).Not verified: a phone width (the change is width-independent logic) and Linux/Windows CI (fork CI waits for approval).