Skip to content

Split only current churn × size architecture hotspots #1184

Description

@devin-ai-integration

Goal

Reduce contributor context and merge conflicts only where six-month churn and present ownership pain
justify a split. This is not a blanket LOC initiative.

Evidence

The architecture review found persistent churn in client-types.ts, core/interaction dispatch,
CLI/help surfaces, and large mirrored tests. The descriptor registry is large but materially less
hot over six months, so it should not be split merely because of size.

Candidate work, after owning contract moves

  • split src/core/dispatch-interactions.ts by interaction concept;
  • split CLI flag/help data by existing command family while retaining parser-level aggregation and
    hand-authored help prose;
  • split client options/results by domain as canonical contracts move below the client;
  • mirror each source split in its tests, prioritizing monolithic interaction/platform test files.

Before opening an implementation PR, refresh churn × size on current paths and select one coherent
surface. One issue/PR should answer one ownership question.

Constraints

  • No blanket >500 LOC failure.
  • No one-folder-per-command mechanical layout.
  • Do not split stable cohesive files solely to reduce line count.
  • Prefer deep domain modules and package-boundary barrels only.

Completion criteria

  • Child issues link current churn × size evidence.
  • Each split reduces the files/concepts an agent must load for a focused change.
  • Dependency direction is unchanged or improved.
  • Fallow, layering, focused tests, typecheck, lint, and build pass.

Origin: post-#1174 architecture follow-up.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions