Skip to content

fix(mcp): loopover_check_issue_slop's tool description promises "the rubric" but the route never returns it #8907

Description

@JSONbored

⚠️ Definition of Done: this issue must be completed in full, in a single PR. Do not split this
work across multiple PRs, and do not defer any Deliverable below to a follow-up issue. A PR that
satisfies only some of the Deliverables, stubs a required test, or leaves a checkbox
partially-done does NOT resolve this issue and will be closed.

Context

src/signals/issue-slop.ts:26-37's ISSUE_SLOP_RUBRIC_MARKDOWN is dead -- zero consumers anywhere, not even a test. src/api/routes.ts:3856-3863's /v1/lint/issue-slop route, by design (#6990), strips slopRisk/rubric down to {band, findings} only. But packages/loopover-mcp/bin/loopover-mcp.ts:1277's registered tool description for loopover_check_issue_slop still says "Returns slopRisk (0-100), band, findings, and the rubric" -- never updated after #6990. The PR-slop sibling SLOP_RUBRIC_MARKDOWN IS actually delivered (via the separate in-process loopover_check_slop_risk self-check), which is why this specific mismatch is easy to miss.

Requirements

Update the loopover_check_issue_slop tool description in loopover-mcp.ts to match the actual {band, findings} response shape (drop the "slopRisk"/"the rubric" claims). Additionally, delete ISSUE_SLOP_RUBRIC_MARKDOWN from src/signals/issue-slop.ts since it has zero consumers, unless you wire it into an in-process self-check tool the way SLOP_RUBRIC_MARKDOWN already is (pick one; do not leave the dead constant in place with an unrelated fix).

Deliverables

  • loopover_check_issue_slop's registered description in loopover-mcp.ts accurately describes the {band, findings} response shape
  • ISSUE_SLOP_RUBRIC_MARKDOWN is either deleted, or wired into a new in-process self-check tool mirroring SLOP_RUBRIC_MARKDOWN's pattern

All of the above Deliverables are required in the same PR unless the deliverable text itself states otherwise.

Test Coverage Requirements

packages/loopover-mcp/**/src/** -- 99%+ patch coverage, branch-counted, on whichever path is chosen for the dead constant.

Expected Outcome

The loopover_check_issue_slop MCP tool's description accurately reflects what the route actually returns, and no dead rubric constant sits unreferenced in the codebase.

Links & Resources

  • src/signals/issue-slop.ts:26-37
  • src/api/routes.ts:3856-3863
  • packages/loopover-mcp/bin/loopover-mcp.ts:1277

Metadata

Metadata

Assignees

No one assigned

    Labels

    gittensor:bugGittensor-scored bug fix — scores a 0.05x multiplier.help wantedExtra attention is needed

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions